#6745: quaternion algebras -- add computation of left and right orders
associated
to ideals
-------------------------+--------------------------------------------------
Reporter: was | Owner: tbd
Type: enhancement | Status: new
Priority: major | Milestone: sage-4.1.2
Component: algebra | Keywords:
Reviewer: | Author:
Merged: |
-------------------------+--------------------------------------------------
Description changed by was:
Old description:
> A big gap in functionality for quaternion algebras right now is that one
> can't compute the left and right orders associated to ideals (the
> functions raise NotImplementedError). I just designed a little
> algorithm and wrote code to do this for my research and will post a patch
> here soon.
>
> Just in case I misplace it, some demo code that works is the following:
> {{{
> def left_order(I):
> Q = O.quaternion_algebra()
> M = [matrix([(a*b).coefficient_tuple() for a in Q.basis()]) for b in
> I.basis()]
> B = I.basis_matrix()
> invs = [(B*m^(-1)).row_module(ZZ) for m in M]
> IS =
> invs[0].intersection(invs[1]).intersection(invs[2]).intersection(invs[3])
> ISB = [Q(v) for v in IS.basis()]
> return Q.quaternion_order(ISB)
> }}}
New description:
A big gap in functionality for quaternion algebras right now is that one
can't compute the left and right orders associated to ideals (the
functions raise NotImplementedError). I just designed a little
algorithm and wrote code to do this for my research and will post a patch
here soon.
Just in case I misplace it, some demo code that works is the following:
{{{
def left_order(I):
Q = I.quaternion_algebra()
M = [matrix([(a*b).coefficient_tuple() for a in Q.basis()]) for b in
I.basis()]
B = I.basis_matrix()
invs = [(B*m^(-1)).row_module(ZZ) for m in M]
IS =
invs[0].intersection(invs[1]).intersection(invs[2]).intersection(invs[3])
ISB = [Q(v) for v in IS.basis()]
return Q.quaternion_order(ISB)
}}}
--
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/6745#comment:1>
Sage <http://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
-~----------~----~----~----~------~----~------~--~---