 reserve m,n for Nat;
 reserve i,j for Integer;
 reserve S for non empty multMagma;
 reserve r,r1,r2,s,s1,s2,t for Element of S;
 reserve G for Group-like non empty multMagma;
 reserve e,h for Element of G;
 reserve G for Group;
 reserve f,g,h for Element of G;
 reserve u for UnOp of G;
 reserve A for commutative Group;
 reserve a,b for Element of A;

theorem
  for L be associative commutative unital non empty multMagma
  for x,y be Element of L
  for n be Nat holds
    (power L).(x*y,n) = (power L).(x,n) * (power L).(y,n)
proof
  let L be associative commutative unital non empty multMagma;
  let x,y be Element of L;
  defpred P[Nat] means
   (power L).(x*y,$1) = (power L).(x,$1) * (power L).(y,$1);
A1: now
    let n be Nat;
    assume P[n];
    then (power L).(x*y,n+1) = (power L).(x,n) * (power L).(y,n) * (x*y) by
Def7
      .= (power L).(x,n) * ((power L).(y,n) * (x*y)) by Def3
      .= (power L).(x,n) * (x*((power L).(y,n)*y)) by Def3
      .= (power L).(x,n) * (x*(power L).(y,n+1)) by Def7
      .= (power L).(x,n)*x * (power L).(y,n+1) by Def3
      .= (power L).(x,n+1) * (power L).(y,n+1) by Def7;
    hence P[n+1];
  end;
  (power L).(x*y,0) = 1_L by Def7
    .= 1_L * 1_L by Def4
    .= (power L).(x,0) * 1_L by Def7
    .= (power L).(x,0) * (power L).(y,0) by Def7;
  then
A2: P[0];
  thus for n be Nat holds P[n] from NAT_1:sch 2(A2,A1);
end;
