#12103: Use MeatAxe as an optional back end for dense matrices over `GF(p^n)`, p
odd, n>1, `p^n<255`
-------------------------------------+-------------------------------------
Reporter: SimonKing | Owner: jason, was
Type: defect | Status: needs_work
Priority: major | Milestone: sage-6.4
Component: packages: | Resolution:
experimental | Merged in:
Keywords: linear algebra, | Reviewers:
MeatAxe | Work issues:
Authors: Simon King | Commit:
Report Upstream: None of the above | b237c5f4a500f313e573728d4a9b55cca902a255
- read trac for reasoning. | Stopgaps:
Branch: |
u/SimonKing/meataxe |
Dependencies: #19240 |
-------------------------------------+-------------------------------------
Comment (by SimonKing):
In Gaussian elimination, one adds a scalar multiple of one row to another
row. In fact, one knows that pivot of the row to add, i.e., in fact one
only needs to add a *part* of the row (namely the part after the pivot).
However, !MeatAxe did always add the complete rows, including the leading
zeroes.
That's obviously a waste of time, and thus I added another patch to
!MeatAxe in my recent commit.
With the patch:
{{{
sage: M = MatrixSpace(GF(25,'x'),5000).random_element(density=0.001)
sage: %time N = M.echelon_form()
CPU times: user 1min 9s, sys: 156 ms, total: 1min 9s
Wall time: 1min 9s
}}}
Without the patch, it is 1min 31s. I guess that's something.
I am unsure if I will implement echelon computation à la Strassen. If I
do, it is essential to be able to add *parts* of a row, because one
operates on matrix windows and not on matrices.
--
Ticket URL: <http://trac.sagemath.org/ticket/12103#comment:107>
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.