#8301: segfault in m4ri
------------------------------+---------------------------------------------
   Reporter:  was             |       Owner:  was       
       Type:  defect          |      Status:  new       
   Priority:  major           |   Milestone:  sage-4.3.3
  Component:  linear algebra  |    Keywords:            
     Author:                  |    Upstream:  N/A       
   Reviewer:                  |      Merged:            
Work_issues:                  |  
------------------------------+---------------------------------------------
 Type in
 {{{
 sage: b = random_matrix(GF(2),4,200); b[3] = b[0]; b.rank()
 }}}
 and get an absolutely stupendous segfault!

 For the first time ever I finally get to use GF(2) matrix algebra for some
 actually interesting number theory research.  So I wrote a program that
 creates some fairly simple GF(2) matrices (using modular symbols), and
 tried the first somewhat nontrivial thing (computing the rank of a 4xn
 matrix) and got segfaults.  This is on 64-bit Ubuntu Linux.  Yikes.   So:

   1. These need to get fixed, obviously.

   2. Is there an easy way to completely turn off m4ri?  Seeing how easily
 it fell over, I don't trust it, and though it is fast I definitely want to
 rerun all my calculations m4ri free once I have everything setup.  These
 are calculations for a published paper that will play a key role in a
 "proof by computer" of a potentially important result in number theory.

 Regarding 2, here is a way that I seem to be able to get a matrix mod n
 dense, and I can then compute the rank, which in this case uses linbox,
 and is probably fast enough for my application:
 {{{
 sage: c =
 sage.matrix.matrix_modn_dense.Matrix_modn_dense(b.parent(),b.list(),False,True)
 sage: c.rank()
 3
 sage: timeit('c.rank()')
 625 loops, best of 3: 534 ns per loop
 sage: timeit('c._clear_cache(); c.rank()')
 625 loops, best of 3: 161 µs per loop
 }}}

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/8301>
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