Opened 17 months ago
Last modified 6 weeks ago
#27011 needs_review enhancement
Quotient rings should support function field construction if they are fields.
Reported by: | gh-BrentBaccala | Owned by: | |
---|---|---|---|
Priority: | minor | Milestone: | sage-9.2 |
Component: | algebra | Keywords: | function field |
Cc: | Merged in: | ||
Authors: | Brent Baccala | Reviewers: | |
Report Upstream: | N/A | Work issues: | |
Branch: | public/27011 (Commits) | Commit: | 734fa8250342f43e179dcb420bc3ab2bb83ac3ae |
Dependencies: | Stopgaps: |
Description
Univariate polynomial rings have associated function fields:
sage: R.<x> = QQ[] sage: Frac(R) Fraction Field of Univariate Polynomial Ring in x over Rational Field sage: Frac(R).function_field() Rational function field in x over Rational Field
A similar construction should be possible for quotient rings, if they are fields:
sage: K.<x> = FunctionField(QQ); R.<y> = K[] sage: R.quo(y^5 - (x^3 + 2*x*y + 1/x)).function_field() Function field in y defined by y^5 - 2*x*y + (-x^4 - 1)/x
This ticket adds a function_field
method to PolynomialQuotientRing_field
Change History (7)
comment:1 Changed 17 months ago by
- Branch set to public/27011
- Commit set to 734fa8250342f43e179dcb420bc3ab2bb83ac3ae
- Status changed from new to needs_review
comment:2 Changed 17 months ago by
- Milestone changed from sage-8.6 to sage-8.7
Retarging tickets optimistically to the next milestone. If you are responsible for this ticket (either its reporter or owner) and don't believe you are likely to complete this ticket before the next release (8.7) please retarget this ticket's milestone to sage-pending or sage-wishlist.
comment:3 Changed 14 months ago by
- Milestone changed from sage-8.7 to sage-8.8
Ticket retargeted after milestone closed (if you don't believe this ticket is appropriate for the Sage 8.8 release please retarget manually)
comment:4 Changed 14 months ago by
It's a good idea to have such a method! But I think it would be more useful if conversions between the both realizations would work. Unfortunately, this is not the case:
sage: K.<x> = FunctionField(QQ); R.<y> = K[] sage: L = R.quo(y^5 - (x^3 + 2*x*y + 1/x)) sage: F = L.function_field() sage: F(L.an_element()) Traceback (most recent call last): ... TypeError: cannot convert ybar/1 to an element of Fraction Field of Univariate Polynomial Ring in x over Rational Field sage: L(F.an_element()) Traceback (most recent call last): ... ValueError: y is not an element of the base field
It should not be difficult to improve this (for example via the _convert_map_from_
method), since both maps can be obtained as ring homomorphisms:
sage: f = L.hom(F.gens()) sage: g = F.hom(L.gens()) sage: f(L.an_element()) y sage: g(F.an_element()) ybar sage: (f*g).is_one() True sage: (g*f).is_one() True
comment:5 Changed 11 months ago by
- Milestone changed from sage-8.8 to sage-8.9
Moving tickets from the Sage 8.8 milestone that have been actively worked on in the last six months to the next release milestone (optimistically).
comment:6 Changed 5 months ago by
- Milestone changed from sage-8.9 to sage-9.1
Ticket retargeted after milestone closed
comment:7 Changed 6 weeks ago by
- Milestone changed from sage-9.1 to sage-9.2
Batch modifying tickets that will likely not be ready for 9.1, based on a review of the ticket title, branch/review status, and last modification date.
New commits:
Trac #27011: add a function_field method to PolynomialQuotientRing_field