
theorem Th19:
  for R being left_zeroed right_zeroed left_add-cancelable
add-associative left-distributive non empty doubleLoopStr, a,b being Element
  of R, n being Element of NAT holds (n * a) * b = n * (a * b)
proof
  let R be left_zeroed right_zeroed left_add-cancelable add-associative
left-distributive non empty doubleLoopStr, a,b be Element of R, n be Element
  of NAT;
  defpred P[Nat] means ($1 * a) * b = $1 * (a * b);
A1: now
    let k be Nat;
    assume
A2: P[k];
    reconsider kk=k as Element of NAT by ORDINAL1:def 12;
    ((kk+1) * a) * b = (a + k * a) * b by Def3
      .= a * b + k * (a * b) by A2,VECTSP_1:def 3
      .= 1 * (a * b) + k * (a * b) by Th13
      .= (kk + 1) * (a * b) by Th15;
    hence P[k+1];
  end;
  (0 * a) * b = 0.R * b by Def3
    .= 0.R by Th1
    .= 0 * (a * b) by Def3;
  then
A3: P[0];
  for n being Nat holds P[n] from NAT_1:sch 2(A3,A1);
  hence thesis;
end;
