On Tue, Jun 16, 2020 at 8:52 AM Taylor Huang <
asd00012...@gmail.com> wrote:
>
> Hi, thanks for your reply.
> I also note found that the membership check is broken as well.
>
> from sage.modules.free_module_integer import IntegerLattice
> coef = Matrix([-44429982080874270968379672793605458, 98931650854481334735580708522902113])
> bMat = Matrix([[20957228, -4966110],[ 9411844, 19625639]])
> L = IntegerLattice(bMat)
> print(coef*bMat in L)
here is a bit of sanity check, also showing how to take a different
codepath in Sage for the membership check
from sage.modules.free_module_integer import IntegerLattice
coef = Matrix([-44429982080874270968379672793605458,
98931650854481334735580708522902113])
bMat = Matrix([[20957228, -4966110],[ 9411844, 19625639]])
L = IntegerLattice(bMat)
coef*bMat in L # prints false
bMatGAP=libgap(bMat)
v=libgap(coef*bMat)[0]
sol=libgap.SolutionIntMat(bMatGAP,v); sol # prints
# [ -423434671769860, -18882583298608161305225815339 ]
vector(sol.sage())*bMat==vector(coef*bMat) # sanity check - prints True
I've updated the ticket, and made it blocker.
> To view this discussion on the web visit
https://groups.google.com/d/msgid/sage-devel/c52d0e9f-c038-49d4-b00a-449023bd3ce5n%40googlegroups.com.