#7554: bug in multivariate polynomial factorization
-------------------------------------+-------------------------------------
Reporter: was | Owner: malb
Type: defect | Status: needs_review
Priority: major | Milestone: sage-6.3
Component: commutative | Resolution:
algebra | Merged in:
Keywords: sd59 | Reviewers:
Authors: Travis Scrimshaw | Work issues:
Report Upstream: N/A | Commit:
Branch: | 17dd13462c4191748f76a2ce91bb671556f0ff24
public/comm_alg/factor_generic_univariate_polynomials-7554| Stopgaps:
Dependencies: |
-------------------------------------+-------------------------------------
Changes (by {'newvalue': u'Travis Scrimshaw', 'oldvalue': ''}):
* status: new => needs_review
* commit: => 17dd13462c4191748f76a2ce91bb671556f0ff24
* keywords: => sd59
* branch: => public/comm_alg/factor_generic_univariate_polynomials-7554
* author: => Travis Scrimshaw
Comment:
I've implemented a fallback using singular for generic univariate
polynomials (which is what the multivariate case did). I'm not 100% sure
it is the best solution (in fact the factorization can be somewhat strange
IMO), but it works:
{{{
sage: L.<q> = LaurentPolynomialRing(QQ)
sage: F = L.fraction_field()
sage: R.<x> = PolynomialRing(F)
sage: factor(x)
x
sage: factor(x^2 - q^2)
(-1) * (-x + q) * (x + q)
sage: factor(x^2 - q^-2)
(1/q^2) * (q*x - 1) * (q*x + 1)
sage: P.<a,b,c> = PolynomialRing(ZZ)
sage: R.<x> = PolynomialRing(FractionField(P))
sage: p = (x - a)*(b*x + c)*(a*b*x + a*c) / (a + 2)
sage: factor(p)
(a/(a + 2)) * (x - a) * (b*x + c)^2
}}}
----
New commits:
||[http://git.sagemath.org/sage.git/commit/?id=07ab433665c12167d61c688be615c95a6adfcf74
07ab433]||{{{Implemented fallback univariate factor using singular.}}}||
||[http://git.sagemath.org/sage.git/commit/?id=17dd13462c4191748f76a2ce91bb671556f0ff24
17dd134]||{{{Added doctest to multivariate factor on original issue.}}}||
--
Ticket URL: <http://trac.sagemath.org/ticket/7554#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 http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.