#5557: implement ridiculously fast 4x4 determinant
----------------------------+-----------------------------------------------
 Reporter:  boothby         |       Owner:  was       
     Type:  enhancement     |      Status:  new       
 Priority:  minor           |   Milestone:  sage-3.4.1
Component:  linear algebra  |    Keywords:            
----------------------------+-----------------------------------------------

Comment(by boothby):

 cwitty, this wasn't quite ready -- but thanks for your diligence!  The new
 patch makes this method default for dimension 4, and removes the
 algorithm='4x4' option.  Also, I put the code used to generate this code
 into the matrix_integer_dense.pyx file.  Finally, the _det_4x4 method has
 been changed to _det_4x4_unsafe.

 Timings:
 {{{
 Sage 3.4:
     sage: S = MatrixSpace(ZZ,4)
     sage: M = S.random_element(1,10000^200)
     sage: timeit("M.determinant()")
     5 loops, best of 3: 1.75 s per loop
 Updated...
     sage: S = MatrixSpace(ZZ,4)
     sage: M = S.random_element(1,10000^200)
     sage: timeit("M.determinant()")
     625 loops, best of 3: 175 µs per loop
 Using Pari:
     sage: N = pari(M)
     sage: timeit("N.matdet();")
     625 loops, best of 3: 337 µs per loop
 }}}

 So in general, this is hugely faster than the previous version of Sage,
 and twice as fast as Pari.

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/5557#comment:2>
Sage <http://sagemath.org/>
Sage - Open Source Mathematical Software: Building the Car Instead of 
Reinventing the Wheel

--~--~---------~--~----~------------~-------~--~----~
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