Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GSoC 2023: Dynamical semigroups #35954

Open
MatheMagicianPi opened this issue Jul 13, 2023 · 0 comments
Open

GSoC 2023: Dynamical semigroups #35954

MatheMagicianPi opened this issue Jul 13, 2023 · 0 comments

Comments

@MatheMagicianPi
Copy link
Contributor

MatheMagicianPi commented Jul 13, 2023

This is a tracker for the GSoC project on dynamical semigroups.

This project implements dynamical semigroups, which are finitely generated subsemigroups of the endomorphism ring of a subscheme of projective or affine space.

Mentors: @EnderWannabe @bhutz

List of pull requests:

vbraun pushed a commit to vbraun/sage that referenced this issue Aug 23, 2023
    
<!-- ^^^^^
Please provide a concise, informative and self-explanatory title.
Don't put issue numbers in there, do this in the PR body below.
For example, instead of "Fixes sagemath#1234" use "Introduce new method to
calculate 1+1"
--> Initial implementation of dynamical semigroups
<!-- Describe your changes here in detail -->
This is part of issue sagemath#35954
<!-- Why is this change required? What problem does it solve? -->
<!-- If this PR resolves an open issue, please link to it here. For
example "Fixes sagemath#12345". -->
<!-- If your change requires a documentation PR, please link it
appropriately. -->

### 📝 Checklist

<!-- Put an `x` in all the boxes that apply. -->
<!-- If your change requires a documentation PR, please link it
appropriately -->
<!-- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
<!-- Feel free to remove irrelevant items. -->

- [x] The title is concise, informative, and self-explanatory.
- [ ] The description explains in detail what this PR is about.
- [x] I have linked a relevant issue or discussion.
- [x] I have created tests covering the changes.
- [x] I have updated the documentation accordingly.

### ⌛ Dependencies

<!-- List all open PRs that this PR logically depends on
- sagemath#12345: short description why this is a dependency
- sagemath#34567: ...
-->

<!-- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
    
URL: sagemath#35947
Reported by: Dang Phan
Reviewer(s): Alexander Galarraga
vbraun pushed a commit to vbraun/sage that referenced this issue Aug 23, 2023
…roups

    
<!-- ^^^^^
Please provide a concise, informative and self-explanatory title.
Don't put issue numbers in there, do this in the PR body below.
For example, instead of "Fixes sagemath#1234" use "Introduce new method to
calculate 1+1"
--> Implemented the following methods for dynamical semigroups:

1. multiply (*) : multiply two dynamical semigroups
2. power (^) : exponentiate a dynamical semigroup
3. nth_iterate : evaluate on a value n times with a dynamical semigroup
4. homogenize : convert affine dynamical semigroups to projective
dynamical semigroups
5. dehomogenize : convert projective dynamical semigroups to affine
dynamical semigroups

<!-- Describe your changes here in detail -->

This is part of issue sagemath#35954

<!-- Why is this change required? What problem does it solve? -->
<!-- If this PR resolves an open issue, please link to it here. For
example "Fixes sagemath#12345". -->
<!-- If your change requires a documentation PR, please link it
appropriately. -->

### 📝 Checklist

<!-- Put an `x` in all the boxes that apply. -->
<!-- If your change requires a documentation PR, please link it
appropriately -->
<!-- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
<!-- Feel free to remove irrelevant items. -->

- [x] The title is concise, informative, and self-explanatory.
- [x] The description explains in detail what this PR is about.
- [x] I have linked a relevant issue or discussion.
- [x] I have created tests covering the changes.
- [x] I have updated the documentation accordingly.

### ⌛ Dependencies

<!-- List all open PRs that this PR logically depends on
- sagemath#12345: short description why this is a dependency
- sagemath#34567: ...
--> sagemath#35947 : first implementation of dynamical semigroups

<!-- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
    
URL: sagemath#35988
Reported by: Dang Phan
Reviewer(s): Alexander Galarraga
vbraun pushed a commit to vbraun/sage that referenced this issue Aug 27, 2023
    
<!-- ^^^^^
Please provide a concise, informative and self-explanatory title.
Don't put issue numbers in there, do this in the PR body below.
For example, instead of "Fixes sagemath#1234" use "Introduce new method to
calculate 1+1"
--> Initial implementation of dynamical semigroups
<!-- Describe your changes here in detail -->
This is part of issue sagemath#35954
<!-- Why is this change required? What problem does it solve? -->
<!-- If this PR resolves an open issue, please link to it here. For
example "Fixes sagemath#12345". -->
<!-- If your change requires a documentation PR, please link it
appropriately. -->

