#20243: Count real roots of polynomials using Sturm sequences
-------------------------------------+-------------------------------------
Reporter: kedlaya | Owner: kedlaya
Type: enhancement | Status: needs_review
Priority: minor | Milestone: sage-7.2
Component: algebra | Resolution:
Keywords: polynomials, | Merged in:
root-counting, days71 | Reviewers:
Authors: Kiran Kedlaya | Work issues:
Report Upstream: N/A | Commit:
Branch: | 9540f77d0957c1108c03b6090817400aca0f203f
u/kedlaya/count_real_roots_of_polynomials_using_sturm_sequences| Stopgaps:
Dependencies: |
-------------------------------------+-------------------------------------
Comment (by kdilks):
Running Patchbot overnight, will play with the code tomorrow.
Just looking at the source, you're probably going to want to include a
check in the code to make sure your polynomial has an appropriate base
field, and a test making sure this check behaves properly. Easiest way
would to be to check that self.base_field() is RR/QQ/ZZ. There's a
potential issue if somebody's polynomial has real coefficients, but is
constructed in a complex ring. That is something I may personally do, as
testing the Cyclic Sieving Phenomenon involves evaluating polynomials with
nonnegative integer coefficients at complex roots of unity. But I suppose
the user can just change the base ring appropriately if they want to test
for real roots in that case.
Also, there should be the option of having a be -\infty and b being
+\infty (the Maxima code for counting number of real roots in an interval
allows these options, not sure about pari). My main interest in this code
would checking to see if all of a polynomial's roots are real, so I would
personally want a simple alias 'is_real_rooted()' that returns
'all_roots_in_interval(-Inf,Inf)'.
--
Ticket URL: <http://trac.sagemath.org/ticket/20243#comment:5>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.