> then the application of LLL, BKZ, or other reduction algorithms
> (the output should be a module with basis having the new reduced
> basis, as a submodule of the input module). 

I am wondering about this. I appreciate this is pretty much what Sage would 
normally do, e.g. functions return new objects instead of modifying the 
existing one. However, in my case it would seem natural to improve the basis 
during the lifetime of an object. So my current class has:

sage: from sage.libs.fplll.fplll import gen_ntrulike
sage: L = RealLattice(gen_ntrulike(30,22,27), lll_reduce=False)
sage: L
Lattice of degree 60 and rank 60 over Integer Ring
Basis matrix:
60 x 60 dense matrix over Integer Ring
sage: L.basis[0].norm().n()
1.27010201751796e7

sage: L.LLL()
sage: L.basis[0].norm().n()
19.7737199332852

sage: L.BKZ(block_size=20)
sage: L.basis[0].norm().n()
11.0905365064094

Cheers,
Martin

-- 
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 post to this group, send email to sage-devel@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to