Skip to content

roots of polynomial have incorrect parent when ring=R is specified #6207

@ncalexan

Description

@ncalexan
mannequin

The attached patch verifies that the roots of a polynomial actually have parent the desired ring. This bit me in the ass for number fields, but the setup required bizarre embeddings and I don't have an example at hand. This is not true in a few cases over inexact fields:

-*- mode: sage-test; default-directory: "~/sage/devel/sage/sage/rings/polynomial/" -*-
sage-test started at Wed Jun  3 21:29:49

/home/ncalexan/bin/sage -b >/dev/null && /home/ncalexan/bin/sage -tp 4 /home/ncalexan/sage/devel/sage/sage/rings/polynomial/polynomial_element.pyx /home/ncalexan/sage/devel/sage/sage/rings/number_field/number_field.py

real	0m3.957s
user	0m0.810s
sys	0m0.560s
Global iterations: 1
File iterations: 1
No cached timings exist; will create upon successful finish.
Doctesting 2 files doing 4 jobs in parallel
sage -t  olynomial_element.pyx
**********************************************************************
File "/home/ncalexan/sage-3.4.2-sage.math-only-x86_64-Linux/devel/sage-main/sage/rings/polynomial/polynomial_element.pyx", line 3893:
    sage: f.roots(ring=RIF)
