%mathpiper,def="IsLowerTriangular"

IsLowerTriangular(A_IsMatrix) <-- (IsUpperTriangular(Transpose(A)));

%/mathpiper



%mathpiper_docs,name="IsLowerTriangular",categories="User Functions;Matrices (Predicates);Predicates"
*CMD IsLowerTriangular --- test for a lower triangular matrix
*STD
*CALL
	IsLowerTriangular(A)

*PARMS

{A} -- a matrix

*DESC

A lower triangular matrix is a square matrix which has all zero entries below the diagonal.

{IsLowerTriangular(A)} returns {True} if {A} is a lower triangular matrix and {False} otherwise.

*E.G.
In> IsLowerTriangular(Identity(5))
Result: True;
In> IsLowerTriangular({{1,2},{0,1}})
Result: False;

A non-square matrix cannot be triangular:
In> IsLowerTriangular({{1,2,3},{0,1,2}})
Result: False;

*SEE IsUpperTriangle, IsDiagonal
%/mathpiper_docs