TSTP Solution File: LCL153-1 by Toma---0.4

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Toma---0.4
% Problem  : LCL153-1 : TPTP v8.1.2. Released v1.0.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : toma --casc %s

% Computer : n010.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 08:13:58 EDT 2023

% Result   : Unsatisfiable 2.28s 2.72s
% Output   : CNFRefutation 2.28s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.08/0.14  % Problem    : LCL153-1 : TPTP v8.1.2. Released v1.0.0.
% 0.08/0.15  % Command    : toma --casc %s
% 0.14/0.35  % Computer : n010.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   : Fri Aug 25 01:57:50 EDT 2023
% 0.14/0.36  % CPUTime    : 
% 2.28/2.72  % SZS status Unsatisfiable
% 2.28/2.72  % SZS output start Proof
% 2.28/2.72  original problem:
% 2.28/2.72  axioms:
% 2.28/2.72  implies(truth(), X) = X
% 2.28/2.72  implies(implies(X, Y), implies(implies(Y, Z), implies(X, Z))) = truth()
% 2.28/2.72  implies(implies(X, Y), Y) = implies(implies(Y, X), X)
% 2.28/2.72  implies(implies(not(X), not(Y)), implies(Y, X)) = truth()
% 2.28/2.72  or(X, Y) = implies(not(X), Y)
% 2.28/2.72  or(or(X, Y), Z) = or(X, or(Y, Z))
% 2.28/2.72  or(X, Y) = or(Y, X)
% 2.28/2.72  and(X, Y) = not(or(not(X), not(Y)))
% 2.28/2.72  and(and(X, Y), Z) = and(X, and(Y, Z))
% 2.28/2.72  and(X, Y) = and(Y, X)
% 2.28/2.72  xor(X, Y) = or(and(X, not(Y)), and(not(X), Y))
% 2.28/2.72  xor(X, Y) = xor(Y, X)
% 2.28/2.72  and_star(X, Y) = not(or(not(X), not(Y)))
% 2.28/2.72  and_star(and_star(X, Y), Z) = and_star(X, and_star(Y, Z))
% 2.28/2.72  and_star(X, Y) = and_star(Y, X)
% 2.28/2.72  not(truth()) = falsehood()
% 2.28/2.72  goal:
% 2.28/2.72  not(x()) != xor(x(), truth())
% 2.28/2.72  To show the unsatisfiability of the original goal,
% 2.28/2.72  it suffices to show that not(x()) = xor(x(), truth()) (skolemized goal) is valid under the axioms.
% 2.28/2.72  Here is an equational proof:
% 2.28/2.72  0: implies(truth(), X0) = X0.
% 2.28/2.72  Proof: Axiom.
% 2.28/2.72  
% 2.28/2.72  1: implies(implies(X0, X1), implies(implies(X1, X2), implies(X0, X2))) = truth().
% 2.28/2.72  Proof: Axiom.
% 2.28/2.72  
% 2.28/2.72  2: implies(implies(X0, X1), X1) = implies(implies(X1, X0), X0).
% 2.28/2.72  Proof: Axiom.
% 2.28/2.72  
% 2.28/2.72  3: implies(implies(not(X0), not(X1)), implies(X1, X0)) = truth().
% 2.28/2.72  Proof: Axiom.
% 2.28/2.72  
% 2.28/2.72  4: or(X0, X1) = implies(not(X0), X1).
% 2.28/2.72  Proof: Axiom.
% 2.28/2.72  
% 2.28/2.72  6: or(X0, X1) = or(X1, X0).
% 2.28/2.72  Proof: Axiom.
% 2.28/2.72  
% 2.28/2.72  7: and(X0, X1) = not(or(not(X0), not(X1))).
% 2.28/2.72  Proof: Axiom.
% 2.28/2.72  
% 2.28/2.72  10: xor(X0, X1) = or(and(X0, not(X1)), and(not(X0), X1)).
% 2.28/2.72  Proof: Axiom.
% 2.28/2.72  
% 2.28/2.72  17: and(X0, X1) = not(implies(not(not(X0)), not(X1))).
% 2.28/2.72  Proof: Rewrite equation 7,
% 2.28/2.72                 lhs with equations []
% 2.28/2.72                 rhs with equations [4].
% 2.28/2.72  
% 2.28/2.72  19: xor(X0, X1) = implies(not(not(implies(not(not(X0)), not(not(X1))))), not(implies(not(not(not(X0))), not(X1)))).
% 2.28/2.72  Proof: Rewrite equation 10,
% 2.28/2.72                 lhs with equations []
% 2.28/2.72                 rhs with equations [17,17,4].
% 2.28/2.72  
% 2.28/2.72  21: implies(not(X0), X1) = implies(not(X1), X0).
% 2.28/2.72  Proof: Rewrite equation 6,
% 2.28/2.72                 lhs with equations [4]
% 2.28/2.72                 rhs with equations [4].
% 2.28/2.72  
% 2.28/2.72  25: implies(implies(X2, truth()), truth()) = implies(X2, X2).
% 2.28/2.72  Proof: A critical pair between equations 2 and 0.
% 2.28/2.72  
% 2.28/2.72  30: truth() = implies(X3, implies(implies(X3, X2), implies(truth(), X2))).
% 2.28/2.72  Proof: A critical pair between equations 1 and 0.
% 2.28/2.72  
% 2.28/2.72  32: truth() = implies(implies(not(not(X1)), X2), implies(X1, X2)).
% 2.28/2.72  Proof: A critical pair between equations 3 and 21.
% 2.28/2.72  
% 2.28/2.72  34: implies(implies(X3, not(X2)), not(X2)) = implies(implies(not(X3), X2), X3).
% 2.28/2.72  Proof: A critical pair between equations 2 and 21.
% 2.28/2.72  
% 2.28/2.72  38: implies(implies(X3, not(X2)), not(X2)) = implies(or(X3, X2), X3).
% 2.28/2.72  Proof: Rewrite equation 34,
% 2.28/2.72                 lhs with equations []
% 2.28/2.72                 rhs with equations [4].
% 2.28/2.72  
% 2.28/2.72  40: truth() = implies(or(not(X1), X2), implies(X1, X2)).
% 2.28/2.72  Proof: Rewrite equation 32,
% 2.28/2.72                 lhs with equations []
% 2.28/2.72                 rhs with equations [4].
% 2.28/2.72  
% 2.28/2.72  41: truth() = implies(X3, implies(implies(X3, X2), X2)).
% 2.28/2.72  Proof: Rewrite equation 30,
% 2.28/2.72                 lhs with equations []
% 2.28/2.72                 rhs with equations [0].
% 2.28/2.72  
% 2.28/2.72  44: xor(X0, X1) = or(not(or(not(X0), not(not(X1)))), not(or(not(not(X0)), not(X1)))).
% 2.28/2.72  Proof: Rewrite equation 19,
% 2.28/2.72                 lhs with equations []
% 2.28/2.72                 rhs with equations [4,4,4].
% 2.28/2.72  
% 2.28/2.72  53: or(X0, X1) = or(X1, X0).
% 2.28/2.72  Proof: Rewrite equation 21,
% 2.28/2.72                 lhs with equations [4]
% 2.28/2.72                 rhs with equations [4].
% 2.28/2.72  
% 2.28/2.72  54: truth() = implies(X4, implies(X4, X4)).
% 2.28/2.72  Proof: A critical pair between equations 41 and 25.
% 2.28/2.72  
% 2.28/2.72  56: truth() = implies(implies(truth(), X2), X2).
% 2.28/2.72  Proof: A critical pair between equations 41 and 0.
% 2.28/2.72  
% 2.28/2.72  58: truth() = implies(or(not(truth()), X3), X3).
% 2.28/2.72  Proof: A critical pair between equations 40 and 0.
% 2.28/2.72  
% 2.28/2.72  68: truth() = implies(implies(not(not(truth())), X3), X3).
% 2.28/2.72  Proof: Rewrite equation 58,
% 2.28/2.72                 lhs with equations []
% 2.28/2.72                 rhs with equations [4].
% 2.28/2.72  
% 2.28/2.72  69: truth() = implies(X2, X2).
% 2.28/2.72  Proof: Rewrite equation 56,
% 2.28/2.72                 lhs with equations []
% 2.28/2.72                 rhs with equations [0].
% 2.28/2.72  
% 2.28/2.72  70: truth() = implies(X4, truth()).
% 2.28/2.72  Proof: Rewrite equation 54,
% 2.28/2.72                 lhs with equations []
% 2.28/2.72                 rhs with equations [69].
% 2.28/2.72  
% 2.28/2.72  75: xor(X0, X1) = implies(not(not(implies(not(not(X0)), not(not(X1))))), not(implies(not(not(not(X0))), not(X1)))).
% 2.28/2.72  Proof: Rewrite equation 44,
% 2.28/2.72                 lhs with equations []
% 2.28/2.72                 rhs with equations [4,4,4].
% 2.28/2.72  
% 2.28/2.72  81: implies(implies(X3, not(X2)), not(X2)) = implies(implies(not(X3), X2), X3).
% 2.28/2.72  Proof: Rewrite equation 38,
% 2.28/2.72                 lhs with equations []
% 2.28/2.72                 rhs with equations [4].
% 2.28/2.72  
% 2.28/2.72  83: implies(not(X0), X1) = implies(not(X1), X0).
% 2.28/2.72  Proof: Rewrite equation 53,
% 2.28/2.72                 lhs with equations [4]
% 2.28/2.72                 rhs with equations [4].
% 2.28/2.72  
% 2.28/2.72  89: truth() = implies(truth(), not(not(truth()))).
% 2.28/2.72  Proof: A critical pair between equations 68 and 69.
% 2.28/2.72  
% 2.28/2.72  99: implies(implies(X3, not(truth())), not(truth())) = implies(truth(), X3).
% 2.28/2.72  Proof: A critical pair between equations 81 and 70.
% 2.28/2.72  
% 2.28/2.72  100: implies(implies(X3, not(truth())), not(truth())) = X3.
% 2.28/2.72  Proof: Rewrite equation 99,
% 2.28/2.72                 lhs with equations []
% 2.28/2.72                 rhs with equations [0].
% 2.28/2.72  
% 2.28/2.72  108: truth() = not(not(truth())).
% 2.28/2.72  Proof: Rewrite equation 89,
% 2.28/2.72                 lhs with equations []
% 2.28/2.72                 rhs with equations [0].
% 2.28/2.72  
% 2.28/2.72  115: xor(X0, X1) = or(not(or(not(X0), not(not(X1)))), not(or(not(not(X0)), not(X1)))).
% 2.28/2.72  Proof: Rewrite equation 75,
% 2.28/2.72                 lhs with equations []
% 2.28/2.72                 rhs with equations [4,4,4].
% 2.28/2.72  
% 2.28/2.72  124: or(X0, X1) = or(X1, X0).
% 2.28/2.72  Proof: Rewrite equation 83,
% 2.28/2.72                 lhs with equations [4]
% 2.28/2.72                 rhs with equations [4].
% 2.28/2.72  
% 2.28/2.72  143: xor(X0, X1) = implies(not(not(implies(not(not(X0)), not(not(X1))))), not(implies(not(not(not(X0))), not(X1)))).
% 2.28/2.72  Proof: Rewrite equation 115,
% 2.28/2.72                 lhs with equations []
% 2.28/2.72                 rhs with equations [4,4,4].
% 2.28/2.72  
% 2.28/2.72  153: implies(not(X0), X1) = implies(not(X1), X0).
% 2.28/2.72  Proof: Rewrite equation 124,
% 2.28/2.72                 lhs with equations [4]
% 2.28/2.72                 rhs with equations [4].
% 2.28/2.72  
% 2.28/2.72  158: implies(not(X0), not(truth())) = implies(truth(), X0).
% 2.28/2.72  Proof: A critical pair between equations 153 and 108.
% 2.28/2.72  
% 2.28/2.72  165: not(X4) = implies(implies(not(not(truth())), X4), not(truth())).
% 2.28/2.72  Proof: A critical pair between equations 100 and 153.
% 2.28/2.72  
% 2.28/2.72  173: not(X4) = implies(X4, not(truth())).
% 2.28/2.72  Proof: Rewrite equation 165,
% 2.28/2.72                 lhs with equations []
% 2.28/2.72                 rhs with equations [108,0].
% 2.28/2.72  
% 2.28/2.72  179: or(X0, not(truth())) = X0.
% 2.28/2.72  Proof: Rewrite equation 158,
% 2.28/2.72                 lhs with equations [4]
% 2.28/2.72                 rhs with equations [0].
% 2.28/2.72  
% 2.28/2.72  189: xor(X0, X1) = or(not(or(not(X0), not(not(X1)))), not(or(not(not(X0)), not(X1)))).
% 2.28/2.72  Proof: Rewrite equation 143,
% 2.28/2.72                 lhs with equations []
% 2.28/2.72                 rhs with equations [4,4,4].
% 2.28/2.72  
% 2.28/2.72  219: xor(X0, X1) = implies(not(not(implies(not(not(X0)), not(not(X1))))), not(implies(not(not(not(X0))), not(X1)))).
% 2.28/2.72  Proof: Rewrite equation 189,
% 2.28/2.72                 lhs with equations []
% 2.28/2.72                 rhs with equations [4,4,4].
% 2.28/2.72  
% 2.28/2.72  227: not(not(X0)) = X0.
% 2.28/2.72  Proof: Rewrite equation 179,
% 2.28/2.72                 lhs with equations [4,173]
% 2.28/2.72                 rhs with equations [].
% 2.28/2.72  
% 2.28/2.72  234: not(x()) = xor(x(), truth()).
% 2.28/2.72  Proof: Rewrite lhs with equations []
% 2.28/2.72                 rhs with equations [219,227,227,70,227,227,173,227,0].
% 2.28/2.72  
% 2.28/2.72  % SZS output end Proof
%------------------------------------------------------------------------------