On Dec 28, 5:27 pm, Santanu Sarkar <sarkar.santanu....@gmail.com>
wrote:
> Is there any faster method to compute Hermite Normal Form
>   of a matrix  A and corresponding transformation matrix? I use
> A.hermite_form(transformation=true). However it is very slow.
>
> Also is there any transformation matrix corresponding to the LLL algorithm.

What are the size/shape of your problem? If you just want the
hermite_form you can use A.hermite_form(algorithm = ...), where the
algorithms available can be checked in A.echelon_form.

If you need transformation = true. Then the method will always be a
padic one, that is asymptotically fast, but may be slow for small
matrices.

Concerning the question of LLL. I may be wrong, but I think that there
is not right now a  built-in method to obtain the transformation
matrix. You could solve the linear system of equations

sage: A = random_matrix(ZZ, 25, 50)
sage: B = A.LLL()
sage: trans_matrix = A \ B
sage: A * trans_matrix == B
True

-- 
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URL: http://www.sagemath.org

Reply via email to