#17880: Bug in _rational_echelon_via_solve in finding linearly independent rows
------------------------------+-------------------------------
Reporter: vbraun | Owner:
Type: defect | Status: new
Priority: major | Milestone: sage-6.6
Component: linear algebra | Keywords: random_fail
Merged in: | Authors:
Reviewers: | Report Upstream: N/A
Work issues: | Branch:
Commit: | Dependencies:
Stopgaps: |
------------------------------+-------------------------------
This test can randomly fail, see discussion at
http://comments.gmane.org/gmane.comp.mathematics.sage.devel/59421
{{{
sage -t --long src/sage/modules/fg_pid/fgp_module.py
**********************************************************************
File "src/sage/modules/fg_pid/fgp_module.py", line 1687, in
sage.modules.fg_pid.fgp_module.test_morphism_0
Failed example:
set_random_seed(s); v = [fgp.test_morphism_0(i) for i in range(1,20)]
Exception raised:
Traceback (most recent call last):
File "/mnt/disk/home/buildslave-
sage/slave/sage_git/build/local/lib/python2.7/site-
packages/sage/doctest/forker.py", line 492, in _run
self.compile_and_execute(example, compiler, test.globs)
File "/mnt/disk/home/buildslave-
sage/slave/sage_git/build/local/lib/python2.7/site-
packages/sage/doctest/forker.py", line 854, in compile_and_execute
exec(compiled, globs)
File "<doctest sage.modules.fg_pid.fgp_module.test_morphism_0[5]>",
line 1, in <module>
set_random_seed(s); v = [fgp.test_morphism_0(i) for i in
range(Integer(1),Integer(20))]
File "/mnt/disk/home/buildslave-
sage/slave/sage_git/build/local/lib/python2.7/site-
packages/sage/modules/fg_pid/fgp_module.py", line 1690, in test_morphism_0
phi = random_fgp_morphism_0(*args, **kwds)
File "/mnt/disk/home/buildslave-
sage/slave/sage_git/build/local/lib/python2.7/site-
packages/sage/modules/fg_pid/fgp_module.py", line 1676, in
random_fgp_morphism_0
return A.hom([ZZ.random_element()*g for g in A.smith_form_gens()])
File "/mnt/disk/home/buildslave-
sage/slave/sage_git/build/local/lib/python2.7/site-
packages/sage/modules/fg_pid/fgp_module.py", line 1346, in hom
return self._hom_from_smith(im_gens, check)
File "/mnt/disk/home/buildslave-
sage/slave/sage_git/build/local/lib/python2.7/site-
packages/sage/modules/fg_pid/fgp_module.py", line 1422, in _hom_from_smith
M, _ = self.optimized()
File "/mnt/disk/home/buildslave-
sage/slave/sage_git/build/local/lib/python2.7/site-
packages/sage/modules/fg_pid/fgp_module.py", line 1215, in optimized
H, U = B.hermite_form(transformation=True)
File "sage/matrix/matrix_integer_dense.pyx", line 1852, in
sage.matrix.matrix_integer_dense.Matrix_integer_dense.echelon_form
(build/cythonized/sage/matrix/matrix_integer_dense.c:16641)
H_m, U, pivots =
matrix_integer_dense_hnf.hnf_with_transformation(self, proof=proof)
File "/mnt/disk/home/buildslave-
sage/slave/sage_git/build/local/lib/python2.7/site-
packages/sage/matrix/matrix_integer_dense_hnf.py", line 1057, in
hnf_with_transformation
H, pivots = hnf(C, include_zero_rows=True, proof=proof)
File "/mnt/disk/home/buildslave-
sage/slave/sage_git/build/local/lib/python2.7/site-
packages/sage/matrix/matrix_integer_dense_hnf.py", line 1018, in hnf
H, pivots = probable_hnf(A, include_zero_rows = include_zero_rows,
proof=True)
File "/mnt/disk/home/buildslave-
sage/slave/sage_git/build/local/lib/python2.7/site-
packages/sage/matrix/matrix_integer_dense_hnf.py", line 851, in
probable_hnf
H = hnf_square(C, proof=proof)
File "/mnt/disk/home/buildslave-
sage/slave/sage_git/build/local/lib/python2.7/site-
packages/sage/matrix/matrix_integer_dense_hnf.py", line 587, in hnf_square
x = add_column(W, H, b.stack(matrix(1,1,[k*A[m-2,m-1] +
l*A[m-1,m-1]])), proof)
File "/mnt/disk/home/buildslave-
sage/slave/sage_git/build/local/lib/python2.7/site-
packages/sage/matrix/matrix_integer_dense_hnf.py", line 426, in add_column
return add_column_fallback(B, a, proof)
File "/mnt/disk/home/buildslave-
sage/slave/sage_git/build/local/lib/python2.7/site-
packages/sage/matrix/matrix_integer_dense_hnf.py", line 305, in
add_column_fallback
H, _ = hnf(W, proof)
File "/mnt/disk/home/buildslave-
sage/slave/sage_git/build/local/lib/python2.7/site-
packages/sage/matrix/matrix_integer_dense_hnf.py", line 1018, in hnf
H, pivots = probable_hnf(A, include_zero_rows = include_zero_rows,
proof=True)
File "/mnt/disk/home/buildslave-
sage/slave/sage_git/build/local/lib/python2.7/site-
packages/sage/matrix/matrix_integer_dense_hnf.py", line 851, in
probable_hnf
H = hnf_square(C, proof=proof)
File "/mnt/disk/home/buildslave-
sage/slave/sage_git/build/local/lib/python2.7/site-
packages/sage/matrix/matrix_integer_dense_hnf.py", line 587, in hnf_square
x = add_column(W, H, b.stack(matrix(1,1,[k*A[m-2,m-1] +
l*A[m-1,m-1]])), proof)
File "/mnt/disk/home/buildslave-
sage/slave/sage_git/build/local/lib/python2.7/site-
packages/sage/matrix/matrix_integer_dense_hnf.py", line 426, in add_column
return add_column_fallback(B, a, proof)
File "/mnt/disk/home/buildslave-
sage/slave/sage_git/build/local/lib/python2.7/site-
packages/sage/matrix/matrix_integer_dense_hnf.py", line 305, in
add_column_fallback
H, _ = hnf(W, proof)
File "/mnt/disk/home/buildslave-
sage/slave/sage_git/build/local/lib/python2.7/site-
packages/sage/matrix/matrix_integer_dense_hnf.py", line 1018, in hnf
H, pivots = probable_hnf(A, include_zero_rows = include_zero_rows,
proof=True)
File "/mnt/disk/home/buildslave-
sage/slave/sage_git/build/local/lib/python2.7/site-
packages/sage/matrix/matrix_integer_dense_hnf.py", line 851, in
probable_hnf
H = hnf_square(C, proof=proof)
File "/mnt/disk/home/buildslave-
sage/slave/sage_git/build/local/lib/python2.7/site-
packages/sage/matrix/matrix_integer_dense_hnf.py", line 587, in hnf_square
x = add_column(W, H, b.stack(matrix(1,1,[k*A[m-2,m-1] +
l*A[m-1,m-1]])), proof)
File "/mnt/disk/home/buildslave-
sage/slave/sage_git/build/local/lib/python2.7/site-
packages/sage/matrix/matrix_integer_dense_hnf.py", line 426, in add_column
return add_column_fallback(B, a, proof)
File "/mnt/disk/home/buildslave-
sage/slave/sage_git/build/local/lib/python2.7/site-
packages/sage/matrix/matrix_integer_dense_hnf.py", line 305, in
add_column_fallback
H, _ = hnf(W, proof)
File "/mnt/disk/home/buildslave-
sage/slave/sage_git/build/local/lib/python2.7/site-
packages/sage/matrix/matrix_integer_dense_hnf.py", line 1018, in hnf
H, pivots = probable_hnf(A, include_zero_rows = include_zero_rows,
proof=True)
File "/mnt/disk/home/buildslave-
sage/slave/sage_git/build/local/lib/python2.7/site-
packages/sage/matrix/matrix_integer_dense_hnf.py", line 851, in
probable_hnf
H = hnf_square(C, proof=proof)
File "/mnt/disk/home/buildslave-
sage/slave/sage_git/build/local/lib/python2.7/site-
packages/sage/matrix/matrix_integer_dense_hnf.py", line 547, in hnf_square
(d1,d2) = double_det (B,c,d, proof=proof)
File "/mnt/disk/home/buildslave-
sage/slave/sage_git/build/local/lib/python2.7/site-
packages/sage/matrix/matrix_integer_dense_hnf.py", line 259, in double_det
v = B.solve_right(-c)
File "sage/matrix/matrix2.pyx", line 366, in
sage.matrix.matrix2.Matrix.solve_right
(build/cythonized/sage/matrix/matrix2.c:6490)
X = self._solve_right_general(C, check=check)
File "sage/matrix/matrix2.pyx", line 467, in
sage.matrix.matrix2.Matrix._solve_right_general
(build/cythonized/sage/matrix/matrix2.c:7160)
pivot_cols = self.pivots()
File "sage/matrix/matrix0.pyx", line 4160, in
sage.matrix.matrix0.Matrix.pivots
(build/cythonized/sage/matrix/matrix0.c:26104)
self.echelon_form()
File "sage/matrix/matrix_rational_dense.pyx", line 1546, in
sage.matrix.matrix_rational_dense.Matrix_rational_dense.echelon_form
(build/cythonized/sage/matrix/matrix_rational_dense.c:15913)
E = self._echelon_form_padic()
File "sage/matrix/matrix_rational_dense.pyx", line 1572, in
sage.matrix.matrix_rational_dense.Matrix_rational_dense._echelon_form_padic
(build/cythonized/sage/matrix/matrix_rational_dense.c:16440)
pivots, nonpivots, X, d = A._rational_echelon_via_solve()
File "sage/matrix/matrix_integer_dense.pyx", line 4382, in
sage.matrix.matrix_integer_dense.Matrix_integer_dense._rational_echelon_via_solve
(build/cythonized/sage/matrix/matrix_integer_dense.c:34920)
raise RuntimeError("Bug in _rational_echelon_via_solve in finding
linearly independent rows.")
RuntimeError: Bug in _rational_echelon_via_solve in finding linearly
independent rows.
**********************************************************************
1 item had failures:
1 of 8 in sage.modules.fg_pid.fgp_module.test_morphism_0
[332 tests, 1 failure, 12.10 s]
}}}
--
Ticket URL: <http://trac.sagemath.org/ticket/17880>
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.