UpperTriangularMatrixQ
Details and Options

- UpperTriangularMatrixQ[m,k] works even if m is not a square matrix.
- In UpperTriangularMatrixQ[m,k], 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 allBasic Examples (3)Summary of the most common use cases
Test if a matrix is upper triangular:

https://wolfram.com/xid/0ixkn43z4qdubwj-27gzwj


https://wolfram.com/xid/0ixkn43z4qdubwj-9hv81a

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

https://wolfram.com/xid/0ixkn43z4qdubwj-tjsad0


https://wolfram.com/xid/0ixkn43z4qdubwj-wqj3n8

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

https://wolfram.com/xid/0ixkn43z4qdubwj-wxop96


https://wolfram.com/xid/0ixkn43z4qdubwj-ze9ruh

Scope (12)Survey of the scope of standard use cases
Basic Uses (8)

https://wolfram.com/xid/0ixkn43z4qdubwj-3eka2c


https://wolfram.com/xid/0ixkn43z4qdubwj-qbn9tq


https://wolfram.com/xid/0ixkn43z4qdubwj-xw6cu9


https://wolfram.com/xid/0ixkn43z4qdubwj-4q3to9


https://wolfram.com/xid/0ixkn43z4qdubwj-t9r6yr

The matrix is upper triangular when c=0:

https://wolfram.com/xid/0ixkn43z4qdubwj-rfd3d3

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

https://wolfram.com/xid/0ixkn43z4qdubwj-i9rnq4


https://wolfram.com/xid/0ixkn43z4qdubwj-gxzi26


https://wolfram.com/xid/0ixkn43z4qdubwj-8uhnrl

Test an arbitrary-precision matrix:

https://wolfram.com/xid/0ixkn43z4qdubwj-riile5

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

https://wolfram.com/xid/0ixkn43z4qdubwj-tc002q


https://wolfram.com/xid/0ixkn43z4qdubwj-sdnvow

Note that this matrix is upper triangular:

https://wolfram.com/xid/0ixkn43z4qdubwj-bgrkqj

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

https://wolfram.com/xid/0ixkn43z4qdubwj-f9z0a8


https://wolfram.com/xid/0ixkn43z4qdubwj-50yy6g

Note that this matrix is not upper triangular:

https://wolfram.com/xid/0ixkn43z4qdubwj-1hmt9i
Special Matrices (4)

https://wolfram.com/xid/0ixkn43z4qdubwj-2e9li8


https://wolfram.com/xid/0ixkn43z4qdubwj-eordwx


https://wolfram.com/xid/0ixkn43z4qdubwj-o1h9a0


https://wolfram.com/xid/0ixkn43z4qdubwj-4n3kqz


https://wolfram.com/xid/0ixkn43z4qdubwj-r0mg5u


https://wolfram.com/xid/0ixkn43z4qdubwj-nqlm37

Identity matrices are upper triangular:

https://wolfram.com/xid/0ixkn43z4qdubwj-3mw37w

Hilbert matrices are not upper triangular:

https://wolfram.com/xid/0ixkn43z4qdubwj-vswvb8

Options (1)Common values & functionality for each option
Tolerance (1)
This matrix is not upper triangular:

https://wolfram.com/xid/0ixkn43z4qdubwj-yk096g

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

https://wolfram.com/xid/0ixkn43z4qdubwj-cqh24k

Applications (3)Sample problems that can be solved with this function
LUDecomposition decomposes a matrix as a product of upper‐ and lower‐triangular matrices, returned as a triple {lu,perm,cond}:

https://wolfram.com/xid/0ixkn43z4qdubwj-brqp33
Form the canonical matrices l and u from the composite matrix lu:

https://wolfram.com/xid/0ixkn43z4qdubwj-rwtekw

https://wolfram.com/xid/0ixkn43z4qdubwj-ekif07

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

https://wolfram.com/xid/0ixkn43z4qdubwj-44g2xz

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

https://wolfram.com/xid/0ixkn43z4qdubwj-k5fz2w

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

https://wolfram.com/xid/0ixkn43z4qdubwj-qwb66

https://wolfram.com/xid/0ixkn43z4qdubwj-5pmecm

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

https://wolfram.com/xid/0ixkn43z4qdubwj-ki7oew

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

https://wolfram.com/xid/0ixkn43z4qdubwj-2dscsn

https://wolfram.com/xid/0ixkn43z4qdubwj-xn0u9l

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

