#19112: Add a function "isometry" to the quadratic forms package.
-------------------------------------+-------------------------------------
Reporter: tgaona | Owner:
Type: enhancement | Status: needs_info
Priority: minor | Milestone: sage-6.10
Component: quadratic forms | Resolution:
Keywords: isometry | Merged in:
Authors: Tyler Gaona | Reviewers:
Report Upstream: N/A | Work issues:
Branch: | Commit:
u/tgaona/ticket/19112 | 582ae4500eb3652446c6f829310298953f8dbd02
Dependencies: | Stopgaps:
-------------------------------------+-------------------------------------
Comment (by annahaensch):
I have looked over tgaona's algorithm, and it makes sense to me. The
block of code mentioned in comment 26 is a bit confusing, but I believe
that it is necessary since its eventually necessary to invert, and
therefore avoid the possibility of having a singular change of basis
matrix.
Another source of confusion, I believe, is in the description of the
helper function {{{modify basis}}}. I do believe that it does precisely
what it needs to do in the context of the code, but the description is not
quite correct, and a little bit misleading, since it is always a function
acting on a submatrix of the original basis matrix. A better description
might read "Given a lattice L with basis matrix M and a vector,
v=(v_1,...,v_n) of length n, this function extends the basis {b_1,...,b_n}
of an underlying nxn orthogonal component of L to contain the vector
v_1b_1+...+v_nb_n."
The functions {{{diagonal_isometry}}},
{{{compute_gram_matrix_from_basis}}}, {{{modify_basis}}}, and
{{{graham_schmidt}}} are all very particular to this parent function
{{{isometry}}}, so (I believe) the standard Sage convention is to begin
those with an underscore. Also, I believe a better name for the parent
function would be {{{explicit_isometry}}} just to differentiate this from
the binary function returning True or False.
Other than that, I'll concede that there may very well be a faster way to
run this algorithm, but as tgaona has it, it's certainly correct.
--
Ticket URL: <http://trac.sagemath.org/ticket/19112#comment:36>
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 https://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.