reserve G for Abelian add-associative right_complementable right_zeroed
  non empty addLoopStr;
reserve GS for non empty addLoopStr;
reserve F for Field;
reserve F for Field,
  n for Nat,
  D for non empty set,
  d for Element of D,
  B for BinOp of D,
  C for UnOp of D;

theorem Th9:
  B is having_a_unity & B is associative & C is_an_inverseOp_wrt B
  implies product(C,n) is_an_inverseOp_wrt product(B,n)
proof
  assume that
A1: B is having_a_unity and
A2: B is associative and
A3: C is_an_inverseOp_wrt B;
A4: B is having_an_inverseOp by A3;
  then
A5: C = the_inverseOp_wrt B by A1,A2,A3,FINSEQOP:def 3;
A6: now
    let f be Element of (n-tuples_on D) qua non empty set;
    reconsider f9 = f as Element of n-tuples_on D;
    reconsider cf = C*f9 as Element of n-tuples_on D by FINSEQ_2:113;
    thus product(B,n).(f,product(C,n).f) = product(B,n).(f9,C*f9) by Def2
      .= B.:(f9,cf) by Def1
      .= n |->the_unity_wrt B by A1,A2,A4,A5,FINSEQOP:73;
    thus product(B,n).(product(C,n).f,f) = product(B,n).(C*f9,f9) by Def2
      .= B.:(cf,f9) by Def1
      .= n |->the_unity_wrt B by A1,A2,A4,A5,FINSEQOP:73;
  end;
  ex d st d is_a_unity_wrt B by A1,SETWISEO:def 2;
  then the_unity_wrt B is_a_unity_wrt B by BINOP_1:def 8;
  then n |->the_unity_wrt B is_a_unity_wrt product(B,n) by Th8;
  then n |->the_unity_wrt B = the_unity_wrt product(B,n) by BINOP_1:def 8;
  hence thesis by A6;
end;
