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;
reserve x,y for set;
reserve D for non empty set,
  H,G for BinOp of D,
  d for Element of D,
  t1,t2 for Element of n-tuples_on D;
reserve x,y,z for set,
  A for AbGroup;
reserve a for Domain-Sequence,
  i for Element of dom a,
  p for FinSequence;
reserve i for Element of dom a;

theorem Th17:
  for b being BinOps of a st for i holds b.i is commutative holds
  [:b:] is commutative
proof
  let b be BinOps of a such that
A1: for i holds b.i is commutative;
  let x,y be Element of product a;
A2: now
    let z be object;
    assume z in dom a;
    then reconsider i = z as Element of dom a;
A3: [:b:].(y,x).i = (b.i).(y.i,x.i) by Def8;
    b.i is commutative & [:b:].(x,y).i = (b.i).(x.i,y.i) by A1,Def8;
    hence [:b:].(x,y).z = [:b:].(y,x).z by A3;
  end;
  dom ([:b:].(x,y)) = dom a & dom ([:b:].(y,x)) = dom a by CARD_3:9;
  hence thesis by A2,FUNCT_1:2;
end;
