TSTP Solution File: NUM588+3 by Twee---2.4.2

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Twee---2.4.2
% Problem  : NUM588+3 : TPTP v8.1.2. Released v4.0.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 : n022.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 11:57:08 EDT 2023

% Result   : Theorem 6.63s 1.27s
% Output   : Proof 6.63s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.12  % Problem  : NUM588+3 : TPTP v8.1.2. Released v4.0.0.
% 0.00/0.13  % Command  : parallel-twee %s --tstp --conditional-encoding if --smaller --drop-non-horn --give-up-on-saturation --explain-encoding --formal-proof
% 0.13/0.34  % Computer : n022.cluster.edu
% 0.13/0.34  % Model    : x86_64 x86_64
% 0.13/0.34  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.13/0.34  % Memory   : 8042.1875MB
% 0.13/0.34  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.13/0.34  % CPULimit : 300
% 0.13/0.34  % WCLimit  : 300
% 0.13/0.34  % DateTime : Fri Aug 25 13:47:55 EDT 2023
% 0.13/0.34  % CPUTime  : 
% 6.63/1.27  Command-line arguments: --no-flatten-goal
% 6.63/1.27  
% 6.63/1.27  % SZS status Theorem
% 6.63/1.27  
% 6.63/1.27  % SZS output start Proof
% 6.63/1.27  Take the following subset of the input axioms:
% 6.63/1.28    fof(m__, conjecture, ![W0]: (aElementOf0(W0, szNzAzT0) => ![W1]: ((aElementOf0(szmzizndt0(sdtlpdtrp0(xN, W0)), sdtlpdtrp0(xN, W0)) & (![W2]: (aElementOf0(W2, sdtlpdtrp0(xN, W0)) => sdtlseqdt0(szmzizndt0(sdtlpdtrp0(xN, W0)), W2)) & (aSet0(sdtmndt0(sdtlpdtrp0(xN, W0), szmzizndt0(sdtlpdtrp0(xN, W0)))) & (![W2_2]: (aElementOf0(W2_2, sdtmndt0(sdtlpdtrp0(xN, W0), szmzizndt0(sdtlpdtrp0(xN, W0)))) <=> (aElement0(W2_2) & (aElementOf0(W2_2, sdtlpdtrp0(xN, W0)) & W2_2!=szmzizndt0(sdtlpdtrp0(xN, W0))))) & (aSet0(W1) & (![W2_2]: (aElementOf0(W2_2, W1) => aElementOf0(W2_2, sdtmndt0(sdtlpdtrp0(xN, W0), szmzizndt0(sdtlpdtrp0(xN, W0))))) & (aSubsetOf0(W1, sdtmndt0(sdtlpdtrp0(xN, W0), szmzizndt0(sdtlpdtrp0(xN, W0)))) & isCountable0(W1)))))))) => ![W2_2]: ((aSet0(W2_2) & (![W3]: (aElementOf0(W3, W2_2) => aElementOf0(W3, W1)) & (aSubsetOf0(W2_2, W1) & (sbrdtbr0(W2_2)=xk & aElementOf0(W2_2, slbdtsldtrb0(W1, xk)))))) => ((aElementOf0(szmzizndt0(sdtlpdtrp0(xN, W0)), sdtlpdtrp0(xN, W0)) & ![W3_2]: (aElementOf0(W3_2, sdtlpdtrp0(xN, W0)) => sdtlseqdt0(szmzizndt0(sdtlpdtrp0(xN, W0)), W3_2))) => ((aSet0(sdtmndt0(sdtlpdtrp0(xN, W0), szmzizndt0(sdtlpdtrp0(xN, W0)))) & ![W3_2]: (aElementOf0(W3_2, sdtmndt0(sdtlpdtrp0(xN, W0), szmzizndt0(sdtlpdtrp0(xN, W0)))) <=> (aElement0(W3_2) & (aElementOf0(W3_2, sdtlpdtrp0(xN, W0)) & W3_2!=szmzizndt0(sdtlpdtrp0(xN, W0)))))) => (![W3_2]: (aElementOf0(W3_2, W2_2) => aElementOf0(W3_2, sdtmndt0(sdtlpdtrp0(xN, W0), szmzizndt0(sdtlpdtrp0(xN, W0))))) | (aSubsetOf0(W2_2, sdtmndt0(sdtlpdtrp0(xN, W0), szmzizndt0(sdtlpdtrp0(xN, W0)))) | aElementOf0(W2_2, slbdtsldtrb0(sdtmndt0(sdtlpdtrp0(xN, W0), szmzizndt0(sdtlpdtrp0(xN, W0))), xk)))))))))).
% 6.63/1.28  
% 6.63/1.28  Now clausify the problem and encode Horn clauses using encoding 3 of
% 6.63/1.28  http://www.cse.chalmers.se/~nicsma/papers/horn.pdf.
% 6.63/1.28  We repeatedly replace C & s=t => u=v by the two clauses:
% 6.63/1.28    fresh(y, y, x1...xn) = u
% 6.63/1.28    C => fresh(s, t, x1...xn) = v
% 6.63/1.28  where fresh is a fresh function symbol and x1..xn are the free
% 6.63/1.28  variables of u and v.
% 6.63/1.28  A predicate p(X) is encoded as p(X)=true (this is sound, because the
% 6.63/1.28  input problem has no model of domain size 1).
% 6.63/1.28  
% 6.63/1.28  The encoding turns the above axioms into the following unit equations and goals:
% 6.63/1.28  
% 6.63/1.28  Axiom 1 (m___7): aElementOf0(w3, w2) = true2.
% 6.63/1.28  Axiom 2 (m___18): fresh16(X, X, Y) = true2.
% 6.63/1.28  Axiom 3 (m___19): fresh15(X, X, Y) = true2.
% 6.63/1.28  Axiom 4 (m___19): fresh15(aElementOf0(X, w2), true2, X) = aElementOf0(X, w1).
% 6.63/1.28  Axiom 5 (m___18): fresh16(aElementOf0(X, w1), true2, X) = aElementOf0(X, sdtmndt0(sdtlpdtrp0(xN, w0), szmzizndt0(sdtlpdtrp0(xN, w0)))).
% 6.63/1.28  
% 6.63/1.28  Goal 1 (m___24): aElementOf0(w3, sdtmndt0(sdtlpdtrp0(xN, w0), szmzizndt0(sdtlpdtrp0(xN, w0)))) = true2.
% 6.63/1.28  Proof:
% 6.63/1.28    aElementOf0(w3, sdtmndt0(sdtlpdtrp0(xN, w0), szmzizndt0(sdtlpdtrp0(xN, w0))))
% 6.63/1.28  = { by axiom 5 (m___18) R->L }
% 6.63/1.28    fresh16(aElementOf0(w3, w1), true2, w3)
% 6.63/1.28  = { by axiom 4 (m___19) R->L }
% 6.63/1.28    fresh16(fresh15(aElementOf0(w3, w2), true2, w3), true2, w3)
% 6.63/1.28  = { by axiom 1 (m___7) }
% 6.63/1.28    fresh16(fresh15(true2, true2, w3), true2, w3)
% 6.63/1.28  = { by axiom 3 (m___19) }
% 6.63/1.28    fresh16(true2, true2, w3)
% 6.63/1.28  = { by axiom 2 (m___18) }
% 6.63/1.28    true2
% 6.63/1.28  % SZS output end Proof
% 6.63/1.28  
% 6.63/1.28  RESULT: Theorem (the conjecture is true).
%------------------------------------------------------------------------------