let R be Ring; for n, i, j being Nat st i < j holds
canMat (i,j,n,R) is upper_triangular
let n be Nat; for i, j being Nat st i < j holds
canMat (i,j,n,R) is upper_triangular
let i, j be Nat; ( i < j implies canMat (i,j,n,R) is upper_triangular )
assume A1:
i < j
; canMat (i,j,n,R) is upper_triangular
let i9, j9 be Nat; MATRIX_1:def 12 ( not [i9,j9] in Indices (canMat (i,j,n,R)) or i9 <= j9 or (canMat (i,j,n,R)) * (i9,j9) = 0. R )
assume A2:
[i9,j9] in Indices (canMat (i,j,n,R))
; ( i9 <= j9 or (canMat (i,j,n,R)) * (i9,j9) = 0. R )
assume
i9 > j9
; (canMat (i,j,n,R)) * (i9,j9) = 0. R
then
( i9 = i implies not j9 = j )
by A1;
then
[i,j] <> [i9,j9]
by XTUPLE_0:1;
hence
(canMat (i,j,n,R)) * (i9,j9) = 0. R
by A2, Def1; verum