# Basis of a Module

The basis of a module is given by vectors. However, more complete information can be supplied which includes the ideals.

## `Basis(M): ModDed -> SeqEnum`

A sequence of vectors which correspond to a pseudo basis of the module $M$.

## `PseudoBasis(M): ModDed -> SeqEnum`

A sequence of tuples containing ideals and vectors which generate the module $M$. The vectors are guaranteed to be linearly independent.

## `PseudoGenerators(M): ModDed -> SeqEnum`

A sequence of tuples containing ideals and vectors which generate the module $M$. This will return the data used to define the module, so that in contrast to [`PseudoBasis`](#function-modded-pseudobasis) the vectors will in general not be independent.

## `LocalBasis(M, p): ModDed, RngOrdIdl -> [ ModTupFldElt ]`

```magma
Type: MonStgElt                    Default: ""
```

Returns a basis of a free module $F$ that agrees with $M$ at the completion at $p$. If `Type` is specified, it must either be `"Submodule"` or `"Supermodule"`. In which case $F$ is either a sub- or supermodule of $M$.
