Opened 6 years ago

Closed 6 years ago

#21097 closed defect (fixed)

incorrect parent for dynatomic polynomial

Reported by: Michelle Manes Owned by:
Priority: minor Milestone: sage-7.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, GitHub, GitLab) Commit: 93b2e226ae50ff61f5592b26abdbb19898da3682
Dependencies: Stopgaps:

Status badges

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^3-y^3*2, y^3])
dyna = f.dynatomic_polynomial([0,1])
dyna.parent()

Change History (11)

comment:1 Changed 6 years ago by Michelle Manes

Branch: u/mmanes/incorrect_parent_for_dynatomic_polynomial

comment:2 Changed 6 years ago by Michelle Manes

Authors: Michelle Manes
Commit: 36ff748509afe07b949c0ba69cf378204867b49c
Status: newneeds_review

New commits:

36ff74821097: fix incorrect parent for dynatomic polynomial

comment:3 Changed 6 years ago by Patrick Ingram

Status: needs_reviewneeds_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 6 years ago by Ben Hutz

Branch: u/mmanes/incorrect_parent_for_dynatomic_polynomialu/bhutz/incorrect_parent_for_dynatomic_polynomial

comment:5 Changed 6 years ago by Ben Hutz

Authors: Michelle ManesMichelle Manes, Ben Hutz
Commit: 36ff748509afe07b949c0ba69cf378204867b49c2e7dd9a4df1003fcaa8acdebb2e728871142a96a
Reviewers: Patrick Ingram
Status: needs_workneeds_review

added missing case and a slight optimization of code


New commits:

2e7dd9a21097: added case and slight code optimization

comment:6 Changed 6 years ago by Michelle Manes

Reviewers: Patrick IngramPatrick Ingram, Michelle Manes
Status: needs_reviewneeds_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^2-x+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 6 years ago by git

Commit: 2e7dd9a4df1003fcaa8acdebb2e728871142a96a93b2e226ae50ff61f5592b26abdbb19898da3682

Branch pushed to git repo; I updated commit sha1. New commits:

a7b366b21097: fix issues from review
93b2e2221097: reorder examples

comment:8 Changed 6 years ago by Ben Hutz

Status: needs_workneeds_review

comment:9 Changed 6 years ago by Michelle Manes

Status: needs_reviewpositive_review

comment:10 Changed 6 years ago by Michelle Manes

Milestone: sage-7.3sage-7.4

comment:11 Changed 6 years ago by Volker Braun

Branch: u/bhutz/incorrect_parent_for_dynatomic_polynomial93b2e226ae50ff61f5592b26abdbb19898da3682
Resolution: fixed
Status: positive_reviewclosed
Note: See TracTickets for help on using tickets.