### 📝 Checklist

<!-- Put an `x` in all the boxes that apply. -->
<!-- If your change requires a documentation PR, please link it
appropriately -->
<!-- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
<!-- Feel free to remove irrelevant items. -->

- [x] The title is concise, informative, and self-explanatory.
- [ ] The description explains in detail what this PR is about.
- [x] I have linked a relevant issue or discussion.
- [x] I have created tests covering the changes.
- [x] I have updated the documentation accordingly.

### ⌛ Dependencies

<!-- List all open PRs that this PR logically depends on
- sagemath#12345: short description why this is a dependency
- sagemath#34567: ...
-->

<!-- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
    
URL: sagemath#35947
Reported by: Dang Phan
Reviewer(s): Alexander Galarraga
vbraun pushed a commit to vbraun/sage that referenced this issue Aug 27, 2023
…roups

    
<!-- ^^^^^
Please provide a concise, informative and self-explanatory title.
Don't put issue numbers in there, do this in the PR body below.
For example, instead of "Fixes sagemath#1234" use "Introduce new method to
calculate 1+1"
--> Implemented the following methods for dynamical semigroups:

1. multiply (*) : multiply two dynamical semigroups
2. power (^) : exponentiate a dynamical semigroup
3. nth_iterate : evaluate on a value n times with a dynamical semigroup
4. homogenize : convert affine dynamical semigroups to projective
dynamical semigroups
5. dehomogenize : convert projective dynamical semigroups to affine
dynamical semigroups

<!-- Describe your changes here in detail -->

This is part of issue sagemath#35954

<!-- Why is this change required? What problem does it solve? -->
<!-- If this PR resolves an open issue, please link to it here. For
example "Fixes sagemath#12345". -->
<!-- If your change requires a documentation PR, please link it
appropriately. -->

### 📝 Checklist

<!-- Put an `x` in all the boxes that apply. -->
<!-- If your change requires a documentation PR, please link it
appropriately -->
<!-- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
<!-- Feel free to remove irrelevant items. -->

- [x] The title is concise, informative, and self-explanatory.
- [x] The description explains in detail what this PR is about.
- [x] I have linked a relevant issue or discussion.
- [x] I have created tests covering the changes.
- [x] I have updated the documentation accordingly.

### ⌛ Dependencies

<!-- List all open PRs that this PR logically depends on
- sagemath#12345: short description why this is a dependency
- sagemath#34567: ...
--> sagemath#35947 : first implementation of dynamical semigroups

<!-- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
    
URL: sagemath#35988
Reported by: Dang Phan
Reviewer(s): Alexander Galarraga
vbraun pushed a commit to vbraun/sage that referenced this issue Aug 27, 2023
    
<!-- ^^^^^
Please provide a concise, informative and self-explanatory title.
Don't put issue numbers in there, do this in the PR body below.
For example, instead of "Fixes sagemath#1234" use "Introduce new method to
calculate 1+1"
-->Implemented `orbit` and `specialization` methods for dynamical
semigroups.
<!-- Describe your changes here in detail -->
The orbit method works like the orbit method in dynamical systems, but
instead the point is evaluated on using a dynamical semigroup.

The specialization method returns a dynamical semigroup defined by the
specialization of the generators.

This is part of issue sagemath#35954
<!-- Why is this change required? What problem does it solve? -->
<!-- If this PR resolves an open issue, please link to it here. For
example "Fixes sagemath#12345". -->
<!-- If your change requires a documentation PR, please link it
appropriately. -->

### 📝 Checklist

<!-- Put an `x` in all the boxes that apply. -->
<!-- If your change requires a documentation PR, please link it
appropriately -->
<!-- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
<!-- Feel free to remove irrelevant items. -->

- [x] The title is concise, informative, and self-explanatory.
- [x] The description explains in detail what this PR is about.
- [x] I have linked a relevant issue or discussion.
- [x] I have created tests covering the changes.
- [x] I have updated the documentation accordingly.

### ⌛ Dependencies

<!-- List all open PRs that this PR logically depends on
- sagemath#12345: short description why this is a dependency
- sagemath#34567: ...
-->
sagemath#35947
sagemath#35988
<!-- If you're unsure about any of these, don't hesitate to ask. We're
here to help! -->
    
URL: sagemath#36041
Reported by: Dang Phan
Reviewer(s): Alexander Galarraga
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants