The material described in this chapter is subject to change.
Vector spaces form another important domain in GAP. They may
be given in any representation whenever the underlying set of elements forms
a vector space in terms of linear algebra. Thus, for example, one may
construct a vector space by defining generating matrices over a field or by
using the base of a field extension as generators. More complex constructions
may fake elements of a vector space by specifying records with appropriate
operations. A special type of vector space, that is implemented in the
GAP library, handles the case where the elements are lists
over a field. This type is the so called RowSpace (see
Row Spaces for details).
General vector spaces are created using the function VectorSpace
(see VectorSpace) and they are represented as records that contain all
necessary information to deal with the vector space. The components listed in
Vector Space Records are common for all vector spaces, but special types of
vector spaces, such as the row spaces, may use additional entries to store
specific data.
The following sections contain descriptions of functions and operations defined for vector spaces.
The next sections describe functions to compute a base (see Base) and the dimension (see Dimension) of a vector space over its field.
The next sections describe how to calculate linear combinations of the elements of a base (see LinearCombination) and how to find the coefficients of an element of a vector space when expressed as a linear combination in the current base (see Coefficients).
The functions described in this chapter are implemented in the file LIBNAME/"vecspace.g".
This chapter contains the following sections: