Determinant and Other Properties

Contents

Determinant(A: parameters) : MtrxSprs -> RngElt
    MonteCarloSteps: RngIntElt          Default: 
Given a square sparse matrix A over the ring R, return the determinant of A as an element of R. R may be any commutative ring.

The algorithm first performs sparse elimination using Markowitz pivoting ([DEJ84, Sec. 9.2]) to obtain a smaller dense matrix, then the determinant algorithm for dense-representation matrices is applied to this matrix. If the parameter MonteCarloSteps is given, then this is passed to the dense algorithm for the dense matrix.

Elementary Divisors (Smith Form)

ElementaryDivisors(A) : MtrxSprs -> [RngElt]
Given an m x n matrix A over the Euclidean ring or field R, return the elementary divisors of A. These are simply the non-zero diagonal entries of the Smith form of A, in order.

The divisors are returned as a sequence Q = [e1, ..., ed], ei | ei + 1 (i=1, ..., d - 1) of d elements of R (which may include ones), where d is the rank of A. If R is a field, the result is always a sequence of r ones, where r is the rank of A.

A function for computing the Smith normal form is not supplied for sparse matrices since the form may be trivially derived from the elementary divisors, and the sequence Q containing the divisors is often more convenient (and takes less memory). As transformation matrices are dense in general, they are not supported for the sparse representation.

The algorithm first performs sparse elimination using Markowitz pivoting to obtain a smaller dense matrix ([DEJ84, Sec. 9.2]; this is similar to the techniques described in [HHR93]). Then it invokes the dense Smith normal form algorithm for normal (dense-representation) matrices (SmithForm).

Verbosity

SetVerbose("SparseMatrix", v) : MonStgElt, RngIntElt ->
(Procedure.) Set the verbose printing level for all sparse matrix algorithms to be v. Currently the legal values for v are true, false, 0, 1, 2, and 3 (false has the same effect as 0, and true has the same effect as 1).
V2.28, 13 July 2023