reserve x,y,z,c for object,
  f for Function of 2-tuples_on BOOLEAN, BOOLEAN;
reserve s for State of 2GatesCircuit(x,y,c,f);

theorem
  for S being non empty ManySortedSign st S = BitAdderWithOverflowStr(x,
y,c ) holds x in the carrier of S & y in the carrier of S & c in the carrier of
  S
proof
  set S1 = 2GatesCircStr(x,y,c, 'xor');
  let S be non empty ManySortedSign;
  assume
A1: S = BitAdderWithOverflowStr(x,y,c);
A2: c in the carrier of S1 by Th60;
  x in the carrier of S1 & y in the carrier of S1 by Th60;
  hence thesis by A1,A2,Th20;
end;