Exception raised:
    Traceback (most recent call last):
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1231, in run_one_test
        self.run_one_example(test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/sagedoctest.py", line 38, in run_one_example
        OrigDocTestRunner.run_one_example(self, test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1172, in run_one_example
        compileflags, 1) in test.globs
      File "<doctest __main__.example_79[78]>", line 1, in <module>
        f.roots(ring=RIF)###line 3893:
    sage: f.roots(ring=RIF)
      File "polynomial_element.pyx", line 3662, in sage.rings.polynomial.polynomial_element.Polynomial.roots (sage/rings/polynomial/polynomial_element.c:27304)
        assert rt.parent() is ring
    AssertionError
**********************************************************************
File "/home/ncalexan/sage-3.4.2-sage.math-only-x86_64-Linux/devel/sage-main/sage/rings/polynomial/polynomial_element.pyx", line 3895:
    sage: f.roots(ring=RIF, multiplicities=False)
Exception raised:
    Traceback (most recent call last):
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1231, in run_one_test
        self.run_one_example(test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/sagedoctest.py", line 38, in run_one_example
        OrigDocTestRunner.run_one_example(self, test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1172, in run_one_example
        compileflags, 1) in test.globs
      File "<doctest __main__.example_79[79]>", line 1, in <module>
        f.roots(ring=RIF, multiplicities=False)###line 3895:
    sage: f.roots(ring=RIF, multiplicities=False)
      File "polynomial_element.pyx", line 3666, in sage.rings.polynomial.polynomial_element.Polynomial.roots (sage/rings/polynomial/polynomial_element.c:27446)
        assert rt.parent() is ring
    AssertionError
**********************************************************************
File "/home/ncalexan/sage-3.4.2-sage.math-only-x86_64-Linux/devel/sage-main/sage/rings/polynomial/polynomial_element.pyx", line 3897:
    sage: f.roots(ring=RealIntervalField(150))
Exception raised:
    Traceback (most recent call last):
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1231, in run_one_test
        self.run_one_example(test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/sagedoctest.py", line 38, in run_one_example
        OrigDocTestRunner.run_one_example(self, test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1172, in run_one_example
        compileflags, 1) in test.globs
      File "<doctest __main__.example_79[80]>", line 1, in <module>
        f.roots(ring=RealIntervalField(Integer(150)))###line 3897:
    sage: f.roots(ring=RealIntervalField(150))
      File "polynomial_element.pyx", line 3662, in sage.rings.polynomial.polynomial_element.Polynomial.roots (sage/rings/polynomial/polynomial_element.c:27304)
        assert rt.parent() is ring
    AssertionError
**********************************************************************
File "/home/ncalexan/sage-3.4.2-sage.math-only-x86_64-Linux/devel/sage-main/sage/rings/polynomial/polynomial_element.pyx", line 3902:
    sage: f.roots(ring=RIF)
Exception raised:
    Traceback (most recent call last):
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1231, in run_one_test
        self.run_one_example(test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/sagedoctest.py", line 38, in run_one_example
        OrigDocTestRunner.run_one_example(self, test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1172, in run_one_example
        compileflags, 1) in test.globs
      File "<doctest __main__.example_79[83]>", line 1, in <module>
        f.roots(ring=RIF)###line 3902:
    sage: f.roots(ring=RIF)
      File "polynomial_element.pyx", line 3662, in sage.rings.polynomial.polynomial_element.Polynomial.roots (sage/rings/polynomial/polynomial_element.c:27304)
        assert rt.parent() is ring
    AssertionError
**********************************************************************
File "/home/ncalexan/sage-3.4.2-sage.math-only-x86_64-Linux/devel/sage-main/sage/rings/polynomial/polynomial_element.pyx", line 3904:
    sage: f.roots(ring=RIF, multiplicities=False)
Exception raised:
    Traceback (most recent call last):
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1231, in run_one_test
        self.run_one_example(test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/sagedoctest.py", line 38, in run_one_example
        OrigDocTestRunner.run_one_example(self, test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1172, in run_one_example
        compileflags, 1) in test.globs
      File "<doctest __main__.example_79[84]>", line 1, in <module>
        f.roots(ring=RIF, multiplicities=False)###line 3904:
    sage: f.roots(ring=RIF, multiplicities=False)
      File "polynomial_element.pyx", line 3666, in sage.rings.polynomial.polynomial_element.Polynomial.roots (sage/rings/polynomial/polynomial_element.c:27446)
        assert rt.parent() is ring
    AssertionError
**********************************************************************
File "/home/ncalexan/sage-3.4.2-sage.math-only-x86_64-Linux/devel/sage-main/sage/rings/polynomial/polynomial_element.pyx", line 3985:
    sage: f.roots(ring=RealIntervalField(150))
Exception raised:
    Traceback (most recent call last):
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1231, in run_one_test
        self.run_one_example(test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/sagedoctest.py", line 38, in run_one_example
        OrigDocTestRunner.run_one_example(self, test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1172, in run_one_example
        compileflags, 1) in test.globs
      File "<doctest __main__.example_79[112]>", line 1, in <module>
        f.roots(ring=RealIntervalField(Integer(150)))###line 3985:
    sage: f.roots(ring=RealIntervalField(150))
      File "polynomial_element.pyx", line 3662, in sage.rings.polynomial.polynomial_element.Polynomial.roots (sage/rings/polynomial/polynomial_element.c:27304)
        assert rt.parent() is ring
    AssertionError
**********************************************************************
File "/home/ncalexan/sage-3.4.2-sage.math-only-x86_64-Linux/devel/sage-main/sage/rings/polynomial/polynomial_element.pyx", line 4298:
    sage: (x^2 - x - 1).real_roots()
Exception raised:
    Traceback (most recent call last):
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1231, in run_one_test
        self.run_one_example(test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/sagedoctest.py", line 38, in run_one_example
        OrigDocTestRunner.run_one_example(self, test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1172, in run_one_example
        compileflags, 1) in test.globs
      File "<doctest __main__.example_80[3]>", line 1, in <module>
        (x**Integer(2) - x - Integer(1)).real_roots()###line 4298:
    sage: (x^2 - x - 1).real_roots()
      File "polynomial_element.pyx", line 4314, in sage.rings.polynomial.polynomial_element.Polynomial.real_roots (sage/rings/polynomial/polynomial_element.c:30800)
        return self.roots(ring=RR, multiplicities=False)
      File "polynomial_element.pyx", line 3666, in sage.rings.polynomial.polynomial_element.Polynomial.roots (sage/rings/polynomial/polynomial_element.c:27446)
        assert rt.parent() is ring
    AssertionError
**********************************************************************
2 items had failures:
   6 of 132 in __main__.example_79
   1 of   8 in __main__.example_80
***Test Failed*** 7 failures.
For whitespace errors, see the file /home/ncalexan/sage-3.4.2-sage.math-only-x86_64-Linux/tmp/.doctest_polynomial_element.py
	 [7.9 s]
sage -t  /number_field.py
**********************************************************************
File "/home/ncalexan/sage-3.4.2-sage.math-only-x86_64-Linux/devel/sage-main/sage/rings/number_field/number_field.py", line 5236:
    sage: F.Minkowski_embedding()
Exception raised:
    Traceback (most recent call last):
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1231, in run_one_test
        self.run_one_example(test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/sagedoctest.py", line 38, in run_one_example
        OrigDocTestRunner.run_one_example(self, test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1172, in run_one_example
        compileflags, 1) in test.globs
      File "<doctest __main__.example_121[3]>", line 1, in <module>
        F.Minkowski_embedding()###line 5236:
    sage: F.Minkowski_embedding()
      File "/home/ncalexan/sage/local/lib/python2.5/site-packages/sage/rings/number_field/number_field.py", line 5255, in Minkowski_embedding
        places = self.places(prec=prec)
      File "/home/ncalexan/sage/local/lib/python2.5/site-packages/sage/rings/number_field/number_field.py", line 5365, in places
        real_intervals = [ x[0] for x in self.defining_polynomial().roots(R) ]
      File "polynomial_element.pyx", line 3662, in sage.rings.polynomial.polynomial_element.Polynomial.roots (sage/rings/polynomial/polynomial_element.c:27304)
    AssertionError
**********************************************************************
File "/home/ncalexan/sage-3.4.2-sage.math-only-x86_64-Linux/devel/sage-main/sage/rings/number_field/number_field.py", line 5240:
    sage: F.Minkowski_embedding([1, alpha+2, alpha^2-alpha])
Exception raised:
    Traceback (most recent call last):
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1231, in run_one_test
        self.run_one_example(test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/sagedoctest.py", line 38, in run_one_example
        OrigDocTestRunner.run_one_example(self, test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1172, in run_one_example
        compileflags, 1) in test.globs
      File "<doctest __main__.example_121[4]>", line 1, in <module>
        F.Minkowski_embedding([Integer(1), alpha+Integer(2), alpha**Integer(2)-alpha])###line 5240:
    sage: F.Minkowski_embedding([1, alpha+2, alpha^2-alpha])
      File "/home/ncalexan/sage/local/lib/python2.5/site-packages/sage/rings/number_field/number_field.py", line 5255, in Minkowski_embedding
        places = self.places(prec=prec)
      File "/home/ncalexan/sage/local/lib/python2.5/site-packages/sage/rings/number_field/number_field.py", line 5365, in places
        real_intervals = [ x[0] for x in self.defining_polynomial().roots(R) ]
      File "polynomial_element.pyx", line 3662, in sage.rings.polynomial.polynomial_element.Polynomial.roots (sage/rings/polynomial/polynomial_element.c:27304)
    AssertionError
**********************************************************************
File "/home/ncalexan/sage-3.4.2-sage.math-only-x86_64-Linux/devel/sage-main/sage/rings/number_field/number_field.py", line 5244:
    sage: F.Minkowski_embedding() * (alpha + 2).vector().transpose()
Exception raised:
    Traceback (most recent call last):
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1231, in run_one_test
        self.run_one_example(test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/sagedoctest.py", line 38, in run_one_example
        OrigDocTestRunner.run_one_example(self, test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1172, in run_one_example
        compileflags, 1) in test.globs
      File "<doctest __main__.example_121[5]>", line 1, in <module>
        F.Minkowski_embedding() * (alpha + Integer(2)).vector().transpose()###line 5244:
    sage: F.Minkowski_embedding() * (alpha + 2).vector().transpose()
      File "/home/ncalexan/sage/local/lib/python2.5/site-packages/sage/rings/number_field/number_field.py", line 5255, in Minkowski_embedding
        places = self.places(prec=prec)
      File "/home/ncalexan/sage/local/lib/python2.5/site-packages/sage/rings/number_field/number_field.py", line 5365, in places
        real_intervals = [ x[0] for x in self.defining_polynomial().roots(R) ]
      File "polynomial_element.pyx", line 3662, in sage.rings.polynomial.polynomial_element.Polynomial.roots (sage/rings/polynomial/polynomial_element.c:27304)
    AssertionError
**********************************************************************
File "/home/ncalexan/sage-3.4.2-sage.math-only-x86_64-Linux/devel/sage-main/sage/rings/number_field/number_field.py", line 5299:
    sage: F.<alpha> = NumberField(x^3-100*x+1) ; F.places()
Exception raised:
    Traceback (most recent call last):
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1231, in run_one_test
        self.run_one_example(test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/sagedoctest.py", line 38, in run_one_example
        OrigDocTestRunner.run_one_example(self, test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1172, in run_one_example
        compileflags, 1) in test.globs
      File "<doctest __main__.example_122[2]>", line 1, in <module>
        F = NumberField(x**Integer(3)-Integer(100)*x+Integer(1), names=('alpha',)); (alpha,) = F._first_ngens(1); F.places()###line 5299:
    sage: F.<alpha> = NumberField(x^3-100*x+1) ; F.places()
      File "/home/ncalexan/sage/local/lib/python2.5/site-packages/sage/rings/number_field/number_field.py", line 5365, in places
        real_intervals = [ x[0] for x in self.defining_polynomial().roots(R) ]
      File "polynomial_element.pyx", line 3662, in sage.rings.polynomial.polynomial_element.Polynomial.roots (sage/rings/polynomial/polynomial_element.c:27304)
    AssertionError
**********************************************************************
File "/home/ncalexan/sage-3.4.2-sage.math-only-x86_64-Linux/devel/sage-main/sage/rings/number_field/number_field.py", line 5315:
    sage: F.<alpha> = NumberField(x^3+7) ; F.places()
Exception raised:
    Traceback (most recent call last):
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1231, in run_one_test
        self.run_one_example(test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/sagedoctest.py", line 38, in run_one_example
        OrigDocTestRunner.run_one_example(self, test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1172, in run_one_example
        compileflags, 1) in test.globs
      File "<doctest __main__.example_122[3]>", line 1, in <module>
        F = NumberField(x**Integer(3)+Integer(7), names=('alpha',)); (alpha,) = F._first_ngens(1); F.places()###line 5315:
    sage: F.<alpha> = NumberField(x^3+7) ; F.places()
      File "/home/ncalexan/sage/local/lib/python2.5/site-packages/sage/rings/number_field/number_field.py", line 5365, in places
        real_intervals = [ x[0] for x in self.defining_polynomial().roots(R) ]
      File "polynomial_element.pyx", line 3662, in sage.rings.polynomial.polynomial_element.Polynomial.roots (sage/rings/polynomial/polynomial_element.c:27304)
    AssertionError
**********************************************************************
File "/home/ncalexan/sage-3.4.2-sage.math-only-x86_64-Linux/devel/sage-main/sage/rings/number_field/number_field.py", line 5336:
    sage: F.places(prec=10)
Exception raised:
    Traceback (most recent call last):
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1231, in run_one_test
        self.run_one_example(test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/sagedoctest.py", line 38, in run_one_example
        OrigDocTestRunner.run_one_example(self, test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1172, in run_one_example
        compileflags, 1) in test.globs
      File "<doctest __main__.example_122[5]>", line 1, in <module>
        F.places(prec=Integer(10))###line 5336:
    sage: F.places(prec=10)
      File "/home/ncalexan/sage/local/lib/python2.5/site-packages/sage/rings/number_field/number_field.py", line 5365, in places
        real_intervals = [ x[0] for x in self.defining_polynomial().roots(R) ]
      File "polynomial_element.pyx", line 3662, in sage.rings.polynomial.polynomial_element.Polynomial.roots (sage/rings/polynomial/polynomial_element.c:27304)
    AssertionError
**********************************************************************
File "/home/ncalexan/sage-3.4.2-sage.math-only-x86_64-Linux/devel/sage-main/sage/rings/number_field/number_field.py", line 5386:
    sage: F.<alpha> = NumberField(x^4-7) ; F.real_places()
Exception raised:
    Traceback (most recent call last):
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1231, in run_one_test
        self.run_one_example(test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/sagedoctest.py", line 38, in run_one_example
        OrigDocTestRunner.run_one_example(self, test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1172, in run_one_example
        compileflags, 1) in test.globs
      File "<doctest __main__.example_123[2]>", line 1, in <module>
        F = NumberField(x**Integer(4)-Integer(7), names=('alpha',)); (alpha,) = F._first_ngens(1); F.real_places()###line 5386:
    sage: F.<alpha> = NumberField(x^4-7) ; F.real_places()
      File "/home/ncalexan/sage/local/lib/python2.5/site-packages/sage/rings/number_field/number_field.py", line 5396, in real_places
        return self.places(prec=prec)[0:self.signature()[0]]
      File "/home/ncalexan/sage/local/lib/python2.5/site-packages/sage/rings/number_field/number_field.py", line 5365, in places
        real_intervals = [ x[0] for x in self.defining_polynomial().roots(R) ]
      File "polynomial_element.pyx", line 3662, in sage.rings.polynomial.polynomial_element.Polynomial.roots (sage/rings/polynomial/polynomial_element.c:27304)
    AssertionError
**********************************************************************
File "/home/ncalexan/sage-3.4.2-sage.math-only-x86_64-Linux/devel/sage-main/sage/rings/number_field/number_field.py", line 3322:
    sage: F.reduced_basis(prec=64)
Expected:
    Traceback (most recent call last):                 
    ...                                                
    PariError: not a definite matrix in lllgram (42)   
Got:
    Traceback (most recent call last):
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1231, in run_one_test
        self.run_one_example(test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/sagedoctest.py", line 38, in run_one_example
        OrigDocTestRunner.run_one_example(self, test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1172, in run_one_example
        compileflags, 1) in test.globs
      File "<doctest __main__.example_74[7]>", line 1, in <module>
        F.reduced_basis(prec=Integer(64))###line 3322:
    sage: F.reduced_basis(prec=64)
      File "/home/ncalexan/sage/local/lib/python2.5/site-packages/sage/rings/number_field/number_field.py", line 3357, in reduced_basis
        M = self.Minkowski_embedding(self.integral_basis(), prec=prec)
      File "/home/ncalexan/sage/local/lib/python2.5/site-packages/sage/rings/number_field/number_field.py", line 5262, in Minkowski_embedding
        sqrt2 = f.roots(R)[1][0]
      File "polynomial_element.pyx", line 3662, in sage.rings.polynomial.polynomial_element.Polynomial.roots (sage/rings/polynomial/polynomial_element.c:27304)
    AssertionError
**********************************************************************
File "/home/ncalexan/sage-3.4.2-sage.math-only-x86_64-Linux/devel/sage-main/sage/rings/number_field/number_field.py", line 3327:
    sage: F.reduced_basis(prec=96)
Exception raised:
    Traceback (most recent call last):
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1231, in run_one_test
        self.run_one_example(test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/sagedoctest.py", line 38, in run_one_example
        OrigDocTestRunner.run_one_example(self, test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1172, in run_one_example
        compileflags, 1) in test.globs
      File "<doctest __main__.example_74[8]>", line 1, in <module>
        F.reduced_basis(prec=Integer(96))###line 3327:
    sage: F.reduced_basis(prec=96)
      File "/home/ncalexan/sage/local/lib/python2.5/site-packages/sage/rings/number_field/number_field.py", line 3357, in reduced_basis
        M = self.Minkowski_embedding(self.integral_basis(), prec=prec)
      File "/home/ncalexan/sage/local/lib/python2.5/site-packages/sage/rings/number_field/number_field.py", line 5262, in Minkowski_embedding
        sqrt2 = f.roots(R)[1][0]
      File "polynomial_element.pyx", line 3662, in sage.rings.polynomial.polynomial_element.Polynomial.roots (sage/rings/polynomial/polynomial_element.c:27304)
    AssertionError
**********************************************************************
File "/home/ncalexan/sage-3.4.2-sage.math-only-x86_64-Linux/devel/sage-main/sage/rings/number_field/number_field.py", line 3427:
    sage: F.reduced_gram_matrix(prec=128)
Exception raised:
    Traceback (most recent call last):
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1231, in run_one_test
        self.run_one_example(test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/sagedoctest.py", line 38, in run_one_example
        OrigDocTestRunner.run_one_example(self, test, example, filename, compileflags)
      File "/scratch/mabshoff/sage-4.0.alpha0/local/bin/ncadoctest.py", line 1172, in run_one_example
        compileflags, 1) in test.globs
      File "<doctest __main__.example_75[7]>", line 1, in <module>
        F.reduced_gram_matrix(prec=Integer(128))###line 3427:
    sage: F.reduced_gram_matrix(prec=128)
      File "/home/ncalexan/sage/local/lib/python2.5/site-packages/sage/rings/number_field/number_field.py", line 3455, in reduced_gram_matrix
        M = self.Minkowski_embedding(prec=prec)
      File "/home/ncalexan/sage/local/lib/python2.5/site-packages/sage/rings/number_field/number_field.py", line 5262, in Minkowski_embedding
        sqrt2 = f.roots(R)[1][0]
      File "polynomial_element.pyx", line 3662, in sage.rings.polynomial.polynomial_element.Polynomial.roots (sage/rings/polynomial/polynomial_element.c:27304)
    AssertionError

  ***   Warning: large Minkowski bound: certification will be VERY long.
  ***   Warning: large Minkowski bound: certification will be VERY long.
  ***   Warning: large Minkowski bound: certification will be VERY long.
  ***   Warning: large Minkowski bound: certification will be VERY long.
**********************************************************************
5 items had failures:
   3 of   6 in __main__.example_121
   3 of   6 in __main__.example_122
   1 of   3 in __main__.example_123
   2 of   9 in __main__.example_74
   1 of   8 in __main__.example_75
***Test Failed*** 10 failures.
For whitespace errors, see the file /home/ncalexan/sage-3.4.2-sage.math-only-x86_64-Linux/tmp/.doctest_number_field.py
	 [17.2 s]
 
----------------------------------------------------------------------

The following tests failed:

	sage -t  olynomial_element.pyx # 7 doctests failed
	sage -t  /number_field.py # 10 doctests failed
----------------------------------------------------------------------
Total time for all tests: 17.4 seconds

sage-test finished with failing tests at Wed Jun  3 21:30:10

CC: cwitty mhansen

Component: algebra

Keywords: roots polynomial parent ring inexact

Author: William Stein

Reviewer: Alex Ghitza

Merged: sage-4.3.2.alpha0

Issue created by migration from https://trac.sagemath.org/ticket/6207

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions