On Sun, 27 Sep 2020, 18:43 Santanu Sarkar, <sarkar.santanu....@gmail.com> wrote:
> Dear Martin, > Thank you so much. It works! > Can we make it faster? > It took 17 seconds for my problem but > M1.LLL() took only 3 seconds. Of course I understand we > are calculating extra matrix U. > one needs to do some Cython programming, as suggested by the trac ticket mentioned above. > Thanks again for your help. > > Regards, > Santanu > > > > On Sun, 27 Sep 2020 at 20:45, 'Martin R. Albrecht' via sage-devel < > sage-devel@googlegroups.com> wrote: > >> Hi there, >> >> This should do the trick: >> >> sage: from fpylll import * >> sage: A = random_matrix(ZZ, 6, 90) >> sage: U = IntegerMatrix.identity(6) >> sage: B = LLL.reduction(IntegerMatrix.from_matrix(A), >> U).to_matrix(matrix(ZZ, 6, >> 90)) >> sage: U = U.to_matrix(matrix(ZZ, 6,6)) >> sage: B == U*A >> True >> sage: abs(U.det()) >> 1 >> >> Cheers, >> Martin >> >> >> Santanu Sarkar <sarkar.santanu....@gmail.com> writes: >> > Dear all, >> > I have a matrix M1 with integer entries with 90 rows and 6 columns. >> > After applying LLL algorithm of M1, I get M2=M1.LLL(). I want to get >> > corresponding unimodular transformation matrix T such that >> > T*M1=M2. We can find T by >> > T=M2*M1.pseudoinverse() or T== M1.solve_left(M2), but determinant of T >> > becomes 0 i.e., T.det()=0. >> > I want T.det()=1. >> > >> > Best regards, >> > Santanu >> >> >> -- >> >> _pgp: https://keybase.io/martinralbrecht >> _www: https://malb.io >> >> -- >> You received this message because you are subscribed to the Google Groups >> "sage-devel" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to sage-devel+unsubscr...@googlegroups.com. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/sage-devel/87h7rjmesx.fsf%40googlemail.com >> . >> > -- > You received this message because you are subscribed to the Google Groups > "sage-devel" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to sage-devel+unsubscr...@googlegroups.com. > To view this discussion on the web visit > https://groups.google.com/d/msgid/sage-devel/CAOe8sPLQ8%2BqnGwJq%3DCGTi5f-HcZAJc3%2Bgpe6sf-qASGnvPVRJw%40mail.gmail.com > <https://groups.google.com/d/msgid/sage-devel/CAOe8sPLQ8%2BqnGwJq%3DCGTi5f-HcZAJc3%2Bgpe6sf-qASGnvPVRJw%40mail.gmail.com?utm_medium=email&utm_source=footer> > . > -- You received this message because you are subscribed to the Google Groups "sage-devel" group. To unsubscribe from this group and stop receiving emails from it, send an email to sage-devel+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/sage-devel/CAAWYfq3B%3DjWihKvPDz5MYqbVVOZPmhbST_yFQj5YOqSZG2X4uA%40mail.gmail.com.