TSTP Solution File: HWV004-1 by Twee---2.4.2
View Problem
- Process Solution
%------------------------------------------------------------------------------
% File : Twee---2.4.2
% Problem : HWV004-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 : n014.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:30 EDT 2023
% Result : Unsatisfiable 37.88s 5.25s
% Output : Proof 38.66s
% Verified :
% SZS Type : -
% Comments :
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.13 % Problem : HWV004-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.17/0.35 % Computer : n014.cluster.edu
% 0.17/0.35 % Model : x86_64 x86_64
% 0.17/0.35 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.17/0.35 % Memory : 8042.1875MB
% 0.17/0.35 % OS : Linux 3.10.0-693.el7.x86_64
% 0.17/0.35 % CPULimit : 300
% 0.17/0.35 % WCLimit : 300
% 0.17/0.35 % DateTime : Tue Aug 29 13:48:45 EDT 2023
% 0.17/0.35 % CPUTime :
% 37.88/5.25 Command-line arguments: --ground-connectedness --complete-subsets
% 37.88/5.25
% 37.88/5.25 % SZS status Unsatisfiable
% 37.88/5.25
% 38.66/5.31 % SZS output start Proof
% 38.66/5.31 Take the following subset of the input axioms:
% 38.66/5.31 fof(and_commutativity, negated_conjecture, ![X, Y, Z]: and(and(X, Y), Z)=and(and(X, Z), Y)).
% 38.66/5.31 fof(and_definition1, axiom, ![X2]: and(X2, n0)=n0).
% 38.66/5.31 fof(and_definition2, axiom, ![X2]: and(X2, n1)=X2).
% 38.66/5.31 fof(and_evaluation1, axiom, ![X2, Y2]: and(and(X2, Y2), Y2)=and(X2, Y2)).
% 38.66/5.31 fof(and_idempotency, axiom, ![X2]: and(X2, X2)=X2).
% 38.66/5.31 fof(and_not_evaluation1, axiom, ![X2]: and(X2, not(X2))=n0).
% 38.66/5.31 fof(and_not_evaluation2, axiom, ![X2, Y2]: and(and(X2, Y2), not(Y2))=n0).
% 38.66/5.31 fof(and_not_evaluation3, axiom, ![X2, Y2]: and(and(X2, Y2), not(X2))=n0).
% 38.66/5.31 fof(and_or_simplification, negated_conjecture, ![X2, Y2, Z2]: and(or(X2, Y2), Z2)=or(and(X2, Z2), and(Y2, Z2))).
% 38.66/5.31 fof(and_or_subsumption1, axiom, ![X2, Y2]: or(and(X2, Y2), Y2)=Y2).
% 38.66/5.31 fof(and_or_subsumption2, axiom, ![X2, Y2]: or(and(X2, Y2), X2)=X2).
% 38.66/5.31 fof(and_or_subsumption3, axiom, ![X2, Y2, Z2]: or(or(and(X2, Y2), Z2), Y2)=or(Z2, Y2)).
% 38.66/5.31 fof(and_or_subsumption4, axiom, ![X2, Y2, Z2]: or(or(X2, and(Y2, Z2)), Z2)=or(X2, Z2)).
% 38.66/5.31 fof(and_symmetry, negated_conjecture, ![X2, Y2]: and(X2, Y2)=and(Y2, X2)).
% 38.66/5.31 fof(carryout_definition, negated_conjecture, ![X2, Y2, Z2]: carryout(X2, Y2, Z2)=or(and(X2, or(Y2, Z2)), and(not(X2), and(Y2, Z2)))).
% 38.66/5.31 fof(demorgan1, axiom, ![X2, Y2]: not(and(X2, Y2))=or(not(X2), not(Y2))).
% 38.66/5.31 fof(demorgan2, axiom, ![X2, Y2]: not(or(X2, Y2))=and(not(X2), not(Y2))).
% 38.66/5.31 fof(karnaugh1, axiom, ![X2, Y2]: or(and(X2, not(Y2)), Y2)=or(X2, Y2)).
% 38.66/5.31 fof(karnaugh2, axiom, ![X2, Y2]: or(and(not(X2), not(Y2)), Y2)=or(Y2, not(X2))).
% 38.66/5.31 fof(not_definition1, axiom, not(n0)=n1).
% 38.66/5.31 fof(not_involution, axiom, ![X2]: not(not(X2))=X2).
% 38.66/5.31 fof(or_commutativity, negated_conjecture, ![X2, Y2, Z2]: or(or(X2, Y2), Z2)=or(or(X2, Z2), Y2)).
% 38.66/5.31 fof(or_definition1, axiom, ![X2]: or(X2, n0)=X2).
% 38.66/5.31 fof(or_not_evaluation2, axiom, ![X2, Y2]: or(or(X2, Y2), not(Y2))=n1).
% 38.66/5.31 fof(or_symmetry, negated_conjecture, ![X2, Y2]: or(X2, Y2)=or(Y2, X2)).
% 38.66/5.31 fof(overflow_definition, negated_conjecture, overflow=carryout(a1, b1, carryout(a0, b0, n0))).
% 38.66/5.31 fof(prove_circuit, negated_conjecture, ~circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(a1, b1), and(and(a0, b0), or(a1, b1))))).
% 38.66/5.31 fof(s0_definition, negated_conjecture, s0=sum(a0, b0, n0)).
% 38.66/5.31 fof(s1_definition, negated_conjecture, s1=sum(a1, b1, carryout(a0, b0, n0))).
% 38.66/5.31 fof(sum_definition, negated_conjecture, ![X2, Y2, Z2]: sum(X2, Y2, Z2)=xor(xor(X2, Y2), Z2)).
% 38.66/5.31 fof(the_output_circuit, negated_conjecture, circuit(s0, s1, overflow)).
% 38.66/5.31 fof(xor_definition, axiom, ![X2, Y2]: xor(X2, Y2)=or(and(X2, not(Y2)), and(Y2, not(X2)))).
% 38.66/5.31
% 38.66/5.31 Now clausify the problem and encode Horn clauses using encoding 3 of
% 38.66/5.31 http://www.cse.chalmers.se/~nicsma/papers/horn.pdf.
% 38.66/5.31 We repeatedly replace C & s=t => u=v by the two clauses:
% 38.66/5.31 fresh(y, y, x1...xn) = u
% 38.66/5.31 C => fresh(s, t, x1...xn) = v
% 38.66/5.31 where fresh is a fresh function symbol and x1..xn are the free
% 38.66/5.31 variables of u and v.
% 38.66/5.31 A predicate p(X) is encoded as p(X)=true (this is sound, because the
% 38.66/5.31 input problem has no model of domain size 1).
% 38.66/5.31
% 38.66/5.31 The encoding turns the above axioms into the following unit equations and goals:
% 38.66/5.31
% 38.66/5.31 Axiom 1 (not_definition1): not(n0) = n1.
% 38.66/5.31 Axiom 2 (not_involution): not(not(X)) = X.
% 38.66/5.31 Axiom 3 (or_symmetry): or(X, Y) = or(Y, X).
% 38.66/5.31 Axiom 4 (or_definition1): or(X, n0) = X.
% 38.66/5.31 Axiom 5 (and_idempotency): and(X, X) = X.
% 38.66/5.31 Axiom 6 (and_symmetry): and(X, Y) = and(Y, X).
% 38.66/5.31 Axiom 7 (and_definition2): and(X, n1) = X.
% 38.66/5.31 Axiom 8 (and_definition1): and(X, n0) = n0.
% 38.66/5.31 Axiom 9 (s0_definition): s0 = sum(a0, b0, n0).
% 38.66/5.31 Axiom 10 (the_output_circuit): circuit(s0, s1, overflow) = true.
% 38.66/5.31 Axiom 11 (and_not_evaluation1): and(X, not(X)) = n0.
% 38.66/5.31 Axiom 12 (sum_definition): sum(X, Y, Z) = xor(xor(X, Y), Z).
% 38.66/5.31 Axiom 13 (demorgan1): not(and(X, Y)) = or(not(X), not(Y)).
% 38.66/5.31 Axiom 14 (or_commutativity): or(or(X, Y), Z) = or(or(X, Z), Y).
% 38.66/5.31 Axiom 15 (and_or_subsumption2): or(and(X, Y), X) = X.
% 38.66/5.31 Axiom 16 (and_or_subsumption1): or(and(X, Y), Y) = Y.
% 38.66/5.31 Axiom 17 (demorgan2): not(or(X, Y)) = and(not(X), not(Y)).
% 38.66/5.31 Axiom 18 (and_evaluation1): and(and(X, Y), Y) = and(X, Y).
% 38.66/5.31 Axiom 19 (and_commutativity): and(and(X, Y), Z) = and(and(X, Z), Y).
% 38.66/5.31 Axiom 20 (or_not_evaluation2): or(or(X, Y), not(Y)) = n1.
% 38.66/5.31 Axiom 21 (karnaugh1): or(and(X, not(Y)), Y) = or(X, Y).
% 38.66/5.31 Axiom 22 (and_not_evaluation3): and(and(X, Y), not(X)) = n0.
% 38.66/5.31 Axiom 23 (and_not_evaluation2): and(and(X, Y), not(Y)) = n0.
% 38.66/5.31 Axiom 24 (s1_definition): s1 = sum(a1, b1, carryout(a0, b0, n0)).
% 38.66/5.31 Axiom 25 (overflow_definition): overflow = carryout(a1, b1, carryout(a0, b0, n0)).
% 38.66/5.31 Axiom 26 (and_or_simplification): and(or(X, Y), Z) = or(and(X, Z), and(Y, Z)).
% 38.66/5.31 Axiom 27 (and_or_subsumption4): or(or(X, and(Y, Z)), Z) = or(X, Z).
% 38.66/5.31 Axiom 28 (and_or_subsumption3): or(or(and(X, Y), Z), Y) = or(Z, Y).
% 38.66/5.31 Axiom 29 (karnaugh2): or(and(not(X), not(Y)), Y) = or(Y, not(X)).
% 38.66/5.31 Axiom 30 (xor_definition): xor(X, Y) = or(and(X, not(Y)), and(Y, not(X))).
% 38.66/5.31 Axiom 31 (carryout_definition): carryout(X, Y, Z) = or(and(X, or(Y, Z)), and(not(X), and(Y, Z))).
% 38.66/5.31
% 38.66/5.31 Lemma 32: or(n0, X) = X.
% 38.66/5.31 Proof:
% 38.66/5.31 or(n0, X)
% 38.66/5.31 = { by axiom 3 (or_symmetry) R->L }
% 38.66/5.31 or(X, n0)
% 38.66/5.31 = { by axiom 4 (or_definition1) }
% 38.66/5.31 X
% 38.66/5.31
% 38.66/5.31 Lemma 33: carryout(X, Y, n0) = and(X, Y).
% 38.66/5.31 Proof:
% 38.66/5.31 carryout(X, Y, n0)
% 38.66/5.31 = { by axiom 31 (carryout_definition) }
% 38.66/5.31 or(and(X, or(Y, n0)), and(not(X), and(Y, n0)))
% 38.66/5.31 = { by axiom 4 (or_definition1) }
% 38.66/5.31 or(and(X, Y), and(not(X), and(Y, n0)))
% 38.66/5.31 = { by axiom 8 (and_definition1) }
% 38.66/5.31 or(and(X, Y), and(not(X), n0))
% 38.66/5.31 = { by axiom 8 (and_definition1) }
% 38.66/5.31 or(and(X, Y), n0)
% 38.66/5.31 = { by axiom 4 (or_definition1) }
% 38.66/5.31 and(X, Y)
% 38.66/5.31
% 38.66/5.31 Lemma 34: and(X, and(Y, X)) = and(Y, X).
% 38.66/5.31 Proof:
% 38.66/5.31 and(X, and(Y, X))
% 38.66/5.31 = { by axiom 6 (and_symmetry) R->L }
% 38.66/5.31 and(and(Y, X), X)
% 38.66/5.31 = { by axiom 18 (and_evaluation1) }
% 38.66/5.31 and(Y, X)
% 38.66/5.31
% 38.66/5.31 Lemma 35: and(X, and(Y, Z)) = and(Z, and(X, Y)).
% 38.66/5.31 Proof:
% 38.66/5.31 and(X, and(Y, Z))
% 38.66/5.31 = { by axiom 6 (and_symmetry) R->L }
% 38.66/5.31 and(and(Y, Z), X)
% 38.66/5.31 = { by axiom 19 (and_commutativity) }
% 38.66/5.31 and(and(Y, X), Z)
% 38.66/5.31 = { by axiom 6 (and_symmetry) }
% 38.66/5.31 and(Z, and(Y, X))
% 38.66/5.31 = { by axiom 6 (and_symmetry) }
% 38.66/5.31 and(Z, and(X, Y))
% 38.66/5.31
% 38.66/5.31 Lemma 36: or(X, and(Y, X)) = X.
% 38.66/5.31 Proof:
% 38.66/5.31 or(X, and(Y, X))
% 38.66/5.31 = { by axiom 3 (or_symmetry) R->L }
% 38.66/5.31 or(and(Y, X), X)
% 38.66/5.31 = { by axiom 16 (and_or_subsumption1) }
% 38.66/5.31 X
% 38.66/5.31
% 38.66/5.31 Lemma 37: and(X, or(X, Y)) = X.
% 38.66/5.31 Proof:
% 38.66/5.31 and(X, or(X, Y))
% 38.66/5.31 = { by axiom 6 (and_symmetry) R->L }
% 38.66/5.31 and(or(X, Y), X)
% 38.66/5.31 = { by axiom 26 (and_or_simplification) }
% 38.66/5.31 or(and(X, X), and(Y, X))
% 38.66/5.31 = { by axiom 5 (and_idempotency) }
% 38.66/5.31 or(X, and(Y, X))
% 38.66/5.31 = { by lemma 36 }
% 38.66/5.31 X
% 38.66/5.31
% 38.66/5.31 Lemma 38: and(or(X, Y), X) = X.
% 38.66/5.31 Proof:
% 38.66/5.31 and(or(X, Y), X)
% 38.66/5.31 = { by axiom 6 (and_symmetry) R->L }
% 38.66/5.31 and(X, or(X, Y))
% 38.66/5.31 = { by lemma 37 }
% 38.66/5.31 X
% 38.66/5.31
% 38.66/5.31 Lemma 39: or(X, and(X, Y)) = X.
% 38.66/5.31 Proof:
% 38.66/5.31 or(X, and(X, Y))
% 38.66/5.31 = { by axiom 3 (or_symmetry) R->L }
% 38.66/5.31 or(and(X, Y), X)
% 38.66/5.31 = { by axiom 15 (and_or_subsumption2) }
% 38.66/5.31 X
% 38.66/5.31
% 38.66/5.31 Lemma 40: or(X, or(Y, Z)) = or(Z, or(Y, X)).
% 38.66/5.31 Proof:
% 38.66/5.31 or(X, or(Y, Z))
% 38.66/5.31 = { by axiom 3 (or_symmetry) R->L }
% 38.66/5.32 or(or(Y, Z), X)
% 38.66/5.32 = { by axiom 14 (or_commutativity) R->L }
% 38.66/5.32 or(or(Y, X), Z)
% 38.66/5.32 = { by axiom 3 (or_symmetry) }
% 38.66/5.32 or(Z, or(Y, X))
% 38.66/5.32
% 38.66/5.32 Lemma 41: or(X, or(Y, Z)) = or(Y, or(Z, X)).
% 38.66/5.32 Proof:
% 38.66/5.32 or(X, or(Y, Z))
% 38.66/5.32 = { by lemma 40 R->L }
% 38.66/5.32 or(Z, or(Y, X))
% 38.66/5.32 = { by axiom 3 (or_symmetry) R->L }
% 38.66/5.32 or(Z, or(X, Y))
% 38.66/5.32 = { by axiom 3 (or_symmetry) R->L }
% 38.66/5.32 or(or(X, Y), Z)
% 38.66/5.32 = { by axiom 14 (or_commutativity) R->L }
% 38.66/5.32 or(or(X, Z), Y)
% 38.66/5.32 = { by axiom 3 (or_symmetry) R->L }
% 38.66/5.32 or(or(Z, X), Y)
% 38.66/5.32 = { by axiom 3 (or_symmetry) }
% 38.66/5.32 or(Y, or(Z, X))
% 38.66/5.32
% 38.66/5.32 Lemma 42: or(and(X, Y), X) = X.
% 38.66/5.32 Proof:
% 38.66/5.32 or(and(X, Y), X)
% 38.66/5.32 = { by axiom 3 (or_symmetry) R->L }
% 38.66/5.32 or(X, and(X, Y))
% 38.66/5.32 = { by lemma 39 }
% 38.66/5.32 X
% 38.66/5.32
% 38.66/5.32 Lemma 43: and(X, or(not(X), Y)) = and(X, Y).
% 38.66/5.32 Proof:
% 38.66/5.32 and(X, or(not(X), Y))
% 38.66/5.32 = { by axiom 2 (not_involution) R->L }
% 38.66/5.32 and(not(not(X)), or(not(X), Y))
% 38.66/5.32 = { by axiom 3 (or_symmetry) R->L }
% 38.66/5.32 and(not(not(X)), or(Y, not(X)))
% 38.66/5.32 = { by axiom 6 (and_symmetry) R->L }
% 38.66/5.32 and(or(Y, not(X)), not(not(X)))
% 38.66/5.32 = { by axiom 26 (and_or_simplification) }
% 38.66/5.32 or(and(Y, not(not(X))), and(not(X), not(not(X))))
% 38.66/5.32 = { by axiom 11 (and_not_evaluation1) }
% 38.66/5.32 or(and(Y, not(not(X))), n0)
% 38.66/5.32 = { by axiom 4 (or_definition1) }
% 38.66/5.32 and(Y, not(not(X)))
% 38.66/5.32 = { by axiom 2 (not_involution) }
% 38.66/5.32 and(Y, X)
% 38.66/5.32 = { by axiom 6 (and_symmetry) }
% 38.66/5.32 and(X, Y)
% 38.66/5.32
% 38.66/5.32 Lemma 44: or(X, and(Y, not(X))) = or(Y, X).
% 38.66/5.32 Proof:
% 38.66/5.32 or(X, and(Y, not(X)))
% 38.66/5.32 = { by axiom 3 (or_symmetry) R->L }
% 38.66/5.32 or(and(Y, not(X)), X)
% 38.66/5.32 = { by axiom 21 (karnaugh1) }
% 38.66/5.32 or(Y, X)
% 38.66/5.32
% 38.66/5.32 Lemma 45: or(and(X, Y), and(Z, X)) = and(X, or(Z, Y)).
% 38.66/5.32 Proof:
% 38.66/5.32 or(and(X, Y), and(Z, X))
% 38.66/5.32 = { by axiom 6 (and_symmetry) R->L }
% 38.66/5.32 or(and(Y, X), and(Z, X))
% 38.66/5.32 = { by axiom 26 (and_or_simplification) R->L }
% 38.66/5.32 and(or(Y, Z), X)
% 38.66/5.32 = { by axiom 6 (and_symmetry) }
% 38.66/5.32 and(X, or(Y, Z))
% 38.66/5.32 = { by axiom 3 (or_symmetry) }
% 38.66/5.32 and(X, or(Z, Y))
% 38.66/5.32
% 38.66/5.32 Lemma 46: and(X, or(Y, and(X, Z))) = and(X, or(Y, Z)).
% 38.66/5.32 Proof:
% 38.66/5.32 and(X, or(Y, and(X, Z)))
% 38.66/5.32 = { by lemma 45 R->L }
% 38.66/5.32 or(and(X, and(X, Z)), and(Y, X))
% 38.66/5.32 = { by axiom 6 (and_symmetry) R->L }
% 38.66/5.32 or(and(X, and(Z, X)), and(Y, X))
% 38.66/5.32 = { by lemma 34 }
% 38.66/5.32 or(and(Z, X), and(Y, X))
% 38.66/5.32 = { by axiom 6 (and_symmetry) }
% 38.66/5.32 or(and(X, Z), and(Y, X))
% 38.66/5.32 = { by lemma 45 }
% 38.66/5.32 and(X, or(Y, Z))
% 38.66/5.32
% 38.66/5.32 Lemma 47: and(or(and(X, Y), Z), X) = or(and(X, Y), and(Z, X)).
% 38.66/5.32 Proof:
% 38.66/5.32 and(or(and(X, Y), Z), X)
% 38.66/5.32 = { by axiom 26 (and_or_simplification) }
% 38.66/5.32 or(and(and(X, Y), X), and(Z, X))
% 38.66/5.32 = { by lemma 42 R->L }
% 38.66/5.32 or(and(and(X, Y), or(and(X, Y), X)), and(Z, X))
% 38.66/5.32 = { by lemma 37 }
% 38.66/5.32 or(and(X, Y), and(Z, X))
% 38.66/5.32
% 38.66/5.32 Lemma 48: or(X, or(Y, and(X, Z))) = or(X, Y).
% 38.66/5.32 Proof:
% 38.66/5.32 or(X, or(Y, and(X, Z)))
% 38.66/5.32 = { by lemma 41 R->L }
% 38.66/5.32 or(and(X, Z), or(X, Y))
% 38.66/5.32 = { by axiom 3 (or_symmetry) }
% 38.66/5.32 or(or(X, Y), and(X, Z))
% 38.66/5.32 = { by axiom 14 (or_commutativity) R->L }
% 38.66/5.32 or(or(X, and(X, Z)), Y)
% 38.66/5.32 = { by lemma 39 }
% 38.66/5.32 or(X, Y)
% 38.66/5.32
% 38.66/5.32 Lemma 49: or(X, and(Y, or(X, Z))) = or(X, and(Z, Y)).
% 38.66/5.32 Proof:
% 38.66/5.32 or(X, and(Y, or(X, Z)))
% 38.66/5.32 = { by axiom 3 (or_symmetry) R->L }
% 38.66/5.32 or(X, and(Y, or(Z, X)))
% 38.66/5.32 = { by axiom 6 (and_symmetry) R->L }
% 38.66/5.32 or(X, and(or(Z, X), Y))
% 38.66/5.32 = { by axiom 26 (and_or_simplification) }
% 38.66/5.32 or(X, or(and(Z, Y), and(X, Y)))
% 38.66/5.32 = { by lemma 48 }
% 38.66/5.32 or(X, and(Z, Y))
% 38.66/5.32
% 38.66/5.32 Lemma 50: or(X, or(Y, and(Z, X))) = or(Y, X).
% 38.66/5.32 Proof:
% 38.66/5.32 or(X, or(Y, and(Z, X)))
% 38.66/5.32 = { by axiom 3 (or_symmetry) R->L }
% 38.66/5.32 or(or(Y, and(Z, X)), X)
% 38.66/5.32 = { by axiom 27 (and_or_subsumption4) }
% 38.66/5.32 or(Y, X)
% 38.66/5.32
% 38.66/5.32 Lemma 51: or(X, or(and(Y, X), Z)) = or(Z, X).
% 38.66/5.32 Proof:
% 38.66/5.32 or(X, or(and(Y, X), Z))
% 38.66/5.32 = { by axiom 3 (or_symmetry) R->L }
% 38.66/5.32 or(or(and(Y, X), Z), X)
% 38.66/5.32 = { by axiom 28 (and_or_subsumption3) }
% 38.66/5.32 or(Z, X)
% 38.66/5.32
% 38.66/5.32 Lemma 52: or(or(and(X, Y), Z), X) = or(Z, X).
% 38.66/5.32 Proof:
% 38.66/5.32 or(or(and(X, Y), Z), X)
% 38.66/5.32 = { by axiom 14 (or_commutativity) }
% 38.66/5.32 or(or(and(X, Y), X), Z)
% 38.66/5.32 = { by lemma 42 }
% 38.66/5.32 or(X, Z)
% 38.66/5.32 = { by axiom 3 (or_symmetry) }
% 38.66/5.32 or(Z, X)
% 38.66/5.32
% 38.66/5.32 Lemma 53: and(and(X, Y), not(and(Z, X))) = and(and(X, Y), not(Z)).
% 38.66/5.32 Proof:
% 38.66/5.32 and(and(X, Y), not(and(Z, X)))
% 38.66/5.32 = { by axiom 13 (demorgan1) }
% 38.66/5.32 and(and(X, Y), or(not(Z), not(X)))
% 38.66/5.32 = { by lemma 45 R->L }
% 38.66/5.32 or(and(and(X, Y), not(X)), and(not(Z), and(X, Y)))
% 38.66/5.32 = { by axiom 22 (and_not_evaluation3) }
% 38.66/5.32 or(n0, and(not(Z), and(X, Y)))
% 38.66/5.32 = { by lemma 32 }
% 38.66/5.32 and(not(Z), and(X, Y))
% 38.66/5.32 = { by axiom 6 (and_symmetry) }
% 38.66/5.32 and(and(X, Y), not(Z))
% 38.66/5.32
% 38.66/5.32 Lemma 54: or(a1, and(and(and(a0, b0), or(X, b1)), b1)) = or(overflow, a1).
% 38.66/5.32 Proof:
% 38.66/5.32 or(a1, and(and(and(a0, b0), or(X, b1)), b1))
% 38.66/5.32 = { by axiom 6 (and_symmetry) R->L }
% 38.66/5.32 or(a1, and(b1, and(and(a0, b0), or(X, b1))))
% 38.66/5.32 = { by lemma 35 R->L }
% 38.66/5.32 or(a1, and(and(a0, b0), and(or(X, b1), b1)))
% 38.66/5.32 = { by axiom 2 (not_involution) R->L }
% 38.66/5.32 or(a1, and(and(a0, b0), not(not(and(or(X, b1), b1)))))
% 38.66/5.32 = { by axiom 6 (and_symmetry) R->L }
% 38.66/5.32 or(a1, and(and(a0, b0), not(not(and(b1, or(X, b1))))))
% 38.66/5.32 = { by axiom 13 (demorgan1) }
% 38.66/5.32 or(a1, and(and(a0, b0), not(or(not(b1), not(or(X, b1))))))
% 38.66/5.32 = { by axiom 29 (karnaugh2) R->L }
% 38.66/5.32 or(a1, and(and(a0, b0), not(or(and(not(or(X, b1)), not(not(b1))), not(b1)))))
% 38.66/5.32 = { by axiom 17 (demorgan2) R->L }
% 38.66/5.32 or(a1, and(and(a0, b0), not(or(not(or(or(X, b1), not(b1))), not(b1)))))
% 38.66/5.32 = { by axiom 3 (or_symmetry) }
% 38.66/5.32 or(a1, and(and(a0, b0), not(or(not(b1), not(or(or(X, b1), not(b1)))))))
% 38.66/5.32 = { by axiom 20 (or_not_evaluation2) }
% 38.66/5.32 or(a1, and(and(a0, b0), not(or(not(b1), not(n1)))))
% 38.66/5.32 = { by axiom 13 (demorgan1) R->L }
% 38.66/5.32 or(a1, and(and(a0, b0), not(not(and(b1, n1)))))
% 38.66/5.32 = { by axiom 7 (and_definition2) }
% 38.66/5.32 or(a1, and(and(a0, b0), not(not(b1))))
% 38.66/5.32 = { by axiom 2 (not_involution) }
% 38.66/5.32 or(a1, and(and(a0, b0), b1))
% 38.66/5.32 = { by axiom 6 (and_symmetry) R->L }
% 38.66/5.32 or(a1, and(b1, and(a0, b0)))
% 38.66/5.32 = { by lemma 33 R->L }
% 38.66/5.32 or(a1, and(b1, carryout(a0, b0, n0)))
% 38.66/5.32 = { by axiom 3 (or_symmetry) R->L }
% 38.66/5.32 or(and(b1, carryout(a0, b0, n0)), a1)
% 38.66/5.32 = { by lemma 44 R->L }
% 38.66/5.32 or(a1, and(and(b1, carryout(a0, b0, n0)), not(a1)))
% 38.66/5.32 = { by axiom 6 (and_symmetry) }
% 38.66/5.32 or(a1, and(not(a1), and(b1, carryout(a0, b0, n0))))
% 38.66/5.32 = { by axiom 3 (or_symmetry) R->L }
% 38.66/5.32 or(and(not(a1), and(b1, carryout(a0, b0, n0))), a1)
% 38.66/5.32 = { by lemma 51 R->L }
% 38.66/5.32 or(a1, or(and(or(b1, carryout(a0, b0, n0)), a1), and(not(a1), and(b1, carryout(a0, b0, n0)))))
% 38.66/5.32 = { by axiom 6 (and_symmetry) }
% 38.66/5.32 or(a1, or(and(a1, or(b1, carryout(a0, b0, n0))), and(not(a1), and(b1, carryout(a0, b0, n0)))))
% 38.66/5.32 = { by axiom 31 (carryout_definition) R->L }
% 38.66/5.32 or(a1, carryout(a1, b1, carryout(a0, b0, n0)))
% 38.66/5.32 = { by axiom 25 (overflow_definition) R->L }
% 38.66/5.32 or(a1, overflow)
% 38.66/5.32 = { by axiom 3 (or_symmetry) }
% 38.66/5.32 or(overflow, a1)
% 38.66/5.32
% 38.66/5.32 Lemma 55: or(and(and(a0, b0), or(a1, b1)), a1) = or(overflow, a1).
% 38.66/5.32 Proof:
% 38.66/5.32 or(and(and(a0, b0), or(a1, b1)), a1)
% 38.66/5.32 = { by axiom 3 (or_symmetry) R->L }
% 38.66/5.32 or(a1, and(and(a0, b0), or(a1, b1)))
% 38.66/5.32 = { by lemma 34 R->L }
% 38.66/5.32 or(a1, and(or(a1, b1), and(and(a0, b0), or(a1, b1))))
% 38.66/5.32 = { by axiom 6 (and_symmetry) }
% 38.66/5.32 or(a1, and(and(and(a0, b0), or(a1, b1)), or(a1, b1)))
% 38.66/5.32 = { by lemma 49 }
% 38.66/5.32 or(a1, and(b1, and(and(a0, b0), or(a1, b1))))
% 38.66/5.32 = { by axiom 6 (and_symmetry) }
% 38.66/5.32 or(a1, and(and(and(a0, b0), or(a1, b1)), b1))
% 38.66/5.32 = { by lemma 54 }
% 38.66/5.32 or(overflow, a1)
% 38.66/5.32
% 38.66/5.32 Lemma 56: and(or(and(a1, b1), and(and(a0, b0), or(a1, X))), a1) = and(overflow, a1).
% 38.66/5.32 Proof:
% 38.66/5.32 and(or(and(a1, b1), and(and(a0, b0), or(a1, X))), a1)
% 38.66/5.32 = { by lemma 47 }
% 38.66/5.32 or(and(a1, b1), and(and(and(a0, b0), or(a1, X)), a1))
% 38.66/5.32 = { by axiom 6 (and_symmetry) R->L }
% 38.66/5.32 or(and(a1, b1), and(a1, and(and(a0, b0), or(a1, X))))
% 38.66/5.32 = { by lemma 35 R->L }
% 38.66/5.32 or(and(a1, b1), and(and(a0, b0), and(or(a1, X), a1)))
% 38.66/5.32 = { by lemma 38 }
% 38.66/5.32 or(and(a1, b1), and(and(a0, b0), a1))
% 38.66/5.32 = { by lemma 45 }
% 38.66/5.32 and(a1, or(and(a0, b0), b1))
% 38.66/5.32 = { by axiom 3 (or_symmetry) }
% 38.66/5.32 and(a1, or(b1, and(a0, b0)))
% 38.66/5.32 = { by lemma 43 R->L }
% 38.66/5.32 and(a1, or(not(a1), or(b1, and(a0, b0))))
% 38.66/5.32 = { by lemma 46 R->L }
% 38.66/5.32 and(a1, or(not(a1), and(a1, or(b1, and(a0, b0)))))
% 38.66/5.32 = { by lemma 48 R->L }
% 38.66/5.32 and(a1, or(not(a1), or(and(a1, or(b1, and(a0, b0))), and(not(a1), and(b1, and(a0, b0))))))
% 38.66/5.32 = { by axiom 31 (carryout_definition) R->L }
% 38.66/5.32 and(a1, or(not(a1), carryout(a1, b1, and(a0, b0))))
% 38.66/5.32 = { by lemma 43 }
% 38.66/5.32 and(a1, carryout(a1, b1, and(a0, b0)))
% 38.66/5.32 = { by lemma 33 R->L }
% 38.66/5.32 and(a1, carryout(a1, b1, carryout(a0, b0, n0)))
% 38.66/5.32 = { by axiom 25 (overflow_definition) R->L }
% 38.66/5.32 and(a1, overflow)
% 38.66/5.32 = { by axiom 6 (and_symmetry) }
% 38.66/5.33 and(overflow, a1)
% 38.66/5.33
% 38.66/5.33 Goal 1 (prove_circuit): circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(a1, b1), and(and(a0, b0), or(a1, b1)))) = true.
% 38.66/5.33 Proof:
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(a1, b1), and(and(a0, b0), or(a1, b1))))
% 38.66/5.33 = { by axiom 3 (or_symmetry) }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), and(a1, b1)))
% 38.66/5.33 = { by lemma 48 R->L }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), or(and(a1, b1), and(and(and(a0, b0), or(a1, b1)), a1))))
% 38.66/5.33 = { by lemma 47 R->L }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), and(or(and(a1, b1), and(and(a0, b0), or(a1, b1))), a1)))
% 38.66/5.33 = { by lemma 56 }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), and(overflow, a1)))
% 38.66/5.33 = { by axiom 6 (and_symmetry) R->L }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), and(a1, overflow)))
% 38.66/5.33 = { by lemma 49 R->L }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), and(overflow, or(and(and(a0, b0), or(a1, b1)), a1))))
% 38.66/5.33 = { by lemma 52 R->L }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), and(overflow, or(or(and(a1, b1), and(and(a0, b0), or(a1, b1))), a1))))
% 38.66/5.33 = { by axiom 3 (or_symmetry) R->L }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), and(overflow, or(a1, or(and(a1, b1), and(and(a0, b0), or(a1, b1)))))))
% 38.66/5.33 = { by lemma 37 R->L }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), and(overflow, or(a1, and(or(and(a1, b1), and(and(a0, b0), or(a1, b1))), or(or(and(a1, b1), and(and(a0, b0), or(a1, b1))), or(a1, b1)))))))
% 38.66/5.33 = { by axiom 3 (or_symmetry) R->L }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), and(overflow, or(a1, and(or(and(a1, b1), and(and(a0, b0), or(a1, b1))), or(or(a1, b1), or(and(a1, b1), and(and(a0, b0), or(a1, b1)))))))))
% 38.66/5.33 = { by axiom 3 (or_symmetry) }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), and(overflow, or(a1, and(or(and(a1, b1), and(and(a0, b0), or(a1, b1))), or(or(a1, b1), or(and(and(a0, b0), or(a1, b1)), and(a1, b1))))))))
% 38.66/5.33 = { by lemma 51 }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), and(overflow, or(a1, and(or(and(a1, b1), and(and(a0, b0), or(a1, b1))), or(and(a1, b1), or(a1, b1)))))))
% 38.66/5.33 = { by lemma 40 R->L }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), and(overflow, or(a1, and(or(and(a1, b1), and(and(a0, b0), or(a1, b1))), or(b1, or(a1, and(a1, b1))))))))
% 38.66/5.33 = { by lemma 50 }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), and(overflow, or(a1, and(or(and(a1, b1), and(and(a0, b0), or(a1, b1))), or(a1, b1))))))
% 38.66/5.33 = { by lemma 38 R->L }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), and(overflow, or(and(or(a1, b1), a1), and(or(and(a1, b1), and(and(a0, b0), or(a1, b1))), or(a1, b1))))))
% 38.66/5.33 = { by lemma 45 }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), and(overflow, and(or(a1, b1), or(or(and(a1, b1), and(and(a0, b0), or(a1, b1))), a1)))))
% 38.66/5.33 = { by lemma 52 }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), and(overflow, and(or(a1, b1), or(and(and(a0, b0), or(a1, b1)), a1)))))
% 38.66/5.33 = { by lemma 55 }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), and(overflow, and(or(a1, b1), or(overflow, a1)))))
% 38.66/5.33 = { by lemma 35 }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), and(or(overflow, a1), and(overflow, or(a1, b1)))))
% 38.66/5.33 = { by axiom 6 (and_symmetry) }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), and(and(overflow, or(a1, b1)), or(overflow, a1))))
% 38.66/5.33 = { by axiom 19 (and_commutativity) R->L }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), and(and(overflow, or(overflow, a1)), or(a1, b1))))
% 38.66/5.33 = { by lemma 37 }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), and(overflow, or(a1, b1))))
% 38.66/5.33 = { by lemma 50 R->L }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), and(overflow, or(b1, or(a1, and(and(and(a0, b0), or(X, b1)), b1))))))
% 38.66/5.33 = { by lemma 54 }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), and(overflow, or(b1, or(overflow, a1)))))
% 38.66/5.33 = { by lemma 41 }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), and(overflow, or(overflow, or(a1, b1)))))
% 38.66/5.33 = { by lemma 37 }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), overflow))
% 38.66/5.33 = { by axiom 4 (or_definition1) R->L }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), or(overflow, n0)))
% 38.66/5.33 = { by axiom 23 (and_not_evaluation2) R->L }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), or(overflow, and(and(and(a1, b1), or(and(a1, b1), and(and(a0, b0), or(a1, Y)))), not(or(and(a1, b1), and(and(a0, b0), or(a1, Y))))))))
% 38.66/5.33 = { by axiom 6 (and_symmetry) }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), or(overflow, and(not(or(and(a1, b1), and(and(a0, b0), or(a1, Y)))), and(and(a1, b1), or(and(a1, b1), and(and(a0, b0), or(a1, Y))))))))
% 38.66/5.33 = { by lemma 37 }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), or(overflow, and(not(or(and(a1, b1), and(and(a0, b0), or(a1, Y)))), and(a1, b1)))))
% 38.66/5.33 = { by axiom 6 (and_symmetry) }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), or(overflow, and(and(a1, b1), not(or(and(a1, b1), and(and(a0, b0), or(a1, Y))))))))
% 38.66/5.33 = { by lemma 53 R->L }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), or(overflow, and(and(a1, b1), not(and(or(and(a1, b1), and(and(a0, b0), or(a1, Y))), a1))))))
% 38.66/5.33 = { by lemma 56 }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), or(overflow, and(and(a1, b1), not(and(overflow, a1))))))
% 38.66/5.33 = { by lemma 53 }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), or(overflow, and(and(a1, b1), not(overflow)))))
% 38.66/5.33 = { by lemma 44 }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(and(and(a0, b0), or(a1, b1)), or(and(a1, b1), overflow)))
% 38.66/5.33 = { by lemma 40 }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(overflow, or(and(a1, b1), and(and(a0, b0), or(a1, b1)))))
% 38.66/5.33 = { by lemma 37 R->L }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(overflow, and(or(and(a1, b1), and(and(a0, b0), or(a1, b1))), or(or(and(a1, b1), and(and(a0, b0), or(a1, b1))), a1))))
% 38.66/5.33 = { by lemma 52 }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(overflow, and(or(and(a1, b1), and(and(a0, b0), or(a1, b1))), or(and(and(a0, b0), or(a1, b1)), a1))))
% 38.66/5.33 = { by lemma 55 }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(overflow, and(or(and(a1, b1), and(and(a0, b0), or(a1, b1))), or(overflow, a1))))
% 38.66/5.33 = { by lemma 46 R->L }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(overflow, and(or(and(a1, b1), and(and(a0, b0), or(a1, b1))), or(overflow, and(or(and(a1, b1), and(and(a0, b0), or(a1, b1))), a1)))))
% 38.66/5.33 = { by lemma 56 }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(overflow, and(or(and(a1, b1), and(and(a0, b0), or(a1, b1))), or(overflow, and(overflow, a1)))))
% 38.66/5.33 = { by lemma 39 }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), or(overflow, and(or(and(a1, b1), and(and(a0, b0), or(a1, b1))), overflow)))
% 38.66/5.33 = { by lemma 36 }
% 38.66/5.33 circuit(xor(a0, b0), xor(xor(a1, b1), carryout(a0, b0, n0)), overflow)
% 38.66/5.33 = { by axiom 12 (sum_definition) R->L }
% 38.66/5.33 circuit(xor(a0, b0), sum(a1, b1, carryout(a0, b0, n0)), overflow)
% 38.66/5.33 = { by axiom 24 (s1_definition) R->L }
% 38.66/5.33 circuit(xor(a0, b0), s1, overflow)
% 38.66/5.33 = { by lemma 32 R->L }
% 38.66/5.33 circuit(or(n0, xor(a0, b0)), s1, overflow)
% 38.66/5.33 = { by lemma 44 R->L }
% 38.66/5.33 circuit(or(xor(a0, b0), and(n0, not(xor(a0, b0)))), s1, overflow)
% 38.66/5.33 = { by axiom 7 (and_definition2) R->L }
% 38.66/5.33 circuit(or(and(xor(a0, b0), n1), and(n0, not(xor(a0, b0)))), s1, overflow)
% 38.66/5.33 = { by axiom 1 (not_definition1) R->L }
% 38.66/5.33 circuit(or(and(xor(a0, b0), not(n0)), and(n0, not(xor(a0, b0)))), s1, overflow)
% 38.66/5.33 = { by axiom 30 (xor_definition) R->L }
% 38.66/5.33 circuit(xor(xor(a0, b0), n0), s1, overflow)
% 38.66/5.33 = { by axiom 12 (sum_definition) R->L }
% 38.66/5.33 circuit(sum(a0, b0, n0), s1, overflow)
% 38.66/5.33 = { by axiom 9 (s0_definition) R->L }
% 38.66/5.33 circuit(s0, s1, overflow)
% 38.66/5.33 = { by axiom 10 (the_output_circuit) }
% 38.66/5.33 true
% 38.66/5.33 % SZS output end Proof
% 38.66/5.33
% 38.66/5.33 RESULT: Unsatisfiable (the axioms are contradictory).
%------------------------------------------------------------------------------