-
-
Notifications
You must be signed in to change notification settings - Fork 488
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
gh-36592: Add pull_from_function_field to curves
<!-- ^^^^^ 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 #1234" use "Introduce new method to calculate 1+1" --> <!-- Describe your changes here in detail --> For an algebraic curve C, `C.pull_from_function_field()` provides the inverse map of `C.function()` between the fraction field of the coordinate ring of C and the abstract function field of C. This tightens the integration of the two isomorphic fields. Elements of the fraction field of the coordinate ring of C is represented by elements of the fraction field of the coordinate ring of the ambient affine or projective space, for user's convenience. This is the missing feature as discussed in https://groups.google.com/g/sage-support/c/Axkaex63f8w/m/wKL0TzmDAwAJ The problem there can be solved by ```sage sage: P2.<x,y,z> = ProjectiveSpace(QQ, 2) sage: f = 2*x^5 - 4*x^3*y*z + x^2*y*z^2 + 2*x*y^3*z + 2*x*y^2*z^2+ y^5 sage: C = Curve(f) sage: K = C.function(x/y).differential().divisor() # canonical divisor sage: basis = (-K).basis_function_space() sage: Basis = [C.pull_from_function_field(f) for f in basis] sage: phi = C.hom(Basis, P2) sage: D = phi.image() # conic sage: D.degree() 2 sage: D Closed subscheme of Projective Space of dimension 2 over Rational Field defined by: x^2 + x*y + 2*y*z ``` <!-- 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 #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 - #12345: short description why this is a dependency - #34567: ... --> <!-- If you're unsure about any of these, don't hesitate to ask. We're here to help! --> URL: #36592 Reported by: Kwankyu Lee Reviewer(s): John H. Palmieri, Kwankyu Lee
- Loading branch information
Showing
2 changed files
with
220 additions
and
45 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.