https://wolfram.com/xid/0ixkn43z4qdubwj-eixqwj

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

https://wolfram.com/xid/0ixkn43z4qdubwj-s8zp2v

Properties & Relations (12)Properties of the function, and connections to other functions
UpperTriangularMatrixQ returns False for inputs that are not matrices:

https://wolfram.com/xid/0ixkn43z4qdubwj-wyx6bq


https://wolfram.com/xid/0ixkn43z4qdubwj-l5r7xk

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

https://wolfram.com/xid/0ixkn43z4qdubwj-shucue

UpperTriangularize returns matrices that are UpperTriangularMatrixQ:

https://wolfram.com/xid/0ixkn43z4qdubwj-59h3h5

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

https://wolfram.com/xid/0ixkn43z4qdubwj-jg5eek

https://wolfram.com/xid/0ixkn43z4qdubwj-k8yzgl

This extends to arbitrary powers and functions:

https://wolfram.com/xid/0ixkn43z4qdubwj-jo6a0k


https://wolfram.com/xid/0ixkn43z4qdubwj-tr8i0n

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

https://wolfram.com/xid/0ixkn43z4qdubwj-8103un

https://wolfram.com/xid/0ixkn43z4qdubwj-dwt6ws

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

https://wolfram.com/xid/0ixkn43z4qdubwj-cmcc5y

https://wolfram.com/xid/0ixkn43z4qdubwj-dt6d6k


https://wolfram.com/xid/0ixkn43z4qdubwj-8nwrmx

Eigenvalues of a triangular matrix equal its diagonal elements:

https://wolfram.com/xid/0ixkn43z4qdubwj-9bt28q

https://wolfram.com/xid/0ixkn43z4qdubwj-p7rhkx


https://wolfram.com/xid/0ixkn43z4qdubwj-nfcuda

UpperTriangularMatrixQ[m,0] is equivalent to UpperTriangularMatrixQ[m]:

https://wolfram.com/xid/0ixkn43z4qdubwj-ybjuxk


https://wolfram.com/xid/0ixkn43z4qdubwj-ep5e9m

QRDecomposition gives an upper triangular matrix:

https://wolfram.com/xid/0ixkn43z4qdubwj-o9w0op

https://wolfram.com/xid/0ixkn43z4qdubwj-bjnbdi

CholeskyDecomposition gives an upper triangular matrix:

https://wolfram.com/xid/0ixkn43z4qdubwj-khaebf


https://wolfram.com/xid/0ixkn43z4qdubwj-4lqgip

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

https://wolfram.com/xid/0ixkn43z4qdubwj-y49kqd

https://wolfram.com/xid/0ixkn43z4qdubwj-l4adyx

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

https://wolfram.com/xid/0ixkn43z4qdubwj-b2gm3j

https://wolfram.com/xid/0ixkn43z4qdubwj-2pnb45

Wolfram Research (2019), UpperTriangularMatrixQ, Wolfram Language function, https://reference.wolfram.com/language/ref/UpperTriangularMatrixQ.html.
Text
Wolfram Research (2019), UpperTriangularMatrixQ, Wolfram Language function, https://reference.wolfram.com/language/ref/UpperTriangularMatrixQ.html.
Wolfram Research (2019), UpperTriangularMatrixQ, Wolfram Language function, https://reference.wolfram.com/language/ref/UpperTriangularMatrixQ.html.
CMS
Wolfram Language. 2019. "UpperTriangularMatrixQ." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/UpperTriangularMatrixQ.html.
Wolfram Language. 2019. "UpperTriangularMatrixQ." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/UpperTriangularMatrixQ.html.
APA
Wolfram Language. (2019). UpperTriangularMatrixQ. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/UpperTriangularMatrixQ.html
Wolfram Language. (2019). UpperTriangularMatrixQ. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/UpperTriangularMatrixQ.html
BibTeX
@misc{reference.wolfram_2025_uppertriangularmatrixq, author="Wolfram Research", title="{UpperTriangularMatrixQ}", year="2019", howpublished="\url{https://reference.wolfram.com/language/ref/UpperTriangularMatrixQ.html}", note=[Accessed: 18-May-2025
]}
BibLaTeX
@online{reference.wolfram_2025_uppertriangularmatrixq, organization={Wolfram Research}, title={UpperTriangularMatrixQ}, year={2019}, url={https://reference.wolfram.com/language/ref/UpperTriangularMatrixQ.html}, note=[Accessed: 18-May-2025
]}