reserve A, B for non empty preBoolean set,
  x, y for Element of [:A,B:];
reserve X for set,
  a,b,c for Element of [:A,B:];
reserve a for Element of [:Fin X, Fin X:];
reserve A for set;
reserve x,y for Element of [:Fin X, Fin X:],
  a,b for Element of DISJOINT_PAIRS X;
reserve A for set,
  x for Element of [:Fin A, Fin A:],
  a,b,c,d,s,t for Element of DISJOINT_PAIRS A,
  B,C,D for Element of Fin DISJOINT_PAIRS A;
reserve K,L,M for Element of Normal_forms_on A;

theorem Th52:
  K^(L^M) = K^L^M
proof
A1: L^M = M^L & K^L = L^K by Th48;
A2: now
    let K,L,M;
    now
      let a;
      assume a in K^(L^M);
      then consider b,c such that
A3:   b in K and
A4:   c in L^M and
A5:   a = b \/ c by Th34;
      consider b1,c1 being Element of DISJOINT_PAIRS A such that
A6:   b1 in L and
A7:   c1 in M and
A8:   c = b1 \/ c1 by A4,Th34;
      reconsider d = b \/ (b1 \/ c1) as Element of DISJOINT_PAIRS A by A5,A8;
A9:   b \/(b1 \/ c1) = b \/ b1 \/ c1 by Th3;
      then b \/ b1 c= d by Th10;
      then reconsider c2 = b \/ b1 as Element of DISJOINT_PAIRS A by Th26;
      c2 in K^L by A3,A6,Th35;
      hence a in K^L^M by A5,A7,A8,A9,Th35;
    end;
    hence K^(L^M) c= K^L^M by Lm5;
  end;
  then
A10: K^(L^M) c= K^L^M;
  K^L^M = M^(K^L) & K^(L^M) = L^M^K by Th48;
  then K^L^M c= K^(L^M) by A1,A2;
  hence thesis by A10;
end;
