On Jun 5, 5:31 am, Jan Pöschko <[email protected]> wrote:
> Maybe my conception of a free module is different then: In the sense
> ofhttp://en.wikipedia.org/wiki/Free_module, I want an R-module M with
> basis E ⊆ M, where R = ZZ and E is a set of vectors in RR^n. R is what I
> refer to as "coefficient ring" (or "scalar ring"), and it makes a big
> difference whether this is integers (which results in a classic point
> lattice) or real numbers (which results in a subspace).

If the fact that your ZZ-module is a discrete submodule of RR^n is
important to you, you are probably interested in ZZ-modules equipped
with a positive definite symmetric inner product (being the standard
inner product that RR^n induces on its submodules). You don't have to
store your coordinate vectors as floats. You can simply keep track of
a Gram matrix instead. The is what most number theoretic packages do
too. Furthermore, most LLL-implementations allow you to find an LLL-
reduced basis via conjugating the Gram matrix rather than explicitly
changing a float-valued basis.

I don't know if Sage already has a class for "inner product" free ZZ-
modules (many number-theory text reserve the term lattice for *those*
and call the other ones simply free ZZ-modules), but it should have
since that is the natural place to interface with LLL implementations.

-- 
To post to this group, send an email to [email protected]
To unsubscribe from this group, send an email to 
[email protected]
For more options, visit this group at http://groups.google.com/group/sage-devel
URL: http://www.sagemath.org

Reply via email to