0.09/0.09 % Problem : theBenchmark.p : TPTP v0.0.0. Released v0.0.0. 0.09/0.10 % Command : twee %s --tstp --casc --quiet --explain-encoding --conditional-encoding if --smaller --drop-non-horn 0.09/0.30 % Computer : n015.cluster.edu 0.09/0.30 % Model : x86_64 x86_64 0.09/0.30 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz 0.09/0.30 % Memory : 8042.1875MB 0.09/0.30 % OS : Linux 3.10.0-693.el7.x86_64 0.09/0.30 % CPULimit : 960 0.09/0.30 % WCLimit : 120 0.09/0.30 % DateTime : Thu Jul 2 08:24:16 EDT 2020 0.09/0.30 % CPUTime : 196.95/25.40 % SZS status Theorem 196.95/25.40 197.98/25.43 % SZS output start Proof 197.98/25.43 Take the following subset of the input axioms: 197.98/25.45 fof(alpha_morphism, axiom, morphism(alpha, a, b)). 197.98/25.45 fof(g_morphism, axiom, morphism(g, b, e)). 197.98/25.45 fof(lemma12, conjecture, ![E]: (element(E, e) => ?[B1, B2]: (apply(g, subtract(b, B1, B2))=E & (element(B2, b) & element(B1, b))))). 197.98/25.45 fof(lemma8, axiom, ![E]: (?[B1, A, E1]: (element(E1, e) & (E1=apply(g, apply(alpha, A)) & (E1=apply(gamma, apply(f, A)) & (element(A, a) & (subtract(e, apply(g, B1), E)=E1 & element(B1, b)))))) <= element(E, e))). 197.98/25.45 fof(morphism, axiom, ![Dom, Cod, Morphism]: ((zero(Cod)=apply(Morphism, zero(Dom)) & ![El]: (element(El, Dom) => element(apply(Morphism, El), Cod))) <= morphism(Morphism, Dom, Cod))). 197.98/25.45 fof(subtract_cancellation, axiom, ![Dom, El1, El2]: ((element(El1, Dom) & element(El2, Dom)) => El2=subtract(Dom, El1, subtract(Dom, El1, El2)))). 197.98/25.45 fof(subtract_distribution, axiom, ![Dom, Cod, Morphism]: (![El1, El2]: (subtract(Cod, apply(Morphism, El1), apply(Morphism, El2))=apply(Morphism, subtract(Dom, El1, El2)) <= (element(El1, Dom) & element(El2, Dom))) <= morphism(Morphism, Dom, Cod))). 197.98/25.45 197.98/25.45 Now clausify the problem and encode Horn clauses using encoding 3 of 197.98/25.45 http://www.cse.chalmers.se/~nicsma/papers/horn.pdf. 197.98/25.45 We repeatedly replace C & s=t => u=v by the two clauses: 197.98/25.45 fresh(y, y, x1...xn) = u 197.98/25.45 C => fresh(s, t, x1...xn) = v 197.98/25.45 where fresh is a fresh function symbol and x1..xn are the free 197.98/25.45 variables of u and v. 197.98/25.45 A predicate p(X) is encoded as p(X)=true (this is sound, because the 197.98/25.45 input problem has no model of domain size 1). 197.98/25.45 197.98/25.45 The encoding turns the above axioms into the following unit equations and goals: 197.98/25.45 197.98/25.45 Axiom 1 (lemma8): fresh22(X, X, Y) = sK4_lemma8_E1(Y). 197.98/25.45 Axiom 2 (lemma8_2): fresh20(X, X, Y) = sK4_lemma8_E1(Y). 197.98/25.45 Axiom 3 (lemma8_4): fresh18(X, X, Y) = true2. 197.98/25.45 Axiom 4 (lemma8_5): fresh17(X, X, Y) = true2. 197.98/25.45 Axiom 5 (morphism_1): fresh15(X, X, Y, Z, W, V) = element(apply(Y, V), W). 197.98/25.45 Axiom 6 (morphism_1): fresh14(X, X, Y, Z, W) = true2. 197.98/25.45 Axiom 7 (subtract_cancellation): fresh(X, X, Y, Z, W) = W. 197.98/25.45 Axiom 8 (subtract_cancellation): fresh8(X, X, Y, Z, W) = subtract(Y, Z, subtract(Y, Z, W)). 197.98/25.45 Axiom 9 (subtract_distribution): fresh7(X, X, Y, Z, W, V, U) = apply(Y, subtract(Z, V, U)). 197.98/25.45 Axiom 10 (subtract_distribution): fresh33(X, X, Y, Z, W, V, U) = subtract(W, apply(Y, V), apply(Y, U)). 197.98/25.45 Axiom 11 (subtract_distribution): fresh32(X, X, Y, Z, W, V, U) = fresh33(element(V, Z), true2, Y, Z, W, V, U). 197.98/25.45 Axiom 12 (morphism_1): fresh15(element(X, Y), true2, Z, Y, W, X) = fresh14(morphism(Z, Y, W), true2, Z, W, X). 197.98/25.45 Axiom 13 (subtract_cancellation): fresh8(element(X, Y), true2, Y, Z, X) = fresh(element(Z, Y), true2, Y, Z, X). 197.98/25.45 Axiom 14 (subtract_distribution): fresh32(element(X, Y), true2, Z, Y, W, V, X) = fresh7(morphism(Z, Y, W), true2, Z, Y, W, V, X). 197.98/25.45 Axiom 15 (alpha_morphism): morphism(alpha, a, b) = true2. 197.98/25.45 Axiom 16 (lemma8_5): fresh17(element(X, e), true2, X) = element(sK2_lemma8_A(X), a). 197.98/25.45 Axiom 17 (lemma8_4): fresh18(element(X, e), true2, X) = element(sK3_lemma8_B1(X), b). 197.98/25.45 Axiom 18 (lemma8_2): fresh20(element(X, e), true2, X) = subtract(e, apply(g, sK3_lemma8_B1(X)), X). 197.98/25.45 Axiom 19 (lemma8): fresh22(element(X, e), true2, X) = apply(g, apply(alpha, sK2_lemma8_A(X))). 197.98/25.45 Axiom 20 (g_morphism): morphism(g, b, e) = true2. 197.98/25.45 Axiom 21 (lemma12): element(sK1_lemma12_E, e) = true2. 197.98/25.45 197.98/25.45 Lemma 22: element(apply(alpha, sK2_lemma8_A(sK1_lemma12_E)), b) = true2. 197.98/25.45 Proof: 197.98/25.45 element(apply(alpha, sK2_lemma8_A(sK1_lemma12_E)), b) 197.98/25.45 = { by axiom 5 (morphism_1) } 197.98/25.45 fresh15(true2, true2, alpha, a, b, sK2_lemma8_A(sK1_lemma12_E)) 197.98/25.45 = { by axiom 4 (lemma8_5) } 197.98/25.45 fresh15(fresh17(true2, true2, sK1_lemma12_E), true2, alpha, a, b, sK2_lemma8_A(sK1_lemma12_E)) 197.98/25.45 = { by axiom 21 (lemma12) } 197.98/25.45 fresh15(fresh17(element(sK1_lemma12_E, e), true2, sK1_lemma12_E), true2, alpha, a, b, sK2_lemma8_A(sK1_lemma12_E)) 197.98/25.45 = { by axiom 16 (lemma8_5) } 197.98/25.45 fresh15(element(sK2_lemma8_A(sK1_lemma12_E), a), true2, alpha, a, b, sK2_lemma8_A(sK1_lemma12_E)) 197.98/25.45 = { by axiom 12 (morphism_1) } 197.98/25.45 fresh14(morphism(alpha, a, b), true2, alpha, b, sK2_lemma8_A(sK1_lemma12_E)) 197.98/25.46 = { by axiom 15 (alpha_morphism) } 197.98/25.46 fresh14(true2, true2, alpha, b, sK2_lemma8_A(sK1_lemma12_E)) 197.98/25.46 = { by axiom 6 (morphism_1) } 197.98/25.46 true2 197.98/25.46 197.98/25.46 Lemma 23: element(sK3_lemma8_B1(sK1_lemma12_E), b) = true2. 197.98/25.46 Proof: 197.98/25.46 element(sK3_lemma8_B1(sK1_lemma12_E), b) 197.98/25.46 = { by axiom 17 (lemma8_4) } 197.98/25.46 fresh18(element(sK1_lemma12_E, e), true2, sK1_lemma12_E) 197.98/25.46 = { by axiom 21 (lemma12) } 197.98/25.46 fresh18(true2, true2, sK1_lemma12_E) 197.98/25.46 = { by axiom 3 (lemma8_4) } 197.98/25.47 true2 197.98/25.47 197.98/25.47 Goal 1 (lemma12_1): tuple(apply(g, subtract(b, X, Y)), element(X, b), element(Y, b)) = tuple(sK1_lemma12_E, true2, true2). 197.98/25.47 The goal is true when: 197.98/25.47 X = sK3_lemma8_B1(sK1_lemma12_E) 197.98/25.47 Y = apply(alpha, sK2_lemma8_A(sK1_lemma12_E)) 197.98/25.47 197.98/25.47 Proof: 197.98/25.47 tuple(apply(g, subtract(b, sK3_lemma8_B1(sK1_lemma12_E), apply(alpha, sK2_lemma8_A(sK1_lemma12_E)))), element(sK3_lemma8_B1(sK1_lemma12_E), b), element(apply(alpha, sK2_lemma8_A(sK1_lemma12_E)), b)) 197.98/25.47 = { by axiom 9 (subtract_distribution) } 197.98/25.47 tuple(fresh7(true2, true2, g, b, e, sK3_lemma8_B1(sK1_lemma12_E), apply(alpha, sK2_lemma8_A(sK1_lemma12_E))), element(sK3_lemma8_B1(sK1_lemma12_E), b), element(apply(alpha, sK2_lemma8_A(sK1_lemma12_E)), b)) 197.98/25.47 = { by axiom 20 (g_morphism) } 197.98/25.47 tuple(fresh7(morphism(g, b, e), true2, g, b, e, sK3_lemma8_B1(sK1_lemma12_E), apply(alpha, sK2_lemma8_A(sK1_lemma12_E))), element(sK3_lemma8_B1(sK1_lemma12_E), b), element(apply(alpha, sK2_lemma8_A(sK1_lemma12_E)), b)) 197.98/25.47 = { by axiom 14 (subtract_distribution) } 197.98/25.47 tuple(fresh32(element(apply(alpha, sK2_lemma8_A(sK1_lemma12_E)), b), true2, g, b, e, sK3_lemma8_B1(sK1_lemma12_E), apply(alpha, sK2_lemma8_A(sK1_lemma12_E))), element(sK3_lemma8_B1(sK1_lemma12_E), b), element(apply(alpha, sK2_lemma8_A(sK1_lemma12_E)), b)) 197.98/25.47 = { by lemma 22 } 197.98/25.47 tuple(fresh32(true2, true2, g, b, e, sK3_lemma8_B1(sK1_lemma12_E), apply(alpha, sK2_lemma8_A(sK1_lemma12_E))), element(sK3_lemma8_B1(sK1_lemma12_E), b), element(apply(alpha, sK2_lemma8_A(sK1_lemma12_E)), b)) 197.98/25.47 = { by axiom 11 (subtract_distribution) } 197.98/25.47 tuple(fresh33(element(sK3_lemma8_B1(sK1_lemma12_E), b), true2, g, b, e, sK3_lemma8_B1(sK1_lemma12_E), apply(alpha, sK2_lemma8_A(sK1_lemma12_E))), element(sK3_lemma8_B1(sK1_lemma12_E), b), element(apply(alpha, sK2_lemma8_A(sK1_lemma12_E)), b)) 197.98/25.47 = { by lemma 23 } 197.98/25.47 tuple(fresh33(true2, true2, g, b, e, sK3_lemma8_B1(sK1_lemma12_E), apply(alpha, sK2_lemma8_A(sK1_lemma12_E))), element(sK3_lemma8_B1(sK1_lemma12_E), b), element(apply(alpha, sK2_lemma8_A(sK1_lemma12_E)), b)) 197.98/25.47 = { by axiom 10 (subtract_distribution) } 197.98/25.47 tuple(subtract(e, apply(g, sK3_lemma8_B1(sK1_lemma12_E)), apply(g, apply(alpha, sK2_lemma8_A(sK1_lemma12_E)))), element(sK3_lemma8_B1(sK1_lemma12_E), b), element(apply(alpha, sK2_lemma8_A(sK1_lemma12_E)), b)) 197.98/25.47 = { by axiom 19 (lemma8) } 197.98/25.47 tuple(subtract(e, apply(g, sK3_lemma8_B1(sK1_lemma12_E)), fresh22(element(sK1_lemma12_E, e), true2, sK1_lemma12_E)), element(sK3_lemma8_B1(sK1_lemma12_E), b), element(apply(alpha, sK2_lemma8_A(sK1_lemma12_E)), b)) 197.98/25.47 = { by axiom 21 (lemma12) } 197.98/25.47 tuple(subtract(e, apply(g, sK3_lemma8_B1(sK1_lemma12_E)), fresh22(true2, true2, sK1_lemma12_E)), element(sK3_lemma8_B1(sK1_lemma12_E), b), element(apply(alpha, sK2_lemma8_A(sK1_lemma12_E)), b)) 197.98/25.47 = { by axiom 1 (lemma8) } 197.98/25.47 tuple(subtract(e, apply(g, sK3_lemma8_B1(sK1_lemma12_E)), sK4_lemma8_E1(sK1_lemma12_E)), element(sK3_lemma8_B1(sK1_lemma12_E), b), element(apply(alpha, sK2_lemma8_A(sK1_lemma12_E)), b)) 197.98/25.47 = { by axiom 2 (lemma8_2) } 197.98/25.47 tuple(subtract(e, apply(g, sK3_lemma8_B1(sK1_lemma12_E)), fresh20(true2, true2, sK1_lemma12_E)), element(sK3_lemma8_B1(sK1_lemma12_E), b), element(apply(alpha, sK2_lemma8_A(sK1_lemma12_E)), b)) 197.98/25.47 = { by axiom 21 (lemma12) } 197.98/25.47 tuple(subtract(e, apply(g, sK3_lemma8_B1(sK1_lemma12_E)), fresh20(element(sK1_lemma12_E, e), true2, sK1_lemma12_E)), element(sK3_lemma8_B1(sK1_lemma12_E), b), element(apply(alpha, sK2_lemma8_A(sK1_lemma12_E)), b)) 197.98/25.47 = { by axiom 18 (lemma8_2) } 197.98/25.47 tuple(subtract(e, apply(g, sK3_lemma8_B1(sK1_lemma12_E)), subtract(e, apply(g, sK3_lemma8_B1(sK1_lemma12_E)), sK1_lemma12_E)), element(sK3_lemma8_B1(sK1_lemma12_E), b), element(apply(alpha, sK2_lemma8_A(sK1_lemma12_E)), b)) 197.98/25.47 = { by axiom 8 (subtract_cancellation) } 197.98/25.48 tuple(fresh8(true2, true2, e, apply(g, sK3_lemma8_B1(sK1_lemma12_E)), sK1_lemma12_E), element(sK3_lemma8_B1(sK1_lemma12_E), b), element(apply(alpha, sK2_lemma8_A(sK1_lemma12_E)), b)) 197.98/25.48 = { by axiom 21 (lemma12) } 197.98/25.48 tuple(fresh8(element(sK1_lemma12_E, e), true2, e, apply(g, sK3_lemma8_B1(sK1_lemma12_E)), sK1_lemma12_E), element(sK3_lemma8_B1(sK1_lemma12_E), b), element(apply(alpha, sK2_lemma8_A(sK1_lemma12_E)), b)) 197.98/25.48 = { by axiom 13 (subtract_cancellation) } 197.98/25.48 tuple(fresh(element(apply(g, sK3_lemma8_B1(sK1_lemma12_E)), e), true2, e, apply(g, sK3_lemma8_B1(sK1_lemma12_E)), sK1_lemma12_E), element(sK3_lemma8_B1(sK1_lemma12_E), b), element(apply(alpha, sK2_lemma8_A(sK1_lemma12_E)), b)) 197.98/25.48 = { by axiom 5 (morphism_1) } 197.98/25.48 tuple(fresh(fresh15(true2, true2, g, b, e, sK3_lemma8_B1(sK1_lemma12_E)), true2, e, apply(g, sK3_lemma8_B1(sK1_lemma12_E)), sK1_lemma12_E), element(sK3_lemma8_B1(sK1_lemma12_E), b), element(apply(alpha, sK2_lemma8_A(sK1_lemma12_E)), b)) 197.98/25.48 = { by lemma 23 } 197.98/25.48 tuple(fresh(fresh15(element(sK3_lemma8_B1(sK1_lemma12_E), b), true2, g, b, e, sK3_lemma8_B1(sK1_lemma12_E)), true2, e, apply(g, sK3_lemma8_B1(sK1_lemma12_E)), sK1_lemma12_E), element(sK3_lemma8_B1(sK1_lemma12_E), b), element(apply(alpha, sK2_lemma8_A(sK1_lemma12_E)), b)) 197.98/25.48 = { by axiom 12 (morphism_1) } 197.98/25.48 tuple(fresh(fresh14(morphism(g, b, e), true2, g, e, sK3_lemma8_B1(sK1_lemma12_E)), true2, e, apply(g, sK3_lemma8_B1(sK1_lemma12_E)), sK1_lemma12_E), element(sK3_lemma8_B1(sK1_lemma12_E), b), element(apply(alpha, sK2_lemma8_A(sK1_lemma12_E)), b)) 197.98/25.48 = { by axiom 20 (g_morphism) } 197.98/25.48 tuple(fresh(fresh14(true2, true2, g, e, sK3_lemma8_B1(sK1_lemma12_E)), true2, e, apply(g, sK3_lemma8_B1(sK1_lemma12_E)), sK1_lemma12_E), element(sK3_lemma8_B1(sK1_lemma12_E), b), element(apply(alpha, sK2_lemma8_A(sK1_lemma12_E)), b)) 197.98/25.48 = { by axiom 6 (morphism_1) } 197.98/25.48 tuple(fresh(true2, true2, e, apply(g, sK3_lemma8_B1(sK1_lemma12_E)), sK1_lemma12_E), element(sK3_lemma8_B1(sK1_lemma12_E), b), element(apply(alpha, sK2_lemma8_A(sK1_lemma12_E)), b)) 197.98/25.48 = { by axiom 7 (subtract_cancellation) } 197.98/25.48 tuple(sK1_lemma12_E, element(sK3_lemma8_B1(sK1_lemma12_E), b), element(apply(alpha, sK2_lemma8_A(sK1_lemma12_E)), b)) 197.98/25.48 = { by lemma 23 } 197.98/25.48 tuple(sK1_lemma12_E, true2, element(apply(alpha, sK2_lemma8_A(sK1_lemma12_E)), b)) 197.98/25.48 = { by lemma 22 } 197.98/25.48 tuple(sK1_lemma12_E, true2, true2) 197.98/25.48 % SZS output end Proof 197.98/25.48 197.98/25.48 RESULT: Theorem (the conjecture is true). 197.98/25.51 EOF