let n be Nat; :: thesis: for M1, M2 being Matrix of n,REAL st M1 is Nonpositive holds

M1 + M2 is_less_or_equal_with M2

let M1, M2 be Matrix of n,REAL; :: thesis: ( M1 is Nonpositive implies M1 + M2 is_less_or_equal_with M2 )

A1: ( Indices M1 = [:(Seg n),(Seg n):] & Indices (M1 + M2) = [:(Seg n),(Seg n):] ) by MATRIX_0:24;

assume A2: M1 is Nonpositive ; :: thesis: M1 + M2 is_less_or_equal_with M2

for i, j being Nat st [i,j] in Indices (M1 + M2) holds

(M1 + M2) * (i,j) <= M2 * (i,j)

M1 + M2 is_less_or_equal_with M2

let M1, M2 be Matrix of n,REAL; :: thesis: ( M1 is Nonpositive implies M1 + M2 is_less_or_equal_with M2 )

A1: ( Indices M1 = [:(Seg n),(Seg n):] & Indices (M1 + M2) = [:(Seg n),(Seg n):] ) by MATRIX_0:24;

assume A2: M1 is Nonpositive ; :: thesis: M1 + M2 is_less_or_equal_with M2

for i, j being Nat st [i,j] in Indices (M1 + M2) holds

(M1 + M2) * (i,j) <= M2 * (i,j)

proof

hence
M1 + M2 is_less_or_equal_with M2
; :: thesis: verum
let i, j be Nat; :: thesis: ( [i,j] in Indices (M1 + M2) implies (M1 + M2) * (i,j) <= M2 * (i,j) )

assume A3: [i,j] in Indices (M1 + M2) ; :: thesis: (M1 + M2) * (i,j) <= M2 * (i,j)

then M1 * (i,j) <= 0 by A2, A1;

then (M1 * (i,j)) + (M2 * (i,j)) <= M2 * (i,j) by XREAL_1:32;

hence (M1 + M2) * (i,j) <= M2 * (i,j) by A1, A3, MATRIXR1:25; :: thesis: verum

end;assume A3: [i,j] in Indices (M1 + M2) ; :: thesis: (M1 + M2) * (i,j) <= M2 * (i,j)

then M1 * (i,j) <= 0 by A2, A1;

then (M1 * (i,j)) + (M2 * (i,j)) <= M2 * (i,j) by XREAL_1:32;

hence (M1 + M2) * (i,j) <= M2 * (i,j) by A1, A3, MATRIXR1:25; :: thesis: verum