#8693: QuadraticForm.basis_of_short_vectors may not return an actual ZZ-basis
-------------------------------------------------+-------------------------
Reporter: afiori | Owner: justin
Type: defect | Status: new
Priority: major | Milestone: sage-6.9
Component: quadratic forms | Resolution:
Keywords: quadratic forms, basis, | Merged in:
automorphisms | Reviewers:
Authors: | Work issues:
Report Upstream: N/A | Commit:
Branch: | Stopgaps:
Dependencies: |
-------------------------------------------------+-------------------------
Changes (by jdemeyer):
* milestone: => sage-6.9
Old description:
> QuadraticForm::basis_of_short_vectors does not actually ensure the list
> of vectors it returns is a basis, it only assures that it spans a full
> rank sub-lattice.
>
> In particular in the following example (E8):
>
> {{{
> Q = QuadraticForm( matrix( [[2,0,0,0,0,0,0,1],
> [0,2,1,1,1,1,1,1],
> [0,1,2,1,1,1,1,1],
> [0,1,1,2,1,1,1,1],
> [0,1,1,1,2,1,1,1],
> [0,1,1,1,1,2,1,1],
> [0,1,1,1,1,1,2,0],
> [1,1,1,1,1,1,0,2]] ))
> B = Q.basis_of_short_vectors()
> matrix(B).det()
> }}}
>
> The result is -2, which indicates we did not get a basis.
> Note that the above means that sage likely returns incorrect results
> about the automorphism groups of a number of interesting lattices.
> I am attaching some sample code which (once properly merged {and tested})
> could be used to correct the issue.
New description:
`QuadraticForm.basis_of_short_vectors()` does not actually ensure the list
of vectors it returns is a basis, it only assures that it spans a full
rank sub-lattice.
In particular in the following example (E8):
{{{
Q = QuadraticForm( matrix( [[2,0,0,0,0,0,0,1],
[0,2,1,1,1,1,1,1],
[0,1,2,1,1,1,1,1],
[0,1,1,2,1,1,1,1],
[0,1,1,1,2,1,1,1],
[0,1,1,1,1,2,1,1],
[0,1,1,1,1,1,2,0],
[1,1,1,1,1,1,0,2]] ))
B = Q.basis_of_short_vectors()
matrix(B).det()
}}}
The result is -2, which indicates we did not get a basis.
I am attaching some sample code which (once properly merged {and tested})
could be used to correct the issue.
--
--
Ticket URL: <http://trac.sagemath.org/ticket/8693#comment:2>
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.