
theorem
  for R being Abelian non empty addLoopStr, a being Element of R, n
  being Element of NAT holds n * a = a * n
proof
  let R be Abelian non empty addLoopStr, a be Element of R, n be Element of
  NAT;
  defpred P[Nat] means $1 * a = a * $1;
A1: now
    let k be Nat;
    reconsider kk=k as Element of NAT by ORDINAL1:def 12;
    assume P[k];
    then (kk + 1) * a = a + a * k by Def3
      .= a * (kk + 1) by Def4;
    hence P[k+1];
  end;
  0 * a = 0.R by Def3
    .= a * 0 by Def4;
  then
A2: P[0];
  for n being Nat holds P[n] from NAT_1:sch 2(A2,A1);
  hence thesis;
end;
