# UpperTriangularMatrixQ

gives True if m is upper triangular, and False otherwise.

gives True if m is upper triangular starting up from the k diagonal, and False otherwise.

# Details and Options • works even if m is not a square matrix.
• In , positive k refers to superdiagonals above the main diagonal and negative k refers to subdiagonals below the main diagonal.
• UpperTriangularMatrixQ works with SparseArray and structured array objects.
• For approximate matrices, the option Tolerance->t can be used to indicate that all entries Abs[mij]t are taken to be zero.

# Examples

open allclose all

## Basic Examples(3)

Test if a matrix is upper triangular:

Test if a matrix is upper triangular starting from the first superdiagonal:

Test if a matrix is upper triangular starting from the first subdiagonal:

## Scope(7)

Test if a real machine-number matrix is upper triangular:

A complex matrix:

An exact matrix:

An arbitrary-precision matrix:

Test a sparse matrix:

Test whether an explicitly symmetric matrix is upper triangular:

Test a symbolic matrix:

The matrix is upper triangular when c=0:

Test rectangular upper-triangular matrices:

Test if matrices have nonzero entries starting from a particular superdiagonal:

The following matrix is upper triangular but not with respect to the first superdiagonal:

Test if matrices have nonzero entries starting from a particular subdiagonal:

## Options(1)

### Tolerance(1)

This matrix is not upper triangular:

Add the Tolerance option to consider numbers smaller than 10-12 to be zero:

## Applications(3)

LUDecomposition decomposes a matrix as a product of upper and lowertriangular matrices, returned as a triple {lu,perm,cond}:

Form the canonical matrices l and u from the composite matrix lu:

Display the three matrices:

Verify that l and u are lower and upper triangular, respectively:

Reconstruct the original matrix as a permutation of the product of l and u:

SchurDecomposition gives a 2×2-block upper-triangular matrix:

Verify this matrix is upper triangular starting from the first subdiagonal:

JordanDecomposition relates any matrix to an upper-triangular matrix via a similarity transformation :

Visualize the three matrices:

Verify that the Jordan matrix is upper triangular and similar to the original matrix:

The matrix is diagonalizable iff its Jordan matrix is also lower triangular:

## Properties & Relations(12)

UpperTriangularMatrixQ returns False for inputs that are not matrices:

Matrices of dimensions {n,0} are upper triangular:

UpperTriangularize returns matrices that are UpperTriangularMatrixQ:

The inverse of an upper-triangular matrix is upper triangular:

This extends to arbitrary powers and functions:

The product of two (or more) upper-triangular matrices is upper triangular:

QRDecomposition gives an upper-triangular matrix:

CholeskyDecomposition gives an upper-triangular matrix:

The determinant of a triangular matrix equals the product of the diagonal entries:

Eigenvalues of a triangular matrix equal its diagonal elements:

is equivalent to :

A matrix is upper triangular starting at diagonal iff its transpose is lower triangular starting at diagonal :

HessenbergDecomposition returns a matrix that is upper triangular with an added first subdiagonal: