## DET Function

**computes the determinant of a square matrix**
**DET(** *square-matrix***)**

where *square-matrix* is a numeric matrix or literal.

The DET function computes the determinant of
*square-matrix*, which must be square.
The determinant, the product of the
eigenvalues, is a single numeric value.
If the determinant of a matrix is zero, then that matrix
is singular; that is, it does not have an inverse.

The method performs an LU decomposition and collects the
product of the diagonals (Forsythe, Malcolm, and Moler 1967).
For example, the statements
a={1 1 1,1 2 4,1 3 9};
c=det(a);

produce the matrix **C** containing the determinant:
C 1 row 1 col (numeric)
2

The DET function (as well as the INV and SOLVE functions)
uses the following criterion to decide whether the input
matrix, **A** = [*a*_{ij}]_{i,j = 1, ... ,n}, is singular:

where *MACHEPS* is the relative machine precision.
All matrix elements less than or equal to *sing*
are now considered rounding errors of the largest
matrix elements, so they are taken to be zero.
For example, if a diagonal or triangular coefficient matrix has
a diagonal value less than or equal to *sing*, the matrix
is considered singular by the DET, INV, and SOLVE functions.

Previously, a much smaller singularity criterion was
used, which caused algebraic operations to be performed
on values that were essentially floating point error.
This occasionally yielded numerically unstable results.
The new criterion is much more conservative,
and it generates far fewer erroneous results.
In some cases, you may need to scale
the data to avoid singular matrices.
If you think the new criterion is too strong,

- try the GINV function to compute the generalized inverse
- examine the size of the singular
values returned by the SVD fall.
The SVD fall can be used to compute a generalized
inverse with a user-specified singularity criterion.

Copyright © 1999 by SAS Institute Inc., Cary, NC, USA. All rights reserved.