#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_review
Priority: major | Milestone: sage-6.9
Component: packages: | Resolution:
optional | Merged in:
Keywords: linear algebra, | Reviewers:
MeatAxe | Work issues:
Authors: Simon King | Commit:
Report Upstream: Reported | c67cb42042b25d17aeb17999ac7430aafef0f142
upstream. No feedback yet. | Stopgaps:
Branch: |
u/SimonKing/meataxe |
Dependencies: #19240 |
-------------------------------------+-------------------------------------
Changes (by SimonKing):
* status: needs_work => needs_review
* work_issues: Pickling =>
Comment:
The problem was: The default implementation of unpickling relies on
`set_unsafe(i,j,val)`. In my implementation, `set_unsafe` relies on a
converter from finite field elements to the internal representation---and
the converter is not created during the unpickling.
Hence, I created a custom `__reduce__` relying on some unpickling
function.
There, I used the occasion to return to what I did in the old group
cohomology spkg: Pickling is *not* by conversion of the matrix to a list
of entries, but it dumps the densely packed internal representation.
Advantage: It is a lot faster!
For the group cohomology spkg, it was checked that the internal
representation does not depend on details such as big versus little endian
machines: A pickle created on a big-endian machine can correctly be
unpickled with a little-endian machine.
Another advantage of the new approach will be apparent in #18514: Since
the new pickling/unpickling scheme for meataxe matrices is a lot closer
to the scheme used in the old group cohomology spkg, the *new* group
cohomology package should relatively easily be able to read data from
existing cohomology data bases.
--
Ticket URL: <http://trac.sagemath.org/ticket/12103#comment:165>
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.