Compute row-span coefficients using Hex.Matrix.rowReduce
internally.
Equations
- M.spanCoeffs v = ⋯.spanCoeffs v
Instances For
Soundness of Hex.Matrix.spanCoeffs: returned coefficients reconstruct
the requested vector.
Decide row-span membership using Hex.Matrix.rowReduce internally.
Equations
- M.spanContains v = ⋯.spanContains v
Instances For
Hex.Matrix.spanContains is the Boolean isSome view of
Hex.Matrix.spanCoeffs.
Hex.Matrix.spanContains is exactly row-span membership.
Hex.Matrix.spanCoeffs returns none exactly when v is in no row combination of M,
so a none result certifies that v is not in the row span.
The rank returned by Hex.Matrix.rowReduce.
Equations
- M.rowReduce_rank = M.rowReduce.rank
Instances For
A matrix with a right inverse has full row rank.
If row reduction finds full column rank, the leading square block of the reduced echelon form is the identity.
The computed rank is no larger than the middle dimension of any matrix factorization.
A spanning family bounds the computed rank: if every row of M is a
combination of the rows of B, then M has rank at most the row count of
B.
A right inverse supplies the matching lower rank bound.
The computed rank supplies an explicit factorization through that many coordinates.
Row reduction computes the same rank for a matrix and its transpose.
The public nullspace basis assembled as a matrix of basis columns.
Equations
Instances For
Compute the nullspace basis using Hex.Matrix.rowReduce internally.
Instances For
The k-th column of Hex.Matrix.nullspaceBasisMatrix is the k-th
vector in Hex.Matrix.nullspace.
Every vector returned by Hex.Matrix.nullspace is annihilated by
M.
Every vector in the computed nullspace basis is nonzero.
Every vector annihilated by M is generated by the public nullspace basis matrix.