reserve L for Abelian left_zeroed add-associative associative right_zeroed
              right_complementable distributive non empty doubleLoopStr;
reserve a,b,c for Element of L;
reserve R for non degenerated comRing;
reserve n,m,i,j,k for Nat;

theorem
     (n*a)*b = a*(n*b)
     proof
       defpred P[Nat] means ($1*a)*b = a*($1*b);
A1:    for n be Nat st P[n] holds P[n+1]
       proof
         let n be Nat;
         assume
A2:      P[n];
         ((n+1)*a)*b = ((n*a) + (1*a))*b by BINOM:15
         .= (n*a)*b + (1*a)*b by VECTSP_1:def 3
         .= (n*a)*b + a*b by BINOM:13
         .= a*(n*b) + a*(1*b) by A2,BINOM:13
         .= a*(n*b+ 1*b) by VECTSP_1:def 2
         .= a*((n+1)*b) by BINOM:15;
         hence thesis;
       end;
       (0*a)*b = 0.L* b by BINOM:12
       .= a*0.L
       .= a*(0*b) by BINOM:12; then
A3:    P[0];
       for n be Nat holds P[n] from NAT_1:sch 2(A3,A1);
       hence thesis;
     end;
