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

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Twee---2.4.2
% Problem  : NUM586+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 : n024.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:07 EDT 2023

% Result   : Theorem 6.10s 1.15s
% Output   : Proof 6.40s
% Verified : 
% SZS Type : -

% Comments : 
%------------------------------------------------------------------------------
%----WARNING: Could not form TPTP format derivation
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.07/0.12  % Problem  : NUM586+3 : TPTP v8.1.2. Released v4.0.0.
% 0.13/0.13  % Command  : parallel-twee %s --tstp --conditional-encoding if --smaller --drop-non-horn --give-up-on-saturation --explain-encoding --formal-proof
% 0.14/0.34  % Computer : n024.cluster.edu
% 0.14/0.34  % Model    : x86_64 x86_64
% 0.14/0.34  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.14/0.34  % Memory   : 8042.1875MB
% 0.14/0.34  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.14/0.34  % CPULimit : 300
% 0.14/0.34  % WCLimit  : 300
% 0.14/0.34  % DateTime : Fri Aug 25 15:24:39 EDT 2023
% 0.14/0.34  % CPUTime  : 
% 6.10/1.15  Command-line arguments: --lhs-weight 9 --flip-ordering --complete-subsets --normalise-queue-percent 10 --cp-renormalise-threshold 10
% 6.10/1.15  
% 6.10/1.15  % SZS status Theorem
% 6.10/1.15  
% 6.10/1.15  % SZS output start Proof
% 6.10/1.15  Take the following subset of the input axioms:
% 6.40/1.19    fof(mCountNFin, axiom, ![W0]: ((aSet0(W0) & isCountable0(W0)) => ~isFinite0(W0))).
% 6.40/1.19    fof(mCountNFin_01, axiom, ![W0_2]: ((aSet0(W0_2) & isCountable0(W0_2)) => W0_2!=slcrc0)).
% 6.40/1.19    fof(mDefDiff, definition, ![W1, W0_2]: ((aSet0(W0_2) & aElement0(W1)) => ![W2]: (W2=sdtmndt0(W0_2, W1) <=> (aSet0(W2) & ![W3]: (aElementOf0(W3, W2) <=> (aElement0(W3) & (aElementOf0(W3, W0_2) & W3!=W1))))))).
% 6.40/1.19    fof(mDefEmp, definition, ![W0_2]: (W0_2=slcrc0 <=> (aSet0(W0_2) & ~?[W1_2]: aElementOf0(W1_2, W0_2)))).
% 6.40/1.19    fof(mNatNSucc, axiom, ![W0_2]: (aElementOf0(W0_2, szNzAzT0) => W0_2!=szszuzczcdt0(W0_2))).
% 6.40/1.19    fof(mNoScLessZr, axiom, ![W0_2]: (aElementOf0(W0_2, szNzAzT0) => ~sdtlseqdt0(szszuzczcdt0(W0_2), sz00))).
% 6.40/1.19    fof(mSuccNum, axiom, ![W0_2]: (aElementOf0(W0_2, szNzAzT0) => (aElementOf0(szszuzczcdt0(W0_2), szNzAzT0) & szszuzczcdt0(W0_2)!=sz00))).
% 6.40/1.19    fof(m__, conjecture, ?[W0_2]: (((aElementOf0(szmzizndt0(sdtlpdtrp0(xN, xi)), sdtlpdtrp0(xN, xi)) & ![W1_2]: (aElementOf0(W1_2, sdtlpdtrp0(xN, xi)) => sdtlseqdt0(szmzizndt0(sdtlpdtrp0(xN, xi)), W1_2))) => ((aSet0(sdtmndt0(sdtlpdtrp0(xN, xi), szmzizndt0(sdtlpdtrp0(xN, xi)))) & ![W1_2]: (aElementOf0(W1_2, sdtmndt0(sdtlpdtrp0(xN, xi), szmzizndt0(sdtlpdtrp0(xN, xi)))) <=> (aElement0(W1_2) & (aElementOf0(W1_2, sdtlpdtrp0(xN, xi)) & W1_2!=szmzizndt0(sdtlpdtrp0(xN, xi)))))) => ((((aSet0(W0_2) & ![W1_2]: (aElementOf0(W1_2, W0_2) => aElementOf0(W1_2, sdtmndt0(sdtlpdtrp0(xN, xi), szmzizndt0(sdtlpdtrp0(xN, xi)))))) | aSubsetOf0(W0_2, sdtmndt0(sdtlpdtrp0(xN, xi), szmzizndt0(sdtlpdtrp0(xN, xi))))) & sbrdtbr0(W0_2)=xk) | aElementOf0(W0_2, slbdtsldtrb0(sdtmndt0(sdtlpdtrp0(xN, xi), szmzizndt0(sdtlpdtrp0(xN, xi))), xk))))) & sdtlpdtrp0(sdtlpdtrp0(xC, xi), W0_2)=xx)).
% 6.40/1.19    fof(m__3398, hypothesis, ![W0_2]: (aElementOf0(W0_2, szNzAzT0) => ![W1_2]: ((((aSet0(W1_2) & ![W2_2]: (aElementOf0(W2_2, W1_2) => aElementOf0(W2_2, szNzAzT0))) | aSubsetOf0(W1_2, szNzAzT0)) & isCountable0(W1_2)) => ![W2_2]: ((aFunction0(W2_2) & ((![W3_2]: ((aElementOf0(W3_2, szDzozmdt0(W2_2)) => (((aSet0(W3_2) & ![W4]: (aElementOf0(W4, W3_2) => aElementOf0(W4, W1_2))) | aSubsetOf0(W3_2, W1_2)) & sbrdtbr0(W3_2)=W0_2)) & ((aSet0(W3_2) & (![W4_2]: (aElementOf0(W4_2, W3_2) => aElementOf0(W4_2, W1_2)) & (aSubsetOf0(W3_2, W1_2) & sbrdtbr0(W3_2)=W0_2))) => aElementOf0(W3_2, szDzozmdt0(W2_2)))) | szDzozmdt0(W2_2)=slbdtsldtrb0(W1_2, W0_2)) & ((aSet0(sdtlcdtrc0(W2_2, szDzozmdt0(W2_2))) & ![W3_2]: (aElementOf0(W3_2, sdtlcdtrc0(W2_2, szDzozmdt0(W2_2))) <=> ?[W4_2]: (aElementOf0(W4_2, szDzozmdt0(W2_2)) & sdtlpdtrp0(W2_2, W4_2)=W3_2))) => (![W3_2]: (aElementOf0(W3_2, sdtlcdtrc0(W2_2, szDzozmdt0(W2_2))) => aElementOf0(W3_2, xT)) | aSubsetOf0(sdtlcdtrc0(W2_2, szDzozmdt0(W2_2)), xT))))) => (iLess0(W0_2, xK) => ?[W3_2]: (aElementOf0(W3_2, xT) & ?[W4_2]: (aSet0(W4_2) & (![W5]: (aElementOf0(W5, W4_2) => aElementOf0(W5, W1_2)) & (aSubsetOf0(W4_2, W1_2) & (isCountable0(W4_2) & ![W5_2]: (((((aSet0(W5_2) & ![W6]: (aElementOf0(W6, W5_2) => aElementOf0(W6, W4_2))) | aSubsetOf0(W5_2, W4_2)) & sbrdtbr0(W5_2)=W0_2) | aElementOf0(W5_2, slbdtsldtrb0(W4_2, W0_2))) => sdtlpdtrp0(W2_2, W5_2)=W3_2))))))))))).
% 6.40/1.19    fof(m__3623, hypothesis, aFunction0(xN) & (szDzozmdt0(xN)=szNzAzT0 & (sdtlpdtrp0(xN, sz00)=xS & ![W0_2]: (aElementOf0(W0_2, szNzAzT0) => ((((aSet0(sdtlpdtrp0(xN, W0_2)) & ![W1_2]: (aElementOf0(W1_2, sdtlpdtrp0(xN, W0_2)) => aElementOf0(W1_2, szNzAzT0))) | aSubsetOf0(sdtlpdtrp0(xN, W0_2), szNzAzT0)) & isCountable0(sdtlpdtrp0(xN, W0_2))) => (aElementOf0(szmzizndt0(sdtlpdtrp0(xN, W0_2)), sdtlpdtrp0(xN, W0_2)) & (![W1_2]: (aElementOf0(W1_2, sdtlpdtrp0(xN, W0_2)) => sdtlseqdt0(szmzizndt0(sdtlpdtrp0(xN, W0_2)), W1_2)) & (aSet0(sdtmndt0(sdtlpdtrp0(xN, W0_2), szmzizndt0(sdtlpdtrp0(xN, W0_2)))) & (![W1_2]: (aElementOf0(W1_2, sdtmndt0(sdtlpdtrp0(xN, W0_2), szmzizndt0(sdtlpdtrp0(xN, W0_2)))) <=> (aElement0(W1_2) & (aElementOf0(W1_2, sdtlpdtrp0(xN, W0_2)) & W1_2!=szmzizndt0(sdtlpdtrp0(xN, W0_2))))) & (aSet0(sdtlpdtrp0(xN, szszuzczcdt0(W0_2))) & (![W1_2]: (aElementOf0(W1_2, sdtlpdtrp0(xN, szszuzczcdt0(W0_2))) => aElementOf0(W1_2, sdtmndt0(sdtlpdtrp0(xN, W0_2), szmzizndt0(sdtlpdtrp0(xN, W0_2))))) & (aSubsetOf0(sdtlpdtrp0(xN, szszuzczcdt0(W0_2)), sdtmndt0(sdtlpdtrp0(xN, W0_2), szmzizndt0(sdtlpdtrp0(xN, W0_2)))) & isCountable0(sdtlpdtrp0(xN, szszuzczcdt0(W0_2))))))))))))))).
% 6.40/1.19    fof(m__3965, hypothesis, ![W0_2]: (aElementOf0(W0_2, szNzAzT0) => ![W1_2]: ((aSet0(W1_2) & ((aElementOf0(szmzizndt0(sdtlpdtrp0(xN, W0_2)), sdtlpdtrp0(xN, W0_2)) & ![W2_2]: (aElementOf0(W2_2, sdtlpdtrp0(xN, W0_2)) => sdtlseqdt0(szmzizndt0(sdtlpdtrp0(xN, W0_2)), W2_2))) => ((aSet0(sdtmndt0(sdtlpdtrp0(xN, W0_2), szmzizndt0(sdtlpdtrp0(xN, W0_2)))) & ![W2_2]: (aElementOf0(W2_2, sdtmndt0(sdtlpdtrp0(xN, W0_2), szmzizndt0(sdtlpdtrp0(xN, W0_2)))) <=> (aElement0(W2_2) & (aElementOf0(W2_2, sdtlpdtrp0(xN, W0_2)) & W2_2!=szmzizndt0(sdtlpdtrp0(xN, W0_2)))))) => (((![W2_2]: (aElementOf0(W2_2, W1_2) => aElementOf0(W2_2, sdtmndt0(sdtlpdtrp0(xN, W0_2), szmzizndt0(sdtlpdtrp0(xN, W0_2))))) | aSubsetOf0(W1_2, sdtmndt0(sdtlpdtrp0(xN, W0_2), szmzizndt0(sdtlpdtrp0(xN, W0_2))))) & sbrdtbr0(W1_2)=xk) | aElementOf0(W1_2, slbdtsldtrb0(sdtmndt0(sdtlpdtrp0(xN, W0_2), szmzizndt0(sdtlpdtrp0(xN, W0_2))), xk)))))) => (aElementOf0(szmzizndt0(sdtlpdtrp0(xN, W0_2)), sdtlpdtrp0(xN, W0_2)) & (![W2_2]: (aElementOf0(W2_2, sdtlpdtrp0(xN, W0_2)) => sdtlseqdt0(szmzizndt0(sdtlpdtrp0(xN, W0_2)), W2_2)) & (aSet0(sdtpldt0(W1_2, szmzizndt0(sdtlpdtrp0(xN, W0_2)))) & (![W2_2]: (aElementOf0(W2_2, sdtpldt0(W1_2, szmzizndt0(sdtlpdtrp0(xN, W0_2)))) <=> (aElement0(W2_2) & (aElementOf0(W2_2, W1_2) | W2_2=szmzizndt0(sdtlpdtrp0(xN, W0_2))))) & (![W2_2]: (aElementOf0(W2_2, sdtpldt0(W1_2, szmzizndt0(sdtlpdtrp0(xN, W0_2)))) => aElementOf0(W2_2, xS)) & (aSubsetOf0(sdtpldt0(W1_2, szmzizndt0(sdtlpdtrp0(xN, W0_2))), xS) & (sbrdtbr0(sdtpldt0(W1_2, szmzizndt0(sdtlpdtrp0(xN, W0_2))))=xK & aElementOf0(sdtpldt0(W1_2, szmzizndt0(sdtlpdtrp0(xN, W0_2))), slbdtsldtrb0(xS, xK)))))))))))).
% 6.40/1.19    fof(m__4151, hypothesis, aFunction0(xC) & (szDzozmdt0(xC)=szNzAzT0 & ![W0_2]: (aElementOf0(W0_2, szNzAzT0) => (aFunction0(sdtlpdtrp0(xC, W0_2)) & (aElementOf0(szmzizndt0(sdtlpdtrp0(xN, W0_2)), sdtlpdtrp0(xN, W0_2)) & (![W1_2]: (aElementOf0(W1_2, sdtlpdtrp0(xN, W0_2)) => sdtlseqdt0(szmzizndt0(sdtlpdtrp0(xN, W0_2)), W1_2)) & (aSet0(sdtmndt0(sdtlpdtrp0(xN, W0_2), szmzizndt0(sdtlpdtrp0(xN, W0_2)))) & (![W1_2]: (aElementOf0(W1_2, sdtmndt0(sdtlpdtrp0(xN, W0_2), szmzizndt0(sdtlpdtrp0(xN, W0_2)))) <=> (aElement0(W1_2) & (aElementOf0(W1_2, sdtlpdtrp0(xN, W0_2)) & W1_2!=szmzizndt0(sdtlpdtrp0(xN, W0_2))))) & (![W1_2]: ((aElementOf0(W1_2, szDzozmdt0(sdtlpdtrp0(xC, W0_2))) => (aSet0(W1_2) & (![W2_2]: (aElementOf0(W2_2, W1_2) => aElementOf0(W2_2, sdtmndt0(sdtlpdtrp0(xN, W0_2), szmzizndt0(sdtlpdtrp0(xN, W0_2))))) & (aSubsetOf0(W1_2, sdtmndt0(sdtlpdtrp0(xN, W0_2), szmzizndt0(sdtlpdtrp0(xN, W0_2)))) & sbrdtbr0(W1_2)=xk)))) & ((((aSet0(W1_2) & ![W2_2]: (aElementOf0(W2_2, W1_2) => aElementOf0(W2_2, sdtmndt0(sdtlpdtrp0(xN, W0_2), szmzizndt0(sdtlpdtrp0(xN, W0_2)))))) | aSubsetOf0(W1_2, sdtmndt0(sdtlpdtrp0(xN, W0_2), szmzizndt0(sdtlpdtrp0(xN, W0_2))))) & sbrdtbr0(W1_2)=xk) => aElementOf0(W1_2, szDzozmdt0(sdtlpdtrp0(xC, W0_2))))) & (szDzozmdt0(sdtlpdtrp0(xC, W0_2))=slbdtsldtrb0(sdtmndt0(sdtlpdtrp0(xN, W0_2), szmzizndt0(sdtlpdtrp0(xN, W0_2))), xk) & ![W1_2]: ((aSet0(W1_2) & ((aElementOf0(szmzizndt0(sdtlpdtrp0(xN, W0_2)), sdtlpdtrp0(xN, W0_2)) & ![W2_2]: (aElementOf0(W2_2, sdtlpdtrp0(xN, W0_2)) => sdtlseqdt0(szmzizndt0(sdtlpdtrp0(xN, W0_2)), W2_2))) => ((aSet0(sdtmndt0(sdtlpdtrp0(xN, W0_2), szmzizndt0(sdtlpdtrp0(xN, W0_2)))) & ![W2_2]: (aElementOf0(W2_2, sdtmndt0(sdtlpdtrp0(xN, W0_2), szmzizndt0(sdtlpdtrp0(xN, W0_2)))) <=> (aElement0(W2_2) & (aElementOf0(W2_2, sdtlpdtrp0(xN, W0_2)) & W2_2!=szmzizndt0(sdtlpdtrp0(xN, W0_2)))))) => (((![W2_2]: (aElementOf0(W2_2, W1_2) => aElementOf0(W2_2, sdtmndt0(sdtlpdtrp0(xN, W0_2), szmzizndt0(sdtlpdtrp0(xN, W0_2))))) | aSubsetOf0(W1_2, sdtmndt0(sdtlpdtrp0(xN, W0_2), szmzizndt0(sdtlpdtrp0(xN, W0_2))))) & sbrdtbr0(W1_2)=xk) | aElementOf0(W1_2, slbdtsldtrb0(sdtmndt0(sdtlpdtrp0(xN, W0_2), szmzizndt0(sdtlpdtrp0(xN, W0_2))), xk)))))) => (aElementOf0(szmzizndt0(sdtlpdtrp0(xN, W0_2)), sdtlpdtrp0(xN, W0_2)) & (![W2_2]: (aElementOf0(W2_2, sdtlpdtrp0(xN, W0_2)) => sdtlseqdt0(szmzizndt0(sdtlpdtrp0(xN, W0_2)), W2_2)) & (![W2_2]: (aElementOf0(W2_2, sdtpldt0(W1_2, szmzizndt0(sdtlpdtrp0(xN, W0_2)))) <=> (aElement0(W2_2) & (aElementOf0(W2_2, W1_2) | W2_2=szmzizndt0(sdtlpdtrp0(xN, W0_2))))) & sdtlpdtrp0(sdtlpdtrp0(xC, W0_2), W1_2)=sdtlpdtrp0(xc, sdtpldt0(W1_2, szmzizndt0(sdtlpdtrp0(xN, W0_2)))))))))))))))))).
% 6.40/1.19    fof(m__4200, hypothesis, aElementOf0(xi, szNzAzT0)).
% 6.40/1.19    fof(m__4200_02, hypothesis, ?[W0_2]: (aElementOf0(W0_2, szDzozmdt0(sdtlpdtrp0(xC, xi))) & sdtlpdtrp0(sdtlpdtrp0(xC, xi), W0_2)=xx) & aElementOf0(xx, sdtlcdtrc0(sdtlpdtrp0(xC, xi), szDzozmdt0(sdtlpdtrp0(xC, xi))))).
% 6.40/1.19  
% 6.40/1.19  Now clausify the problem and encode Horn clauses using encoding 3 of
% 6.40/1.19  http://www.cse.chalmers.se/~nicsma/papers/horn.pdf.
% 6.40/1.19  We repeatedly replace C & s=t => u=v by the two clauses:
% 6.40/1.19    fresh(y, y, x1...xn) = u
% 6.40/1.19    C => fresh(s, t, x1...xn) = v
% 6.40/1.19  where fresh is a fresh function symbol and x1..xn are the free
% 6.40/1.19  variables of u and v.
% 6.40/1.19  A predicate p(X) is encoded as p(X)=true (this is sound, because the
% 6.40/1.19  input problem has no model of domain size 1).
% 6.40/1.19  
% 6.40/1.19  The encoding turns the above axioms into the following unit equations and goals:
% 6.40/1.19  
% 6.40/1.19  Axiom 1 (m__4200): aElementOf0(xi, szNzAzT0) = true2.
% 6.40/1.19  Axiom 2 (m__4151_19): fresh44(X, X, Y) = szDzozmdt0(sdtlpdtrp0(xC, Y)).
% 6.40/1.19  Axiom 3 (m__4200_02): sdtlpdtrp0(sdtlpdtrp0(xC, xi), w0) = xx.
% 6.40/1.19  Axiom 4 (m__4151_9): fresh199(X, X, Y, Z) = aElementOf0(Z, szDzozmdt0(sdtlpdtrp0(xC, Y))).
% 6.40/1.19  Axiom 5 (m__4200_02_2): aElementOf0(w0, szDzozmdt0(sdtlpdtrp0(xC, xi))) = true2.
% 6.40/1.19  Axiom 6 (m__4151_19): fresh44(aElementOf0(X, szNzAzT0), true2, X) = slbdtsldtrb0(sdtmndt0(sdtlpdtrp0(xN, X), szmzizndt0(sdtlpdtrp0(xN, X))), xk).
% 6.40/1.19  
% 6.40/1.19  Goal 1 (m___7): tuple4(sdtlpdtrp0(sdtlpdtrp0(xC, xi), X), aElementOf0(X, slbdtsldtrb0(sdtmndt0(sdtlpdtrp0(xN, xi), szmzizndt0(sdtlpdtrp0(xN, xi))), xk))) = tuple4(xx, true2).
% 6.40/1.19  The goal is true when:
% 6.40/1.19    X = w0
% 6.40/1.19  
% 6.40/1.19  Proof:
% 6.40/1.19    tuple4(sdtlpdtrp0(sdtlpdtrp0(xC, xi), w0), aElementOf0(w0, slbdtsldtrb0(sdtmndt0(sdtlpdtrp0(xN, xi), szmzizndt0(sdtlpdtrp0(xN, xi))), xk)))
% 6.40/1.19  = { by axiom 6 (m__4151_19) R->L }
% 6.40/1.19    tuple4(sdtlpdtrp0(sdtlpdtrp0(xC, xi), w0), aElementOf0(w0, fresh44(aElementOf0(xi, szNzAzT0), true2, xi)))
% 6.40/1.19  = { by axiom 1 (m__4200) }
% 6.40/1.19    tuple4(sdtlpdtrp0(sdtlpdtrp0(xC, xi), w0), aElementOf0(w0, fresh44(true2, true2, xi)))
% 6.40/1.19  = { by axiom 2 (m__4151_19) }
% 6.40/1.19    tuple4(sdtlpdtrp0(sdtlpdtrp0(xC, xi), w0), aElementOf0(w0, szDzozmdt0(sdtlpdtrp0(xC, xi))))
% 6.40/1.19  = { by axiom 4 (m__4151_9) R->L }
% 6.40/1.19    tuple4(sdtlpdtrp0(sdtlpdtrp0(xC, xi), w0), fresh199(X, X, xi, w0))
% 6.40/1.19  = { by axiom 3 (m__4200_02) }
% 6.40/1.19    tuple4(xx, fresh199(X, X, xi, w0))
% 6.40/1.19  = { by axiom 4 (m__4151_9) }
% 6.40/1.19    tuple4(xx, aElementOf0(w0, szDzozmdt0(sdtlpdtrp0(xC, xi))))
% 6.40/1.19  = { by axiom 5 (m__4200_02_2) }
% 6.40/1.19    tuple4(xx, true2)
% 6.40/1.19  % SZS output end Proof
% 6.40/1.19  
% 6.40/1.19  RESULT: Theorem (the conjecture is true).
%------------------------------------------------------------------------------