Opened 14 months ago
Closed 14 months ago
#21097 closed defect (fixed)
incorrect parent for dynatomic polynomial
Reported by:  mmanes  Owned by:  

Priority:  minor  Milestone:  sage7.4 
Component:  algebraic geometry  Keywords:  
Cc:  Merged in:  
Authors:  Michelle Manes, Ben Hutz  Reviewers:  Patrick Ingram, Michelle Manes 
Report Upstream:  N/A  Work issues:  
Branch:  93b2e22 (Commits)  Commit:  93b2e226ae50ff61f5592b26abdbb19898da3682 
Dependencies:  Stopgaps: 
Description
dynatomic_polynomial returns polynomial over integers (instead of rationals) when called on rational function over QQ for fixed point polynomial
P.<x, y> = ProjectiveSpace(QQ, 1) H = End(P) f = H([x^3y^3*2, y^3]) dyna = f.dynatomic_polynomial([0,1]) dyna.parent()
Change History (11)
comment:1 Changed 14 months ago by
 Branch set to u/mmanes/incorrect_parent_for_dynatomic_polynomial
comment:2 Changed 14 months ago by
 Commit set to 36ff748509afe07b949c0ba69cf378204867b49c
 Status changed from new to needs_review
comment:3 Changed 14 months ago by
 Status changed from needs_review to needs_work
The 0th dynatomic polynomial should be returning as 0, not the same as dynatomic_polynomial(1)
P.<x, y> = ProjectiveSpace(QQ, 1) H = End(P) f = H([x^2+5*y^2, y^2]) print f.dynatomic_polynomial([0, 0]) print f.dynatomic_polynomial(0)
comment:4 Changed 14 months ago by
 Branch changed from u/mmanes/incorrect_parent_for_dynatomic_polynomial to u/bhutz/incorrect_parent_for_dynatomic_polynomial
comment:5 Changed 14 months ago by
 Commit changed from 36ff748509afe07b949c0ba69cf378204867b49c to 2e7dd9a4df1003fcaa8acdebb2e728871142a96a
 Reviewers set to Patrick Ingram
 Status changed from needs_work to needs_review
added missing case and a slight optimization of code
New commits:
2e7dd9a  21097: added case and slight code optimization

comment:6 Changed 14 months ago by
 Reviewers changed from Patrick Ingram to Patrick Ingram, Michelle Manes
 Status changed from needs_review to needs_work
In the cases of dynatomic_polynomial([0,0]) and dynatomic_polynomial(0), it returns the number 0. Should always return a polynomial, so should be the zero polynomial.
In documentation: We have
R.<x,y> = PolynomialRing(QQ) S = R.quo(R.ideal(y^2x+1)) P.<u,v> = ProjectiveSpace(FractionField(S),1) H = End(P) f = H([u^2 + S(x^2)*v^2, v^2]) f.dynatomic_polynomial([1,1])
In this case,
f.dynatomic_polynomial([1,1]).parent()
also returns Symbolic Ring.
Might be good to move all of the "Symbolic Ring" examples to the end. A little confusing as currently formatted.
comment:7 Changed 14 months ago by
 Commit changed from 2e7dd9a4df1003fcaa8acdebb2e728871142a96a to 93b2e226ae50ff61f5592b26abdbb19898da3682
comment:8 Changed 14 months ago by
 Status changed from needs_work to needs_review
comment:9 Changed 14 months ago by
 Status changed from needs_review to positive_review
comment:10 Changed 14 months ago by
 Milestone changed from sage7.3 to sage7.4
comment:11 Changed 14 months ago by
 Branch changed from u/bhutz/incorrect_parent_for_dynatomic_polynomial to 93b2e226ae50ff61f5592b26abdbb19898da3682
 Resolution set to fixed
 Status changed from positive_review to closed
New commits:
21097: fix incorrect parent for dynatomic polynomial