VectorSpaceBasis RΒΆ
vsbasis.spad line 1 [edit on github]
R: Field
The domain VectorSpaceBasis F implements subspaces of finite dimensional vector spaces over a field F. A subspace is represented by a list of linearly independent coordinate vectors which constitute a basis. The empty list represents the space of dimension 0.
- 0: %
0creates the empty basis describing the space with the zero vector. The length of this zero vector is undefined.
- *: (%, %) -> %
b1*b2computes a basis of the intersection of two subspaces.
- +: (%, %) -> %
B1+B2computes a basis of the sum of two subspaces.
- basis: List Vector R -> %
basis LVextracts a basis of the subspace spanned by the list of vectorsLV.
- canonicalBasis: NonNegativeInteger -> %
canonicalBasis nbuilds the canonical basis of the vector space of dimensionn.
- coerce: % -> List Vector R
coerce breturns the basis as a list of vectors.- coerce: % -> OutputForm
from CoercibleTo OutputForm
- columnSpace: Matrix R -> %
columnSpace Mbuilds a basis of the image space of the linear transformation defined by the matrixM. This function calls thecolumnSpacefrom theMatrixdomain. Only the signature changes.
- complementSpace: % -> %
complementSpace Bbuilds a complement space of the basisBfrom some vectors of the canonical basis. This function fails with the empty basis.
- complementSpace: (%, NonNegativeInteger) -> %
complementSpace(B, n)builds a complement space of the basisBfrom some vectors of the canonical basisB. The integernprovides the length of the vectors in the case of the empty basis.
- complementSpace: (List Vector R, NonNegativeInteger) -> %
complementSpace(Lv, n)builds a complement space of the subspace spanned by the list of vectorsLV. The integernprovides the length of the vectors in the case of the empty basis.
- complementSpace: List Vector R -> %
complementSpace Lvbuilds a complement space of the subspace spanned by the list of vectorsLV. This function fails with the empty basis.
- coordinates: (Vector R, %) -> Vector R
coordinates(v, B)computes the coordinates of the vectorvin the basisBif possible and produces an error otherwise.
- coordinatesIfCan: (Vector R, %) -> Union(Vector R, failed)
coordinatesIfCan(v, B)computes the coordinates of the vectorvin the basisBif possible and returns"failed"otherwise.
- intBasis: (%, %) -> %
intBasis(B1, B2)computes a basis of the intersection of the two subspaces.
- intBasis: (List Vector R, List Vector R) -> %
intBasis(Lv1, Lv2)computes a basis of the intersection of the two subspaces spanned by the vectors ofLv1andLv2.
- intBasis: List % -> %
intBasis Lbcomputes a basis of the intersection of the list of subspaces represented byLLv.
- intBasis: List List Vector R -> %
intBasis LLvcomputes a basis of the intersection of the list of subspaces represented byLLv.
- member?: (Vector R, %) -> Boolean
member?(v, B)tests if the vectorvis in the subspace spanned byB.
- nullSpace: Matrix R -> %
nullSpace Mbuilds a basis of the kernel of the linear transformation defined by the matrixM. This function calls the functionnullSpacefrom theMatrixdomain. Only the signature changes.
- rank: % -> NonNegativeInteger
rank bcomputes the rank of a basis, i.e. the number of vectors in the basis.
- rank: List Vector R -> NonNegativeInteger
rank Lvcomputes the rank of a list of vectors.
- subspace?: (%, %) -> Boolean
subspace?(B1, B2)tests if the first space is included in the second.
- sumBasis: (%, %) -> %
sumBasis(B1, B2)computes a basis of the sum of the two subspaces.
- sumBasis: (List Vector R, List Vector R) -> %
sumBasis(Lv1, Lv2)computes a basis of the sum of the two subspaces spanned by the vectors ofLv1andLv2.
- sumBasis: List % -> %
sumBasis Lbcomputes a basis of the sum of list of subspaces. This function is slightly more efficient thanreduce(sumBasis, Lb).