reserve i,n for Nat,
  K for Field,
  M1,M2,M3,M4 for Matrix of n,K;

theorem
  M1 is invertible & M1*M2=M1*M3 implies M2=M3
proof
  assume that
A1: M1 is invertible and
A2: M1*M2=M1*M3;
A3: M1~ is_reverse_of M1 by A1,MATRIX_6:def 4;
A4: len M2=n by MATRIX_0:24;
A5: width M1=n & len M1=n by MATRIX_0:24;
A6: len M3=n by MATRIX_0:24;
A7: width (M1~)=n by MATRIX_0:24;
  M2=(1.(K,n))*M2 by MATRIX_3:18
    .=(M1~*M1)*M2 by A3,MATRIX_6:def 2
    .=M1~*(M1*M3) by A2,A5,A4,A7,MATRIX_3:33
    .=(M1~*M1)*M3 by A5,A6,A7,MATRIX_3:33
    .=(1.(K,n))*M3 by A3,MATRIX_6:def 2
    .=M3 by MATRIX_3:18;
  hence thesis;
end;
