reserve i,j,n for Nat,
  K for Field,
  a for Element of K,
  M,M1,M2,M3,M4 for Matrix of n,K;
reserve A for Matrix of K;

theorem
  for K being Ring
  for M1,M2 being Matrix of n,K holds
  M1 is Orthogonal & M1 commutes_with M2 implies M1@ commutes_with M2
proof
  let K be Ring;
  let M1,M2 be Matrix of n,K;
  set M3=M1@;
  assume that
A1: M1 is Orthogonal and
A2: M1 commutes_with M2;
  M1 is invertible by A1;
  then
A3: M1~ is_reverse_of M1 by Def4;
A4: width M2=n by MATRIX_0:24;
A5: width M1=n by MATRIX_0:24;
A6: len M2=n & width (M1~)=n by MATRIX_0:24;
A7: len (M1~)=n & width (M1~*M2)=n by MATRIX_0:24;
A8: len M1=n by MATRIX_0:24;
  M2*M3=((1.(K,n))*M2)*(M1@) by MATRIX_3:18
    .=((M1~*M1)*M2)*(M1@) by A3
    .=(M1~*(M1*M2))*(M1@) by A5,A8,A6,MATRIX_3:33
    .=(M1~*(M2*M1))*(M1@) by A2
    .=(M1~*(M2*M1))*(M1~) by A1
    .=(M1~*M2)*M1*(M1~) by A4,A8,A6,MATRIX_3:33
    .=(M1~*M2)*(M1*(M1~)) by A5,A8,A7,MATRIX_3:33
    .=(M1~*M2)*(1.(K,n)) by A3
    .=M1~*M2 by MATRIX_3:19
    .=M3*M2 by A1;
  hence thesis;
end;
