#4260: use LinBox as native matrix representation for dense matrices over GF(p)
-----------------------------------------------------------+----------------
    Reporter:  malb                                        |         Owner:  
cpernet                                   
        Type:  enhancement                                 |        Status:  
new                                       
    Priority:  major                                       |     Milestone:  
sage-4.7.3                                
   Component:  linear algebra                              |    Resolution:     
                                       
    Keywords:  linbox, linear algebra, sd32, sd34          |   Work_issues:     
                                       
    Upstream:  N/A                                         |      Reviewer:  
Burcin Erocal, Simon King, Martin Albrecht
      Author:  Burcin Erocal, Martin Albrecht, Rob Beezer  |        Merged:     
                                       
Dependencies:                                              |  
-----------------------------------------------------------+----------------
Changes (by jdemeyer):

  * status:  closed => new
  * resolution:  fixed =>
  * merged:  sage-4.7.3.alpha0 =>


Comment:

 Unfortunately, there are failures on OS X 10.4 PPC, all in the file
 `sage/matrix/matrix_modn_dense_double.pyx`:
 {{{
 sage -t  -long -force_lib
 devel/sage/sage/matrix/matrix_modn_dense_double.pyx
 **********************************************************************
 File "/Users/jdemeyer/sage-4.7.3.alpha0/devel/sage-
 main/sage/matrix/matrix_modn_dense_double.pyx", line 71:
     sage: A[0,0] = 220082r; A
 Expected:
     [ 220082 2824836  765701 2282256]
     [1795330  767112 2967421 1373921]
     [2757699 1142917 2720973 2877160]
     [1674049 1341486 2641133 2173280]
 Got:
     [      0 2824836  765701 2282256]
     [1795330  767112 2967421 1373921]
     [2757699 1142917 2720973 2877160]
     [1674049 1341486 2641133 2173280]
 **********************************************************************
 File "/Users/jdemeyer/sage-4.7.3.alpha0/devel/sage-
 main/sage/matrix/matrix_modn_dense_double.pyx", line 76:
     sage: a = A[0,0]; a
 Expected:
     220082
 Got:
     0
 **********************************************************************
 File "/Users/jdemeyer/sage-4.7.3.alpha0/devel/sage-
 main/sage/matrix/matrix_modn_dense_double.pyx", line 78:
     sage: ~a
 Exception raised:
     Traceback (most recent call last):
       File "/Users/jdemeyer/sage-4.7.3.alpha0/local/bin/ncadoctest.py",
 line 1231, in run_one_test
         self.run_one_example(test, example, filename, compileflags)
       File "/Users/jdemeyer/sage-4.7.3.alpha0/local/bin/sagedoctest.py",
 line 38, in run_one_example
         OrigDocTestRunner.run_one_example(self, test, example, filename,
 compileflags)
       File "/Users/jdemeyer/sage-4.7.3.alpha0/local/bin/ncadoctest.py",
 line 1172, in run_one_example
         compileflags, 1) in test.globs
       File "<doctest __main__.example_2[5]>", line 1, in <module>
         ~a###line 78:
     sage: ~a
       File "integer_mod.pyx", line 3240, in
 sage.rings.finite_rings.integer_mod.IntegerMod_int64.__invert__
 (sage/rings/finite_rings/integer_mod.c:25534)
       File "integer_mod.pyx", line 3371, in
 sage.rings.finite_rings.integer_mod.mod_inverse_int64
 (sage/rings/finite_rings/integer_mod.c:26331)
     ZeroDivisionError: Inverse does not exist.
 **********************************************************************
 File "/Users/jdemeyer/sage-4.7.3.alpha0/devel/sage-
 main/sage/matrix/matrix_modn_dense_double.pyx", line 86:
     sage: A[0,0] = 220082r; A
 Expected:
     [ 220082 1237101 2033003 3788106]
     [4649912 1157595 4928315 4382585]
     [4252686  978867 2601478 1759921]
     [1303120 1860486 3405811 2203284]
 Got:
     [      0 1237101 2033003 3788106]
     [4649912 1157595 4928315 4382585]
     [4252686  978867 2601478 1759921]
     [1303120 1860486 3405811 2203284]
 **********************************************************************
 File "/Users/jdemeyer/sage-4.7.3.alpha0/devel/sage-
 main/sage/matrix/matrix_modn_dense_double.pyx", line 91:
     sage: a = A[0,0]; a
 Expected:
     220082
 Got:
     0
 **********************************************************************
 File "/Users/jdemeyer/sage-4.7.3.alpha0/devel/sage-
 main/sage/matrix/matrix_modn_dense_double.pyx", line 93:
     sage: a*a
 Expected:
     4777936
 Got:
     0
 **********************************************************************
 File "/Users/jdemeyer/sage-4.7.3.alpha0/devel/sage-
 main/sage/matrix/matrix_modn_dense_double.pyx", line 112:
     sage: A[0,0] = K(220082); A
 Expected:
     [ 220082 2824836  765701 2282256]
     [1795330  767112 2967421 1373921]
     [2757699 1142917 2720973 2877160]
     [1674049 1341486 2641133 2173280]
 Got:
     [      0 2824836  765701 2282256]
     [1795330  767112 2967421 1373921]
     [2757699 1142917 2720973 2877160]
     [1674049 1341486 2641133 2173280]
 **********************************************************************
 File "/Users/jdemeyer/sage-4.7.3.alpha0/devel/sage-
 main/sage/matrix/matrix_modn_dense_double.pyx", line 117:
     sage: a = A[0,0]; a
 Expected:
     220082
 Got:
     0
 **********************************************************************
 File "/Users/jdemeyer/sage-4.7.3.alpha0/devel/sage-
 main/sage/matrix/matrix_modn_dense_double.pyx", line 119:
     sage: ~a
 Exception raised:
     Traceback (most recent call last):
       File "/Users/jdemeyer/sage-4.7.3.alpha0/local/bin/ncadoctest.py",
 line 1231, in run_one_test
         self.run_one_example(test, example, filename, compileflags)
       File "/Users/jdemeyer/sage-4.7.3.alpha0/local/bin/sagedoctest.py",
 line 38, in run_one_example
         OrigDocTestRunner.run_one_example(self, test, example, filename,
 compileflags)
       File "/Users/jdemeyer/sage-4.7.3.alpha0/local/bin/ncadoctest.py",
 line 1172, in run_one_example
         compileflags, 1) in test.globs
       File "<doctest __main__.example_3[6]>", line 1, in <module>
         ~a###line 119:
     sage: ~a
       File "integer_mod.pyx", line 3240, in
 sage.rings.finite_rings.integer_mod.IntegerMod_int64.__invert__
 (sage/rings/finite_rings/integer_mod.c:25534)
       File "integer_mod.pyx", line 3371, in
 sage.rings.finite_rings.integer_mod.mod_inverse_int64
 (sage/rings/finite_rings/integer_mod.c:26331)
     ZeroDivisionError: Inverse does not exist.
 **********************************************************************
 File "/Users/jdemeyer/sage-4.7.3.alpha0/devel/sage-
 main/sage/matrix/matrix_modn_dense_double.pyx", line 129:
     sage: a = A[0,0]; a
 Expected:
     220081
 Got:
     0
 **********************************************************************
 File "/Users/jdemeyer/sage-4.7.3.alpha0/devel/sage-
 main/sage/matrix/matrix_modn_dense_double.pyx", line 131:
     sage: a*a
 Expected:
     4337773
 Got:
     0
 **********************************************************************
 }}}

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/4260#comment:32>
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 post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/sage-trac?hl=en.

Reply via email to