Predicates

The functions in this section test various properties of sparse matrices.

A eq B: MtrxSprs, MtrxSprs -> BoolElt

Given sparse matrices \(A\) and \(B\), return true if and only if \(A\) and \(B\) are equal.

IsZero(A): MtrxSprs -> BoolElt

Given an \(m \times n\) sparse matrix \(A\) over the ring \(R\), return true iff \(A\) is the \(m \times n\) zero sparse matrix.

IsOne(A): MtrxSprs -> BoolElt

Given a square \(m \times m\) sparse matrix \(A\) over the ring \(R\), return true iff \(A\) is the \(m \times m\) identity sparse matrix.

IsMinusOne(A): MtrxSprs -> BoolElt

Given a square \(m \times m\) sparse matrix \(A\) over the ring \(R\), return true iff \(A\) is the negation of the \(m \times m\) identity sparse matrix.

IsScalar(A): MtrxSprs -> BoolElt

Given a square \(m \times m\) sparse matrix \(A\) over the ring \(R\), return true iff \(A\) is scalar, i.e., iff \(A\) is the product of some element of \(R\) and the \(m \times m\) identity sparse matrix.

IsDiagonal(A): MtrxSprs -> BoolElt

Given a square sparse matrix \(A\) over the ring \(R\), return true iff \(A\) is diagonal, i.e., iff the only non-zero entries of \(A\) are on the diagonal.

IsSymmetric(A): MtrxSprs -> BoolElt

Given a square sparse matrix \(A\) over the ring \(R\), return true iff \(A\) is symmetric, i.e., iff \(A\) equals its transpose.

IsUpperTriangular(A): MtrxSprs -> BoolElt

Given a sparse matrix \(A\) over the ring \(R\), return true iff \(A\) is upper triangular, i.e., iff the only non-zero entries of \(A\) are on or above the diagonal.

IsLowerTriangular(A): MtrxSprs -> BoolElt

Given a sparse matrix \(A\) over the ring \(R\), return true iff \(A\) is lower triangular, i.e., iff the only non-zero entries of \(A\) are on or below the diagonal.