reserve x,y,z for object,
  i,j,n,m for Nat,
  D for non empty set,
  K for non empty doubleLoopStr,
  s,t for FinSequence,
  a,a1,a2,b1,b2,d for Element of D,
  p, p1,p2,q,r for FinSequence of D,
  F for add-associative right_zeroed
  right_complementable Abelian non empty doubleLoopStr;
reserve A,B for Matrix of n,K;
reserve A,A9,B,B9,C for Matrix of n,F;

theorem Th4:
  (A + B) + C = A + (B + C)
proof
A1: Indices A= Indices ((A + B) +C) by MATRIX_0:26;
A2: Indices A= Indices (A + B) by MATRIX_0:26;
A3: Indices A= Indices B by MATRIX_0:26;
  now
    let i,j;
    assume
A4: [i,j] in Indices ((A + B) + C);
    hence ((A + B)+C)*(i,j)=(A+B)*(i,j) + C*(i,j) by A1,A2,Def5
      .=(A*(i,j) + B*(i,j)) + C*(i,j) by A1,A4,Def5
      .=A*(i,j) + (B*(i,j) + C*(i,j)) by RLVECT_1:def 3
      .=A*(i,j) + ( B + C)*(i,j) by A3,A1,A4,Def5
      .=(A + ( B + C))*(i,j) by A1,A4,Def5;
  end;
  hence thesis by MATRIX_0:27;
end;
