reserve x,y,z,X,Y for set;
reserve X,Y for non empty set,
  f for Function of X,Y;
reserve X, Y for non empty set,
  F for (BinOp of Y),
  B for (Element of Fin X),
  f for Function of X,Y;

theorem
  for F,G being BinOp of Y st F is idempotent & F is commutative & F is
  associative & G is_distributive_wrt F for B being Element of Fin X st B <> {}
for f being Function of X,Y for a being Element of Y holds G.(a,F$$(B,f)) = F$$
  (B,G[;](a,f))
proof
  let F,G be BinOp of Y such that
A1: F is idempotent and
A2: F is commutative & F is associative and
A3: G is_distributive_wrt F;
  let B be Element of Fin X such that
A4: B<> {};
  let f be Function of X,Y;
  let a be Element of Y;
  defpred X[Element of Fin X] means G.(a,F$$($1,f)) = F$$($1,G[;](a,f));
A5: for B1,B2 being non empty Element of Fin X holds X[B1] & X[B2] implies X
  [B1 \/ B2]
  proof
    let B1,B2 be non empty Element of Fin X;
    assume
A6: G.(a,F$$(B1,f)) = F$$(B1,G[;](a,f)) & G.(a,F$$(B2,f)) = F$$(B2,G [;](a,f));
    thus G.(a,F$$(B1 \/ B2,f)) = G.(a,F.(F$$(B1,f),F$$(B2,f))) by A1,A2,Th18
      .= F.(F$$(B1,G[;](a,f)), F$$(B2,G[;] (a,f))) by A3,A6,BINOP_1:11
      .= F$$(B1 \/ B2,G[;](a,f)) by A1,A2,Th18;
  end;
A7: for x being Element of X holds X[{.x.}]
  proof
    let x be Element of X;
    thus G.(a,F$$({.x.},f)) = G.(a,f.x) by A2,Th14
      .= (G[;](a,f)).x by FUNCOP_1:53
      .= F$$({.x.},G[;](a,f)) by A2,Th14;
  end;
  for B being non empty Element of Fin X holds X[B] from FinSubInd2(A7,
  A5);
  hence thesis by A4;
end;
