TSTP Solution File: HWV003-1 by Twee---2.4.2

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Twee---2.4.2
% Problem  : HWV003-1 : TPTP v8.1.2. Released v1.1.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : parallel-twee %s --tstp --conditional-encoding if --smaller --drop-non-horn --give-up-on-saturation --explain-encoding --formal-proof

% Computer : n027.cluster.edu
% Model    : x86_64 x86_64
% CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory   : 8042.1875MB
% OS       : Linux 3.10.0-693.el7.x86_64
% CPULimit : 300s
% WCLimit  : 300s
% DateTime : Thu Aug 31 02:31:29 EDT 2023

% Result   : Unsatisfiable 69.96s 9.32s
% Output   : Proof 72.12s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.13  % Problem  : HWV003-1 : TPTP v8.1.2. Released v1.1.0.
% 0.00/0.14  % Command  : parallel-twee %s --tstp --conditional-encoding if --smaller --drop-non-horn --give-up-on-saturation --explain-encoding --formal-proof
% 0.14/0.35  % Computer : n027.cluster.edu
% 0.14/0.35  % Model    : x86_64 x86_64
% 0.14/0.35  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.14/0.35  % Memory   : 8042.1875MB
% 0.14/0.35  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.14/0.35  % CPULimit : 300
% 0.14/0.35  % WCLimit  : 300
% 0.14/0.35  % DateTime : Tue Aug 29 14:39:23 EDT 2023
% 0.14/0.35  % CPUTime  : 
% 69.96/9.32  Command-line arguments: --ground-connectedness --complete-subsets
% 69.96/9.32  
% 69.96/9.32  % SZS status Unsatisfiable
% 69.96/9.32  
% 72.12/9.72  % SZS output start Proof
% 72.12/9.72  Take the following subset of the input axioms:
% 72.12/9.72    fof(and_commutativity, negated_conjecture, ![X, Y, Z]: and(and(X, Y), Z)=and(and(X, Z), Y)).
% 72.12/9.72    fof(and_definition2, axiom, ![X4]: and(X4, n1)=X4).
% 72.12/9.72    fof(and_evaluation1, axiom, ![X4, Y2]: and(and(X4, Y2), Y2)=and(X4, Y2)).
% 72.12/9.72    fof(and_idempotency, axiom, ![X4]: and(X4, X4)=X4).
% 72.12/9.72    fof(and_not_evaluation1, axiom, ![X4]: and(X4, not(X4))=n0).
% 72.12/9.72    fof(and_not_evaluation2, axiom, ![X4, Y2]: and(and(X4, Y2), not(Y2))=n0).
% 72.12/9.72    fof(and_not_evaluation4, axiom, ![X1, X2, X3]: and(and(and(X1, X2), X3), not(X1))=n0).
% 72.12/9.72    fof(and_or_simplification, negated_conjecture, ![X4, Y2, Z2]: and(or(X4, Y2), Z2)=or(and(X4, Z2), and(Y2, Z2))).
% 72.12/9.72    fof(and_or_subsumption1, axiom, ![X4, Y2]: or(and(X4, Y2), Y2)=Y2).
% 72.12/9.72    fof(and_or_subsumption2, axiom, ![X4, Y2]: or(and(X4, Y2), X4)=X4).
% 72.12/9.72    fof(and_or_subsumption3, axiom, ![X4, Y2, Z2]: or(or(and(X4, Y2), Z2), Y2)=or(Z2, Y2)).
% 72.12/9.72    fof(and_symmetry, negated_conjecture, ![X4, Y2]: and(X4, Y2)=and(Y2, X4)).
% 72.12/9.72    fof(carryout_definition, negated_conjecture, ![X4, Y2, Z2]: carryout(X4, Y2, Z2)=or(and(X4, or(Y2, Z2)), and(not(X4), and(Y2, Z2)))).
% 72.12/9.72    fof(circuit1, negated_conjecture, a11=not(and(a, b))).
% 72.12/9.72    fof(circuit2, negated_conjecture, a12=not(and(a11, a))).
% 72.12/9.72    fof(circuit3, negated_conjecture, a13=not(and(a11, b))).
% 72.12/9.72    fof(circuit4, negated_conjecture, a14=not(and(a12, a13))).
% 72.12/9.72    fof(circuit5, negated_conjecture, a15=not(and(a14, carryin))).
% 72.12/9.72    fof(circuit6, negated_conjecture, a16=not(and(a14, a15))).
% 72.12/9.72    fof(circuit7, negated_conjecture, a17=not(and(a15, carryin))).
% 72.12/9.72    fof(circuit8, negated_conjecture, s1=not(and(a16, a17))).
% 72.12/9.72    fof(circuit9, negated_conjecture, c1=not(and(a11, a15))).
% 72.12/9.72    fof(demorgan1, axiom, ![X4, Y2]: not(and(X4, Y2))=or(not(X4), not(Y2))).
% 72.12/9.72    fof(demorgan2, axiom, ![X4, Y2]: not(or(X4, Y2))=and(not(X4), not(Y2))).
% 72.12/9.72    fof(karnaugh1, axiom, ![X4, Y2]: or(and(X4, not(Y2)), Y2)=or(X4, Y2)).
% 72.12/9.72    fof(karnaugh2, axiom, ![X4, Y2]: or(and(not(X4), not(Y2)), Y2)=or(Y2, not(X4))).
% 72.12/9.72    fof(not_definition2, axiom, not(n1)=n0).
% 72.12/9.72    fof(not_involution, axiom, ![X4]: not(not(X4))=X4).
% 72.12/9.72    fof(or_commutativity, negated_conjecture, ![X4, Y2, Z2]: or(or(X4, Y2), Z2)=or(or(X4, Z2), Y2)).
% 72.12/9.72    fof(or_definition1, axiom, ![X4]: or(X4, n0)=X4).
% 72.12/9.72    fof(or_definition2, axiom, ![X4]: or(X4, n1)=n1).
% 72.12/9.72    fof(or_idempotency, axiom, ![X4]: or(X4, X4)=X4).
% 72.12/9.72    fof(or_not_evaluation1, axiom, ![X4]: or(X4, not(X4))=n1).
% 72.12/9.72    fof(or_not_evaluation2, axiom, ![X4, Y2]: or(or(X4, Y2), not(Y2))=n1).
% 72.12/9.72    fof(or_symmetry, negated_conjecture, ![X4, Y2]: or(X4, Y2)=or(Y2, X4)).
% 72.12/9.72    fof(prove_circuit, negated_conjecture, ~circuit(sum(a, b, carryin), carryout(a, b, carryin))).
% 72.12/9.72    fof(sum_definition, negated_conjecture, ![X4, Y2, Z2]: sum(X4, Y2, Z2)=xor(xor(X4, Y2), Z2)).
% 72.12/9.72    fof(the_output_circuit, negated_conjecture, circuit(s1, c1)).
% 72.12/9.72    fof(xor_definition, axiom, ![X4, Y2]: xor(X4, Y2)=or(and(X4, not(Y2)), and(Y2, not(X4)))).
% 72.12/9.72  
% 72.12/9.72  Now clausify the problem and encode Horn clauses using encoding 3 of
% 72.12/9.72  http://www.cse.chalmers.se/~nicsma/papers/horn.pdf.
% 72.12/9.72  We repeatedly replace C & s=t => u=v by the two clauses:
% 72.12/9.72    fresh(y, y, x1...xn) = u
% 72.12/9.72    C => fresh(s, t, x1...xn) = v
% 72.12/9.72  where fresh is a fresh function symbol and x1..xn are the free
% 72.12/9.72  variables of u and v.
% 72.12/9.72  A predicate p(X) is encoded as p(X)=true (this is sound, because the
% 72.12/9.72  input problem has no model of domain size 1).
% 72.12/9.72  
% 72.12/9.72  The encoding turns the above axioms into the following unit equations and goals:
% 72.12/9.72  
% 72.12/9.72  Axiom 1 (not_definition2): not(n1) = n0.
% 72.12/9.72  Axiom 2 (the_output_circuit): circuit(s1, c1) = true.
% 72.12/9.72  Axiom 3 (not_involution): not(not(X)) = X.
% 72.12/9.72  Axiom 4 (or_idempotency): or(X, X) = X.
% 72.12/9.72  Axiom 5 (or_symmetry): or(X, Y) = or(Y, X).
% 72.12/9.72  Axiom 6 (or_definition2): or(X, n1) = n1.
% 72.12/9.72  Axiom 7 (or_definition1): or(X, n0) = X.
% 72.12/9.72  Axiom 8 (and_idempotency): and(X, X) = X.
% 72.12/9.72  Axiom 9 (and_symmetry): and(X, Y) = and(Y, X).
% 72.12/9.72  Axiom 10 (and_definition2): and(X, n1) = X.
% 72.12/9.72  Axiom 11 (circuit4): a14 = not(and(a12, a13)).
% 72.12/9.72  Axiom 12 (circuit8): s1 = not(and(a16, a17)).
% 72.12/9.72  Axiom 13 (circuit6): a16 = not(and(a14, a15)).
% 72.12/9.72  Axiom 14 (circuit5): a15 = not(and(a14, carryin)).
% 72.12/9.72  Axiom 15 (circuit9): c1 = not(and(a11, a15)).
% 72.12/9.72  Axiom 16 (circuit2): a12 = not(and(a11, a)).
% 72.12/9.72  Axiom 17 (circuit3): a13 = not(and(a11, b)).
% 72.12/9.72  Axiom 18 (circuit7): a17 = not(and(a15, carryin)).
% 72.12/9.72  Axiom 19 (circuit1): a11 = not(and(a, b)).
% 72.12/9.72  Axiom 20 (or_not_evaluation1): or(X, not(X)) = n1.
% 72.12/9.72  Axiom 21 (and_not_evaluation1): and(X, not(X)) = n0.
% 72.12/9.72  Axiom 22 (sum_definition): sum(X, Y, Z) = xor(xor(X, Y), Z).
% 72.12/9.72  Axiom 23 (demorgan1): not(and(X, Y)) = or(not(X), not(Y)).
% 72.12/9.72  Axiom 24 (or_commutativity): or(or(X, Y), Z) = or(or(X, Z), Y).
% 72.12/9.72  Axiom 25 (and_or_subsumption2): or(and(X, Y), X) = X.
% 72.12/9.72  Axiom 26 (and_or_subsumption1): or(and(X, Y), Y) = Y.
% 72.12/9.72  Axiom 27 (demorgan2): not(or(X, Y)) = and(not(X), not(Y)).
% 72.12/9.73  Axiom 28 (and_evaluation1): and(and(X, Y), Y) = and(X, Y).
% 72.12/9.73  Axiom 29 (and_commutativity): and(and(X, Y), Z) = and(and(X, Z), Y).
% 72.12/9.73  Axiom 30 (or_not_evaluation2): or(or(X, Y), not(Y)) = n1.
% 72.12/9.73  Axiom 31 (karnaugh1): or(and(X, not(Y)), Y) = or(X, Y).
% 72.12/9.73  Axiom 32 (and_not_evaluation2): and(and(X, Y), not(Y)) = n0.
% 72.12/9.73  Axiom 33 (and_or_simplification): and(or(X, Y), Z) = or(and(X, Z), and(Y, Z)).
% 72.12/9.73  Axiom 34 (and_or_subsumption3): or(or(and(X, Y), Z), Y) = or(Z, Y).
% 72.12/9.73  Axiom 35 (karnaugh2): or(and(not(X), not(Y)), Y) = or(Y, not(X)).
% 72.12/9.73  Axiom 36 (and_not_evaluation4): and(and(and(X, Y), Z), not(X)) = n0.
% 72.12/9.73  Axiom 37 (xor_definition): xor(X, Y) = or(and(X, not(Y)), and(Y, not(X))).
% 72.12/9.73  Axiom 38 (carryout_definition): carryout(X, Y, Z) = or(and(X, or(Y, Z)), and(not(X), and(Y, Z))).
% 72.12/9.73  
% 72.12/9.73  Lemma 39: and(a11, a) = not(a12).
% 72.12/9.73  Proof:
% 72.12/9.73    and(a11, a)
% 72.12/9.73  = { by axiom 3 (not_involution) R->L }
% 72.12/9.73    not(not(and(a11, a)))
% 72.12/9.73  = { by axiom 16 (circuit2) R->L }
% 72.12/9.73    not(a12)
% 72.12/9.73  
% 72.12/9.73  Lemma 40: and(a11, b) = not(a13).
% 72.12/9.73  Proof:
% 72.12/9.73    and(a11, b)
% 72.12/9.73  = { by axiom 3 (not_involution) R->L }
% 72.12/9.73    not(not(and(a11, b)))
% 72.12/9.73  = { by axiom 17 (circuit3) R->L }
% 72.12/9.73    not(a13)
% 72.12/9.73  
% 72.12/9.73  Lemma 41: and(a11, a15) = not(c1).
% 72.12/9.73  Proof:
% 72.12/9.73    and(a11, a15)
% 72.12/9.73  = { by axiom 3 (not_involution) R->L }
% 72.12/9.73    not(not(and(a11, a15)))
% 72.12/9.73  = { by axiom 15 (circuit9) R->L }
% 72.12/9.73    not(c1)
% 72.12/9.73  
% 72.12/9.73  Lemma 42: and(a, b) = not(a11).
% 72.12/9.73  Proof:
% 72.12/9.73    and(a, b)
% 72.12/9.73  = { by axiom 3 (not_involution) R->L }
% 72.12/9.73    not(not(and(a, b)))
% 72.12/9.73  = { by axiom 19 (circuit1) R->L }
% 72.12/9.73    not(a11)
% 72.12/9.73  
% 72.12/9.73  Lemma 43: and(a12, a13) = not(a14).
% 72.12/9.73  Proof:
% 72.12/9.73    and(a12, a13)
% 72.12/9.73  = { by axiom 3 (not_involution) R->L }
% 72.12/9.73    not(not(and(a12, a13)))
% 72.12/9.73  = { by axiom 11 (circuit4) R->L }
% 72.12/9.73    not(a14)
% 72.12/9.73  
% 72.12/9.73  Lemma 44: and(a14, a15) = not(a16).
% 72.12/9.73  Proof:
% 72.12/9.73    and(a14, a15)
% 72.12/9.73  = { by axiom 3 (not_involution) R->L }
% 72.12/9.73    not(not(and(a14, a15)))
% 72.12/9.73  = { by axiom 13 (circuit6) R->L }
% 72.12/9.73    not(a16)
% 72.12/9.73  
% 72.12/9.73  Lemma 45: and(a14, carryin) = not(a15).
% 72.12/9.73  Proof:
% 72.12/9.73    and(a14, carryin)
% 72.12/9.73  = { by axiom 3 (not_involution) R->L }
% 72.12/9.73    not(not(and(a14, carryin)))
% 72.12/9.73  = { by axiom 14 (circuit5) R->L }
% 72.12/9.73    not(a15)
% 72.12/9.73  
% 72.12/9.73  Lemma 46: or(X, and(Y, not(X))) = or(Y, X).
% 72.12/9.73  Proof:
% 72.12/9.73    or(X, and(Y, not(X)))
% 72.12/9.73  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.73    or(and(Y, not(X)), X)
% 72.12/9.73  = { by axiom 31 (karnaugh1) }
% 72.12/9.73    or(Y, X)
% 72.12/9.73  
% 72.12/9.73  Lemma 47: or(not(X), and(X, Y)) = or(Y, not(X)).
% 72.12/9.73  Proof:
% 72.12/9.73    or(not(X), and(X, Y))
% 72.12/9.73  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.73    or(not(X), and(Y, X))
% 72.12/9.73  = { by axiom 3 (not_involution) R->L }
% 72.12/9.73    or(not(X), and(Y, not(not(X))))
% 72.12/9.73  = { by lemma 46 }
% 72.12/9.73    or(Y, not(X))
% 72.12/9.73  
% 72.12/9.73  Lemma 48: or(carryin, not(a14)) = a16.
% 72.12/9.73  Proof:
% 72.12/9.73    or(carryin, not(a14))
% 72.12/9.73  = { by lemma 47 R->L }
% 72.12/9.73    or(not(a14), and(a14, carryin))
% 72.12/9.73  = { by lemma 45 }
% 72.12/9.73    or(not(a14), not(a15))
% 72.12/9.73  = { by axiom 23 (demorgan1) R->L }
% 72.12/9.73    not(and(a14, a15))
% 72.12/9.73  = { by axiom 13 (circuit6) R->L }
% 72.12/9.73    a16
% 72.12/9.73  
% 72.12/9.73  Lemma 49: and(not(X), or(X, Y)) = and(Y, not(X)).
% 72.12/9.73  Proof:
% 72.12/9.73    and(not(X), or(X, Y))
% 72.12/9.73  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.73    and(not(X), or(Y, X))
% 72.12/9.73  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.73    and(or(Y, X), not(X))
% 72.12/9.73  = { by axiom 33 (and_or_simplification) }
% 72.12/9.73    or(and(Y, not(X)), and(X, not(X)))
% 72.12/9.73  = { by axiom 21 (and_not_evaluation1) }
% 72.12/9.73    or(and(Y, not(X)), n0)
% 72.12/9.73  = { by axiom 7 (or_definition1) }
% 72.12/9.73    and(Y, not(X))
% 72.12/9.73  
% 72.12/9.73  Lemma 50: and(X, or(Y, not(X))) = and(X, Y).
% 72.12/9.73  Proof:
% 72.12/9.73    and(X, or(Y, not(X)))
% 72.12/9.73  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.73    and(X, or(not(X), Y))
% 72.12/9.73  = { by axiom 3 (not_involution) R->L }
% 72.12/9.73    and(not(not(X)), or(not(X), Y))
% 72.12/9.73  = { by lemma 49 }
% 72.12/9.73    and(Y, not(not(X)))
% 72.12/9.73  = { by axiom 3 (not_involution) }
% 72.12/9.73    and(Y, X)
% 72.12/9.73  = { by axiom 9 (and_symmetry) }
% 72.12/9.73    and(X, Y)
% 72.12/9.73  
% 72.12/9.73  Lemma 51: and(a16, a14) = not(a15).
% 72.12/9.73  Proof:
% 72.12/9.73    and(a16, a14)
% 72.12/9.73  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.73    and(a14, a16)
% 72.12/9.73  = { by lemma 48 R->L }
% 72.12/9.73    and(a14, or(carryin, not(a14)))
% 72.12/9.73  = { by lemma 50 }
% 72.12/9.73    and(a14, carryin)
% 72.12/9.73  = { by lemma 45 }
% 72.12/9.73    not(a15)
% 72.12/9.73  
% 72.12/9.73  Lemma 52: or(X, and(Y, X)) = X.
% 72.12/9.73  Proof:
% 72.12/9.73    or(X, and(Y, X))
% 72.12/9.73  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.73    or(and(Y, X), X)
% 72.12/9.73  = { by axiom 26 (and_or_subsumption1) }
% 72.12/9.73    X
% 72.12/9.73  
% 72.12/9.73  Lemma 53: and(X, or(X, Y)) = X.
% 72.12/9.73  Proof:
% 72.12/9.73    and(X, or(X, Y))
% 72.12/9.73  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.73    and(or(X, Y), X)
% 72.12/9.73  = { by axiom 33 (and_or_simplification) }
% 72.12/9.73    or(and(X, X), and(Y, X))
% 72.12/9.73  = { by axiom 8 (and_idempotency) }
% 72.12/9.73    or(X, and(Y, X))
% 72.12/9.73  = { by lemma 52 }
% 72.12/9.73    X
% 72.12/9.73  
% 72.12/9.73  Lemma 54: and(X, or(Y, X)) = X.
% 72.12/9.73  Proof:
% 72.12/9.73    and(X, or(Y, X))
% 72.12/9.73  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.73    and(X, or(X, Y))
% 72.12/9.73  = { by lemma 53 }
% 72.12/9.73    X
% 72.12/9.73  
% 72.12/9.73  Lemma 55: and(X, and(Y, Z)) = and(Z, and(Y, X)).
% 72.12/9.73  Proof:
% 72.12/9.73    and(X, and(Y, Z))
% 72.12/9.73  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.73    and(and(Y, Z), X)
% 72.12/9.73  = { by axiom 29 (and_commutativity) R->L }
% 72.12/9.73    and(and(Y, X), Z)
% 72.12/9.73  = { by axiom 9 (and_symmetry) }
% 72.12/9.73    and(Z, and(Y, X))
% 72.12/9.73  
% 72.12/9.73  Lemma 56: and(Z, and(X, Y)) = and(X, and(Y, Z)).
% 72.12/9.73  Proof:
% 72.12/9.73    and(Z, and(X, Y))
% 72.12/9.73  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.73    and(Z, and(Y, X))
% 72.12/9.73  = { by lemma 55 }
% 72.12/9.73    and(X, and(Y, Z))
% 72.12/9.73  
% 72.12/9.73  Lemma 57: and(a11, and(X, b)) = and(X, not(a13)).
% 72.12/9.73  Proof:
% 72.12/9.73    and(a11, and(X, b))
% 72.12/9.73  = { by lemma 56 R->L }
% 72.12/9.73    and(b, and(a11, X))
% 72.12/9.73  = { by lemma 55 R->L }
% 72.12/9.73    and(X, and(a11, b))
% 72.12/9.73  = { by lemma 40 }
% 72.12/9.73    and(X, not(a13))
% 72.12/9.73  
% 72.12/9.73  Lemma 58: or(not(X), and(Y, X)) = or(Y, not(X)).
% 72.12/9.73  Proof:
% 72.12/9.73    or(not(X), and(Y, X))
% 72.12/9.73  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.73    or(not(X), and(X, Y))
% 72.12/9.73  = { by lemma 47 }
% 72.12/9.73    or(Y, not(X))
% 72.12/9.73  
% 72.12/9.73  Lemma 59: or(a, not(b)) = a13.
% 72.12/9.73  Proof:
% 72.12/9.73    or(a, not(b))
% 72.12/9.73  = { by lemma 58 R->L }
% 72.12/9.73    or(not(b), and(a, b))
% 72.12/9.73  = { by lemma 42 }
% 72.12/9.73    or(not(b), not(a11))
% 72.12/9.73  = { by axiom 23 (demorgan1) R->L }
% 72.12/9.73    not(and(b, a11))
% 72.12/9.73  = { by axiom 9 (and_symmetry) }
% 72.12/9.73    not(and(a11, b))
% 72.12/9.73  = { by axiom 17 (circuit3) R->L }
% 72.12/9.73    a13
% 72.12/9.73  
% 72.12/9.73  Lemma 60: or(X, not(or(Y, X))) = or(X, not(Y)).
% 72.12/9.73  Proof:
% 72.12/9.73    or(X, not(or(Y, X)))
% 72.12/9.73  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.73    or(not(or(Y, X)), X)
% 72.12/9.73  = { by axiom 27 (demorgan2) }
% 72.12/9.73    or(and(not(Y), not(X)), X)
% 72.12/9.73  = { by axiom 35 (karnaugh2) }
% 72.12/9.73    or(X, not(Y))
% 72.12/9.73  
% 72.12/9.73  Lemma 61: or(X, not(or(X, Y))) = or(X, not(Y)).
% 72.12/9.73  Proof:
% 72.12/9.73    or(X, not(or(X, Y)))
% 72.12/9.73  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.73    or(X, not(or(Y, X)))
% 72.12/9.73  = { by lemma 60 }
% 72.12/9.73    or(X, not(Y))
% 72.12/9.73  
% 72.12/9.73  Lemma 62: or(b, not(a)) = a12.
% 72.12/9.73  Proof:
% 72.12/9.73    or(b, not(a))
% 72.12/9.73  = { by lemma 47 R->L }
% 72.12/9.73    or(not(a), and(a, b))
% 72.12/9.73  = { by lemma 42 }
% 72.12/9.73    or(not(a), not(a11))
% 72.12/9.73  = { by axiom 23 (demorgan1) R->L }
% 72.12/9.73    not(and(a, a11))
% 72.12/9.73  = { by axiom 9 (and_symmetry) }
% 72.12/9.73    not(and(a11, a))
% 72.12/9.73  = { by axiom 16 (circuit2) R->L }
% 72.12/9.73    a12
% 72.12/9.73  
% 72.12/9.73  Lemma 63: not(or(X, not(Y))) = and(Y, not(X)).
% 72.12/9.73  Proof:
% 72.12/9.73    not(or(X, not(Y)))
% 72.12/9.73  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.73    not(or(not(Y), X))
% 72.12/9.73  = { by axiom 27 (demorgan2) }
% 72.12/9.73    and(not(not(Y)), not(X))
% 72.12/9.73  = { by axiom 3 (not_involution) }
% 72.12/9.73    and(Y, not(X))
% 72.12/9.73  
% 72.12/9.73  Lemma 64: and(X, and(Y, Z)) = and(Y, and(X, Z)).
% 72.12/9.73  Proof:
% 72.12/9.73    and(X, and(Y, Z))
% 72.12/9.73  = { by lemma 56 }
% 72.12/9.73    and(Y, and(Z, X))
% 72.12/9.73  = { by axiom 9 (and_symmetry) }
% 72.12/9.73    and(Y, and(X, Z))
% 72.12/9.73  
% 72.12/9.73  Lemma 65: and(and(X, Y), Z) = and(Y, and(X, Z)).
% 72.12/9.73  Proof:
% 72.12/9.73    and(and(X, Y), Z)
% 72.12/9.73  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.73    and(Z, and(X, Y))
% 72.12/9.73  = { by lemma 55 }
% 72.12/9.73    and(Y, and(X, Z))
% 72.12/9.73  
% 72.12/9.73  Lemma 66: and(a12, and(a13, X)) = and(X, not(a14)).
% 72.12/9.73  Proof:
% 72.12/9.73    and(a12, and(a13, X))
% 72.12/9.73  = { by lemma 64 R->L }
% 72.12/9.73    and(a13, and(a12, X))
% 72.12/9.73  = { by lemma 65 R->L }
% 72.12/9.73    and(and(a12, a13), X)
% 72.12/9.73  = { by lemma 43 }
% 72.12/9.73    and(not(a14), X)
% 72.12/9.73  = { by axiom 9 (and_symmetry) }
% 72.12/9.73    and(X, not(a14))
% 72.12/9.73  
% 72.12/9.73  Lemma 67: or(X, and(X, Y)) = X.
% 72.12/9.73  Proof:
% 72.12/9.73    or(X, and(X, Y))
% 72.12/9.73  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.73    or(and(X, Y), X)
% 72.12/9.73  = { by axiom 25 (and_or_subsumption2) }
% 72.12/9.73    X
% 72.12/9.73  
% 72.12/9.73  Lemma 68: and(a12, not(a11)) = not(a11).
% 72.12/9.73  Proof:
% 72.12/9.73    and(a12, not(a11))
% 72.12/9.73  = { by lemma 63 R->L }
% 72.12/9.73    not(or(a11, not(a12)))
% 72.12/9.73  = { by lemma 39 R->L }
% 72.12/9.73    not(or(a11, and(a11, a)))
% 72.12/9.73  = { by lemma 67 }
% 72.12/9.73    not(a11)
% 72.12/9.73  
% 72.12/9.73  Lemma 69: not(and(X, not(Y))) = or(Y, not(X)).
% 72.12/9.73  Proof:
% 72.12/9.73    not(and(X, not(Y)))
% 72.12/9.73  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.73    not(and(not(Y), X))
% 72.12/9.73  = { by axiom 23 (demorgan1) }
% 72.12/9.73    or(not(not(Y)), not(X))
% 72.12/9.73  = { by axiom 3 (not_involution) }
% 72.12/9.73    or(Y, not(X))
% 72.12/9.73  
% 72.12/9.73  Lemma 70: and(a11, and(a15, X)) = and(X, not(c1)).
% 72.12/9.73  Proof:
% 72.12/9.73    and(a11, and(a15, X))
% 72.12/9.73  = { by lemma 64 R->L }
% 72.12/9.73    and(a15, and(a11, X))
% 72.12/9.73  = { by lemma 65 R->L }
% 72.12/9.73    and(and(a11, a15), X)
% 72.12/9.73  = { by lemma 41 }
% 72.12/9.73    and(not(c1), X)
% 72.12/9.73  = { by axiom 9 (and_symmetry) }
% 72.12/9.73    and(X, not(c1))
% 72.12/9.73  
% 72.12/9.73  Lemma 71: and(a11, not(a14)) = not(or(c1, a14)).
% 72.12/9.73  Proof:
% 72.12/9.73    and(a11, not(a14))
% 72.12/9.73  = { by lemma 67 R->L }
% 72.12/9.73    and(a11, not(or(a14, and(a14, carryin))))
% 72.12/9.73  = { by lemma 45 }
% 72.12/9.73    and(a11, not(or(a14, not(a15))))
% 72.12/9.73  = { by lemma 63 }
% 72.12/9.73    and(a11, and(a15, not(a14)))
% 72.12/9.74  = { by lemma 70 }
% 72.12/9.74    and(not(a14), not(c1))
% 72.12/9.74  = { by axiom 27 (demorgan2) R->L }
% 72.12/9.74    not(or(a14, c1))
% 72.12/9.74  = { by axiom 5 (or_symmetry) }
% 72.12/9.74    not(or(c1, a14))
% 72.12/9.74  
% 72.12/9.74  Lemma 72: and(and(X, Y), Z) = and(X, and(Y, Z)).
% 72.12/9.74  Proof:
% 72.12/9.74    and(and(X, Y), Z)
% 72.12/9.74  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.74    and(Z, and(X, Y))
% 72.12/9.74  = { by lemma 56 }
% 72.12/9.74    and(X, and(Y, Z))
% 72.12/9.74  
% 72.12/9.74  Lemma 73: and(X, and(Y, or(X, Z))) = and(X, Y).
% 72.12/9.74  Proof:
% 72.12/9.74    and(X, and(Y, or(X, Z)))
% 72.12/9.74  = { by lemma 72 R->L }
% 72.12/9.74    and(and(X, Y), or(X, Z))
% 72.12/9.74  = { by axiom 29 (and_commutativity) R->L }
% 72.12/9.74    and(and(X, or(X, Z)), Y)
% 72.12/9.74  = { by lemma 53 }
% 72.12/9.74    and(X, Y)
% 72.12/9.74  
% 72.12/9.74  Lemma 74: and(c1, a) = and(a13, c1).
% 72.12/9.74  Proof:
% 72.12/9.74    and(c1, a)
% 72.12/9.74  = { by lemma 54 R->L }
% 72.12/9.74    and(c1, and(a, or(a13, a)))
% 72.12/9.74  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.74    and(c1, and(a, or(a, a13)))
% 72.12/9.74  = { by lemma 46 R->L }
% 72.12/9.74    and(c1, and(a, or(a13, and(a, not(a13)))))
% 72.12/9.74  = { by lemma 57 R->L }
% 72.12/9.74    and(c1, and(a, or(a13, and(a11, and(a, b)))))
% 72.12/9.74  = { by lemma 42 }
% 72.12/9.74    and(c1, and(a, or(a13, and(a11, not(a11)))))
% 72.12/9.74  = { by axiom 21 (and_not_evaluation1) }
% 72.12/9.74    and(c1, and(a, or(a13, n0)))
% 72.12/9.74  = { by axiom 7 (or_definition1) }
% 72.12/9.74    and(c1, and(a, a13))
% 72.12/9.74  = { by axiom 9 (and_symmetry) }
% 72.12/9.74    and(c1, and(a13, a))
% 72.12/9.74  = { by lemma 50 R->L }
% 72.12/9.74    and(c1, and(a13, or(a, not(a13))))
% 72.12/9.74  = { by lemma 59 R->L }
% 72.12/9.74    and(c1, and(a13, or(a, not(or(a, not(b))))))
% 72.12/9.74  = { by lemma 61 }
% 72.12/9.74    and(c1, and(a13, or(a, not(not(b)))))
% 72.12/9.74  = { by axiom 3 (not_involution) }
% 72.12/9.74    and(c1, and(a13, or(a, b)))
% 72.12/9.74  = { by axiom 3 (not_involution) R->L }
% 72.12/9.74    and(c1, and(a13, not(not(or(a, b)))))
% 72.12/9.74  = { by axiom 27 (demorgan2) }
% 72.12/9.74    and(c1, and(a13, not(and(not(a), not(b)))))
% 72.12/9.74  = { by lemma 49 R->L }
% 72.12/9.74    and(c1, and(a13, not(and(not(b), or(b, not(a))))))
% 72.12/9.74  = { by lemma 62 }
% 72.12/9.74    and(c1, and(a13, not(and(not(b), a12))))
% 72.12/9.74  = { by axiom 9 (and_symmetry) }
% 72.12/9.74    and(c1, and(a13, not(and(a12, not(b)))))
% 72.12/9.74  = { by lemma 52 R->L }
% 72.12/9.74    and(c1, and(a13, not(and(a12, not(or(b, and(a11, b)))))))
% 72.12/9.74  = { by lemma 40 }
% 72.12/9.74    and(c1, and(a13, not(and(a12, not(or(b, not(a13)))))))
% 72.12/9.74  = { by lemma 63 }
% 72.12/9.74    and(c1, and(a13, not(and(a12, and(a13, not(b))))))
% 72.12/9.74  = { by lemma 66 }
% 72.12/9.74    and(c1, and(a13, not(and(not(b), not(a14)))))
% 72.12/9.74  = { by axiom 27 (demorgan2) R->L }
% 72.12/9.74    and(c1, and(a13, not(not(or(b, a14)))))
% 72.12/9.74  = { by axiom 5 (or_symmetry) }
% 72.12/9.74    and(c1, and(a13, not(not(or(a14, b)))))
% 72.12/9.74  = { by axiom 3 (not_involution) }
% 72.12/9.74    and(c1, and(a13, or(a14, b)))
% 72.12/9.74  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.74    and(c1, and(a13, or(b, a14)))
% 72.12/9.74  = { by lemma 46 R->L }
% 72.12/9.74    and(c1, and(a13, or(a14, and(b, not(a14)))))
% 72.12/9.74  = { by lemma 66 R->L }
% 72.12/9.74    and(c1, and(a13, or(a14, and(a12, and(a13, b)))))
% 72.12/9.74  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.74    and(c1, and(a13, or(a14, and(a12, and(b, a13)))))
% 72.12/9.74  = { by lemma 59 R->L }
% 72.12/9.74    and(c1, and(a13, or(a14, and(a12, and(b, or(a, not(b)))))))
% 72.12/9.74  = { by lemma 50 }
% 72.12/9.74    and(c1, and(a13, or(a14, and(a12, and(b, a)))))
% 72.12/9.74  = { by axiom 9 (and_symmetry) }
% 72.12/9.74    and(c1, and(a13, or(a14, and(a12, and(a, b)))))
% 72.12/9.74  = { by lemma 42 }
% 72.12/9.74    and(c1, and(a13, or(a14, and(a12, not(a11)))))
% 72.12/9.74  = { by lemma 68 }
% 72.12/9.74    and(c1, and(a13, or(a14, not(a11))))
% 72.12/9.74  = { by lemma 69 R->L }
% 72.12/9.74    and(c1, and(a13, not(and(a11, not(a14)))))
% 72.12/9.74  = { by lemma 71 }
% 72.12/9.74    and(c1, and(a13, not(not(or(c1, a14)))))
% 72.12/9.74  = { by axiom 3 (not_involution) }
% 72.12/9.74    and(c1, and(a13, or(c1, a14)))
% 72.12/9.74  = { by lemma 73 }
% 72.12/9.74    and(c1, a13)
% 72.12/9.74  = { by axiom 9 (and_symmetry) }
% 72.12/9.74    and(a13, c1)
% 72.12/9.74  
% 72.12/9.74  Lemma 75: and(a14, and(X, a15)) = and(X, not(a16)).
% 72.12/9.74  Proof:
% 72.12/9.74    and(a14, and(X, a15))
% 72.12/9.74  = { by lemma 56 R->L }
% 72.12/9.74    and(a15, and(a14, X))
% 72.12/9.74  = { by lemma 55 R->L }
% 72.12/9.74    and(X, and(a14, a15))
% 72.12/9.74  = { by lemma 44 }
% 72.12/9.74    and(X, not(a16))
% 72.12/9.74  
% 72.12/9.74  Lemma 76: and(a11, not(a16)) = and(a14, not(c1)).
% 72.12/9.74  Proof:
% 72.12/9.74    and(a11, not(a16))
% 72.12/9.74  = { by lemma 75 R->L }
% 72.12/9.74    and(a14, and(a11, a15))
% 72.12/9.74  = { by lemma 41 }
% 72.12/9.74    and(a14, not(c1))
% 72.12/9.74  
% 72.12/9.74  Lemma 77: or(c1, not(a14)) = or(a16, not(a11)).
% 72.12/9.74  Proof:
% 72.12/9.74    or(c1, not(a14))
% 72.12/9.74  = { by lemma 69 R->L }
% 72.12/9.74    not(and(a14, not(c1)))
% 72.12/9.74  = { by lemma 76 R->L }
% 72.12/9.74    not(and(a11, not(a16)))
% 72.12/9.74  = { by lemma 69 }
% 72.12/9.74    or(a16, not(a11))
% 72.12/9.74  
% 72.12/9.74  Lemma 78: and(X, and(Y, X)) = and(Y, X).
% 72.12/9.74  Proof:
% 72.12/9.74    and(X, and(Y, X))
% 72.12/9.74  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.74    and(and(Y, X), X)
% 72.12/9.74  = { by axiom 28 (and_evaluation1) }
% 72.12/9.74    and(Y, X)
% 72.12/9.74  
% 72.12/9.74  Lemma 79: and(a14, not(c1)) = not(or(a16, c1)).
% 72.12/9.74  Proof:
% 72.12/9.74    and(a14, not(c1))
% 72.12/9.74  = { by lemma 41 R->L }
% 72.12/9.74    and(a14, and(a11, a15))
% 72.12/9.74  = { by lemma 78 R->L }
% 72.12/9.74    and(a14, and(a15, and(a11, a15)))
% 72.12/9.74  = { by lemma 41 }
% 72.12/9.74    and(a14, and(a15, not(c1)))
% 72.12/9.74  = { by lemma 64 R->L }
% 72.12/9.74    and(a15, and(a14, not(c1)))
% 72.12/9.74  = { by lemma 65 R->L }
% 72.12/9.74    and(and(a14, a15), not(c1))
% 72.12/9.74  = { by lemma 44 }
% 72.12/9.74    and(not(a16), not(c1))
% 72.12/9.74  = { by axiom 9 (and_symmetry) }
% 72.12/9.74    and(not(c1), not(a16))
% 72.12/9.74  = { by axiom 27 (demorgan2) R->L }
% 72.12/9.74    not(or(c1, a16))
% 72.12/9.74  = { by axiom 5 (or_symmetry) }
% 72.12/9.74    not(or(a16, c1))
% 72.12/9.74  
% 72.12/9.74  Lemma 80: or(a14, a11) = a11.
% 72.12/9.74  Proof:
% 72.12/9.74    or(a14, a11)
% 72.12/9.74  = { by axiom 3 (not_involution) R->L }
% 72.12/9.74    not(not(or(a14, a11)))
% 72.12/9.74  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.74    not(not(or(a11, a14)))
% 72.12/9.74  = { by axiom 27 (demorgan2) }
% 72.12/9.74    not(and(not(a11), not(a14)))
% 72.12/9.74  = { by lemma 66 R->L }
% 72.12/9.74    not(and(a12, and(a13, not(a11))))
% 72.12/9.74  = { by lemma 63 R->L }
% 72.12/9.74    not(and(a12, not(or(a11, not(a13)))))
% 72.12/9.74  = { by lemma 40 R->L }
% 72.12/9.74    not(and(a12, not(or(a11, and(a11, b)))))
% 72.12/9.74  = { by lemma 67 }
% 72.12/9.74    not(and(a12, not(a11)))
% 72.12/9.74  = { by lemma 68 }
% 72.12/9.74    not(not(a11))
% 72.12/9.74  = { by axiom 3 (not_involution) }
% 72.12/9.74    a11
% 72.12/9.74  
% 72.12/9.74  Lemma 81: or(X, or(Y, Z)) = or(Z, or(Y, X)).
% 72.12/9.74  Proof:
% 72.12/9.74    or(X, or(Y, Z))
% 72.12/9.74  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.74    or(or(Y, Z), X)
% 72.12/9.74  = { by axiom 24 (or_commutativity) R->L }
% 72.12/9.74    or(or(Y, X), Z)
% 72.12/9.74  = { by axiom 5 (or_symmetry) }
% 72.12/9.74    or(Z, or(Y, X))
% 72.12/9.74  
% 72.12/9.74  Lemma 82: or(Z, or(X, Y)) = or(X, or(Y, Z)).
% 72.12/9.74  Proof:
% 72.12/9.74    or(Z, or(X, Y))
% 72.12/9.74  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.74    or(Z, or(Y, X))
% 72.12/9.74  = { by lemma 81 }
% 72.12/9.74    or(X, or(Y, Z))
% 72.12/9.74  
% 72.12/9.74  Lemma 83: or(not(X), or(Y, X)) = n1.
% 72.12/9.74  Proof:
% 72.12/9.74    or(not(X), or(Y, X))
% 72.12/9.74  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.74    or(or(Y, X), not(X))
% 72.12/9.74  = { by axiom 30 (or_not_evaluation2) }
% 72.12/9.74    n1
% 72.12/9.74  
% 72.12/9.74  Lemma 84: or(a16, a14) = n1.
% 72.12/9.74  Proof:
% 72.12/9.74    or(a16, a14)
% 72.12/9.74  = { by axiom 3 (not_involution) R->L }
% 72.12/9.74    or(not(not(a16)), a14)
% 72.12/9.74  = { by lemma 67 R->L }
% 72.12/9.74    or(not(not(a16)), or(a14, and(a14, a15)))
% 72.12/9.74  = { by lemma 44 }
% 72.12/9.74    or(not(not(a16)), or(a14, not(a16)))
% 72.12/9.74  = { by lemma 83 }
% 72.12/9.74    n1
% 72.12/9.74  
% 72.12/9.74  Lemma 85: or(a16, c1) = a16.
% 72.12/9.74  Proof:
% 72.12/9.74    or(a16, c1)
% 72.12/9.74  = { by axiom 3 (not_involution) R->L }
% 72.12/9.74    or(a16, not(not(c1)))
% 72.12/9.74  = { by lemma 61 R->L }
% 72.12/9.74    or(a16, not(or(a16, not(c1))))
% 72.12/9.74  = { by lemma 61 R->L }
% 72.12/9.74    or(a16, not(or(a16, not(or(a16, c1)))))
% 72.12/9.74  = { by lemma 79 R->L }
% 72.12/9.74    or(a16, not(or(a16, and(a14, not(c1)))))
% 72.12/9.74  = { by axiom 3 (not_involution) R->L }
% 72.12/9.74    or(a16, not(or(not(not(a16)), and(a14, not(c1)))))
% 72.12/9.74  = { by lemma 76 R->L }
% 72.12/9.74    or(a16, not(or(not(not(a16)), and(a11, not(a16)))))
% 72.12/9.74  = { by lemma 58 }
% 72.12/9.74    or(a16, not(or(a11, not(not(a16)))))
% 72.12/9.74  = { by axiom 3 (not_involution) }
% 72.12/9.74    or(a16, not(or(a11, a16)))
% 72.12/9.74  = { by axiom 5 (or_symmetry) }
% 72.12/9.74    or(a16, not(or(a16, a11)))
% 72.12/9.74  = { by lemma 80 R->L }
% 72.12/9.74    or(a16, not(or(a16, or(a14, a11))))
% 72.12/9.74  = { by lemma 82 }
% 72.12/9.74    or(a16, not(or(a14, or(a11, a16))))
% 72.12/9.74  = { by lemma 82 }
% 72.12/9.74    or(a16, not(or(a11, or(a16, a14))))
% 72.12/9.74  = { by lemma 84 }
% 72.12/9.74    or(a16, not(or(a11, n1)))
% 72.12/9.74  = { by axiom 6 (or_definition2) }
% 72.12/9.74    or(a16, not(n1))
% 72.12/9.74  = { by axiom 1 (not_definition2) }
% 72.12/9.74    or(a16, n0)
% 72.12/9.74  = { by axiom 7 (or_definition1) }
% 72.12/9.74    a16
% 72.12/9.74  
% 72.12/9.74  Lemma 86: and(c1, a14) = not(a15).
% 72.12/9.74  Proof:
% 72.12/9.74    and(c1, a14)
% 72.12/9.74  = { by axiom 3 (not_involution) R->L }
% 72.12/9.74    and(c1, not(not(a14)))
% 72.12/9.74  = { by lemma 49 R->L }
% 72.12/9.74    and(not(not(a14)), or(not(a14), c1))
% 72.12/9.74  = { by axiom 5 (or_symmetry) }
% 72.12/9.74    and(not(not(a14)), or(c1, not(a14)))
% 72.12/9.74  = { by lemma 77 }
% 72.12/9.74    and(not(not(a14)), or(a16, not(a11)))
% 72.12/9.74  = { by axiom 3 (not_involution) }
% 72.12/9.74    and(a14, or(a16, not(a11)))
% 72.12/9.74  = { by lemma 77 R->L }
% 72.12/9.74    and(a14, or(c1, not(a14)))
% 72.12/9.74  = { by lemma 69 R->L }
% 72.12/9.74    and(a14, not(and(a14, not(c1))))
% 72.12/9.74  = { by lemma 79 }
% 72.12/9.74    and(a14, not(not(or(a16, c1))))
% 72.12/9.74  = { by axiom 3 (not_involution) }
% 72.12/9.74    and(a14, or(a16, c1))
% 72.12/9.74  = { by lemma 85 }
% 72.12/9.74    and(a14, a16)
% 72.12/9.74  = { by axiom 9 (and_symmetry) }
% 72.12/9.74    and(a16, a14)
% 72.12/9.74  = { by lemma 51 }
% 72.12/9.74    not(a15)
% 72.12/9.74  
% 72.12/9.74  Lemma 87: or(a12, not(a14)) = a12.
% 72.12/9.74  Proof:
% 72.12/9.74    or(a12, not(a14))
% 72.12/9.74  = { by lemma 43 R->L }
% 72.12/9.74    or(a12, and(a12, a13))
% 72.12/9.74  = { by lemma 67 }
% 72.12/9.74    a12
% 72.12/9.74  
% 72.12/9.74  Lemma 88: or(or(X, Y), Z) = or(X, or(Y, Z)).
% 72.12/9.74  Proof:
% 72.12/9.74    or(or(X, Y), Z)
% 72.12/9.74  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.74    or(Z, or(X, Y))
% 72.12/9.74  = { by lemma 82 }
% 72.12/9.74    or(X, or(Y, Z))
% 72.12/9.74  
% 72.12/9.74  Lemma 89: or(a12, carryin) = or(a12, a16).
% 72.12/9.74  Proof:
% 72.12/9.74    or(a12, carryin)
% 72.12/9.74  = { by lemma 87 R->L }
% 72.12/9.74    or(or(a12, not(a14)), carryin)
% 72.12/9.74  = { by axiom 24 (or_commutativity) }
% 72.12/9.74    or(or(a12, carryin), not(a14))
% 72.12/9.74  = { by lemma 88 }
% 72.12/9.74    or(a12, or(carryin, not(a14)))
% 72.12/9.74  = { by lemma 48 }
% 72.12/9.74    or(a12, a16)
% 72.12/9.74  
% 72.12/9.74  Lemma 90: xor(Y, X) = xor(X, Y).
% 72.12/9.74  Proof:
% 72.12/9.74    xor(Y, X)
% 72.12/9.74  = { by axiom 37 (xor_definition) }
% 72.12/9.74    or(and(Y, not(X)), and(X, not(Y)))
% 72.12/9.74  = { by axiom 5 (or_symmetry) }
% 72.12/9.74    or(and(X, not(Y)), and(Y, not(X)))
% 72.12/9.74  = { by axiom 37 (xor_definition) R->L }
% 72.12/9.74    xor(X, Y)
% 72.12/9.74  
% 72.12/9.74  Lemma 91: and(X, and(X, Y)) = and(X, Y).
% 72.12/9.74  Proof:
% 72.12/9.74    and(X, and(X, Y))
% 72.12/9.74  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.74    and(X, and(Y, X))
% 72.12/9.74  = { by lemma 78 }
% 72.12/9.74    and(Y, X)
% 72.12/9.74  = { by axiom 9 (and_symmetry) }
% 72.12/9.74    and(X, Y)
% 72.12/9.74  
% 72.12/9.74  Lemma 92: and(a11, not(c1)) = not(c1).
% 72.12/9.74  Proof:
% 72.12/9.74    and(a11, not(c1))
% 72.12/9.74  = { by lemma 41 R->L }
% 72.12/9.74    and(a11, and(a11, a15))
% 72.12/9.74  = { by lemma 91 }
% 72.12/9.74    and(a11, a15)
% 72.12/9.74  = { by lemma 41 }
% 72.12/9.74    not(c1)
% 72.12/9.74  
% 72.12/9.74  Lemma 93: and(c1, not(a11)) = not(a11).
% 72.12/9.74  Proof:
% 72.12/9.74    and(c1, not(a11))
% 72.12/9.74  = { by lemma 63 R->L }
% 72.12/9.74    not(or(a11, not(c1)))
% 72.12/9.74  = { by lemma 41 R->L }
% 72.12/9.74    not(or(a11, and(a11, a15)))
% 72.12/9.74  = { by lemma 67 }
% 72.12/9.74    not(a11)
% 72.12/9.74  
% 72.12/9.74  Lemma 94: not(and(c1, a11)) = xor(c1, a11).
% 72.12/9.74  Proof:
% 72.12/9.74    not(and(c1, a11))
% 72.12/9.74  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.74    not(and(a11, c1))
% 72.12/9.74  = { by axiom 23 (demorgan1) }
% 72.12/9.74    or(not(a11), not(c1))
% 72.12/9.74  = { by lemma 92 R->L }
% 72.12/9.74    or(not(a11), and(a11, not(c1)))
% 72.12/9.74  = { by lemma 93 R->L }
% 72.12/9.74    or(and(c1, not(a11)), and(a11, not(c1)))
% 72.12/9.74  = { by axiom 37 (xor_definition) R->L }
% 72.12/9.74    xor(c1, a11)
% 72.12/9.74  
% 72.12/9.74  Lemma 95: or(a15, not(a11)) = xor(c1, a11).
% 72.12/9.74  Proof:
% 72.12/9.74    or(a15, not(a11))
% 72.12/9.74  = { by lemma 47 R->L }
% 72.12/9.74    or(not(a11), and(a11, a15))
% 72.12/9.74  = { by lemma 41 }
% 72.12/9.75    or(not(a11), not(c1))
% 72.12/9.75  = { by axiom 23 (demorgan1) R->L }
% 72.12/9.75    not(and(a11, c1))
% 72.12/9.75  = { by axiom 9 (and_symmetry) }
% 72.12/9.75    not(and(c1, a11))
% 72.12/9.75  = { by lemma 94 }
% 72.12/9.75    xor(c1, a11)
% 72.12/9.75  
% 72.12/9.75  Lemma 96: not(or(not(X), Y)) = and(X, not(Y)).
% 72.12/9.75  Proof:
% 72.12/9.75    not(or(not(X), Y))
% 72.12/9.75  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.75    not(or(Y, not(X)))
% 72.12/9.75  = { by lemma 63 }
% 72.12/9.75    and(X, not(Y))
% 72.12/9.75  
% 72.12/9.75  Lemma 97: and(X, not(and(X, Y))) = and(X, not(Y)).
% 72.12/9.75  Proof:
% 72.12/9.75    and(X, not(and(X, Y)))
% 72.12/9.75  = { by lemma 96 R->L }
% 72.12/9.75    not(or(not(X), and(X, Y)))
% 72.12/9.75  = { by axiom 27 (demorgan2) }
% 72.12/9.75    and(not(not(X)), not(and(X, Y)))
% 72.12/9.75  = { by axiom 23 (demorgan1) }
% 72.12/9.75    and(not(not(X)), or(not(X), not(Y)))
% 72.12/9.75  = { by lemma 49 }
% 72.12/9.75    and(not(Y), not(not(X)))
% 72.12/9.75  = { by axiom 27 (demorgan2) R->L }
% 72.12/9.75    not(or(Y, not(X)))
% 72.12/9.75  = { by lemma 63 }
% 72.12/9.75    and(X, not(Y))
% 72.12/9.75  
% 72.12/9.75  Lemma 98: or(a14, not(c1)) = a11.
% 72.12/9.75  Proof:
% 72.12/9.75    or(a14, not(c1))
% 72.12/9.75  = { by lemma 60 R->L }
% 72.12/9.75    or(a14, not(or(c1, a14)))
% 72.12/9.75  = { by lemma 71 R->L }
% 72.12/9.75    or(a14, and(a11, not(a14)))
% 72.12/9.75  = { by lemma 46 }
% 72.12/9.75    or(a11, a14)
% 72.12/9.75  = { by axiom 5 (or_symmetry) }
% 72.12/9.75    or(a14, a11)
% 72.12/9.75  = { by lemma 80 }
% 72.12/9.75    a11
% 72.12/9.75  
% 72.12/9.75  Lemma 99: and(a11, not(a15)) = not(a15).
% 72.12/9.75  Proof:
% 72.12/9.75    and(a11, not(a15))
% 72.12/9.75  = { by lemma 97 R->L }
% 72.12/9.75    and(a11, not(and(a11, a15)))
% 72.12/9.75  = { by axiom 15 (circuit9) R->L }
% 72.12/9.75    and(a11, c1)
% 72.12/9.75  = { by axiom 9 (and_symmetry) }
% 72.12/9.75    and(c1, a11)
% 72.12/9.75  = { by lemma 98 R->L }
% 72.12/9.75    and(c1, or(a14, not(c1)))
% 72.12/9.75  = { by lemma 50 }
% 72.12/9.75    and(c1, a14)
% 72.12/9.75  = { by lemma 86 }
% 72.12/9.75    not(a15)
% 72.12/9.75  
% 72.12/9.75  Lemma 100: xor(c1, a11) = a15.
% 72.12/9.75  Proof:
% 72.12/9.75    xor(c1, a11)
% 72.12/9.75  = { by lemma 95 R->L }
% 72.12/9.75    or(a15, not(a11))
% 72.12/9.75  = { by lemma 69 R->L }
% 72.12/9.75    not(and(a11, not(a15)))
% 72.12/9.75  = { by lemma 99 }
% 72.12/9.75    not(not(a15))
% 72.12/9.75  = { by axiom 3 (not_involution) }
% 72.12/9.75    a15
% 72.12/9.75  
% 72.12/9.75  Lemma 101: and(a, not(b)) = not(a12).
% 72.12/9.75  Proof:
% 72.12/9.75    and(a, not(b))
% 72.12/9.75  = { by lemma 63 R->L }
% 72.12/9.75    not(or(b, not(a)))
% 72.12/9.75  = { by lemma 62 }
% 72.12/9.75    not(a12)
% 72.12/9.75  
% 72.12/9.75  Lemma 102: and(b, not(a)) = not(a13).
% 72.12/9.75  Proof:
% 72.12/9.75    and(b, not(a))
% 72.12/9.75  = { by lemma 63 R->L }
% 72.12/9.75    not(or(a, not(b)))
% 72.12/9.75  = { by lemma 59 }
% 72.12/9.75    not(a13)
% 72.12/9.75  
% 72.12/9.75  Lemma 103: and(a12, not(a13)) = not(a13).
% 72.12/9.75  Proof:
% 72.12/9.75    and(a12, not(a13))
% 72.12/9.75  = { by lemma 57 R->L }
% 72.12/9.75    and(a11, and(a12, b))
% 72.12/9.75  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.75    and(a11, and(b, a12))
% 72.12/9.75  = { by lemma 62 R->L }
% 72.12/9.75    and(a11, and(b, or(b, not(a))))
% 72.12/9.75  = { by lemma 53 }
% 72.12/9.75    and(a11, b)
% 72.12/9.75  = { by lemma 40 }
% 72.12/9.75    not(a13)
% 72.12/9.75  
% 72.12/9.75  Lemma 104: or(a13, not(a14)) = a13.
% 72.12/9.75  Proof:
% 72.12/9.75    or(a13, not(a14))
% 72.12/9.75  = { by lemma 43 R->L }
% 72.12/9.75    or(a13, and(a12, a13))
% 72.12/9.75  = { by lemma 52 }
% 72.12/9.75    a13
% 72.12/9.75  
% 72.12/9.75  Lemma 105: and(a14, not(a13)) = not(a13).
% 72.12/9.75  Proof:
% 72.12/9.75    and(a14, not(a13))
% 72.12/9.75  = { by lemma 63 R->L }
% 72.12/9.75    not(or(a13, not(a14)))
% 72.12/9.75  = { by lemma 104 }
% 72.12/9.75    not(a13)
% 72.12/9.75  
% 72.12/9.75  Lemma 106: and(a16, and(a14, X)) = and(X, not(a15)).
% 72.12/9.75  Proof:
% 72.12/9.75    and(a16, and(a14, X))
% 72.12/9.75  = { by lemma 64 R->L }
% 72.12/9.75    and(a14, and(a16, X))
% 72.12/9.75  = { by lemma 55 R->L }
% 72.12/9.75    and(X, and(a16, a14))
% 72.12/9.75  = { by lemma 51 }
% 72.12/9.75    and(X, not(a15))
% 72.12/9.75  
% 72.12/9.75  Lemma 107: and(a16, not(a13)) = not(or(a13, a15)).
% 72.12/9.75  Proof:
% 72.12/9.75    and(a16, not(a13))
% 72.12/9.75  = { by lemma 105 R->L }
% 72.12/9.75    and(a16, and(a14, not(a13)))
% 72.12/9.75  = { by lemma 106 }
% 72.12/9.75    and(not(a13), not(a15))
% 72.12/9.75  = { by axiom 27 (demorgan2) R->L }
% 72.12/9.75    not(or(a13, a15))
% 72.12/9.75  
% 72.12/9.75  Lemma 108: or(X, and(not(X), Y)) = or(X, Y).
% 72.12/9.75  Proof:
% 72.12/9.75    or(X, and(not(X), Y))
% 72.12/9.75  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.75    or(X, and(Y, not(X)))
% 72.12/9.75  = { by lemma 46 }
% 72.12/9.75    or(Y, X)
% 72.12/9.75  = { by axiom 5 (or_symmetry) }
% 72.12/9.75    or(X, Y)
% 72.12/9.75  
% 72.12/9.75  Lemma 109: or(a, not(a12)) = a.
% 72.12/9.75  Proof:
% 72.12/9.75    or(a, not(a12))
% 72.12/9.75  = { by lemma 39 R->L }
% 72.12/9.75    or(a, and(a11, a))
% 72.12/9.75  = { by lemma 52 }
% 72.12/9.75    a
% 72.12/9.75  
% 72.12/9.75  Lemma 110: or(X, not(a11)) = carryout(X, a12, a).
% 72.12/9.75  Proof:
% 72.12/9.75    or(X, not(a11))
% 72.12/9.75  = { by lemma 108 R->L }
% 72.12/9.75    or(X, and(not(X), not(a11)))
% 72.12/9.75  = { by axiom 10 (and_definition2) R->L }
% 72.12/9.75    or(and(X, n1), and(not(X), not(a11)))
% 72.12/9.75  = { by lemma 83 R->L }
% 72.12/9.75    or(and(X, or(not(not(a12)), or(a, not(a12)))), and(not(X), not(a11)))
% 72.12/9.75  = { by lemma 109 }
% 72.12/9.75    or(and(X, or(not(not(a12)), a)), and(not(X), not(a11)))
% 72.12/9.75  = { by axiom 3 (not_involution) }
% 72.12/9.75    or(and(X, or(a12, a)), and(not(X), not(a11)))
% 72.12/9.75  = { by lemma 42 R->L }
% 72.12/9.75    or(and(X, or(a12, a)), and(not(X), and(a, b)))
% 72.12/9.75  = { by lemma 50 R->L }
% 72.12/9.75    or(and(X, or(a12, a)), and(not(X), and(a, or(b, not(a)))))
% 72.12/9.75  = { by lemma 62 }
% 72.12/9.75    or(and(X, or(a12, a)), and(not(X), and(a, a12)))
% 72.12/9.75  = { by axiom 9 (and_symmetry) }
% 72.12/9.75    or(and(X, or(a12, a)), and(not(X), and(a12, a)))
% 72.12/9.75  = { by axiom 38 (carryout_definition) R->L }
% 72.12/9.75    carryout(X, a12, a)
% 72.12/9.75  
% 72.12/9.75  Lemma 111: or(X, not(a14)) = carryout(X, a12, a13).
% 72.12/9.75  Proof:
% 72.12/9.75    or(X, not(a14))
% 72.12/9.75  = { by lemma 43 R->L }
% 72.12/9.75    or(X, and(a12, a13))
% 72.12/9.75  = { by lemma 108 R->L }
% 72.12/9.75    or(X, and(not(X), and(a12, a13)))
% 72.12/9.75  = { by axiom 10 (and_definition2) R->L }
% 72.12/9.75    or(and(X, n1), and(not(X), and(a12, a13)))
% 72.12/9.75  = { by axiom 20 (or_not_evaluation1) R->L }
% 72.12/9.75    or(and(X, or(a13, not(a13))), and(not(X), and(a12, a13)))
% 72.12/9.75  = { by lemma 103 R->L }
% 72.12/9.75    or(and(X, or(a13, and(a12, not(a13)))), and(not(X), and(a12, a13)))
% 72.12/9.75  = { by lemma 46 }
% 72.12/9.75    or(and(X, or(a12, a13)), and(not(X), and(a12, a13)))
% 72.12/9.75  = { by axiom 38 (carryout_definition) R->L }
% 72.12/9.75    carryout(X, a12, a13)
% 72.12/9.75  
% 72.12/9.75  Lemma 112: or(X, not(a15)) = carryout(X, a16, a14).
% 72.12/9.75  Proof:
% 72.12/9.75    or(X, not(a15))
% 72.12/9.75  = { by lemma 108 R->L }
% 72.12/9.75    or(X, and(not(X), not(a15)))
% 72.12/9.75  = { by axiom 10 (and_definition2) R->L }
% 72.12/9.75    or(and(X, n1), and(not(X), not(a15)))
% 72.12/9.75  = { by lemma 84 R->L }
% 72.12/9.75    or(and(X, or(a16, a14)), and(not(X), not(a15)))
% 72.12/9.75  = { by lemma 51 R->L }
% 72.12/9.75    or(and(X, or(a16, a14)), and(not(X), and(a16, a14)))
% 72.12/9.75  = { by axiom 38 (carryout_definition) R->L }
% 72.12/9.75    carryout(X, a16, a14)
% 72.12/9.75  
% 72.12/9.75  Lemma 113: or(X, not(c1)) = carryout(X, a11, a15).
% 72.12/9.75  Proof:
% 72.12/9.75    or(X, not(c1))
% 72.12/9.75  = { by lemma 41 R->L }
% 72.12/9.75    or(X, and(a11, a15))
% 72.12/9.75  = { by lemma 108 R->L }
% 72.12/9.75    or(X, and(not(X), and(a11, a15)))
% 72.12/9.75  = { by axiom 10 (and_definition2) R->L }
% 72.12/9.75    or(and(X, n1), and(not(X), and(a11, a15)))
% 72.12/9.75  = { by axiom 20 (or_not_evaluation1) R->L }
% 72.12/9.75    or(and(X, or(a15, not(a15))), and(not(X), and(a11, a15)))
% 72.12/9.75  = { by lemma 99 R->L }
% 72.12/9.75    or(and(X, or(a15, and(a11, not(a15)))), and(not(X), and(a11, a15)))
% 72.12/9.75  = { by lemma 46 }
% 72.12/9.75    or(and(X, or(a11, a15)), and(not(X), and(a11, a15)))
% 72.12/9.75  = { by axiom 38 (carryout_definition) R->L }
% 72.12/9.75    carryout(X, a11, a15)
% 72.12/9.75  
% 72.12/9.75  Lemma 114: or(not(a11), X) = carryout(X, a12, a).
% 72.12/9.75  Proof:
% 72.12/9.75    or(not(a11), X)
% 72.12/9.75  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.75    or(X, not(a11))
% 72.12/9.75  = { by lemma 110 }
% 72.12/9.75    carryout(X, a12, a)
% 72.12/9.75  
% 72.12/9.75  Lemma 115: or(not(c1), X) = carryout(X, a11, a15).
% 72.12/9.75  Proof:
% 72.12/9.75    or(not(c1), X)
% 72.12/9.75  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.75    or(X, not(c1))
% 72.12/9.75  = { by lemma 113 }
% 72.12/9.75    carryout(X, a11, a15)
% 72.12/9.75  
% 72.12/9.75  Lemma 116: or(and(X, Y), not(or(X, Y))) = xor(X, not(Y)).
% 72.12/9.75  Proof:
% 72.12/9.75    or(and(X, Y), not(or(X, Y)))
% 72.12/9.75  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.75    or(and(X, Y), not(or(Y, X)))
% 72.12/9.75  = { by axiom 27 (demorgan2) }
% 72.12/9.75    or(and(X, Y), and(not(Y), not(X)))
% 72.12/9.75  = { by axiom 3 (not_involution) R->L }
% 72.12/9.75    or(and(X, not(not(Y))), and(not(Y), not(X)))
% 72.12/9.75  = { by axiom 37 (xor_definition) R->L }
% 72.12/9.75    xor(X, not(Y))
% 72.12/9.75  
% 72.12/9.75  Lemma 117: xor(not(X), Y) = xor(X, not(Y)).
% 72.12/9.75  Proof:
% 72.12/9.75    xor(not(X), Y)
% 72.12/9.75  = { by axiom 3 (not_involution) R->L }
% 72.12/9.75    xor(not(X), not(not(Y)))
% 72.12/9.75  = { by lemma 116 R->L }
% 72.12/9.75    or(and(not(X), not(Y)), not(or(not(X), not(Y))))
% 72.12/9.75  = { by axiom 27 (demorgan2) R->L }
% 72.12/9.75    or(not(or(X, Y)), not(or(not(X), not(Y))))
% 72.12/9.75  = { by axiom 23 (demorgan1) R->L }
% 72.12/9.75    not(and(or(X, Y), or(not(X), not(Y))))
% 72.12/9.75  = { by axiom 23 (demorgan1) R->L }
% 72.12/9.75    not(and(or(X, Y), not(and(X, Y))))
% 72.12/9.75  = { by lemma 69 }
% 72.12/9.75    or(and(X, Y), not(or(X, Y)))
% 72.12/9.75  = { by lemma 116 }
% 72.12/9.75    xor(X, not(Y))
% 72.12/9.75  
% 72.12/9.75  Lemma 118: and(not(X), and(Y, X)) = n0.
% 72.12/9.75  Proof:
% 72.12/9.75    and(not(X), and(Y, X))
% 72.12/9.75  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.75    and(and(Y, X), not(X))
% 72.12/9.75  = { by axiom 32 (and_not_evaluation2) }
% 72.12/9.75    n0
% 72.12/9.75  
% 72.12/9.75  Lemma 119: carryout(X, Y, X) = X.
% 72.12/9.75  Proof:
% 72.12/9.75    carryout(X, Y, X)
% 72.12/9.75  = { by axiom 38 (carryout_definition) }
% 72.12/9.75    or(and(X, or(Y, X)), and(not(X), and(Y, X)))
% 72.12/9.75  = { by lemma 54 }
% 72.12/9.75    or(X, and(not(X), and(Y, X)))
% 72.12/9.75  = { by lemma 118 }
% 72.12/9.75    or(X, n0)
% 72.12/9.75  = { by axiom 7 (or_definition1) }
% 72.12/9.75    X
% 72.12/9.75  
% 72.12/9.75  Lemma 120: carryout(a15, a12, a) = a15.
% 72.12/9.75  Proof:
% 72.12/9.75    carryout(a15, a12, a)
% 72.12/9.75  = { by lemma 110 R->L }
% 72.12/9.75    or(a15, not(a11))
% 72.12/9.75  = { by lemma 95 }
% 72.12/9.75    xor(c1, a11)
% 72.12/9.75  = { by lemma 100 }
% 72.12/9.75    a15
% 72.12/9.75  
% 72.12/9.75  Lemma 121: sum(a, b, carryin) = s1.
% 72.12/9.75  Proof:
% 72.12/9.75    sum(a, b, carryin)
% 72.12/9.75  = { by axiom 22 (sum_definition) }
% 72.12/9.75    xor(xor(a, b), carryin)
% 72.12/9.75  = { by axiom 37 (xor_definition) }
% 72.12/9.75    xor(or(and(a, not(b)), and(b, not(a))), carryin)
% 72.12/9.75  = { by lemma 102 }
% 72.12/9.75    xor(or(and(a, not(b)), not(a13)), carryin)
% 72.12/9.75  = { by lemma 101 }
% 72.12/9.75    xor(or(not(a12), not(a13)), carryin)
% 72.12/9.75  = { by axiom 23 (demorgan1) R->L }
% 72.12/9.75    xor(not(and(a12, a13)), carryin)
% 72.12/9.75  = { by axiom 11 (circuit4) R->L }
% 72.12/9.75    xor(a14, carryin)
% 72.12/9.75  = { by axiom 37 (xor_definition) }
% 72.12/9.75    or(and(a14, not(carryin)), and(carryin, not(a14)))
% 72.12/9.75  = { by lemma 63 R->L }
% 72.12/9.75    or(and(a14, not(carryin)), not(or(a14, not(carryin))))
% 72.12/9.75  = { by lemma 58 R->L }
% 72.12/9.75    or(and(a14, not(carryin)), not(or(not(carryin), and(a14, carryin))))
% 72.12/9.75  = { by lemma 45 }
% 72.12/9.75    or(and(a14, not(carryin)), not(or(not(carryin), not(a15))))
% 72.12/9.75  = { by axiom 23 (demorgan1) R->L }
% 72.12/9.75    or(and(a14, not(carryin)), not(not(and(carryin, a15))))
% 72.12/9.75  = { by axiom 9 (and_symmetry) }
% 72.12/9.75    or(and(a14, not(carryin)), not(not(and(a15, carryin))))
% 72.12/9.75  = { by axiom 18 (circuit7) R->L }
% 72.12/9.75    or(and(a14, not(carryin)), not(a17))
% 72.12/9.75  = { by lemma 63 R->L }
% 72.12/9.75    or(not(or(carryin, not(a14))), not(a17))
% 72.12/9.75  = { by lemma 48 }
% 72.12/9.75    or(not(a16), not(a17))
% 72.12/9.75  = { by axiom 23 (demorgan1) R->L }
% 72.12/9.75    not(and(a16, a17))
% 72.12/9.75  = { by axiom 12 (circuit8) R->L }
% 72.12/9.75    s1
% 72.12/9.75  
% 72.12/9.75  Lemma 122: or(X, or(Y, Z)) = or(Y, or(X, Z)).
% 72.12/9.75  Proof:
% 72.12/9.75    or(X, or(Y, Z))
% 72.12/9.75  = { by lemma 82 }
% 72.12/9.75    or(Y, or(Z, X))
% 72.12/9.75  = { by axiom 5 (or_symmetry) }
% 72.12/9.75    or(Y, or(X, Z))
% 72.12/9.75  
% 72.12/9.75  Lemma 123: or(X, or(Y, and(X, Z))) = or(X, Y).
% 72.12/9.75  Proof:
% 72.12/9.75    or(X, or(Y, and(X, Z)))
% 72.12/9.75  = { by lemma 88 R->L }
% 72.12/9.75    or(or(X, Y), and(X, Z))
% 72.12/9.75  = { by axiom 24 (or_commutativity) R->L }
% 72.12/9.75    or(or(X, and(X, Z)), Y)
% 72.12/9.75  = { by lemma 67 }
% 72.12/9.75    or(X, Y)
% 72.12/9.75  
% 72.12/9.75  Lemma 124: or(a, carryout(X, a12, a)) = or(X, a).
% 72.12/9.75  Proof:
% 72.12/9.75    or(a, carryout(X, a12, a))
% 72.12/9.75  = { by lemma 110 R->L }
% 72.12/9.75    or(a, or(X, not(a11)))
% 72.12/9.75  = { by lemma 42 R->L }
% 72.12/9.75    or(a, or(X, and(a, b)))
% 72.12/9.75  = { by lemma 123 }
% 72.12/9.75    or(a, X)
% 72.12/9.75  = { by axiom 5 (or_symmetry) }
% 72.12/9.75    or(X, a)
% 72.12/9.75  
% 72.12/9.75  Lemma 125: or(a, and(X, a11)) = or(X, a).
% 72.12/9.75  Proof:
% 72.12/9.75    or(a, and(X, a11))
% 72.12/9.75  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.75    or(and(X, a11), a)
% 72.12/9.75  = { by lemma 124 R->L }
% 72.12/9.75    or(a, carryout(and(X, a11), a12, a))
% 72.12/9.75  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.75    or(a, carryout(and(a11, X), a12, a))
% 72.12/9.75  = { by lemma 114 R->L }
% 72.12/9.75    or(a, or(not(a11), and(a11, X)))
% 72.12/9.75  = { by lemma 42 R->L }
% 72.12/9.75    or(a, or(and(a, b), and(a11, X)))
% 72.12/9.75  = { by axiom 19 (circuit1) }
% 72.12/9.75    or(a, or(and(a, b), and(not(and(a, b)), X)))
% 72.12/9.75  = { by lemma 108 }
% 72.12/9.75    or(a, or(and(a, b), X))
% 72.12/9.75  = { by lemma 42 }
% 72.12/9.75    or(a, or(not(a11), X))
% 72.12/9.75  = { by lemma 114 }
% 72.12/9.75    or(a, carryout(X, a12, a))
% 72.12/9.75  = { by lemma 124 }
% 72.12/9.75    or(X, a)
% 72.12/9.75  
% 72.12/9.75  Lemma 126: or(a, and(a11, X)) = or(X, a).
% 72.12/9.75  Proof:
% 72.12/9.75    or(a, and(a11, X))
% 72.12/9.75  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.75    or(a, and(X, a11))
% 72.12/9.75  = { by lemma 125 }
% 72.12/9.75    or(X, a)
% 72.12/9.75  
% 72.12/9.75  Lemma 127: not(carryout(X, a16, a14)) = and(a15, not(X)).
% 72.12/9.75  Proof:
% 72.12/9.75    not(carryout(X, a16, a14))
% 72.12/9.75  = { by lemma 112 R->L }
% 72.12/9.75    not(or(X, not(a15)))
% 72.12/9.75  = { by lemma 63 }
% 72.12/9.75    and(a15, not(X))
% 72.12/9.75  
% 72.12/9.75  Lemma 128: xor(X, and(X, Y)) = and(X, not(Y)).
% 72.12/9.75  Proof:
% 72.12/9.75    xor(X, and(X, Y))
% 72.12/9.75  = { by axiom 37 (xor_definition) }
% 72.12/9.75    or(and(X, not(and(X, Y))), and(and(X, Y), not(X)))
% 72.12/9.75  = { by lemma 97 }
% 72.12/9.75    or(and(X, not(Y)), and(and(X, Y), not(X)))
% 72.12/9.75  = { by lemma 72 }
% 72.12/9.75    or(and(X, not(Y)), and(X, and(Y, not(X))))
% 72.12/9.75  = { by axiom 3 (not_involution) R->L }
% 72.12/9.75    or(and(X, not(Y)), and(not(not(X)), and(Y, not(X))))
% 72.12/9.75  = { by lemma 118 }
% 72.12/9.75    or(and(X, not(Y)), n0)
% 72.12/9.75  = { by axiom 7 (or_definition1) }
% 72.12/9.75    and(X, not(Y))
% 72.12/9.75  
% 72.12/9.75  Lemma 129: and(X, not(or(Y, X))) = n0.
% 72.12/9.75  Proof:
% 72.12/9.75    and(X, not(or(Y, X)))
% 72.12/9.75  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.75    and(X, not(or(X, Y)))
% 72.12/9.75  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.75    and(not(or(X, Y)), X)
% 72.12/9.75  = { by lemma 53 R->L }
% 72.12/9.75    and(not(or(X, Y)), and(X, or(X, Y)))
% 72.12/9.75  = { by lemma 118 }
% 72.12/9.76    n0
% 72.12/9.76  
% 72.12/9.76  Lemma 130: xor(X, or(X, Y)) = and(Y, not(X)).
% 72.12/9.76  Proof:
% 72.12/9.76    xor(X, or(X, Y))
% 72.12/9.76  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.76    xor(X, or(Y, X))
% 72.12/9.76  = { by axiom 3 (not_involution) R->L }
% 72.12/9.76    xor(X, not(not(or(Y, X))))
% 72.12/9.76  = { by lemma 116 R->L }
% 72.12/9.76    or(and(X, not(or(Y, X))), not(or(X, not(or(Y, X)))))
% 72.12/9.76  = { by lemma 60 }
% 72.12/9.76    or(and(X, not(or(Y, X))), not(or(X, not(Y))))
% 72.12/9.76  = { by lemma 129 }
% 72.12/9.76    or(n0, not(or(X, not(Y))))
% 72.12/9.76  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.76    or(not(or(X, not(Y))), n0)
% 72.12/9.76  = { by axiom 7 (or_definition1) }
% 72.12/9.76    not(or(X, not(Y)))
% 72.12/9.76  = { by lemma 63 }
% 72.12/9.76    and(Y, not(X))
% 72.12/9.76  
% 72.12/9.76  Lemma 131: carryout(not(a12), a12, a) = a.
% 72.12/9.76  Proof:
% 72.12/9.76    carryout(not(a12), a12, a)
% 72.12/9.76  = { by lemma 114 R->L }
% 72.12/9.76    or(not(a11), not(a12))
% 72.12/9.76  = { by lemma 101 R->L }
% 72.12/9.76    or(not(a11), and(a, not(b)))
% 72.12/9.76  = { by lemma 128 R->L }
% 72.12/9.76    or(not(a11), xor(a, and(a, b)))
% 72.12/9.76  = { by lemma 42 }
% 72.12/9.76    or(not(a11), xor(a, not(a11)))
% 72.12/9.76  = { by axiom 37 (xor_definition) }
% 72.12/9.76    or(not(a11), or(and(a, not(not(a11))), and(not(a11), not(a))))
% 72.12/9.76  = { by lemma 123 }
% 72.12/9.76    or(not(a11), and(a, not(not(a11))))
% 72.12/9.76  = { by lemma 46 }
% 72.12/9.76    or(a, not(a11))
% 72.12/9.76  = { by axiom 5 (or_symmetry) }
% 72.12/9.76    or(not(a11), a)
% 72.12/9.76  = { by lemma 114 }
% 72.12/9.76    carryout(a, a12, a)
% 72.12/9.76  = { by lemma 119 }
% 72.12/9.76    a
% 72.12/9.76  
% 72.12/9.76  Lemma 132: and(X, or(not(X), Y)) = and(X, Y).
% 72.12/9.76  Proof:
% 72.12/9.76    and(X, or(not(X), Y))
% 72.12/9.76  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.76    and(X, or(Y, not(X)))
% 72.12/9.76  = { by lemma 50 }
% 72.12/9.76    and(X, Y)
% 72.12/9.76  
% 72.12/9.76  Lemma 133: and(X, and(Y, and(Z, not(X)))) = n0.
% 72.12/9.76  Proof:
% 72.12/9.76    and(X, and(Y, and(Z, not(X))))
% 72.12/9.76  = { by lemma 72 R->L }
% 72.12/9.76    and(and(X, Y), and(Z, not(X)))
% 72.12/9.76  = { by lemma 72 R->L }
% 72.12/9.76    and(and(and(X, Y), Z), not(X))
% 72.12/9.76  = { by axiom 36 (and_not_evaluation4) }
% 72.12/9.76    n0
% 72.12/9.76  
% 72.12/9.76  Lemma 134: or(and(X, Y), and(Z, X)) = and(X, or(Z, Y)).
% 72.12/9.76  Proof:
% 72.12/9.76    or(and(X, Y), and(Z, X))
% 72.12/9.76  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.76    or(and(Y, X), and(Z, X))
% 72.12/9.76  = { by axiom 33 (and_or_simplification) R->L }
% 72.12/9.76    and(or(Y, Z), X)
% 72.12/9.76  = { by axiom 9 (and_symmetry) }
% 72.12/9.76    and(X, or(Y, Z))
% 72.12/9.76  = { by axiom 5 (or_symmetry) }
% 72.12/9.76    and(X, or(Z, Y))
% 72.12/9.76  
% 72.12/9.76  Lemma 135: and(X, or(Y, and(X, Z))) = and(X, or(Y, Z)).
% 72.12/9.76  Proof:
% 72.12/9.76    and(X, or(Y, and(X, Z)))
% 72.12/9.76  = { by lemma 134 R->L }
% 72.12/9.76    or(and(X, and(X, Z)), and(Y, X))
% 72.12/9.76  = { by lemma 91 }
% 72.12/9.76    or(and(X, Z), and(Y, X))
% 72.12/9.76  = { by lemma 134 }
% 72.12/9.76    and(X, or(Y, Z))
% 72.12/9.76  
% 72.12/9.76  Lemma 136: carryout(X, Y, and(X, Z)) = and(X, or(Y, Z)).
% 72.12/9.76  Proof:
% 72.12/9.76    carryout(X, Y, and(X, Z))
% 72.12/9.76  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.76    carryout(X, Y, and(Z, X))
% 72.12/9.76  = { by axiom 3 (not_involution) R->L }
% 72.12/9.76    carryout(X, Y, and(Z, not(not(X))))
% 72.12/9.76  = { by axiom 38 (carryout_definition) }
% 72.12/9.76    or(and(X, or(Y, and(Z, not(not(X))))), and(not(X), and(Y, and(Z, not(not(X))))))
% 72.12/9.76  = { by lemma 133 }
% 72.12/9.76    or(and(X, or(Y, and(Z, not(not(X))))), n0)
% 72.12/9.76  = { by axiom 7 (or_definition1) }
% 72.12/9.76    and(X, or(Y, and(Z, not(not(X)))))
% 72.12/9.76  = { by axiom 3 (not_involution) }
% 72.12/9.76    and(X, or(Y, and(Z, X)))
% 72.12/9.76  = { by axiom 9 (and_symmetry) }
% 72.12/9.76    and(X, or(Y, and(X, Z)))
% 72.12/9.76  = { by lemma 135 }
% 72.12/9.76    and(X, or(Y, Z))
% 72.12/9.76  
% 72.12/9.76  Lemma 137: and(a, carryout(X, a12, a)) = carryout(a, X, not(a11)).
% 72.12/9.76  Proof:
% 72.12/9.76    and(a, carryout(X, a12, a))
% 72.12/9.76  = { by lemma 110 R->L }
% 72.12/9.76    and(a, or(X, not(a11)))
% 72.12/9.76  = { by lemma 136 R->L }
% 72.12/9.76    carryout(a, X, and(a, not(a11)))
% 72.12/9.76  = { by lemma 42 R->L }
% 72.12/9.76    carryout(a, X, and(a, and(a, b)))
% 72.12/9.76  = { by lemma 91 }
% 72.12/9.76    carryout(a, X, and(a, b))
% 72.12/9.76  = { by lemma 42 }
% 72.12/9.76    carryout(a, X, not(a11))
% 72.12/9.76  
% 72.12/9.76  Lemma 138: or(not(X), and(X, or(Y, Z))) = or(not(X), carryout(X, Y, Z)).
% 72.12/9.76  Proof:
% 72.12/9.76    or(not(X), and(X, or(Y, Z)))
% 72.12/9.76  = { by lemma 123 R->L }
% 72.12/9.76    or(not(X), or(and(X, or(Y, Z)), and(not(X), and(Y, Z))))
% 72.12/9.76  = { by axiom 38 (carryout_definition) R->L }
% 72.12/9.76    or(not(X), carryout(X, Y, Z))
% 72.12/9.76  
% 72.12/9.76  Lemma 139: and(carryout(X, Y, Z), X) = and(X, or(Y, Z)).
% 72.12/9.76  Proof:
% 72.12/9.76    and(carryout(X, Y, Z), X)
% 72.12/9.76  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.76    and(X, carryout(X, Y, Z))
% 72.12/9.76  = { by lemma 132 R->L }
% 72.12/9.76    and(X, or(not(X), carryout(X, Y, Z)))
% 72.12/9.76  = { by lemma 138 R->L }
% 72.12/9.76    and(X, or(not(X), and(X, or(Y, Z))))
% 72.12/9.76  = { by lemma 135 }
% 72.12/9.76    and(X, or(not(X), or(Y, Z)))
% 72.12/9.76  = { by lemma 132 }
% 72.12/9.76    and(X, or(Y, Z))
% 72.12/9.76  
% 72.12/9.76  Lemma 140: or(X, or(and(Y, X), Z)) = or(Z, X).
% 72.12/9.76  Proof:
% 72.12/9.76    or(X, or(and(Y, X), Z))
% 72.12/9.76  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.76    or(or(and(Y, X), Z), X)
% 72.12/9.76  = { by axiom 34 (and_or_subsumption3) }
% 72.12/9.76    or(Z, X)
% 72.12/9.76  
% 72.12/9.76  Lemma 141: or(X, carryout(X, Y, Z)) = or(X, and(Y, Z)).
% 72.12/9.76  Proof:
% 72.12/9.76    or(X, carryout(X, Y, Z))
% 72.12/9.76  = { by axiom 38 (carryout_definition) }
% 72.12/9.76    or(X, or(and(X, or(Y, Z)), and(not(X), and(Y, Z))))
% 72.12/9.76  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.76    or(X, or(and(or(Y, Z), X), and(not(X), and(Y, Z))))
% 72.12/9.76  = { by lemma 140 }
% 72.12/9.76    or(and(not(X), and(Y, Z)), X)
% 72.12/9.76  = { by axiom 5 (or_symmetry) }
% 72.12/9.76    or(X, and(not(X), and(Y, Z)))
% 72.12/9.76  = { by lemma 108 }
% 72.12/9.76    or(X, and(Y, Z))
% 72.12/9.76  
% 72.12/9.76  Lemma 142: or(a, or(not(a12), X)) = or(X, a).
% 72.12/9.76  Proof:
% 72.12/9.76    or(a, or(not(a12), X))
% 72.12/9.76  = { by lemma 122 R->L }
% 72.12/9.76    or(not(a12), or(a, X))
% 72.12/9.76  = { by lemma 81 R->L }
% 72.12/9.76    or(X, or(a, not(a12)))
% 72.12/9.76  = { by lemma 109 }
% 72.12/9.76    or(X, a)
% 72.12/9.76  
% 72.12/9.76  Lemma 143: or(a13, or(not(a14), X)) = or(X, a13).
% 72.12/9.76  Proof:
% 72.12/9.76    or(a13, or(not(a14), X))
% 72.12/9.76  = { by lemma 122 R->L }
% 72.12/9.76    or(not(a14), or(a13, X))
% 72.12/9.76  = { by lemma 81 R->L }
% 72.12/9.76    or(X, or(a13, not(a14)))
% 72.12/9.76  = { by lemma 104 }
% 72.12/9.76    or(X, a13)
% 72.12/9.76  
% 72.12/9.76  Lemma 144: or(a13, carryout(X, a12, a13)) = or(X, a13).
% 72.12/9.76  Proof:
% 72.12/9.76    or(a13, carryout(X, a12, a13))
% 72.12/9.76  = { by lemma 111 R->L }
% 72.12/9.76    or(a13, or(X, not(a14)))
% 72.12/9.76  = { by lemma 88 R->L }
% 72.12/9.76    or(or(a13, X), not(a14))
% 72.12/9.76  = { by axiom 24 (or_commutativity) R->L }
% 72.12/9.76    or(or(a13, not(a14)), X)
% 72.12/9.76  = { by lemma 104 }
% 72.12/9.76    or(a13, X)
% 72.12/9.76  = { by axiom 5 (or_symmetry) }
% 72.12/9.76    or(X, a13)
% 72.12/9.76  
% 72.12/9.76  Lemma 145: or(a15, or(not(a16), X)) = or(X, a15).
% 72.12/9.76  Proof:
% 72.12/9.76    or(a15, or(not(a16), X))
% 72.12/9.76  = { by lemma 122 R->L }
% 72.12/9.76    or(not(a16), or(a15, X))
% 72.12/9.76  = { by lemma 81 R->L }
% 72.12/9.76    or(X, or(a15, not(a16)))
% 72.12/9.76  = { by lemma 44 R->L }
% 72.12/9.76    or(X, or(a15, and(a14, a15)))
% 72.12/9.76  = { by lemma 52 }
% 72.12/9.76    or(X, a15)
% 72.12/9.76  
% 72.12/9.76  Lemma 146: or(a15, carryout(X, a12, a)) = or(X, a15).
% 72.12/9.76  Proof:
% 72.12/9.76    or(a15, carryout(X, a12, a))
% 72.12/9.76  = { by lemma 110 R->L }
% 72.12/9.76    or(a15, or(X, not(a11)))
% 72.12/9.76  = { by lemma 88 R->L }
% 72.12/9.76    or(or(a15, X), not(a11))
% 72.12/9.76  = { by axiom 24 (or_commutativity) R->L }
% 72.12/9.76    or(or(a15, not(a11)), X)
% 72.12/9.76  = { by lemma 95 }
% 72.12/9.76    or(xor(c1, a11), X)
% 72.12/9.76  = { by lemma 100 }
% 72.12/9.76    or(a15, X)
% 72.12/9.76  = { by axiom 5 (or_symmetry) }
% 72.12/9.76    or(X, a15)
% 72.12/9.76  
% 72.12/9.76  Lemma 147: or(carryout(a, b, carryin), a12) = or(a12, a16).
% 72.12/9.76  Proof:
% 72.12/9.76    or(carryout(a, b, carryin), a12)
% 72.12/9.76  = { by lemma 46 R->L }
% 72.12/9.76    or(a12, and(carryout(a, b, carryin), not(a12)))
% 72.12/9.76  = { by lemma 101 R->L }
% 72.12/9.76    or(a12, and(carryout(a, b, carryin), and(a, not(b))))
% 72.12/9.76  = { by lemma 72 R->L }
% 72.12/9.76    or(a12, and(and(carryout(a, b, carryin), a), not(b)))
% 72.12/9.76  = { by lemma 130 R->L }
% 72.12/9.76    or(a12, xor(b, or(b, and(carryout(a, b, carryin), a))))
% 72.12/9.76  = { by lemma 139 }
% 72.12/9.76    or(a12, xor(b, or(b, and(a, or(b, carryin)))))
% 72.12/9.76  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.76    or(a12, xor(b, or(b, and(a, or(carryin, b)))))
% 72.12/9.76  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.76    or(a12, xor(b, or(b, and(or(carryin, b), a))))
% 72.12/9.76  = { by axiom 33 (and_or_simplification) }
% 72.12/9.76    or(a12, xor(b, or(b, or(and(carryin, a), and(b, a)))))
% 72.12/9.76  = { by lemma 123 }
% 72.12/9.76    or(a12, xor(b, or(b, and(carryin, a))))
% 72.12/9.76  = { by axiom 9 (and_symmetry) }
% 72.12/9.76    or(a12, xor(b, or(b, and(a, carryin))))
% 72.12/9.76  = { by lemma 130 }
% 72.12/9.76    or(a12, and(and(a, carryin), not(b)))
% 72.12/9.76  = { by lemma 72 }
% 72.12/9.76    or(a12, and(a, and(carryin, not(b))))
% 72.12/9.76  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.76    or(a12, and(a, and(not(b), carryin)))
% 72.12/9.76  = { by lemma 72 R->L }
% 72.12/9.76    or(a12, and(and(a, not(b)), carryin))
% 72.12/9.76  = { by lemma 101 }
% 72.12/9.76    or(a12, and(not(a12), carryin))
% 72.12/9.76  = { by axiom 9 (and_symmetry) }
% 72.12/9.76    or(a12, and(carryin, not(a12)))
% 72.12/9.76  = { by lemma 46 }
% 72.12/9.76    or(carryin, a12)
% 72.12/9.76  = { by axiom 5 (or_symmetry) }
% 72.12/9.76    or(a12, carryin)
% 72.12/9.76  = { by lemma 89 }
% 72.12/9.76    or(a12, a16)
% 72.12/9.76  
% 72.12/9.76  Lemma 148: or(sum(a, b, carryin), a13) = or(a13, a15).
% 72.12/9.76  Proof:
% 72.12/9.76    or(sum(a, b, carryin), a13)
% 72.12/9.76  = { by lemma 144 R->L }
% 72.12/9.76    or(a13, carryout(sum(a, b, carryin), a12, a13))
% 72.12/9.76  = { by lemma 121 }
% 72.12/9.76    or(a13, carryout(s1, a12, a13))
% 72.12/9.76  = { by lemma 111 R->L }
% 72.12/9.76    or(a13, or(s1, not(a14)))
% 72.12/9.76  = { by lemma 69 R->L }
% 72.12/9.76    or(a13, not(and(a14, not(s1))))
% 72.12/9.76  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.76    or(a13, not(and(not(s1), a14)))
% 72.12/9.76  = { by axiom 12 (circuit8) }
% 72.12/9.76    or(a13, not(and(not(not(and(a16, a17))), a14)))
% 72.12/9.76  = { by axiom 3 (not_involution) }
% 72.12/9.76    or(a13, not(and(and(a16, a17), a14)))
% 72.12/9.76  = { by lemma 65 }
% 72.12/9.76    or(a13, not(and(a17, and(a16, a14))))
% 72.12/9.76  = { by lemma 64 }
% 72.12/9.76    or(a13, not(and(a16, and(a17, a14))))
% 72.12/9.76  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.76    or(a13, not(and(a16, and(a14, a17))))
% 72.12/9.76  = { by axiom 7 (or_definition1) R->L }
% 72.12/9.76    or(a13, not(and(a16, and(a14, or(a17, n0)))))
% 72.12/9.76  = { by lemma 118 R->L }
% 72.12/9.76    or(a13, not(and(a16, and(a14, or(a17, and(not(and(carryin, a14)), and(a14, and(carryin, a14))))))))
% 72.12/9.76  = { by lemma 78 }
% 72.12/9.76    or(a13, not(and(a16, and(a14, or(a17, and(not(and(carryin, a14)), and(carryin, a14)))))))
% 72.12/9.76  = { by lemma 55 }
% 72.12/9.76    or(a13, not(and(a16, and(a14, or(a17, and(a14, and(carryin, not(and(carryin, a14)))))))))
% 72.12/9.76  = { by axiom 9 (and_symmetry) }
% 72.12/9.76    or(a13, not(and(a16, and(a14, or(a17, and(a14, and(carryin, not(and(a14, carryin)))))))))
% 72.12/9.76  = { by axiom 14 (circuit5) R->L }
% 72.12/9.76    or(a13, not(and(a16, and(a14, or(a17, and(a14, and(carryin, a15)))))))
% 72.12/9.76  = { by axiom 9 (and_symmetry) }
% 72.12/9.76    or(a13, not(and(a16, and(a14, or(a17, and(a14, and(a15, carryin)))))))
% 72.12/9.76  = { by axiom 3 (not_involution) R->L }
% 72.12/9.76    or(a13, not(and(a16, and(a14, or(a17, and(a14, not(not(and(a15, carryin)))))))))
% 72.12/9.76  = { by axiom 18 (circuit7) R->L }
% 72.12/9.76    or(a13, not(and(a16, and(a14, or(a17, and(a14, not(a17)))))))
% 72.12/9.76  = { by lemma 46 }
% 72.12/9.76    or(a13, not(and(a16, and(a14, or(a14, a17)))))
% 72.12/9.76  = { by axiom 5 (or_symmetry) }
% 72.12/9.76    or(a13, not(and(a16, and(a14, or(a17, a14)))))
% 72.12/9.76  = { by lemma 54 }
% 72.12/9.76    or(a13, not(and(a16, a14)))
% 72.12/9.76  = { by lemma 51 }
% 72.12/9.76    or(a13, not(not(a15)))
% 72.12/9.76  = { by axiom 3 (not_involution) }
% 72.12/9.76    or(a13, a15)
% 72.12/9.76  
% 72.12/9.76  Lemma 149: or(sum(a, b, carryin), a13) = or(a15, a).
% 72.12/9.76  Proof:
% 72.12/9.76    or(sum(a, b, carryin), a13)
% 72.12/9.76  = { by axiom 3 (not_involution) R->L }
% 72.12/9.76    not(not(or(sum(a, b, carryin), a13)))
% 72.12/9.76  = { by lemma 148 }
% 72.12/9.76    not(not(or(a13, a15)))
% 72.12/9.76  = { by lemma 107 R->L }
% 72.12/9.76    not(and(a16, not(a13)))
% 72.12/9.76  = { by lemma 103 R->L }
% 72.12/9.76    not(and(a16, and(a12, not(a13))))
% 72.12/9.76  = { by lemma 63 R->L }
% 72.12/9.76    not(and(a16, not(or(a13, not(a12)))))
% 72.12/9.76  = { by lemma 47 R->L }
% 72.12/9.76    not(and(a16, not(or(not(a12), and(a12, a13)))))
% 72.12/9.76  = { by lemma 43 }
% 72.12/9.76    not(and(a16, not(or(not(a12), not(a14)))))
% 72.12/9.76  = { by axiom 23 (demorgan1) R->L }
% 72.12/9.76    not(and(a16, not(not(and(a12, a14)))))
% 72.12/9.76  = { by axiom 3 (not_involution) }
% 72.12/9.76    not(and(a16, and(a12, a14)))
% 72.12/9.76  = { by lemma 64 R->L }
% 72.12/9.76    not(and(a12, and(a16, a14)))
% 72.12/9.76  = { by lemma 51 }
% 72.12/9.76    not(and(a12, not(a15)))
% 72.12/9.76  = { by lemma 69 }
% 72.12/9.76    or(a15, not(a12))
% 72.12/9.76  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.76    or(not(a12), a15)
% 72.12/9.76  = { by lemma 146 R->L }
% 72.12/9.76    or(a15, carryout(not(a12), a12, a))
% 72.12/9.76  = { by lemma 131 }
% 72.12/9.76    or(a15, a)
% 72.12/9.76  
% 72.12/9.76  Lemma 150: or(not(X), or(Y, and(X, Z))) = or(Y, or(Z, not(X))).
% 72.12/9.76  Proof:
% 72.12/9.76    or(not(X), or(Y, and(X, Z)))
% 72.12/9.76  = { by lemma 88 R->L }
% 72.12/9.76    or(or(not(X), Y), and(X, Z))
% 72.12/9.76  = { by axiom 24 (or_commutativity) R->L }
% 72.12/9.76    or(or(not(X), and(X, Z)), Y)
% 72.12/9.76  = { by lemma 47 }
% 72.12/9.76    or(or(Z, not(X)), Y)
% 72.12/9.76  = { by lemma 88 }
% 72.12/9.76    or(Z, or(not(X), Y))
% 72.12/9.76  = { by lemma 82 R->L }
% 72.12/9.77    or(Y, or(Z, not(X)))
% 72.12/9.77  
% 72.12/9.77  Lemma 151: or(not(a), carryout(X, a12, a)) = or(X, a12).
% 72.12/9.77  Proof:
% 72.12/9.77    or(not(a), carryout(X, a12, a))
% 72.12/9.77  = { by lemma 110 R->L }
% 72.12/9.77    or(not(a), or(X, not(a11)))
% 72.12/9.77  = { by lemma 42 R->L }
% 72.12/9.77    or(not(a), or(X, and(a, b)))
% 72.12/9.77  = { by lemma 150 }
% 72.12/9.77    or(X, or(b, not(a)))
% 72.12/9.77  = { by lemma 62 }
% 72.12/9.77    or(X, a12)
% 72.12/9.77  
% 72.12/9.77  Lemma 152: not(carryout(a, X, not(a11))) = xor(a, or(X, a12)).
% 72.12/9.77  Proof:
% 72.12/9.77    not(carryout(a, X, not(a11)))
% 72.12/9.77  = { by lemma 137 R->L }
% 72.12/9.77    not(and(a, carryout(X, a12, a)))
% 72.12/9.77  = { by axiom 23 (demorgan1) }
% 72.12/9.77    or(not(a), not(carryout(X, a12, a)))
% 72.12/9.77  = { by lemma 60 R->L }
% 72.12/9.77    or(not(a), not(or(carryout(X, a12, a), not(a))))
% 72.12/9.77  = { by lemma 61 R->L }
% 72.12/9.77    or(not(a), not(or(not(a), or(carryout(X, a12, a), not(a)))))
% 72.12/9.77  = { by lemma 54 R->L }
% 72.12/9.77    or(and(not(a), or(carryout(X, a12, a), not(a))), not(or(not(a), or(carryout(X, a12, a), not(a)))))
% 72.12/9.77  = { by lemma 116 }
% 72.12/9.77    xor(not(a), not(or(carryout(X, a12, a), not(a))))
% 72.12/9.77  = { by axiom 5 (or_symmetry) }
% 72.12/9.77    xor(not(a), not(or(not(a), carryout(X, a12, a))))
% 72.12/9.77  = { by lemma 151 }
% 72.12/9.77    xor(not(a), not(or(X, a12)))
% 72.12/9.77  = { by lemma 117 }
% 72.12/9.77    xor(a, not(not(or(X, a12))))
% 72.12/9.77  = { by axiom 3 (not_involution) }
% 72.12/9.77    xor(a, or(X, a12))
% 72.12/9.77  
% 72.12/9.77  Lemma 153: xor(X, not(and(X, Y))) = or(Y, not(X)).
% 72.12/9.77  Proof:
% 72.12/9.77    xor(X, not(and(X, Y)))
% 72.12/9.77  = { by lemma 116 R->L }
% 72.12/9.77    or(and(X, and(X, Y)), not(or(X, and(X, Y))))
% 72.12/9.77  = { by lemma 67 }
% 72.12/9.77    or(and(X, and(X, Y)), not(X))
% 72.12/9.77  = { by lemma 91 }
% 72.12/9.77    or(and(X, Y), not(X))
% 72.12/9.77  = { by axiom 5 (or_symmetry) }
% 72.12/9.77    or(not(X), and(X, Y))
% 72.12/9.77  = { by axiom 9 (and_symmetry) }
% 72.12/9.77    or(not(X), and(Y, X))
% 72.12/9.77  = { by lemma 58 }
% 72.12/9.77    or(Y, not(X))
% 72.12/9.77  
% 72.12/9.77  Lemma 154: and(carryout(a, b, carryin), not(a)) = not(or(sum(a, b, carryin), a13)).
% 72.12/9.77  Proof:
% 72.12/9.77    and(carryout(a, b, carryin), not(a))
% 72.12/9.77  = { by lemma 130 R->L }
% 72.12/9.77    xor(a, or(a, carryout(a, b, carryin)))
% 72.12/9.77  = { by lemma 141 }
% 72.12/9.77    xor(a, or(a, and(b, carryin)))
% 72.12/9.77  = { by lemma 130 }
% 72.12/9.77    and(and(b, carryin), not(a))
% 72.12/9.77  = { by lemma 72 }
% 72.12/9.77    and(b, and(carryin, not(a)))
% 72.12/9.77  = { by lemma 64 }
% 72.12/9.77    and(carryin, and(b, not(a)))
% 72.12/9.77  = { by lemma 102 }
% 72.12/9.77    and(carryin, not(a13))
% 72.12/9.77  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.77    and(not(a13), carryin)
% 72.12/9.77  = { by lemma 40 R->L }
% 72.12/9.77    and(and(a11, b), carryin)
% 72.12/9.77  = { by lemma 91 R->L }
% 72.12/9.77    and(and(a11, and(a11, b)), carryin)
% 72.12/9.77  = { by lemma 40 }
% 72.12/9.77    and(and(a11, not(a13)), carryin)
% 72.12/9.77  = { by lemma 72 }
% 72.12/9.77    and(a11, and(not(a13), carryin))
% 72.12/9.77  = { by axiom 9 (and_symmetry) }
% 72.12/9.77    and(a11, and(carryin, not(a13)))
% 72.12/9.77  = { by lemma 72 R->L }
% 72.12/9.77    and(and(a11, carryin), not(a13))
% 72.12/9.77  = { by lemma 130 R->L }
% 72.12/9.77    xor(a13, or(a13, and(a11, carryin)))
% 72.12/9.77  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.77    xor(a13, or(and(a11, carryin), a13))
% 72.12/9.77  = { by lemma 144 R->L }
% 72.12/9.77    xor(a13, or(a13, carryout(and(a11, carryin), a12, a13)))
% 72.12/9.77  = { by lemma 111 R->L }
% 72.12/9.77    xor(a13, or(a13, or(and(a11, carryin), not(a14))))
% 72.12/9.77  = { by lemma 153 R->L }
% 72.12/9.77    xor(a13, or(a13, xor(a14, not(and(a14, and(a11, carryin))))))
% 72.12/9.77  = { by lemma 56 R->L }
% 72.12/9.77    xor(a13, or(a13, xor(a14, not(and(carryin, and(a14, a11))))))
% 72.12/9.77  = { by lemma 55 R->L }
% 72.12/9.77    xor(a13, or(a13, xor(a14, not(and(a11, and(a14, carryin))))))
% 72.12/9.77  = { by lemma 45 }
% 72.12/9.77    xor(a13, or(a13, xor(a14, not(and(a11, not(a15))))))
% 72.12/9.77  = { by lemma 69 }
% 72.12/9.77    xor(a13, or(a13, xor(a14, or(a15, not(a11)))))
% 72.12/9.77  = { by lemma 90 }
% 72.12/9.77    xor(a13, or(a13, xor(or(a15, not(a11)), a14)))
% 72.12/9.77  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.77    xor(a13, or(xor(or(a15, not(a11)), a14), a13))
% 72.12/9.77  = { by axiom 3 (not_involution) R->L }
% 72.12/9.77    xor(a13, or(xor(or(a15, not(a11)), not(not(a14))), a13))
% 72.12/9.77  = { by lemma 143 R->L }
% 72.12/9.77    xor(a13, or(a13, or(not(a14), xor(or(a15, not(a11)), not(not(a14))))))
% 72.12/9.77  = { by lemma 90 }
% 72.12/9.77    xor(a13, or(a13, or(not(a14), xor(not(not(a14)), or(a15, not(a11))))))
% 72.12/9.77  = { by axiom 3 (not_involution) R->L }
% 72.12/9.77    xor(a13, or(a13, or(not(not(not(a14))), xor(not(not(a14)), or(a15, not(a11))))))
% 72.12/9.77  = { by lemma 90 }
% 72.12/9.77    xor(a13, or(a13, or(not(not(not(a14))), xor(or(a15, not(a11)), not(not(a14))))))
% 72.12/9.77  = { by axiom 37 (xor_definition) }
% 72.12/9.77    xor(a13, or(a13, or(not(not(not(a14))), or(and(or(a15, not(a11)), not(not(not(a14)))), and(not(not(a14)), not(or(a15, not(a11))))))))
% 72.12/9.77  = { by lemma 140 }
% 72.12/9.77    xor(a13, or(a13, or(and(not(not(a14)), not(or(a15, not(a11)))), not(not(not(a14))))))
% 72.12/9.77  = { by axiom 5 (or_symmetry) }
% 72.12/9.77    xor(a13, or(a13, or(not(not(not(a14))), and(not(not(a14)), not(or(a15, not(a11)))))))
% 72.12/9.77  = { by axiom 3 (not_involution) }
% 72.12/9.77    xor(a13, or(a13, or(not(a14), and(not(not(a14)), not(or(a15, not(a11)))))))
% 72.12/9.77  = { by lemma 108 }
% 72.12/9.77    xor(a13, or(a13, or(not(a14), not(or(a15, not(a11))))))
% 72.12/9.77  = { by lemma 143 }
% 72.12/9.77    xor(a13, or(not(or(a15, not(a11))), a13))
% 72.12/9.77  = { by axiom 5 (or_symmetry) }
% 72.12/9.77    xor(a13, or(a13, not(or(a15, not(a11)))))
% 72.12/9.77  = { by lemma 63 }
% 72.12/9.77    xor(a13, or(a13, and(a11, not(a15))))
% 72.12/9.77  = { by lemma 99 }
% 72.12/9.77    xor(a13, or(a13, not(a15)))
% 72.12/9.77  = { by lemma 61 R->L }
% 72.12/9.77    xor(a13, or(a13, not(or(a13, a15))))
% 72.12/9.77  = { by lemma 107 R->L }
% 72.12/9.77    xor(a13, or(a13, and(a16, not(a13))))
% 72.12/9.77  = { by lemma 46 }
% 72.12/9.77    xor(a13, or(a16, a13))
% 72.12/9.77  = { by axiom 5 (or_symmetry) }
% 72.12/9.77    xor(a13, or(a13, a16))
% 72.12/9.77  = { by lemma 130 }
% 72.12/9.77    and(a16, not(a13))
% 72.12/9.77  = { by lemma 105 R->L }
% 72.12/9.77    and(a16, and(a14, not(a13)))
% 72.12/9.77  = { by lemma 106 }
% 72.12/9.77    and(not(a13), not(a15))
% 72.12/9.77  = { by axiom 27 (demorgan2) R->L }
% 72.12/9.77    not(or(a13, a15))
% 72.12/9.77  = { by lemma 148 R->L }
% 72.12/9.77    not(or(sum(a, b, carryin), a13))
% 72.12/9.77  
% 72.12/9.77  Lemma 155: or(X, carryout(not(X), Y, Z)) = or(X, or(Y, Z)).
% 72.12/9.77  Proof:
% 72.12/9.77    or(X, carryout(not(X), Y, Z))
% 72.12/9.77  = { by axiom 3 (not_involution) R->L }
% 72.12/9.77    or(not(not(X)), carryout(not(X), Y, Z))
% 72.12/9.77  = { by lemma 138 R->L }
% 72.12/9.77    or(not(not(X)), and(not(X), or(Y, Z)))
% 72.12/9.77  = { by axiom 3 (not_involution) }
% 72.12/9.77    or(X, and(not(X), or(Y, Z)))
% 72.12/9.77  = { by lemma 108 }
% 72.12/9.77    or(X, or(Y, Z))
% 72.12/9.77  
% 72.12/9.77  Lemma 156: xor(a, or(carryout(a, b, carryin), a12)) = not(and(a16, a)).
% 72.12/9.77  Proof:
% 72.12/9.77    xor(a, or(carryout(a, b, carryin), a12))
% 72.12/9.77  = { by axiom 3 (not_involution) R->L }
% 72.12/9.77    xor(a, not(not(or(carryout(a, b, carryin), a12))))
% 72.12/9.77  = { by lemma 147 }
% 72.12/9.77    xor(a, not(not(or(a12, a16))))
% 72.12/9.77  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.77    xor(a, not(not(or(a16, a12))))
% 72.12/9.77  = { by lemma 151 R->L }
% 72.12/9.77    xor(a, not(not(or(not(a), carryout(a16, a12, a)))))
% 72.12/9.77  = { by lemma 96 }
% 72.12/9.77    xor(a, not(and(a, not(carryout(a16, a12, a)))))
% 72.12/9.77  = { by lemma 110 R->L }
% 72.12/9.77    xor(a, not(and(a, not(or(a16, not(a11))))))
% 72.12/9.77  = { by lemma 63 }
% 72.12/9.77    xor(a, not(and(a, and(a11, not(a16)))))
% 72.12/9.77  = { by lemma 64 }
% 72.12/9.77    xor(a, not(and(a11, and(a, not(a16)))))
% 72.12/9.77  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.77    xor(a, not(and(a11, and(not(a16), a))))
% 72.12/9.77  = { by lemma 72 R->L }
% 72.12/9.77    xor(a, not(and(and(a11, not(a16)), a)))
% 72.12/9.77  = { by lemma 75 R->L }
% 72.12/9.77    xor(a, not(and(and(a14, and(a11, a15)), a)))
% 72.12/9.77  = { by lemma 41 }
% 72.12/9.77    xor(a, not(and(and(a14, not(c1)), a)))
% 72.12/9.77  = { by lemma 79 }
% 72.12/9.77    xor(a, not(and(not(or(a16, c1)), a)))
% 72.12/9.77  = { by lemma 85 }
% 72.12/9.77    xor(a, not(and(not(a16), a)))
% 72.12/9.77  = { by axiom 9 (and_symmetry) }
% 72.12/9.77    xor(a, not(and(a, not(a16))))
% 72.12/9.77  = { by lemma 153 }
% 72.12/9.77    or(not(a16), not(a))
% 72.12/9.77  = { by axiom 23 (demorgan1) R->L }
% 72.12/9.77    not(and(a16, a))
% 72.12/9.77  
% 72.12/9.77  Lemma 157: not(and(carryout(a, b, carryin), a)) = not(and(a16, a)).
% 72.12/9.77  Proof:
% 72.12/9.77    not(and(carryout(a, b, carryin), a))
% 72.12/9.77  = { by lemma 139 }
% 72.12/9.77    not(and(a, or(b, carryin)))
% 72.12/9.77  = { by axiom 5 (or_symmetry) }
% 72.12/9.77    not(and(a, or(carryin, b)))
% 72.12/9.77  = { by lemma 136 R->L }
% 72.12/9.77    not(carryout(a, carryin, and(a, b)))
% 72.12/9.77  = { by lemma 42 }
% 72.12/9.77    not(carryout(a, carryin, not(a11)))
% 72.12/9.77  = { by lemma 152 }
% 72.12/9.77    xor(a, or(carryin, a12))
% 72.12/9.77  = { by axiom 5 (or_symmetry) }
% 72.12/9.77    xor(a, or(a12, carryin))
% 72.12/9.77  = { by lemma 89 }
% 72.12/9.77    xor(a, or(a12, a16))
% 72.12/9.77  = { by lemma 147 R->L }
% 72.12/9.77    xor(a, or(carryout(a, b, carryin), a12))
% 72.12/9.77  = { by lemma 156 }
% 72.12/9.77    not(and(a16, a))
% 72.12/9.77  
% 72.12/9.77  Lemma 158: carryout(X, not(Y), and(Y, Z)) = and(X, or(Z, not(Y))).
% 72.12/9.77  Proof:
% 72.12/9.77    carryout(X, not(Y), and(Y, Z))
% 72.12/9.77  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.77    carryout(X, not(Y), and(Z, Y))
% 72.12/9.77  = { by axiom 38 (carryout_definition) }
% 72.12/9.77    or(and(X, or(not(Y), and(Z, Y))), and(not(X), and(not(Y), and(Z, Y))))
% 72.12/9.77  = { by lemma 58 }
% 72.12/9.77    or(and(X, or(Z, not(Y))), and(not(X), and(not(Y), and(Z, Y))))
% 72.12/9.77  = { by lemma 64 }
% 72.12/9.77    or(and(X, or(Z, not(Y))), and(not(X), and(Z, and(not(Y), Y))))
% 72.12/9.77  = { by lemma 64 }
% 72.12/9.77    or(and(X, or(Z, not(Y))), and(Z, and(not(X), and(not(Y), Y))))
% 72.12/9.77  = { by axiom 9 (and_symmetry) }
% 72.12/9.77    or(and(X, or(Z, not(Y))), and(Z, and(not(X), and(Y, not(Y)))))
% 72.12/9.77  = { by lemma 64 }
% 72.12/9.77    or(and(X, or(Z, not(Y))), and(Z, and(Y, and(not(X), not(Y)))))
% 72.12/9.77  = { by lemma 64 }
% 72.12/9.77    or(and(X, or(Z, not(Y))), and(Y, and(Z, and(not(X), not(Y)))))
% 72.12/9.77  = { by lemma 133 }
% 72.12/9.77    or(and(X, or(Z, not(Y))), n0)
% 72.12/9.77  = { by axiom 7 (or_definition1) }
% 72.12/9.77    and(X, or(Z, not(Y)))
% 72.12/9.77  
% 72.12/9.77  Lemma 159: or(X, not(or(Y, and(X, Z)))) = or(X, not(Y)).
% 72.12/9.77  Proof:
% 72.12/9.77    or(X, not(or(Y, and(X, Z))))
% 72.12/9.77  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.77    or(X, not(or(Y, and(Z, X))))
% 72.12/9.77  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.77    or(not(or(Y, and(Z, X))), X)
% 72.12/9.77  = { by lemma 140 R->L }
% 72.12/9.77    or(X, or(and(Z, X), not(or(Y, and(Z, X)))))
% 72.12/9.77  = { by lemma 60 }
% 72.12/9.77    or(X, or(and(Z, X), not(Y)))
% 72.12/9.77  = { by lemma 140 }
% 72.12/9.77    or(not(Y), X)
% 72.12/9.77  = { by axiom 5 (or_symmetry) }
% 72.12/9.78    or(X, not(Y))
% 72.12/9.78  
% 72.12/9.78  Goal 1 (prove_circuit): circuit(sum(a, b, carryin), carryout(a, b, carryin)) = true.
% 72.12/9.78  Proof:
% 72.12/9.78    circuit(sum(a, b, carryin), carryout(a, b, carryin))
% 72.12/9.78  = { by lemma 54 R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(a, carryout(a, b, carryin))))
% 72.12/9.78  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(carryout(a, b, carryin), a)))
% 72.12/9.78  = { by axiom 3 (not_involution) R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(not(or(carryout(a, b, carryin), a)))))
% 72.12/9.78  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(not(or(a, carryout(a, b, carryin))))))
% 72.12/9.78  = { by axiom 27 (demorgan2) }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(and(not(a), not(carryout(a, b, carryin))))))
% 72.12/9.78  = { by lemma 128 R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(xor(not(a), and(not(a), carryout(a, b, carryin))))))
% 72.12/9.78  = { by axiom 9 (and_symmetry) }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(xor(not(a), and(carryout(a, b, carryin), not(a))))))
% 72.12/9.78  = { by lemma 154 }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(xor(not(a), not(or(sum(a, b, carryin), a13))))))
% 72.12/9.78  = { by lemma 117 }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(xor(a, not(not(or(sum(a, b, carryin), a13)))))))
% 72.12/9.78  = { by axiom 3 (not_involution) }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(xor(a, or(sum(a, b, carryin), a13)))))
% 72.12/9.78  = { by lemma 149 }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(xor(a, or(a15, a)))))
% 72.12/9.78  = { by lemma 126 R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(xor(a, or(a, and(a11, a15))))))
% 72.12/9.78  = { by lemma 41 }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(xor(a, or(a, not(c1))))))
% 72.12/9.78  = { by lemma 113 }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(xor(a, carryout(a, a11, a15)))))
% 72.12/9.78  = { by lemma 115 R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(xor(a, or(not(c1), a)))))
% 72.12/9.78  = { by lemma 67 R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(xor(a, or(not(c1), or(a, and(a, b)))))))
% 72.12/9.78  = { by lemma 42 }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(xor(a, or(not(c1), or(a, not(a11)))))))
% 72.12/9.78  = { by lemma 81 }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(xor(a, or(not(a11), or(a, not(c1)))))))
% 72.12/9.78  = { by lemma 114 }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(xor(a, carryout(or(a, not(c1)), a12, a)))))
% 72.12/9.78  = { by axiom 5 (or_symmetry) }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(xor(a, carryout(or(not(c1), a), a12, a)))))
% 72.12/9.78  = { by lemma 114 R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(xor(a, or(not(a11), or(not(c1), a))))))
% 72.12/9.78  = { by lemma 88 R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(xor(a, or(or(not(a11), not(c1)), a)))))
% 72.12/9.78  = { by lemma 142 R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(xor(a, or(a, or(not(a12), or(not(a11), not(c1))))))))
% 72.12/9.78  = { by lemma 155 R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(xor(a, or(a, or(not(a12), carryout(not(not(a12)), not(a11), not(c1))))))))
% 72.12/9.78  = { by lemma 142 }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(xor(a, or(carryout(not(not(a12)), not(a11), not(c1)), a)))))
% 72.12/9.78  = { by axiom 3 (not_involution) }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(xor(a, or(carryout(a12, not(a11), not(c1)), a)))))
% 72.12/9.78  = { by axiom 5 (or_symmetry) }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(xor(a, or(a, carryout(a12, not(a11), not(c1)))))))
% 72.12/9.78  = { by lemma 41 R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(xor(a, or(a, carryout(a12, not(a11), and(a11, a15)))))))
% 72.12/9.78  = { by lemma 158 }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(xor(a, or(a, and(a12, or(a15, not(a11))))))))
% 72.12/9.78  = { by lemma 110 }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(xor(a, or(a, and(a12, carryout(a15, a12, a)))))))
% 72.12/9.78  = { by lemma 120 }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(xor(a, or(a, and(a12, a15))))))
% 72.12/9.78  = { by lemma 130 }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(and(and(a12, a15), not(a)))))
% 72.12/9.78  = { by lemma 72 }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(and(a12, and(a15, not(a))))))
% 72.12/9.78  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(and(a12, and(not(a), a15)))))
% 72.12/9.78  = { by lemma 72 R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(and(and(a12, not(a)), a15))))
% 72.12/9.78  = { by lemma 63 R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(and(not(or(a, not(a12))), a15))))
% 72.12/9.78  = { by lemma 109 }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(and(not(a), a15))))
% 72.12/9.78  = { by axiom 9 (and_symmetry) }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(and(a15, not(a)))))
% 72.12/9.78  = { by lemma 127 R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(not(carryout(a, a16, a14)))))
% 72.12/9.78  = { by lemma 112 R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(not(or(a, not(a15))))))
% 72.12/9.78  = { by axiom 5 (or_symmetry) }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(not(or(not(a15), a)))))
% 72.12/9.78  = { by lemma 126 R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(not(or(a, and(a11, not(a15)))))))
% 72.12/9.78  = { by lemma 63 R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(not(or(a, not(or(a15, not(a11))))))))
% 72.12/9.78  = { by lemma 95 }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(not(or(a, not(xor(c1, a11)))))))
% 72.12/9.78  = { by lemma 94 R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(not(or(a, not(not(and(c1, a11))))))))
% 72.12/9.78  = { by axiom 3 (not_involution) }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(not(or(a, and(c1, a11))))))
% 72.12/9.78  = { by lemma 125 }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(not(or(c1, a)))))
% 72.12/9.78  = { by axiom 3 (not_involution) }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, a)))
% 72.12/9.78  = { by lemma 135 R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, and(carryout(a, b, carryin), a))))
% 72.12/9.78  = { by axiom 3 (not_involution) R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(and(carryout(a, b, carryin), a))))))
% 72.12/9.78  = { by lemma 157 }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(and(a16, a))))))
% 72.12/9.78  = { by lemma 156 R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(xor(a, or(carryout(a, b, carryin), a12))))))
% 72.12/9.78  = { by lemma 152 R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(carryout(a, carryout(a, b, carryin), not(a11)))))))
% 72.12/9.78  = { by lemma 137 R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(and(a, carryout(carryout(a, b, carryin), a12, a)))))))
% 72.12/9.78  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(and(carryout(carryout(a, b, carryin), a12, a), a))))))
% 72.12/9.78  = { by axiom 3 (not_involution) R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(and(carryout(carryout(a, b, carryin), a12, a), not(not(a))))))))
% 72.12/9.78  = { by lemma 130 R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(xor(not(a), or(not(a), carryout(carryout(a, b, carryin), a12, a))))))))
% 72.12/9.78  = { by lemma 151 }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(xor(not(a), or(carryout(a, b, carryin), a12)))))))
% 72.12/9.78  = { by lemma 117 }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(xor(a, not(or(carryout(a, b, carryin), a12))))))))
% 72.12/9.78  = { by lemma 147 }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(xor(a, not(or(a12, a16))))))))
% 72.12/9.78  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(xor(a, not(or(a16, a12))))))))
% 72.12/9.78  = { by lemma 46 R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(xor(a, not(or(a12, and(a16, not(a12))))))))))
% 72.12/9.78  = { by lemma 87 R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(xor(a, not(or(a12, and(a16, not(or(a12, not(a14))))))))))))
% 72.12/9.78  = { by lemma 63 }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(xor(a, not(or(a12, and(a16, and(a14, not(a12)))))))))))
% 72.12/9.78  = { by lemma 106 }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(xor(a, not(or(a12, and(not(a12), not(a15))))))))))
% 72.12/9.78  = { by axiom 27 (demorgan2) R->L }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(xor(a, not(or(a12, not(or(a12, a15))))))))))
% 72.12/9.78  = { by lemma 61 }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(xor(a, not(or(a12, not(a15)))))))))
% 72.12/9.78  = { by lemma 112 }
% 72.12/9.78    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(xor(a, not(carryout(a12, a16, a14))))))))
% 72.12/9.79  = { by lemma 127 }
% 72.12/9.79    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(xor(a, and(a15, not(a12))))))))
% 72.12/9.79  = { by lemma 39 R->L }
% 72.12/9.79    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(xor(a, and(a15, and(a11, a))))))))
% 72.12/9.79  = { by lemma 55 }
% 72.12/9.79    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(xor(a, and(a, and(a11, a15))))))))
% 72.12/9.79  = { by lemma 56 }
% 72.12/9.79    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(xor(a, and(a11, and(a15, a))))))))
% 72.12/9.79  = { by lemma 70 }
% 72.12/9.79    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(xor(a, and(a, not(c1))))))))
% 72.12/9.79  = { by lemma 96 R->L }
% 72.12/9.79    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(xor(a, not(or(not(a), c1))))))))
% 72.12/9.79  = { by lemma 116 R->L }
% 72.12/9.79    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(or(and(a, or(not(a), c1)), not(or(a, or(not(a), c1)))))))))
% 72.12/9.79  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.79    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(or(and(a, or(not(a), c1)), not(or(a, or(c1, not(a))))))))))
% 72.12/9.79  = { by axiom 3 (not_involution) R->L }
% 72.12/9.79    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(or(and(a, or(not(a), c1)), not(or(not(not(a)), or(c1, not(a))))))))))
% 72.12/9.79  = { by lemma 83 }
% 72.12/9.79    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(or(and(a, or(not(a), c1)), not(n1)))))))
% 72.12/9.79  = { by lemma 132 }
% 72.12/9.79    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(or(and(a, c1), not(n1)))))))
% 72.12/9.79  = { by axiom 1 (not_definition2) }
% 72.12/9.79    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(or(and(a, c1), n0))))))
% 72.12/9.79  = { by axiom 7 (or_definition1) }
% 72.12/9.79    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(and(a, c1))))))
% 72.12/9.79  = { by axiom 9 (and_symmetry) }
% 72.12/9.79    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(and(c1, a))))))
% 72.12/9.79  = { by lemma 74 }
% 72.12/9.79    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(not(and(a13, c1))))))
% 72.12/9.79  = { by axiom 3 (not_involution) }
% 72.12/9.79    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, and(a13, c1))))
% 72.12/9.79  = { by lemma 74 R->L }
% 72.12/9.79    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, and(c1, a))))
% 72.12/9.79  = { by lemma 119 R->L }
% 72.12/9.79    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, and(c1, carryout(a, a12, a)))))
% 72.12/9.79  = { by lemma 110 R->L }
% 72.12/9.79    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, and(c1, or(a, not(a11))))))
% 72.12/9.79  = { by lemma 136 R->L }
% 72.12/9.79    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, carryout(c1, a, and(c1, not(a11))))))
% 72.12/9.79  = { by lemma 93 }
% 72.12/9.79    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, carryout(c1, a, not(a11)))))
% 72.12/9.79  = { by lemma 141 }
% 72.12/9.79    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, and(a, not(a11)))))
% 72.12/9.79  = { by lemma 63 R->L }
% 72.12/9.79    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(or(a11, not(a))))))
% 72.12/9.79  = { by lemma 159 R->L }
% 72.12/9.79    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(or(a11, not(or(a, and(a11, a15))))))))
% 72.12/9.79  = { by lemma 41 }
% 72.12/9.79    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(or(a11, not(or(a, not(c1))))))))
% 72.12/9.79  = { by lemma 63 }
% 72.12/9.79    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(or(a11, and(c1, not(a)))))))
% 72.12/9.79  = { by lemma 159 }
% 72.12/9.79    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), or(c1, not(a11))))
% 72.12/9.79  = { by lemma 69 R->L }
% 72.12/9.79    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(and(a11, not(c1)))))
% 72.12/9.79  = { by lemma 92 }
% 72.12/9.79    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), not(not(c1))))
% 72.12/9.79  = { by axiom 3 (not_involution) }
% 72.12/9.79    circuit(sum(a, b, carryin), and(carryout(a, b, carryin), c1))
% 72.12/9.79  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.79    circuit(sum(a, b, carryin), and(c1, carryout(a, b, carryin)))
% 72.12/9.79  = { by axiom 7 (or_definition1) R->L }
% 72.12/9.79    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), n0)))
% 72.12/9.79  = { by lemma 129 R->L }
% 72.12/9.79    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), and(not(carryout(a, b, carryin)), not(or(a, not(carryout(a, b, carryin))))))))
% 72.12/9.79  = { by lemma 69 R->L }
% 72.12/9.79    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), and(not(carryout(a, b, carryin)), not(not(and(carryout(a, b, carryin), not(a))))))))
% 72.12/9.79  = { by lemma 154 }
% 72.12/9.79    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), and(not(carryout(a, b, carryin)), not(not(not(or(sum(a, b, carryin), a13))))))))
% 72.12/9.79  = { by axiom 3 (not_involution) }
% 72.12/9.79    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), and(not(carryout(a, b, carryin)), not(or(sum(a, b, carryin), a13))))))
% 72.12/9.79  = { by axiom 27 (demorgan2) R->L }
% 72.12/9.79    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), or(sum(a, b, carryin), a13))))))
% 72.12/9.79  = { by lemma 149 }
% 72.12/9.79    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), or(a15, a))))))
% 72.12/9.79  = { by lemma 131 R->L }
% 72.12/9.79    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), or(a15, carryout(not(a12), a12, a)))))))
% 72.12/9.79  = { by lemma 146 }
% 72.12/9.79    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), or(not(a12), a15))))))
% 72.12/9.79  = { by axiom 4 (or_idempotency) R->L }
% 72.12/9.79    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), or(not(a12), or(a15, a15)))))))
% 72.12/9.79  = { by lemma 88 R->L }
% 72.12/9.79    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), or(or(not(a12), a15), a15))))))
% 72.12/9.79  = { by lemma 120 R->L }
% 72.12/9.79    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), or(or(not(a12), a15), carryout(a15, a12, a)))))))
% 72.12/9.79  = { by lemma 110 R->L }
% 72.12/9.79    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), or(or(not(a12), a15), or(a15, not(a11))))))))
% 72.12/9.79  = { by lemma 150 R->L }
% 72.12/9.79    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), or(not(a11), or(or(not(a12), a15), and(a11, a15))))))))
% 72.12/9.79  = { by lemma 41 }
% 72.12/9.79    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), or(not(a11), or(or(not(a12), a15), not(c1))))))))
% 72.12/9.79  = { by lemma 114 }
% 72.12/9.79    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), carryout(or(or(not(a12), a15), not(c1)), a12, a))))))
% 72.12/9.79  = { by lemma 113 }
% 72.12/9.79    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), carryout(carryout(or(not(a12), a15), a11, a15), a12, a))))))
% 72.12/9.80  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), carryout(carryout(or(a15, not(a12)), a11, a15), a12, a))))))
% 72.12/9.80  = { by lemma 115 R->L }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), carryout(or(not(c1), or(a15, not(a12))), a12, a))))))
% 72.12/9.80  = { by lemma 81 R->L }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), carryout(or(not(a12), or(a15, not(c1))), a12, a))))))
% 72.12/9.80  = { by lemma 41 R->L }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), carryout(or(not(a12), or(a15, and(a11, a15))), a12, a))))))
% 72.12/9.80  = { by lemma 52 }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), carryout(or(not(a12), a15), a12, a))))))
% 72.12/9.80  = { by lemma 114 R->L }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), or(not(a11), or(not(a12), a15)))))))
% 72.12/9.80  = { by lemma 88 R->L }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), or(or(not(a11), not(a12)), a15))))))
% 72.12/9.80  = { by lemma 145 R->L }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), or(a15, or(not(a16), or(not(a11), not(a12)))))))))
% 72.12/9.80  = { by lemma 155 R->L }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), or(a15, or(not(a16), carryout(not(not(a16)), not(a11), not(a12)))))))))
% 72.12/9.80  = { by lemma 145 }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), or(carryout(not(not(a16)), not(a11), not(a12)), a15))))))
% 72.12/9.80  = { by axiom 3 (not_involution) }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), or(carryout(a16, not(a11), not(a12)), a15))))))
% 72.12/9.80  = { by axiom 5 (or_symmetry) }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), or(a15, carryout(a16, not(a11), not(a12))))))))
% 72.12/9.80  = { by lemma 39 R->L }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), or(a15, carryout(a16, not(a11), and(a11, a))))))))
% 72.12/9.80  = { by lemma 158 }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), or(a15, and(a16, or(a, not(a11)))))))))
% 72.12/9.80  = { by lemma 110 }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), or(a15, and(a16, carryout(a, a12, a))))))))
% 72.12/9.80  = { by lemma 119 }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), or(a15, and(a16, a)))))))
% 72.12/9.80  = { by axiom 3 (not_involution) R->L }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), or(a15, not(not(and(a16, a)))))))))
% 72.12/9.80  = { by lemma 157 R->L }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), or(a15, not(not(and(carryout(a, b, carryin), a)))))))))
% 72.12/9.80  = { by axiom 3 (not_involution) }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), or(a15, and(carryout(a, b, carryin), a)))))))
% 72.12/9.80  = { by lemma 123 }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(or(carryout(a, b, carryin), a15)))))
% 72.12/9.80  = { by lemma 61 }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), not(a15))))
% 72.12/9.80  = { by lemma 86 R->L }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), and(c1, a14))))
% 72.12/9.80  = { by lemma 50 R->L }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), and(c1, or(a14, not(c1))))))
% 72.12/9.80  = { by lemma 98 }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), and(c1, a11))))
% 72.12/9.80  = { by axiom 3 (not_involution) R->L }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), and(c1, not(not(a11))))))
% 72.12/9.80  = { by lemma 42 R->L }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), and(c1, not(and(a, b))))))
% 72.12/9.80  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), and(c1, not(and(b, a))))))
% 72.12/9.80  = { by lemma 73 R->L }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), and(c1, not(and(b, and(a, or(b, carryin))))))))
% 72.12/9.80  = { by lemma 139 R->L }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), and(c1, not(and(b, and(carryout(a, b, carryin), a)))))))
% 72.12/9.80  = { by lemma 64 }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), and(c1, not(and(carryout(a, b, carryin), and(b, a)))))))
% 72.12/9.80  = { by axiom 9 (and_symmetry) }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), and(c1, not(and(carryout(a, b, carryin), and(a, b)))))))
% 72.12/9.80  = { by lemma 42 }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), and(c1, not(and(carryout(a, b, carryin), not(a11)))))))
% 72.12/9.80  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), and(c1, not(and(not(a11), carryout(a, b, carryin)))))))
% 72.12/9.80  = { by axiom 9 (and_symmetry) R->L }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), and(not(and(not(a11), carryout(a, b, carryin))), c1))))
% 72.12/9.80  = { by axiom 5 (or_symmetry) R->L }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(and(not(and(not(a11), carryout(a, b, carryin))), c1), carryout(a, b, carryin))))
% 72.12/9.80  = { by lemma 140 R->L }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), or(and(not(a11), carryout(a, b, carryin)), and(not(and(not(a11), carryout(a, b, carryin))), c1)))))
% 72.12/9.80  = { by lemma 108 }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), or(and(not(a11), carryout(a, b, carryin)), c1))))
% 72.12/9.80  = { by lemma 140 }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(c1, carryout(a, b, carryin))))
% 72.12/9.80  = { by axiom 5 (or_symmetry) }
% 72.12/9.80    circuit(sum(a, b, carryin), and(c1, or(carryout(a, b, carryin), c1)))
% 72.12/9.80  = { by lemma 54 }
% 72.12/9.80    circuit(sum(a, b, carryin), c1)
% 72.12/9.80  = { by lemma 121 }
% 72.12/9.80    circuit(s1, c1)
% 72.12/9.80  = { by axiom 2 (the_output_circuit) }
% 72.12/9.80    true
% 72.12/9.80  % SZS output end Proof
% 72.12/9.80  
% 72.12/9.80  RESULT: Unsatisfiable (the axioms are contradictory).
%------------------------------------------------------------------------------