0.05/0.10 % Problem : theBenchmark.p : TPTP v0.0.0. Released v0.0.0. 0.05/0.10 % Command : parallel-twee %s --tstp --conditional-encoding if --smaller --drop-non-horn --give-up-on-saturation --explain-encoding --formal-proof 0.10/0.30 % Computer : n020.cluster.edu 0.10/0.30 % Model : x86_64 x86_64 0.10/0.30 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz 0.10/0.30 % Memory : 8042.1875MB 0.10/0.30 % OS : Linux 3.10.0-693.el7.x86_64 0.10/0.30 % CPULimit : 1200 0.10/0.30 % WCLimit : 120 0.10/0.30 % DateTime : Tue Jul 13 16:28:21 EDT 2021 0.10/0.31 % CPUTime : 2.48/0.67 % SZS status Theorem 2.48/0.67 2.86/0.69 % SZS output start Proof 2.86/0.69 Take the following subset of the input axioms: 2.86/0.69 fof('ass(cond(140, 0), 0)', axiom, ![Vd208, Vd209]: (greater(Vd208, Vd209) => less(Vd209, Vd208))). 2.86/0.69 fof('ass(cond(189, 0), 0)', axiom, ![Vd295, Vd296]: greater(vplus(Vd295, Vd296), Vd295)). 2.86/0.69 fof('ass(cond(270, 0), 0)', axiom, ![Vd418, Vd419]: vmul(Vd419, Vd418)=vmul(Vd418, Vd419)). 2.86/0.69 fof('ass(cond(33, 0), 0)', axiom, ![Vd46, Vd47, Vd48]: vplus(Vd46, vplus(Vd47, Vd48))=vplus(vplus(Vd46, Vd47), Vd48)). 2.86/0.69 fof('ass(cond(61, 0), 0)', axiom, ![Vd78, Vd79]: vplus(Vd78, Vd79)=vplus(Vd79, Vd78)). 2.86/0.69 fof('def(cond(conseq(axiom(3)), 12), 1)', axiom, ![Vd198, Vd199]: (less(Vd199, Vd198) <=> ?[Vd201]: Vd198=vplus(Vd199, Vd201))). 2.86/0.69 fof('holds(conjunct1(314), 510, 0)', axiom, greater(vd508, vd509)). 2.86/0.69 fof('holds(conjunct1(315), 514, 0)', axiom, greater(vmul(vd508, vd511), vmul(vd509, vd511))). 2.86/0.69 fof('holds(conjunct2(314), 513, 0)', axiom, greater(vd511, vd512)). 2.86/0.69 fof('holds(conjunct2(315), 515, 1)', axiom, greater(vmul(vd511, vd509), vmul(vd512, vd509))). 2.86/0.69 fof('holds(conseq_conjunct2(315), 516, 0)', conjecture, greater(vmul(vd508, vd511), vmul(vd509, vd512))). 2.86/0.69 2.86/0.69 Now clausify the problem and encode Horn clauses using encoding 3 of 2.86/0.69 http://www.cse.chalmers.se/~nicsma/papers/horn.pdf. 2.86/0.69 We repeatedly replace C & s=t => u=v by the two clauses: 2.86/0.69 fresh(y, y, x1...xn) = u 2.86/0.69 C => fresh(s, t, x1...xn) = v 2.86/0.69 where fresh is a fresh function symbol and x1..xn are the free 2.86/0.69 variables of u and v. 2.86/0.69 A predicate p(X) is encoded as p(X)=true (this is sound, because the 2.86/0.69 input problem has no model of domain size 1). 2.86/0.69 2.86/0.69 The encoding turns the above axioms into the following unit equations and goals: 2.86/0.69 2.86/0.69 Axiom 1 (holds(conjunct1(314), 510, 0)): greater(vd508, vd509) = true2. 2.86/0.69 Axiom 2 (holds(conjunct2(314), 513, 0)): greater(vd511, vd512) = true2. 2.86/0.69 Axiom 3 (ass(cond(270, 0), 0)): vmul(X, Y) = vmul(Y, X). 2.86/0.69 Axiom 4 (ass(cond(61, 0), 0)): vplus(X, Y) = vplus(Y, X). 2.86/0.69 Axiom 5 (ass(cond(140, 0), 0)): fresh40(X, X, Y, Z) = true2. 2.86/0.69 Axiom 6 (def(cond(conseq(axiom(3)), 12), 1)_1): fresh6(X, X, Y, Z) = Y. 2.86/0.69 Axiom 7 (ass(cond(189, 0), 0)): greater(vplus(X, Y), X) = true2. 2.86/0.69 Axiom 8 (ass(cond(33, 0), 0)): vplus(X, vplus(Y, Z)) = vplus(vplus(X, Y), Z). 2.86/0.69 Axiom 9 (ass(cond(140, 0), 0)): fresh40(greater(X, Y), true2, X, Y) = less(Y, X). 2.86/0.69 Axiom 10 (def(cond(conseq(axiom(3)), 12), 1)_1): fresh6(less(X, Y), true2, Y, X) = vplus(X, vd201(Y, X)). 2.86/0.69 Axiom 11 (holds(conjunct1(315), 514, 0)): greater(vmul(vd508, vd511), vmul(vd509, vd511)) = true2. 2.86/0.69 Axiom 12 (holds(conjunct2(315), 515, 1)): greater(vmul(vd511, vd509), vmul(vd512, vd509)) = true2. 2.86/0.69 2.86/0.69 Lemma 13: greater(vd511, vd512) = greater(vd508, vd509). 2.86/0.69 Proof: 2.86/0.69 greater(vd511, vd512) 2.86/0.69 = { by axiom 2 (holds(conjunct2(314), 513, 0)) } 2.86/0.69 true2 2.86/0.69 = { by axiom 1 (holds(conjunct1(314), 510, 0)) R->L } 2.86/0.69 greater(vd508, vd509) 2.86/0.69 2.86/0.69 Lemma 14: fresh40(X, X, Y, Z) = greater(vd511, vd512). 2.86/0.69 Proof: 2.86/0.69 fresh40(X, X, Y, Z) 2.86/0.69 = { by axiom 5 (ass(cond(140, 0), 0)) } 2.86/0.69 true2 2.86/0.69 = { by axiom 1 (holds(conjunct1(314), 510, 0)) R->L } 2.86/0.69 greater(vd508, vd509) 2.86/0.69 = { by lemma 13 R->L } 2.86/0.69 greater(vd511, vd512) 2.86/0.69 2.86/0.69 Lemma 15: greater(vmul(vd508, vd511), vmul(vd509, vd511)) = greater(vd511, vd512). 2.86/0.69 Proof: 2.86/0.69 greater(vmul(vd508, vd511), vmul(vd509, vd511)) 2.86/0.69 = { by axiom 11 (holds(conjunct1(315), 514, 0)) } 2.86/0.69 true2 2.86/0.69 = { by axiom 1 (holds(conjunct1(314), 510, 0)) R->L } 2.86/0.69 greater(vd508, vd509) 2.86/0.69 = { by lemma 13 R->L } 2.86/0.69 greater(vd511, vd512) 2.86/0.69 2.86/0.69 Lemma 16: greater(vmul(vd511, vd509), vmul(vd512, vd509)) = greater(vmul(vd508, vd511), vmul(vd509, vd511)). 2.86/0.69 Proof: 2.86/0.69 greater(vmul(vd511, vd509), vmul(vd512, vd509)) 2.86/0.69 = { by axiom 12 (holds(conjunct2(315), 515, 1)) } 2.86/0.69 true2 2.86/0.69 = { by axiom 1 (holds(conjunct1(314), 510, 0)) R->L } 2.86/0.69 greater(vd508, vd509) 2.86/0.69 = { by lemma 13 R->L } 2.86/0.69 greater(vd511, vd512) 2.86/0.69 = { by lemma 15 R->L } 2.86/0.69 greater(vmul(vd508, vd511), vmul(vd509, vd511)) 2.86/0.69 2.86/0.69 Lemma 17: fresh40(greater(X, Y), greater(vd511, vd512), X, Y) = less(Y, X). 2.86/0.69 Proof: 2.86/0.69 fresh40(greater(X, Y), greater(vd511, vd512), X, Y) 2.86/0.69 = { by lemma 13 } 2.86/0.69 fresh40(greater(X, Y), greater(vd508, vd509), X, Y) 2.86/0.69 = { by axiom 1 (holds(conjunct1(314), 510, 0)) } 2.86/0.69 fresh40(greater(X, Y), true2, X, Y) 2.86/0.69 = { by axiom 9 (ass(cond(140, 0), 0)) } 2.86/0.69 less(Y, X) 2.86/0.69 2.86/0.69 Lemma 18: fresh6(less(X, Y), greater(vd511, vd512), Y, X) = vplus(X, vd201(Y, X)). 2.86/0.69 Proof: 2.86/0.69 fresh6(less(X, Y), greater(vd511, vd512), Y, X) 2.86/0.69 = { by lemma 13 } 2.86/0.69 fresh6(less(X, Y), greater(vd508, vd509), Y, X) 2.86/0.69 = { by axiom 1 (holds(conjunct1(314), 510, 0)) } 2.86/0.69 fresh6(less(X, Y), true2, Y, X) 2.86/0.69 = { by axiom 10 (def(cond(conseq(axiom(3)), 12), 1)_1) } 2.86/0.70 vplus(X, vd201(Y, X)) 2.86/0.70 2.86/0.70 Goal 1 (holds(conseq_conjunct2(315), 516, 0)): greater(vmul(vd508, vd511), vmul(vd509, vd512)) = true2. 2.86/0.70 Proof: 2.86/0.70 greater(vmul(vd508, vd511), vmul(vd509, vd512)) 2.86/0.70 = { by axiom 6 (def(cond(conseq(axiom(3)), 12), 1)_1) R->L } 2.86/0.70 greater(fresh6(greater(vmul(vd511, vd509), vmul(vd512, vd509)), greater(vmul(vd511, vd509), vmul(vd512, vd509)), vmul(vd508, vd511), vmul(vd511, vd509)), vmul(vd509, vd512)) 2.86/0.70 = { by lemma 16 } 2.86/0.70 greater(fresh6(greater(vmul(vd511, vd509), vmul(vd512, vd509)), greater(vmul(vd508, vd511), vmul(vd509, vd511)), vmul(vd508, vd511), vmul(vd511, vd509)), vmul(vd509, vd512)) 2.86/0.70 = { by lemma 15 } 2.86/0.70 greater(fresh6(greater(vmul(vd511, vd509), vmul(vd512, vd509)), greater(vd511, vd512), vmul(vd508, vd511), vmul(vd511, vd509)), vmul(vd509, vd512)) 2.86/0.70 = { by lemma 16 } 2.86/0.70 greater(fresh6(greater(vmul(vd508, vd511), vmul(vd509, vd511)), greater(vd511, vd512), vmul(vd508, vd511), vmul(vd511, vd509)), vmul(vd509, vd512)) 2.86/0.70 = { by lemma 15 } 2.86/0.70 greater(fresh6(greater(vd511, vd512), greater(vd511, vd512), vmul(vd508, vd511), vmul(vd511, vd509)), vmul(vd509, vd512)) 2.86/0.70 = { by lemma 14 R->L } 2.86/0.70 greater(fresh6(fresh40(greater(vmul(vd511, vd509), vmul(vd512, vd509)), greater(vmul(vd511, vd509), vmul(vd512, vd509)), vmul(vd508, vd511), vmul(vd511, vd509)), greater(vd511, vd512), vmul(vd508, vd511), vmul(vd511, vd509)), vmul(vd509, vd512)) 2.86/0.70 = { by lemma 16 } 2.86/0.70 greater(fresh6(fresh40(greater(vmul(vd511, vd509), vmul(vd512, vd509)), greater(vmul(vd508, vd511), vmul(vd509, vd511)), vmul(vd508, vd511), vmul(vd511, vd509)), greater(vd511, vd512), vmul(vd508, vd511), vmul(vd511, vd509)), vmul(vd509, vd512)) 2.86/0.70 = { by lemma 15 } 2.86/0.70 greater(fresh6(fresh40(greater(vmul(vd511, vd509), vmul(vd512, vd509)), greater(vd511, vd512), vmul(vd508, vd511), vmul(vd511, vd509)), greater(vd511, vd512), vmul(vd508, vd511), vmul(vd511, vd509)), vmul(vd509, vd512)) 2.86/0.70 = { by lemma 16 } 2.86/0.70 greater(fresh6(fresh40(greater(vmul(vd508, vd511), vmul(vd509, vd511)), greater(vd511, vd512), vmul(vd508, vd511), vmul(vd511, vd509)), greater(vd511, vd512), vmul(vd508, vd511), vmul(vd511, vd509)), vmul(vd509, vd512)) 2.86/0.70 = { by axiom 3 (ass(cond(270, 0), 0)) } 2.86/0.70 greater(fresh6(fresh40(greater(vmul(vd508, vd511), vmul(vd511, vd509)), greater(vd511, vd512), vmul(vd508, vd511), vmul(vd511, vd509)), greater(vd511, vd512), vmul(vd508, vd511), vmul(vd511, vd509)), vmul(vd509, vd512)) 2.86/0.70 = { by lemma 17 } 2.86/0.70 greater(fresh6(less(vmul(vd511, vd509), vmul(vd508, vd511)), greater(vd511, vd512), vmul(vd508, vd511), vmul(vd511, vd509)), vmul(vd509, vd512)) 2.86/0.70 = { by lemma 18 } 2.86/0.70 greater(vplus(vmul(vd511, vd509), vd201(vmul(vd508, vd511), vmul(vd511, vd509))), vmul(vd509, vd512)) 2.86/0.70 = { by axiom 4 (ass(cond(61, 0), 0)) R->L } 2.86/0.70 greater(vplus(vd201(vmul(vd508, vd511), vmul(vd511, vd509)), vmul(vd511, vd509)), vmul(vd509, vd512)) 2.86/0.70 = { by axiom 6 (def(cond(conseq(axiom(3)), 12), 1)_1) R->L } 2.86/0.70 greater(vplus(vd201(vmul(vd508, vd511), vmul(vd511, vd509)), fresh6(greater(vmul(vd511, vd509), vmul(vd512, vd509)), greater(vmul(vd511, vd509), vmul(vd512, vd509)), vmul(vd511, vd509), vmul(vd509, vd512))), vmul(vd509, vd512)) 2.86/0.70 = { by lemma 16 } 2.86/0.70 greater(vplus(vd201(vmul(vd508, vd511), vmul(vd511, vd509)), fresh6(greater(vmul(vd511, vd509), vmul(vd512, vd509)), greater(vmul(vd508, vd511), vmul(vd509, vd511)), vmul(vd511, vd509), vmul(vd509, vd512))), vmul(vd509, vd512)) 2.86/0.70 = { by lemma 15 } 2.86/0.70 greater(vplus(vd201(vmul(vd508, vd511), vmul(vd511, vd509)), fresh6(greater(vmul(vd511, vd509), vmul(vd512, vd509)), greater(vd511, vd512), vmul(vd511, vd509), vmul(vd509, vd512))), vmul(vd509, vd512)) 2.86/0.70 = { by lemma 16 } 2.86/0.70 greater(vplus(vd201(vmul(vd508, vd511), vmul(vd511, vd509)), fresh6(greater(vmul(vd508, vd511), vmul(vd509, vd511)), greater(vd511, vd512), vmul(vd511, vd509), vmul(vd509, vd512))), vmul(vd509, vd512)) 2.86/0.70 = { by lemma 15 } 2.86/0.70 greater(vplus(vd201(vmul(vd508, vd511), vmul(vd511, vd509)), fresh6(greater(vd511, vd512), greater(vd511, vd512), vmul(vd511, vd509), vmul(vd509, vd512))), vmul(vd509, vd512)) 2.86/0.70 = { by lemma 14 R->L } 2.86/0.70 greater(vplus(vd201(vmul(vd508, vd511), vmul(vd511, vd509)), fresh6(fresh40(greater(vmul(vd511, vd509), vmul(vd512, vd509)), greater(vmul(vd511, vd509), vmul(vd512, vd509)), vmul(vd511, vd509), vmul(vd509, vd512)), greater(vd511, vd512), vmul(vd511, vd509), vmul(vd509, vd512))), vmul(vd509, vd512)) 2.86/0.70 = { by lemma 16 } 2.86/0.70 greater(vplus(vd201(vmul(vd508, vd511), vmul(vd511, vd509)), fresh6(fresh40(greater(vmul(vd511, vd509), vmul(vd512, vd509)), greater(vmul(vd508, vd511), vmul(vd509, vd511)), vmul(vd511, vd509), vmul(vd509, vd512)), greater(vd511, vd512), vmul(vd511, vd509), vmul(vd509, vd512))), vmul(vd509, vd512)) 2.86/0.70 = { by lemma 15 } 2.86/0.70 greater(vplus(vd201(vmul(vd508, vd511), vmul(vd511, vd509)), fresh6(fresh40(greater(vmul(vd511, vd509), vmul(vd512, vd509)), greater(vd511, vd512), vmul(vd511, vd509), vmul(vd509, vd512)), greater(vd511, vd512), vmul(vd511, vd509), vmul(vd509, vd512))), vmul(vd509, vd512)) 2.86/0.70 = { by axiom 3 (ass(cond(270, 0), 0)) R->L } 2.86/0.70 greater(vplus(vd201(vmul(vd508, vd511), vmul(vd511, vd509)), fresh6(fresh40(greater(vmul(vd511, vd509), vmul(vd509, vd512)), greater(vd511, vd512), vmul(vd511, vd509), vmul(vd509, vd512)), greater(vd511, vd512), vmul(vd511, vd509), vmul(vd509, vd512))), vmul(vd509, vd512)) 2.86/0.70 = { by lemma 17 } 2.86/0.70 greater(vplus(vd201(vmul(vd508, vd511), vmul(vd511, vd509)), fresh6(less(vmul(vd509, vd512), vmul(vd511, vd509)), greater(vd511, vd512), vmul(vd511, vd509), vmul(vd509, vd512))), vmul(vd509, vd512)) 2.86/0.70 = { by lemma 18 } 2.86/0.70 greater(vplus(vd201(vmul(vd508, vd511), vmul(vd511, vd509)), vplus(vmul(vd509, vd512), vd201(vmul(vd511, vd509), vmul(vd509, vd512)))), vmul(vd509, vd512)) 2.86/0.70 = { by axiom 4 (ass(cond(61, 0), 0)) R->L } 2.86/0.70 greater(vplus(vd201(vmul(vd508, vd511), vmul(vd511, vd509)), vplus(vd201(vmul(vd511, vd509), vmul(vd509, vd512)), vmul(vd509, vd512))), vmul(vd509, vd512)) 2.86/0.70 = { by axiom 4 (ass(cond(61, 0), 0)) R->L } 2.86/0.70 greater(vplus(vplus(vd201(vmul(vd511, vd509), vmul(vd509, vd512)), vmul(vd509, vd512)), vd201(vmul(vd508, vd511), vmul(vd511, vd509))), vmul(vd509, vd512)) 2.86/0.70 = { by axiom 8 (ass(cond(33, 0), 0)) R->L } 2.86/0.70 greater(vplus(vd201(vmul(vd511, vd509), vmul(vd509, vd512)), vplus(vmul(vd509, vd512), vd201(vmul(vd508, vd511), vmul(vd511, vd509)))), vmul(vd509, vd512)) 2.86/0.70 = { by axiom 4 (ass(cond(61, 0), 0)) } 2.86/0.70 greater(vplus(vd201(vmul(vd511, vd509), vmul(vd509, vd512)), vplus(vd201(vmul(vd508, vd511), vmul(vd511, vd509)), vmul(vd509, vd512))), vmul(vd509, vd512)) 2.86/0.70 = { by axiom 8 (ass(cond(33, 0), 0)) } 2.86/0.70 greater(vplus(vplus(vd201(vmul(vd511, vd509), vmul(vd509, vd512)), vd201(vmul(vd508, vd511), vmul(vd511, vd509))), vmul(vd509, vd512)), vmul(vd509, vd512)) 2.86/0.70 = { by axiom 4 (ass(cond(61, 0), 0)) R->L } 2.86/0.70 greater(vplus(vmul(vd509, vd512), vplus(vd201(vmul(vd511, vd509), vmul(vd509, vd512)), vd201(vmul(vd508, vd511), vmul(vd511, vd509)))), vmul(vd509, vd512)) 2.86/0.70 = { by axiom 7 (ass(cond(189, 0), 0)) } 2.86/0.70 true2 2.86/0.70 % SZS output end Proof 2.86/0.70 2.86/0.70 RESULT: Theorem (the conjecture is true). 2.86/0.71 EOF