
theorem
  for x,y,z being set st z <> [<*x,y*>, xor2] for s being State of
GFA3AdderCirc(x,y,z) for a1a2,a1,a2,a3 being Element of BOOLEAN st a1a2 = s.[<*
  x,y*>,xor2] & a1 = s.x & a2 = s.y & a3 = s.z holds (Following s).
  GFA3AdderOutput(x,y,z) = a1a2 'xor' a3
proof
  set f = xor2;
  let x,y,z be set such that
A1: z <> [<*x,y*>,f];
  set O0 = GFA0AdderOutput(x,y,z);
  set O3 = GFA3AdderOutput(x,y,z);
  set A0 = GFA0AdderCirc(x,y,z);
  set A3 = GFA3AdderCirc(x,y,z);
  A3 = A0 & O3 = O0;
  hence thesis by A1,Th29;
end;
