An upper triangular matrix is a square matrix for which every value below the diagonal must be 0. That is to say:

[ a1,1 a1,2 a1,3 ... a1,n ]
[ 0 a2,2 a2,3 ... a2,n ]
A = [ 0 0 a3,3 ... a3,n ]
[ ... ... ... ... ... ]
[ 0 0 0 ... an,n ]

Also defined is the *strictly upper triangular matrix* for which values on the diagonal must also be 0:

[ 0 a1,2 a1,3 ... a1,n ]
[ 0 0 a2,3 ... a2,n ]
A = [ 0 0 0 ... a3,n ]
[ ... ... ... ... ... ]
[ 0 0 0 ... 0 ]

A more formal definition for the standard upper triangular matrix would be

a_{i,j} =

{ 0, `i` > `j`

{ a_{i,j}, `i` ≤ `j`

And for the strictly upper triangular matrix:

a_{i,j} =

{ 0, `i` ≥ `j`

{ a_{i,j}, `i` < `j`

Also see: