reserve a,b for Real,
  i,j,n for Nat,
  M,M1,M2,M3,M4 for Matrix of n, REAL;

theorem
  a<=0 & b<=a & M1 is Nonpositive & M2 is_less_or_equal_with M1 implies
  a*M1 is_less_or_equal_with b*M2
proof
  assume that
A1: a<=0 & b<=a and
A2: M1 is Nonpositive & M2 is_less_or_equal_with M1;
A3: Indices (a*M1) = Indices M1 by MATRIXR1:28;
A4: Indices M1 = [:Seg n, Seg n:] & Indices M2 = [:Seg n, Seg n:] by
MATRIX_0:24;
  for i,j st [i,j] in Indices (a*M1) holds (a*M1)*(i,j)<=(b*M2)*(i,j)
  proof
    let i,j;
    assume
A5: [i,j] in Indices (a*M1);
    then M1*(i,j)<=0 & M2*(i,j)<=M1*(i,j) by A2,A4,A3;
    then a*(M1*(i,j))<=b*(M2*(i,j)) by A1,XREAL_1:67;
    then (a*M1)*(i,j)<=b*(M2*(i,j)) by A3,A5,Th4;
    hence thesis by A4,A3,A5,Th4;
  end;
  hence thesis;
end;
