0.08/0.13 % Problem : theBenchmark.p : TPTP v0.0.0. Released v0.0.0. 0.08/0.14 % Command : twee %s --tstp --casc --quiet --explain-encoding --conditional-encoding if --smaller --drop-non-horn 0.15/0.36 % Computer : n021.cluster.edu 0.15/0.36 % Model : x86_64 x86_64 0.15/0.36 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz 0.15/0.36 % Memory : 8042.1875MB 0.15/0.36 % OS : Linux 3.10.0-693.el7.x86_64 0.15/0.36 % CPULimit : 960 0.15/0.36 % WCLimit : 120 0.15/0.36 % DateTime : Thu Jul 2 07:34:22 EDT 2020 0.15/0.36 % CPUTime : 217.38/28.69 % SZS status Theorem 217.38/28.69 217.38/28.69 % SZS output start Proof 217.38/28.69 Take the following subset of the input axioms: 217.61/28.73 fof(mEOfElem, axiom, ![W0]: (![W1]: (aElementOf0(W1, W0) => aElement0(W1)) <= aSet0(W0))). 217.61/28.73 fof(mSortsB, axiom, ![W0, W1]: (aElement0(sdtpldt0(W0, W1)) <= (aElement0(W1) & aElement0(W0)))). 217.61/28.73 fof(mSortsB_02, axiom, ![W0, W1]: ((aElement0(W1) & aElement0(W0)) => aElement0(sdtasdt0(W0, W1)))). 217.61/28.73 fof(m__, conjecture, ?[W0]: (aElement0(W0) & ((aElementOf0(sdtpldt0(W0, smndt0(xx)), xI) | sdteqdtlpzmzozddtrp0(W0, xx, xI)) & (sdteqdtlpzmzozddtrp0(W0, xy, xJ) | aElementOf0(sdtpldt0(W0, smndt0(xy)), xJ))))). 217.61/28.73 fof(m__1205, hypothesis, aSet0(xI) & (![W0]: (aElementOf0(W0, xI) => (![W1]: (aElementOf0(sdtasdt0(W1, W0), xI) <= aElement0(W1)) & ![W1]: (aElementOf0(W1, xI) => aElementOf0(sdtpldt0(W0, W1), xI)))) & (aIdeal0(xI) & (aSet0(xJ) & (aIdeal0(xJ) & ![W0]: ((![W1]: (aElement0(W1) => aElementOf0(sdtasdt0(W1, W0), xJ)) & ![W1]: (aElementOf0(W1, xJ) => aElementOf0(sdtpldt0(W0, W1), xJ))) <= aElementOf0(W0, xJ))))))). 217.61/28.73 fof(m__1217, hypothesis, aElement0(xx) & aElement0(xy)). 217.61/28.73 fof(m__1294, hypothesis, sz10=sdtpldt0(xa, xb) & (aElementOf0(xb, xJ) & aElementOf0(xa, xI))). 217.61/28.73 fof(m__1319, hypothesis, xw=sdtpldt0(sdtasdt0(xy, xa), sdtasdt0(xx, xb))). 217.61/28.73 fof(m__1332, hypothesis, aElementOf0(sdtpldt0(xw, smndt0(xx)), xI)). 217.61/28.73 fof(m__1409, hypothesis, aElementOf0(sdtpldt0(xw, smndt0(xy)), xJ)). 217.61/28.73 217.61/28.73 Now clausify the problem and encode Horn clauses using encoding 3 of 217.61/28.73 http://www.cse.chalmers.se/~nicsma/papers/horn.pdf. 217.61/28.73 We repeatedly replace C & s=t => u=v by the two clauses: 217.61/28.73 fresh(y, y, x1...xn) = u 217.61/28.73 C => fresh(s, t, x1...xn) = v 217.61/28.73 where fresh is a fresh function symbol and x1..xn are the free 217.61/28.73 variables of u and v. 217.61/28.73 A predicate p(X) is encoded as p(X)=true (this is sound, because the 217.61/28.73 input problem has no model of domain size 1). 217.61/28.73 217.61/28.73 The encoding turns the above axioms into the following unit equations and goals: 217.61/28.73 217.61/28.73 Axiom 1 (mEOfElem): fresh35(X, X, Y, Z) = aElement0(Z). 217.61/28.73 Axiom 2 (mEOfElem): fresh34(X, X, Y) = true2. 217.61/28.73 Axiom 3 (mSortsB): fresh22(X, X, Y, Z) = aElement0(sdtpldt0(Y, Z)). 217.61/28.73 Axiom 4 (mSortsB): fresh21(X, X, Y, Z) = true2. 217.61/28.73 Axiom 5 (mSortsB_02): fresh20(X, X, Y, Z) = aElement0(sdtasdt0(Y, Z)). 217.61/28.73 Axiom 6 (mSortsB_02): fresh19(X, X, Y, Z) = true2. 217.61/28.73 Axiom 7 (mSortsB_02): fresh20(aElement0(X), true2, Y, X) = fresh19(aElement0(Y), true2, Y, X). 217.61/28.73 Axiom 8 (m__1217_1): aElement0(xy) = true2. 217.61/28.73 Axiom 9 (m__1217): aElement0(xx) = true2. 217.61/28.73 Axiom 10 (mEOfElem): fresh35(aElementOf0(X, Y), true2, Y, X) = fresh34(aSet0(Y), true2, X). 217.61/28.73 Axiom 11 (m__1294_2): aElementOf0(xb, xJ) = true2. 217.61/28.73 Axiom 12 (m__1294_1): aElementOf0(xa, xI) = true2. 217.61/28.73 Axiom 13 (mSortsB): fresh22(aElement0(X), true2, Y, X) = fresh21(aElement0(Y), true2, Y, X). 217.61/28.73 Axiom 14 (m__1332): aElementOf0(sdtpldt0(xw, smndt0(xx)), xI) = true2. 217.61/28.73 Axiom 15 (m__1319): xw = sdtpldt0(sdtasdt0(xy, xa), sdtasdt0(xx, xb)). 217.61/28.73 Axiom 16 (m__1205_1): aSet0(xJ) = true2. 217.61/28.73 Axiom 17 (m__1205): aSet0(xI) = true2. 217.85/28.75 Axiom 18 (m__1409): aElementOf0(sdtpldt0(xw, smndt0(xy)), xJ) = true2. 217.85/28.75 217.85/28.75 Goal 1 (m__): tuple(aElementOf0(sdtpldt0(X, smndt0(xx)), xI), aElementOf0(sdtpldt0(X, smndt0(xy)), xJ), aElement0(X)) = tuple(true2, true2, true2). 217.85/28.75 The goal is true when: 217.85/28.75 X = xw 217.85/28.75 217.85/28.75 Proof: 217.85/28.75 tuple(aElementOf0(sdtpldt0(xw, smndt0(xx)), xI), aElementOf0(sdtpldt0(xw, smndt0(xy)), xJ), aElement0(xw)) 217.85/28.75 = { by axiom 14 (m__1332) } 217.85/28.75 tuple(true2, aElementOf0(sdtpldt0(xw, smndt0(xy)), xJ), aElement0(xw)) 217.85/28.75 = { by axiom 18 (m__1409) } 217.85/28.75 tuple(true2, true2, aElement0(xw)) 217.85/28.75 = { by axiom 15 (m__1319) } 217.85/28.75 tuple(true2, true2, aElement0(sdtpldt0(sdtasdt0(xy, xa), sdtasdt0(xx, xb)))) 217.85/28.75 = { by axiom 3 (mSortsB) } 217.85/28.75 tuple(true2, true2, fresh22(true2, true2, sdtasdt0(xy, xa), sdtasdt0(xx, xb))) 217.85/28.75 = { by axiom 6 (mSortsB_02) } 217.85/28.75 tuple(true2, true2, fresh22(fresh19(true2, true2, xx, xb), true2, sdtasdt0(xy, xa), sdtasdt0(xx, xb))) 217.85/28.75 = { by axiom 9 (m__1217) } 217.85/28.75 tuple(true2, true2, fresh22(fresh19(aElement0(xx), true2, xx, xb), true2, sdtasdt0(xy, xa), sdtasdt0(xx, xb))) 217.85/28.75 = { by axiom 7 (mSortsB_02) } 217.85/28.75 tuple(true2, true2, fresh22(fresh20(aElement0(xb), true2, xx, xb), true2, sdtasdt0(xy, xa), sdtasdt0(xx, xb))) 217.85/28.75 = { by axiom 1 (mEOfElem) } 217.85/28.75 tuple(true2, true2, fresh22(fresh20(fresh35(true2, true2, xJ, xb), true2, xx, xb), true2, sdtasdt0(xy, xa), sdtasdt0(xx, xb))) 217.85/28.75 = { by axiom 11 (m__1294_2) } 217.85/28.75 tuple(true2, true2, fresh22(fresh20(fresh35(aElementOf0(xb, xJ), true2, xJ, xb), true2, xx, xb), true2, sdtasdt0(xy, xa), sdtasdt0(xx, xb))) 217.85/28.75 = { by axiom 10 (mEOfElem) } 217.85/28.75 tuple(true2, true2, fresh22(fresh20(fresh34(aSet0(xJ), true2, xb), true2, xx, xb), true2, sdtasdt0(xy, xa), sdtasdt0(xx, xb))) 217.85/28.75 = { by axiom 16 (m__1205_1) } 217.85/28.75 tuple(true2, true2, fresh22(fresh20(fresh34(true2, true2, xb), true2, xx, xb), true2, sdtasdt0(xy, xa), sdtasdt0(xx, xb))) 217.85/28.75 = { by axiom 2 (mEOfElem) } 217.85/28.75 tuple(true2, true2, fresh22(fresh20(true2, true2, xx, xb), true2, sdtasdt0(xy, xa), sdtasdt0(xx, xb))) 217.85/28.75 = { by axiom 5 (mSortsB_02) } 217.85/28.75 tuple(true2, true2, fresh22(aElement0(sdtasdt0(xx, xb)), true2, sdtasdt0(xy, xa), sdtasdt0(xx, xb))) 217.85/28.75 = { by axiom 13 (mSortsB) } 217.85/28.75 tuple(true2, true2, fresh21(aElement0(sdtasdt0(xy, xa)), true2, sdtasdt0(xy, xa), sdtasdt0(xx, xb))) 217.85/28.75 = { by axiom 5 (mSortsB_02) } 217.85/28.75 tuple(true2, true2, fresh21(fresh20(true2, true2, xy, xa), true2, sdtasdt0(xy, xa), sdtasdt0(xx, xb))) 217.85/28.75 = { by axiom 2 (mEOfElem) } 217.85/28.75 tuple(true2, true2, fresh21(fresh20(fresh34(true2, true2, xa), true2, xy, xa), true2, sdtasdt0(xy, xa), sdtasdt0(xx, xb))) 217.85/28.75 = { by axiom 17 (m__1205) } 217.85/28.75 tuple(true2, true2, fresh21(fresh20(fresh34(aSet0(xI), true2, xa), true2, xy, xa), true2, sdtasdt0(xy, xa), sdtasdt0(xx, xb))) 217.85/28.75 = { by axiom 10 (mEOfElem) } 217.85/28.75 tuple(true2, true2, fresh21(fresh20(fresh35(aElementOf0(xa, xI), true2, xI, xa), true2, xy, xa), true2, sdtasdt0(xy, xa), sdtasdt0(xx, xb))) 217.85/28.75 = { by axiom 12 (m__1294_1) } 217.85/28.75 tuple(true2, true2, fresh21(fresh20(fresh35(true2, true2, xI, xa), true2, xy, xa), true2, sdtasdt0(xy, xa), sdtasdt0(xx, xb))) 217.85/28.75 = { by axiom 1 (mEOfElem) } 217.85/28.75 tuple(true2, true2, fresh21(fresh20(aElement0(xa), true2, xy, xa), true2, sdtasdt0(xy, xa), sdtasdt0(xx, xb))) 217.85/28.75 = { by axiom 7 (mSortsB_02) } 217.85/28.75 tuple(true2, true2, fresh21(fresh19(aElement0(xy), true2, xy, xa), true2, sdtasdt0(xy, xa), sdtasdt0(xx, xb))) 217.85/28.75 = { by axiom 8 (m__1217_1) } 217.85/28.75 tuple(true2, true2, fresh21(fresh19(true2, true2, xy, xa), true2, sdtasdt0(xy, xa), sdtasdt0(xx, xb))) 217.85/28.75 = { by axiom 6 (mSortsB_02) } 217.85/28.75 tuple(true2, true2, fresh21(true2, true2, sdtasdt0(xy, xa), sdtasdt0(xx, xb))) 217.85/28.75 = { by axiom 4 (mSortsB) } 217.85/28.75 tuple(true2, true2, true2) 217.85/28.75 % SZS output end Proof 217.85/28.75 217.85/28.75 RESULT: Theorem (the conjecture is true). 217.85/28.78 EOF