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

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Twee---2.4.2
% Problem  : NUM595+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 : n011.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:10 EDT 2023

% Result   : Theorem 44.24s 6.09s
% Output   : Proof 44.24s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.12/0.12  % Problem  : NUM595+3 : TPTP v8.1.2. Released v4.0.0.
% 0.12/0.13  % Command  : parallel-twee %s --tstp --conditional-encoding if --smaller --drop-non-horn --give-up-on-saturation --explain-encoding --formal-proof
% 0.12/0.34  % Computer : n011.cluster.edu
% 0.12/0.34  % Model    : x86_64 x86_64
% 0.12/0.34  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.12/0.34  % Memory   : 8042.1875MB
% 0.12/0.34  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.12/0.34  % CPULimit : 300
% 0.12/0.34  % WCLimit  : 300
% 0.12/0.34  % DateTime : Fri Aug 25 15:27:23 EDT 2023
% 0.12/0.34  % CPUTime  : 
% 44.24/6.09  Command-line arguments: --lhs-weight 9 --flip-ordering --complete-subsets --normalise-queue-percent 10 --cp-renormalise-threshold 10
% 44.24/6.09  
% 44.24/6.09  % SZS status Theorem
% 44.24/6.09  
% 44.24/6.10  % SZS output start Proof
% 44.24/6.10  Take the following subset of the input axioms:
% 44.24/6.10    fof(m__, conjecture, aElementOf0(xx, xT)).
% 44.24/6.10    fof(m__4618, hypothesis, ![W0]: (aElementOf0(W0, szNzAzT0) => ?[W1]: (aElementOf0(W1, xT) & ![W2]: ((aSet0(W2) & (((![W3]: (aElementOf0(W3, W2) => aElementOf0(W3, sdtlpdtrp0(xN, szszuzczcdt0(W0)))) | aSubsetOf0(W2, sdtlpdtrp0(xN, szszuzczcdt0(W0)))) & sbrdtbr0(W2)=xk) | aElementOf0(W2, slbdtsldtrb0(sdtlpdtrp0(xN, szszuzczcdt0(W0)), xk)))) => sdtlpdtrp0(sdtlpdtrp0(xC, W0), W2)=W1)))).
% 44.24/6.10    fof(m__4730, hypothesis, aFunction0(xd) & (szDzozmdt0(xd)=szNzAzT0 & ![W0_2]: (aElementOf0(W0_2, szNzAzT0) => ![W1_2]: ((aSet0(W1_2) & (((![W2_2]: (aElementOf0(W2_2, W1_2) => aElementOf0(W2_2, sdtlpdtrp0(xN, szszuzczcdt0(W0_2)))) | aSubsetOf0(W1_2, sdtlpdtrp0(xN, szszuzczcdt0(W0_2)))) & sbrdtbr0(W1_2)=xk) | aElementOf0(W1_2, slbdtsldtrb0(sdtlpdtrp0(xN, szszuzczcdt0(W0_2)), xk)))) => sdtlpdtrp0(xd, W0_2)=sdtlpdtrp0(sdtlpdtrp0(xC, W0_2), W1_2))))).
% 44.24/6.10    fof(m__4806, hypothesis, aElementOf0(xi, szNzAzT0) & sdtlpdtrp0(xd, xi)=xx).
% 44.24/6.10    fof(m__4826, hypothesis, aSet0(xX) & (![W0_2]: ((aElementOf0(W0_2, xX) => (aSet0(W0_2) & (![W1_2]: (aElementOf0(W1_2, W0_2) => aElementOf0(W1_2, sdtlpdtrp0(xN, szszuzczcdt0(xi)))) & (aSubsetOf0(W0_2, sdtlpdtrp0(xN, szszuzczcdt0(xi))) & sbrdtbr0(W0_2)=xk)))) & ((((aSet0(W0_2) & ![W1_2]: (aElementOf0(W1_2, W0_2) => aElementOf0(W1_2, sdtlpdtrp0(xN, szszuzczcdt0(xi))))) | aSubsetOf0(W0_2, sdtlpdtrp0(xN, szszuzczcdt0(xi)))) & sbrdtbr0(W0_2)=xk) => aElementOf0(W0_2, xX))) & (xX=slbdtsldtrb0(sdtlpdtrp0(xN, szszuzczcdt0(xi)), xk) & ~~?[W0_2]: aElementOf0(W0_2, xX)))).
% 44.24/6.10  
% 44.24/6.10  Now clausify the problem and encode Horn clauses using encoding 3 of
% 44.24/6.10  http://www.cse.chalmers.se/~nicsma/papers/horn.pdf.
% 44.24/6.10  We repeatedly replace C & s=t => u=v by the two clauses:
% 44.24/6.10    fresh(y, y, x1...xn) = u
% 44.24/6.10    C => fresh(s, t, x1...xn) = v
% 44.24/6.10  where fresh is a fresh function symbol and x1..xn are the free
% 44.24/6.10  variables of u and v.
% 44.24/6.10  A predicate p(X) is encoded as p(X)=true (this is sound, because the
% 44.24/6.10  input problem has no model of domain size 1).
% 44.24/6.10  
% 44.24/6.10  The encoding turns the above axioms into the following unit equations and goals:
% 44.24/6.10  
% 44.24/6.10  Axiom 1 (m__4806_1): aElementOf0(xi, szNzAzT0) = true2.
% 44.24/6.10  Axiom 2 (m__4826_2): aElementOf0(w0, xX) = true2.
% 44.24/6.10  Axiom 3 (m__4806): sdtlpdtrp0(xd, xi) = xx.
% 44.24/6.10  Axiom 4 (m__4618_4): fresh29(X, X, Y) = true2.
% 44.24/6.10  Axiom 5 (m__4826_6): fresh17(X, X, Y) = xk.
% 44.24/6.10  Axiom 6 (m__4826_7): fresh16(X, X, Y) = true2.
% 44.24/6.10  Axiom 7 (m__4826_8): fresh15(X, X, Y) = true2.
% 44.24/6.10  Axiom 8 (m__4618_2): fresh264(X, X, Y, Z) = w1_3(Y).
% 44.24/6.10  Axiom 9 (m__4618_2): fresh262(X, X, Y, Z) = sdtlpdtrp0(sdtlpdtrp0(xC, Y), Z).
% 44.24/6.10  Axiom 10 (m__4730_4): fresh254(X, X, Y, Z) = sdtlpdtrp0(xd, Y).
% 44.24/6.10  Axiom 11 (m__4730_4): fresh252(X, X, Y, Z) = sdtlpdtrp0(sdtlpdtrp0(xC, Y), Z).
% 44.24/6.10  Axiom 12 (m__4618_2): fresh263(X, X, Y, Z) = fresh264(sbrdtbr0(Z), xk, Y, Z).
% 44.24/6.10  Axiom 13 (m__4618_2): fresh261(X, X, Y, Z) = fresh262(aSet0(Z), true2, Y, Z).
% 44.24/6.10  Axiom 14 (m__4730_4): fresh253(X, X, Y, Z) = fresh254(sbrdtbr0(Z), xk, Y, Z).
% 44.24/6.10  Axiom 15 (m__4730_4): fresh251(X, X, Y, Z) = fresh252(aSet0(Z), true2, Y, Z).
% 44.24/6.10  Axiom 16 (m__4618_4): fresh29(aElementOf0(X, szNzAzT0), true2, X) = aElementOf0(w1_3(X), xT).
% 44.24/6.10  Axiom 17 (m__4826_6): fresh17(aElementOf0(X, xX), true2, X) = sbrdtbr0(X).
% 44.24/6.10  Axiom 18 (m__4826_7): fresh16(aElementOf0(X, xX), true2, X) = aSet0(X).
% 44.24/6.10  Axiom 19 (m__4826_8): fresh15(aElementOf0(X, xX), true2, X) = aSubsetOf0(X, sdtlpdtrp0(xN, szszuzczcdt0(xi))).
% 44.24/6.10  Axiom 20 (m__4618_2): fresh261(aSubsetOf0(X, sdtlpdtrp0(xN, szszuzczcdt0(Y))), true2, Y, X) = fresh263(aElementOf0(Y, szNzAzT0), true2, Y, X).
% 44.24/6.10  Axiom 21 (m__4730_4): fresh251(aSubsetOf0(X, sdtlpdtrp0(xN, szszuzczcdt0(Y))), true2, Y, X) = fresh253(aElementOf0(Y, szNzAzT0), true2, Y, X).
% 44.24/6.10  
% 44.24/6.10  Lemma 22: aSet0(w0) = true2.
% 44.24/6.10  Proof:
% 44.24/6.10    aSet0(w0)
% 44.24/6.10  = { by axiom 18 (m__4826_7) R->L }
% 44.24/6.10    fresh16(aElementOf0(w0, xX), true2, w0)
% 44.24/6.10  = { by axiom 2 (m__4826_2) }
% 44.24/6.10    fresh16(true2, true2, w0)
% 44.24/6.10  = { by axiom 6 (m__4826_7) }
% 44.24/6.10    true2
% 44.24/6.10  
% 44.24/6.10  Lemma 23: sbrdtbr0(w0) = xk.
% 44.24/6.10  Proof:
% 44.24/6.10    sbrdtbr0(w0)
% 44.24/6.10  = { by axiom 17 (m__4826_6) R->L }
% 44.24/6.10    fresh17(aElementOf0(w0, xX), true2, w0)
% 44.24/6.10  = { by axiom 2 (m__4826_2) }
% 44.24/6.10    fresh17(true2, true2, w0)
% 44.24/6.10  = { by axiom 5 (m__4826_6) }
% 44.24/6.10    xk
% 44.24/6.10  
% 44.24/6.10  Lemma 24: aSubsetOf0(w0, sdtlpdtrp0(xN, szszuzczcdt0(xi))) = true2.
% 44.24/6.10  Proof:
% 44.24/6.10    aSubsetOf0(w0, sdtlpdtrp0(xN, szszuzczcdt0(xi)))
% 44.24/6.10  = { by axiom 19 (m__4826_8) R->L }
% 44.24/6.10    fresh15(aElementOf0(w0, xX), true2, w0)
% 44.24/6.10  = { by axiom 2 (m__4826_2) }
% 44.24/6.10    fresh15(true2, true2, w0)
% 44.24/6.10  = { by axiom 7 (m__4826_8) }
% 44.24/6.10    true2
% 44.24/6.10  
% 44.24/6.10  Goal 1 (m__): aElementOf0(xx, xT) = true2.
% 44.24/6.10  Proof:
% 44.24/6.10    aElementOf0(xx, xT)
% 44.24/6.10  = { by axiom 3 (m__4806) R->L }
% 44.24/6.10    aElementOf0(sdtlpdtrp0(xd, xi), xT)
% 44.24/6.10  = { by axiom 10 (m__4730_4) R->L }
% 44.24/6.10    aElementOf0(fresh254(xk, xk, xi, w0), xT)
% 44.24/6.10  = { by lemma 23 R->L }
% 44.24/6.10    aElementOf0(fresh254(sbrdtbr0(w0), xk, xi, w0), xT)
% 44.24/6.10  = { by axiom 14 (m__4730_4) R->L }
% 44.24/6.10    aElementOf0(fresh253(true2, true2, xi, w0), xT)
% 44.24/6.10  = { by axiom 1 (m__4806_1) R->L }
% 44.24/6.10    aElementOf0(fresh253(aElementOf0(xi, szNzAzT0), true2, xi, w0), xT)
% 44.24/6.10  = { by axiom 21 (m__4730_4) R->L }
% 44.24/6.10    aElementOf0(fresh251(aSubsetOf0(w0, sdtlpdtrp0(xN, szszuzczcdt0(xi))), true2, xi, w0), xT)
% 44.24/6.10  = { by lemma 24 }
% 44.24/6.10    aElementOf0(fresh251(true2, true2, xi, w0), xT)
% 44.24/6.10  = { by axiom 15 (m__4730_4) }
% 44.24/6.10    aElementOf0(fresh252(aSet0(w0), true2, xi, w0), xT)
% 44.24/6.10  = { by lemma 22 }
% 44.24/6.10    aElementOf0(fresh252(true2, true2, xi, w0), xT)
% 44.24/6.10  = { by axiom 11 (m__4730_4) }
% 44.24/6.10    aElementOf0(sdtlpdtrp0(sdtlpdtrp0(xC, xi), w0), xT)
% 44.24/6.10  = { by axiom 9 (m__4618_2) R->L }
% 44.24/6.10    aElementOf0(fresh262(true2, true2, xi, w0), xT)
% 44.24/6.10  = { by lemma 22 R->L }
% 44.24/6.10    aElementOf0(fresh262(aSet0(w0), true2, xi, w0), xT)
% 44.24/6.10  = { by axiom 13 (m__4618_2) R->L }
% 44.24/6.10    aElementOf0(fresh261(true2, true2, xi, w0), xT)
% 44.24/6.10  = { by lemma 24 R->L }
% 44.24/6.10    aElementOf0(fresh261(aSubsetOf0(w0, sdtlpdtrp0(xN, szszuzczcdt0(xi))), true2, xi, w0), xT)
% 44.24/6.10  = { by axiom 20 (m__4618_2) }
% 44.24/6.10    aElementOf0(fresh263(aElementOf0(xi, szNzAzT0), true2, xi, w0), xT)
% 44.24/6.10  = { by axiom 1 (m__4806_1) }
% 44.24/6.10    aElementOf0(fresh263(true2, true2, xi, w0), xT)
% 44.24/6.10  = { by axiom 12 (m__4618_2) }
% 44.24/6.10    aElementOf0(fresh264(sbrdtbr0(w0), xk, xi, w0), xT)
% 44.24/6.10  = { by lemma 23 }
% 44.24/6.10    aElementOf0(fresh264(xk, xk, xi, w0), xT)
% 44.24/6.10  = { by axiom 8 (m__4618_2) }
% 44.24/6.10    aElementOf0(w1_3(xi), xT)
% 44.24/6.10  = { by axiom 16 (m__4618_4) R->L }
% 44.24/6.10    fresh29(aElementOf0(xi, szNzAzT0), true2, xi)
% 44.24/6.10  = { by axiom 1 (m__4806_1) }
% 44.24/6.10    fresh29(true2, true2, xi)
% 44.24/6.10  = { by axiom 4 (m__4618_4) }
% 44.24/6.10    true2
% 44.24/6.10  % SZS output end Proof
% 44.24/6.10  
% 44.24/6.10  RESULT: Theorem (the conjecture is true).
%------------------------------------------------------------------------------