0.04/0.12 % Problem : theBenchmark.p : TPTP v0.0.0. Released v0.0.0. 0.11/0.12 % Command : parallel-twee %s --tstp --conditional-encoding if --smaller --drop-non-horn --give-up-on-saturation --explain-encoding --formal-proof 0.14/0.33 % Computer : n014.cluster.edu 0.14/0.33 % Model : x86_64 x86_64 0.14/0.33 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz 0.14/0.33 % Memory : 8042.1875MB 0.14/0.33 % OS : Linux 3.10.0-693.el7.x86_64 0.14/0.34 % CPULimit : 1200 0.14/0.34 % WCLimit : 120 0.14/0.34 % DateTime : Tue Jul 13 15:03:04 EDT 2021 0.14/0.34 % CPUTime : 40.46/5.49 % SZS status Theorem 40.46/5.49 40.84/5.55 % SZS output start Proof 40.84/5.55 Take the following subset of the input axioms: 40.84/5.55 fof(goals, conjecture, m(bigA, b1, bigC)). 40.84/5.55 fof(sos01, axiom, ![B, A]: difference(A, product(A, B))=B). 40.84/5.55 fof(sos02, axiom, ![B, A]: B=product(A, difference(A, B))). 40.84/5.55 fof(sos03, axiom, ![B, A]: A=quotient(product(A, B), B)). 40.84/5.55 fof(sos04, axiom, ![B, A]: A=product(quotient(A, B), B)). 40.84/5.55 fof(sos05, axiom, ![B, A, D, C]: product(product(A, C), product(B, D))=product(product(A, B), product(C, D))). 40.84/5.55 fof(sos06, axiom, ![A]: product(A, A)=A). 40.84/5.55 fof(sos07, axiom, ![B, A]: B=product(product(product(A, B), B), product(B, product(B, A)))). 40.84/5.55 fof(sos08, axiom, ![X0, X1, X2]: (product(X0, X1)=product(X1, X2) <=> d(X0, X1, X2))). 40.84/5.55 fof(sos09, axiom, ![X3, X4, X5]: (product(X3, X5)=product(product(X3, X4), product(X4, X5)) <=> m(X3, X4, X5))). 40.84/5.55 fof(sos10, axiom, d(b, bigA, c)). 40.84/5.55 fof(sos11, axiom, d(bigB, a, c)). 40.84/5.55 fof(sos12, axiom, d(b, a, bigC)). 40.84/5.55 fof(sos13, axiom, d(a, b1, c1)). 40.84/5.55 fof(sos14, axiom, d(a1, b, c1)). 40.84/5.55 fof(sos15, axiom, d(a1, b1, c)). 40.84/5.55 40.84/5.55 Now clausify the problem and encode Horn clauses using encoding 3 of 40.84/5.55 http://www.cse.chalmers.se/~nicsma/papers/horn.pdf. 40.84/5.55 We repeatedly replace C & s=t => u=v by the two clauses: 40.84/5.55 fresh(y, y, x1...xn) = u 40.84/5.55 C => fresh(s, t, x1...xn) = v 40.84/5.55 where fresh is a fresh function symbol and x1..xn are the free 40.84/5.55 variables of u and v. 40.84/5.55 A predicate p(X) is encoded as p(X)=true (this is sound, because the 40.84/5.55 input problem has no model of domain size 1). 40.84/5.55 40.84/5.55 The encoding turns the above axioms into the following unit equations and goals: 40.84/5.55 40.84/5.55 Axiom 1 (sos06): product(X, X) = X. 40.84/5.55 Axiom 2 (sos11): d(bigB, a, c) = true. 40.84/5.55 Axiom 3 (sos14): d(a1, b, c1) = true. 40.84/5.55 Axiom 4 (sos15): d(a1, b1, c) = true. 40.84/5.55 Axiom 5 (sos10): d(b, bigA, c) = true. 40.84/5.55 Axiom 6 (sos12): d(b, a, bigC) = true. 40.84/5.55 Axiom 7 (sos13): d(a, b1, c1) = true. 40.84/5.55 Axiom 8 (sos01): difference(X, product(X, Y)) = Y. 40.84/5.55 Axiom 9 (sos03): X = quotient(product(X, Y), Y). 40.84/5.55 Axiom 10 (sos02): X = product(Y, difference(Y, X)). 40.84/5.55 Axiom 11 (sos04): X = product(quotient(X, Y), Y). 40.84/5.55 Axiom 12 (sos08_1): fresh4(X, X, Y, Z, W) = product(Z, W). 40.84/5.55 Axiom 13 (sos09): fresh2(X, X, Y, Z, W) = true. 40.84/5.55 Axiom 14 (sos05): product(product(X, Y), product(Z, W)) = product(product(X, Z), product(Y, W)). 40.84/5.55 Axiom 15 (sos08_1): fresh4(d(X, Y, Z), true, X, Y, Z) = product(X, Y). 40.84/5.55 Axiom 16 (sos07): X = product(product(product(Y, X), X), product(X, product(X, Y))). 40.84/5.55 Axiom 17 (sos09): fresh2(product(X, Y), product(product(X, Z), product(Z, Y)), X, Z, Y) = m(X, Z, Y). 40.84/5.55 40.84/5.55 Lemma 18: d(a1, b, c1) = d(bigB, a, c). 40.84/5.55 Proof: 40.84/5.55 d(a1, b, c1) 40.84/5.55 = { by axiom 3 (sos14) } 40.84/5.55 true 40.84/5.55 = { by axiom 2 (sos11) R->L } 40.84/5.55 d(bigB, a, c) 40.84/5.55 40.84/5.55 Lemma 19: fresh4(d(X, Y, Z), d(a1, b, c1), X, Y, Z) = product(X, Y). 40.84/5.55 Proof: 40.84/5.55 fresh4(d(X, Y, Z), d(a1, b, c1), X, Y, Z) 40.84/5.55 = { by lemma 18 } 40.84/5.55 fresh4(d(X, Y, Z), d(bigB, a, c), X, Y, Z) 40.84/5.55 = { by axiom 2 (sos11) } 40.84/5.55 fresh4(d(X, Y, Z), true, X, Y, Z) 40.84/5.55 = { by axiom 15 (sos08_1) } 40.84/5.55 product(X, Y) 40.84/5.55 40.84/5.55 Lemma 20: product(b, c1) = product(a1, b). 40.84/5.55 Proof: 40.84/5.55 product(b, c1) 40.84/5.55 = { by axiom 12 (sos08_1) R->L } 40.84/5.55 fresh4(d(a1, b, c1), d(a1, b, c1), a1, b, c1) 40.84/5.55 = { by lemma 19 } 40.84/5.55 product(a1, b) 40.84/5.55 40.84/5.55 Lemma 21: product(product(X, Y), product(X, Z)) = product(X, product(Y, Z)). 40.84/5.55 Proof: 40.84/5.55 product(product(X, Y), product(X, Z)) 40.84/5.55 = { by axiom 14 (sos05) R->L } 40.84/5.55 product(product(X, X), product(Y, Z)) 40.84/5.55 = { by axiom 1 (sos06) } 40.84/5.55 product(X, product(Y, Z)) 40.84/5.55 40.84/5.55 Lemma 22: product(product(X, Y), product(Z, Y)) = product(product(X, Z), Y). 40.84/5.55 Proof: 40.84/5.55 product(product(X, Y), product(Z, Y)) 40.84/5.55 = { by axiom 14 (sos05) R->L } 40.84/5.55 product(product(X, Z), product(Y, Y)) 40.84/5.55 = { by axiom 1 (sos06) } 40.84/5.55 product(product(X, Z), Y) 40.84/5.55 40.84/5.55 Lemma 23: product(product(X, quotient(Y, Z)), Z) = product(product(X, Z), Y). 40.84/5.55 Proof: 40.84/5.55 product(product(X, quotient(Y, Z)), Z) 40.84/5.55 = { by lemma 22 R->L } 40.84/5.55 product(product(X, Z), product(quotient(Y, Z), Z)) 40.84/5.55 = { by axiom 11 (sos04) R->L } 40.84/5.55 product(product(X, Z), Y) 40.84/5.55 40.84/5.55 Lemma 24: quotient(product(product(X, Y), Z), Y) = product(X, quotient(Z, Y)). 40.84/5.55 Proof: 40.84/5.55 quotient(product(product(X, Y), Z), Y) 40.84/5.55 = { by lemma 23 R->L } 40.84/5.55 quotient(product(product(X, quotient(Z, Y)), Y), Y) 40.84/5.55 = { by axiom 9 (sos03) R->L } 40.84/5.55 product(X, quotient(Z, Y)) 40.84/5.55 40.84/5.55 Lemma 25: product(a, bigC) = product(b, a). 40.84/5.55 Proof: 40.84/5.55 product(a, bigC) 40.84/5.55 = { by axiom 12 (sos08_1) R->L } 40.84/5.55 fresh4(d(a1, b, c1), d(a1, b, c1), b, a, bigC) 40.84/5.55 = { by lemma 18 } 40.84/5.55 fresh4(d(bigB, a, c), d(a1, b, c1), b, a, bigC) 40.84/5.55 = { by axiom 2 (sos11) } 40.84/5.55 fresh4(true, d(a1, b, c1), b, a, bigC) 40.84/5.55 = { by axiom 6 (sos12) R->L } 40.84/5.55 fresh4(d(b, a, bigC), d(a1, b, c1), b, a, bigC) 40.84/5.55 = { by lemma 19 } 40.84/5.55 product(b, a) 40.84/5.55 40.84/5.55 Lemma 26: product(a, c) = product(bigB, a). 40.84/5.55 Proof: 40.84/5.55 product(a, c) 40.84/5.55 = { by axiom 12 (sos08_1) R->L } 40.84/5.55 fresh4(d(a1, b, c1), d(a1, b, c1), bigB, a, c) 40.84/5.55 = { by lemma 18 } 40.84/5.55 fresh4(d(bigB, a, c), d(a1, b, c1), bigB, a, c) 40.84/5.55 = { by lemma 19 } 40.84/5.55 product(bigB, a) 40.84/5.55 40.84/5.55 Lemma 27: product(product(a, X), c) = product(bigB, product(X, a)). 40.84/5.55 Proof: 40.84/5.55 product(product(a, X), c) 40.84/5.55 = { by lemma 22 R->L } 40.84/5.55 product(product(a, c), product(X, c)) 40.84/5.55 = { by lemma 26 } 40.84/5.55 product(product(bigB, a), product(X, c)) 40.84/5.55 = { by axiom 14 (sos05) } 40.84/5.55 product(product(bigB, X), product(a, c)) 40.84/5.55 = { by lemma 26 } 40.84/5.55 product(product(bigB, X), product(bigB, a)) 40.84/5.55 = { by lemma 21 } 40.84/5.55 product(bigB, product(X, a)) 40.84/5.55 40.84/5.55 Lemma 28: product(product(quotient(X, Y), Z), Y) = product(X, product(Z, Y)). 40.84/5.55 Proof: 40.84/5.55 product(product(quotient(X, Y), Z), Y) 40.84/5.55 = { by lemma 22 R->L } 40.84/5.55 product(product(quotient(X, Y), Y), product(Z, Y)) 40.84/5.55 = { by axiom 11 (sos04) R->L } 40.84/5.55 product(X, product(Z, Y)) 40.84/5.55 40.84/5.55 Lemma 29: product(b, c) = product(bigB, bigC). 40.84/5.55 Proof: 40.84/5.55 product(b, c) 40.84/5.55 = { by axiom 11 (sos04) } 40.84/5.55 product(b, product(quotient(c, a), a)) 40.84/5.55 = { by lemma 21 R->L } 40.84/5.55 product(product(b, quotient(c, a)), product(b, a)) 40.84/5.55 = { by lemma 24 R->L } 40.84/5.55 product(quotient(product(product(b, a), c), a), product(b, a)) 40.84/5.55 = { by lemma 25 R->L } 40.84/5.55 product(quotient(product(product(a, bigC), c), a), product(b, a)) 40.84/5.55 = { by lemma 27 } 40.84/5.55 product(quotient(product(bigB, product(bigC, a)), a), product(b, a)) 40.84/5.55 = { by lemma 28 R->L } 40.84/5.55 product(quotient(product(product(quotient(bigB, a), bigC), a), a), product(b, a)) 40.84/5.55 = { by axiom 9 (sos03) R->L } 40.84/5.55 product(product(quotient(bigB, a), bigC), product(b, a)) 40.84/5.55 = { by lemma 25 R->L } 40.84/5.55 product(product(quotient(bigB, a), bigC), product(a, bigC)) 40.84/5.55 = { by lemma 22 } 40.84/5.55 product(product(quotient(bigB, a), a), bigC) 40.84/5.55 = { by axiom 11 (sos04) R->L } 40.84/5.55 product(bigB, bigC) 40.84/5.55 40.84/5.55 Lemma 30: d(b, bigA, c) = d(a1, b, c1). 40.84/5.55 Proof: 40.84/5.55 d(b, bigA, c) 40.84/5.55 = { by axiom 5 (sos10) } 40.84/5.55 true 40.84/5.55 = { by axiom 2 (sos11) R->L } 40.84/5.55 d(bigB, a, c) 40.84/5.55 = { by lemma 18 R->L } 40.84/5.55 d(a1, b, c1) 40.84/5.55 40.84/5.55 Lemma 31: product(b, bigA) = product(bigA, c). 40.84/5.55 Proof: 40.84/5.55 product(b, bigA) 40.84/5.55 = { by lemma 19 R->L } 40.84/5.55 fresh4(d(b, bigA, c), d(a1, b, c1), b, bigA, c) 40.84/5.55 = { by lemma 30 } 40.84/5.55 fresh4(d(a1, b, c1), d(a1, b, c1), b, bigA, c) 40.84/5.55 = { by axiom 12 (sos08_1) } 40.84/5.55 product(bigA, c) 40.84/5.55 40.84/5.55 Lemma 32: product(a, b1) = product(b1, c1). 40.84/5.55 Proof: 40.84/5.55 product(a, b1) 40.84/5.55 = { by lemma 19 R->L } 40.84/5.55 fresh4(d(a, b1, c1), d(a1, b, c1), a, b1, c1) 40.84/5.55 = { by axiom 7 (sos13) } 40.84/5.55 fresh4(true, d(a1, b, c1), a, b1, c1) 40.84/5.55 = { by axiom 2 (sos11) R->L } 40.84/5.55 fresh4(d(bigB, a, c), d(a1, b, c1), a, b1, c1) 40.84/5.55 = { by lemma 18 R->L } 40.84/5.55 fresh4(d(a1, b, c1), d(a1, b, c1), a, b1, c1) 40.84/5.55 = { by axiom 12 (sos08_1) } 40.84/5.55 product(b1, c1) 40.84/5.55 40.84/5.55 Lemma 33: difference(product(product(X, Y), Y), Y) = product(Y, product(Y, X)). 40.84/5.55 Proof: 40.84/5.55 difference(product(product(X, Y), Y), Y) 40.84/5.55 = { by axiom 16 (sos07) } 40.84/5.55 difference(product(product(X, Y), Y), product(product(product(X, Y), Y), product(Y, product(Y, X)))) 40.84/5.55 = { by axiom 8 (sos01) } 40.84/5.55 product(Y, product(Y, X)) 40.84/5.55 40.84/5.55 Lemma 34: product(product(X, Y), X) = product(X, product(Y, X)). 40.84/5.55 Proof: 40.84/5.56 product(product(X, Y), X) 40.84/5.56 = { by axiom 1 (sos06) R->L } 40.84/5.56 product(product(X, Y), product(X, X)) 40.84/5.56 = { by lemma 21 } 40.84/5.56 product(X, product(Y, X)) 40.84/5.56 40.84/5.56 Lemma 35: quotient(product(X, product(Y, X)), X) = product(X, Y). 40.84/5.56 Proof: 40.84/5.56 quotient(product(X, product(Y, X)), X) 40.84/5.56 = { by lemma 34 R->L } 40.84/5.56 quotient(product(product(X, Y), X), X) 40.84/5.56 = { by axiom 9 (sos03) R->L } 40.84/5.56 product(X, Y) 40.84/5.56 40.84/5.56 Lemma 36: difference(X, difference(product(Y, X), X)) = quotient(product(X, Y), X). 40.84/5.56 Proof: 40.84/5.56 difference(X, difference(product(Y, X), X)) 40.84/5.56 = { by axiom 11 (sos04) } 40.84/5.56 difference(X, difference(product(product(quotient(Y, X), X), X), X)) 40.84/5.56 = { by lemma 33 } 40.84/5.56 difference(X, product(X, product(X, quotient(Y, X)))) 40.84/5.56 = { by axiom 8 (sos01) } 40.84/5.56 product(X, quotient(Y, X)) 40.84/5.56 = { by lemma 35 R->L } 40.84/5.56 quotient(product(X, product(quotient(Y, X), X)), X) 40.84/5.56 = { by axiom 11 (sos04) R->L } 40.84/5.56 quotient(product(X, Y), X) 40.84/5.56 40.84/5.56 Lemma 37: product(b1, c1) = product(c1, a). 40.84/5.56 Proof: 40.84/5.56 product(b1, c1) 40.84/5.56 = { by axiom 8 (sos01) R->L } 40.84/5.56 product(difference(c1, product(c1, b1)), c1) 40.84/5.56 = { by axiom 8 (sos01) R->L } 40.84/5.56 product(difference(c1, difference(product(a, c1), product(product(a, c1), product(c1, b1)))), c1) 40.84/5.56 = { by lemma 22 R->L } 40.84/5.56 product(difference(c1, difference(product(a, c1), product(product(a, product(c1, b1)), product(c1, product(c1, b1))))), c1) 40.84/5.56 = { by lemma 21 R->L } 40.84/5.56 product(difference(c1, difference(product(a, c1), product(product(product(a, c1), product(a, b1)), product(c1, product(c1, b1))))), c1) 40.84/5.56 = { by lemma 32 } 40.84/5.56 product(difference(c1, difference(product(a, c1), product(product(product(a, c1), product(b1, c1)), product(c1, product(c1, b1))))), c1) 40.84/5.56 = { by axiom 14 (sos05) } 40.84/5.56 product(difference(c1, difference(product(a, c1), product(product(product(a, b1), product(c1, c1)), product(c1, product(c1, b1))))), c1) 40.84/5.56 = { by lemma 32 } 40.84/5.56 product(difference(c1, difference(product(a, c1), product(product(product(b1, c1), product(c1, c1)), product(c1, product(c1, b1))))), c1) 40.84/5.56 = { by lemma 22 } 40.84/5.56 product(difference(c1, difference(product(a, c1), product(product(product(b1, c1), c1), product(c1, product(c1, b1))))), c1) 40.84/5.56 = { by axiom 16 (sos07) R->L } 40.84/5.56 product(difference(c1, difference(product(a, c1), c1)), c1) 40.84/5.56 = { by lemma 36 } 40.84/5.56 product(quotient(product(c1, a), c1), c1) 40.84/5.56 = { by axiom 11 (sos04) R->L } 40.84/5.56 product(c1, a) 40.84/5.56 40.84/5.56 Lemma 38: product(b1, c) = product(a1, b1). 40.84/5.56 Proof: 40.84/5.56 product(b1, c) 40.84/5.56 = { by axiom 12 (sos08_1) R->L } 40.84/5.56 fresh4(d(a1, b, c1), d(a1, b, c1), a1, b1, c) 40.84/5.56 = { by lemma 18 } 40.84/5.56 fresh4(d(bigB, a, c), d(a1, b, c1), a1, b1, c) 40.84/5.56 = { by axiom 2 (sos11) } 40.84/5.56 fresh4(true, d(a1, b, c1), a1, b1, c) 40.84/5.56 = { by axiom 4 (sos15) R->L } 40.84/5.56 fresh4(d(a1, b1, c), d(a1, b, c1), a1, b1, c) 40.84/5.56 = { by lemma 19 } 40.84/5.56 product(a1, b1) 40.84/5.56 40.84/5.56 Lemma 39: product(difference(X, Y), X) = difference(X, product(Y, X)). 40.84/5.56 Proof: 40.84/5.56 product(difference(X, Y), X) 40.84/5.56 = { by axiom 8 (sos01) R->L } 40.84/5.56 difference(X, product(X, product(difference(X, Y), X))) 40.84/5.56 = { by lemma 34 R->L } 40.84/5.56 difference(X, product(product(X, difference(X, Y)), X)) 40.84/5.56 = { by axiom 10 (sos02) R->L } 40.84/5.56 difference(X, product(Y, X)) 40.84/5.56 40.84/5.56 Lemma 40: quotient(quotient(X, product(X, Y)), X) = difference(X, product(Y, X)). 40.84/5.56 Proof: 40.84/5.56 quotient(quotient(X, product(X, Y)), X) 40.84/5.56 = { by axiom 10 (sos02) } 40.84/5.56 quotient(quotient(X, product(X, product(X, difference(X, Y)))), X) 40.84/5.56 = { by axiom 16 (sos07) } 40.84/5.56 quotient(quotient(product(product(product(difference(X, Y), X), X), product(X, product(X, difference(X, Y)))), product(X, product(X, difference(X, Y)))), X) 40.84/5.56 = { by axiom 9 (sos03) R->L } 40.84/5.56 quotient(product(product(difference(X, Y), X), X), X) 40.84/5.56 = { by axiom 9 (sos03) R->L } 40.84/5.56 product(difference(X, Y), X) 40.84/5.56 = { by lemma 39 } 40.84/5.56 difference(X, product(Y, X)) 40.84/5.56 40.84/5.56 Lemma 41: product(product(a1, c), product(c, b1)) = c. 40.84/5.56 Proof: 40.84/5.56 product(product(a1, c), product(c, b1)) 40.84/5.56 = { by lemma 22 R->L } 40.84/5.56 product(product(a1, product(c, b1)), product(c, product(c, b1))) 40.84/5.56 = { by lemma 33 R->L } 40.84/5.56 product(product(a1, product(c, b1)), difference(product(product(b1, c), c), c)) 40.84/5.56 = { by lemma 22 R->L } 40.84/5.56 product(product(a1, product(c, b1)), difference(product(product(b1, c), product(c, c)), c)) 40.84/5.56 = { by lemma 38 } 40.84/5.56 product(product(a1, product(c, b1)), difference(product(product(a1, b1), product(c, c)), c)) 40.84/5.56 = { by axiom 14 (sos05) } 40.84/5.56 product(product(a1, product(c, b1)), difference(product(product(a1, c), product(b1, c)), c)) 40.84/5.56 = { by lemma 38 } 40.84/5.56 product(product(a1, product(c, b1)), difference(product(product(a1, c), product(a1, b1)), c)) 40.84/5.56 = { by lemma 21 } 40.84/5.56 product(product(a1, product(c, b1)), difference(product(a1, product(c, b1)), c)) 40.84/5.56 = { by axiom 10 (sos02) R->L } 40.84/5.56 c 40.84/5.56 40.84/5.56 Lemma 42: product(a1, quotient(product(c, b1), c)) = c. 40.84/5.56 Proof: 40.84/5.56 product(a1, quotient(product(c, b1), c)) 40.84/5.56 = { by lemma 24 R->L } 40.84/5.56 quotient(product(product(a1, c), product(c, b1)), c) 40.84/5.56 = { by lemma 41 } 40.84/5.56 quotient(c, c) 40.84/5.56 = { by axiom 1 (sos06) R->L } 40.84/5.56 quotient(product(c, c), c) 40.84/5.56 = { by axiom 9 (sos03) R->L } 40.84/5.56 c 40.84/5.56 40.84/5.56 Lemma 43: product(bigA, c) = product(c1, b1). 40.84/5.56 Proof: 40.84/5.56 product(bigA, c) 40.84/5.56 = { by axiom 10 (sos02) } 40.84/5.56 product(c, difference(c, product(bigA, c))) 40.84/5.56 = { by lemma 40 R->L } 40.84/5.56 product(c, quotient(quotient(c, product(c, bigA)), c)) 40.84/5.56 = { by axiom 16 (sos07) } 40.84/5.56 product(c, quotient(quotient(product(product(product(bigA, c), c), product(c, product(c, bigA))), product(c, bigA)), c)) 40.84/5.56 = { by lemma 22 R->L } 40.84/5.56 product(c, quotient(quotient(product(product(product(bigA, c), product(c, c)), product(c, product(c, bigA))), product(c, bigA)), c)) 40.84/5.56 = { by lemma 31 R->L } 40.84/5.56 product(c, quotient(quotient(product(product(product(b, bigA), product(c, c)), product(c, product(c, bigA))), product(c, bigA)), c)) 40.84/5.56 = { by axiom 14 (sos05) R->L } 40.84/5.56 product(c, quotient(quotient(product(product(product(b, c), product(bigA, c)), product(c, product(c, bigA))), product(c, bigA)), c)) 40.84/5.56 = { by lemma 31 R->L } 40.84/5.56 product(c, quotient(quotient(product(product(product(b, c), product(b, bigA)), product(c, product(c, bigA))), product(c, bigA)), c)) 40.84/5.56 = { by lemma 21 } 40.84/5.56 product(c, quotient(quotient(product(product(b, product(c, bigA)), product(c, product(c, bigA))), product(c, bigA)), c)) 40.84/5.56 = { by lemma 22 } 40.84/5.56 product(c, quotient(quotient(product(product(b, c), product(c, bigA)), product(c, bigA)), c)) 40.84/5.56 = { by lemma 29 } 40.84/5.56 product(c, quotient(quotient(product(product(bigB, bigC), product(c, bigA)), product(c, bigA)), c)) 40.84/5.56 = { by axiom 9 (sos03) R->L } 40.84/5.56 product(c, quotient(product(bigB, bigC), c)) 40.84/5.56 = { by lemma 29 R->L } 40.84/5.56 product(c, quotient(product(b, c), c)) 40.84/5.56 = { by axiom 9 (sos03) R->L } 40.84/5.56 product(c, b) 40.84/5.56 = { by lemma 42 R->L } 40.84/5.56 product(product(a1, quotient(product(c, b1), c)), b) 40.84/5.56 = { by lemma 22 R->L } 40.84/5.56 product(product(a1, b), product(quotient(product(c, b1), c), b)) 40.84/5.56 = { by axiom 8 (sos01) R->L } 40.84/5.56 product(product(a1, b), product(quotient(product(c, b1), c), difference(a1, product(a1, b)))) 40.84/5.56 = { by axiom 11 (sos04) } 40.84/5.56 product(product(quotient(product(a1, b), a1), a1), product(quotient(product(c, b1), c), difference(a1, product(a1, b)))) 40.84/5.56 = { by axiom 14 (sos05) R->L } 40.84/5.56 product(product(quotient(product(a1, b), a1), quotient(product(c, b1), c)), product(a1, difference(a1, product(a1, b)))) 40.84/5.56 = { by axiom 10 (sos02) R->L } 40.84/5.56 product(product(quotient(product(a1, b), a1), quotient(product(c, b1), c)), product(a1, b)) 40.84/5.56 = { by axiom 11 (sos04) } 40.84/5.56 product(product(quotient(product(a1, b), a1), quotient(product(c, b1), c)), product(quotient(product(a1, b), a1), a1)) 40.84/5.56 = { by lemma 21 } 40.84/5.56 product(quotient(product(a1, b), a1), product(quotient(product(c, b1), c), a1)) 40.84/5.56 = { by axiom 9 (sos03) } 40.84/5.56 product(quotient(product(a1, b), quotient(product(a1, c1), c1)), product(quotient(product(c, b1), c), a1)) 40.84/5.56 = { by axiom 9 (sos03) } 40.84/5.56 product(quotient(product(a1, b), quotient(quotient(product(product(a1, c1), product(c1, b)), product(c1, b)), c1)), product(quotient(product(c, b1), c), a1)) 40.84/5.56 = { by lemma 22 R->L } 40.84/5.56 product(quotient(product(a1, b), quotient(quotient(product(product(a1, product(c1, b)), product(c1, product(c1, b))), product(c1, b)), c1)), product(quotient(product(c, b1), c), a1)) 40.84/5.56 = { by lemma 33 R->L } 40.84/5.56 product(quotient(product(a1, b), quotient(quotient(product(product(a1, product(c1, b)), difference(product(product(b, c1), c1), c1)), product(c1, b)), c1)), product(quotient(product(c, b1), c), a1)) 40.84/5.56 = { by lemma 22 R->L } 40.84/5.56 product(quotient(product(a1, b), quotient(quotient(product(product(a1, product(c1, b)), difference(product(product(b, c1), product(c1, c1)), c1)), product(c1, b)), c1)), product(quotient(product(c, b1), c), a1)) 40.84/5.56 = { by lemma 20 } 40.84/5.56 product(quotient(product(a1, b), quotient(quotient(product(product(a1, product(c1, b)), difference(product(product(a1, b), product(c1, c1)), c1)), product(c1, b)), c1)), product(quotient(product(c, b1), c), a1)) 40.84/5.56 = { by axiom 14 (sos05) } 40.84/5.56 product(quotient(product(a1, b), quotient(quotient(product(product(a1, product(c1, b)), difference(product(product(a1, c1), product(b, c1)), c1)), product(c1, b)), c1)), product(quotient(product(c, b1), c), a1)) 40.84/5.56 = { by lemma 20 } 40.84/5.56 product(quotient(product(a1, b), quotient(quotient(product(product(a1, product(c1, b)), difference(product(product(a1, c1), product(a1, b)), c1)), product(c1, b)), c1)), product(quotient(product(c, b1), c), a1)) 40.84/5.56 = { by lemma 21 } 40.84/5.56 product(quotient(product(a1, b), quotient(quotient(product(product(a1, product(c1, b)), difference(product(a1, product(c1, b)), c1)), product(c1, b)), c1)), product(quotient(product(c, b1), c), a1)) 40.84/5.56 = { by axiom 10 (sos02) R->L } 40.84/5.56 product(quotient(product(a1, b), quotient(quotient(c1, product(c1, b)), c1)), product(quotient(product(c, b1), c), a1)) 40.84/5.56 = { by lemma 40 } 40.84/5.56 product(quotient(product(a1, b), difference(c1, product(b, c1))), product(quotient(product(c, b1), c), a1)) 40.84/5.56 = { by lemma 20 } 40.84/5.56 product(quotient(product(a1, b), difference(c1, product(a1, b))), product(quotient(product(c, b1), c), a1)) 40.84/5.56 = { by axiom 10 (sos02) } 40.84/5.56 product(quotient(product(c1, difference(c1, product(a1, b))), difference(c1, product(a1, b))), product(quotient(product(c, b1), c), a1)) 40.84/5.56 = { by axiom 9 (sos03) R->L } 40.84/5.56 product(c1, product(quotient(product(c, b1), c), a1)) 40.84/5.56 = { by axiom 8 (sos01) R->L } 40.84/5.56 product(c1, product(difference(a1, product(a1, quotient(product(c, b1), c))), a1)) 40.84/5.56 = { by lemma 42 } 40.84/5.56 product(c1, product(difference(a1, c), a1)) 40.84/5.56 = { by lemma 39 } 40.84/5.56 product(c1, difference(a1, product(c, a1))) 40.84/5.56 = { by axiom 11 (sos04) } 40.84/5.56 product(c1, difference(a1, product(quotient(product(c, a1), c), c))) 40.84/5.56 = { by lemma 36 R->L } 40.84/5.56 product(c1, difference(a1, product(difference(c, difference(product(a1, c), c)), c))) 40.84/5.56 = { by lemma 41 R->L } 40.84/5.56 product(c1, difference(a1, product(difference(c, difference(product(a1, c), product(product(a1, c), product(c, b1)))), c))) 40.84/5.56 = { by axiom 8 (sos01) } 40.84/5.56 product(c1, difference(a1, product(difference(c, product(c, b1)), c))) 40.84/5.56 = { by axiom 8 (sos01) } 40.84/5.56 product(c1, difference(a1, product(b1, c))) 40.84/5.56 = { by lemma 38 } 40.84/5.56 product(c1, difference(a1, product(a1, b1))) 40.84/5.56 = { by axiom 8 (sos01) } 40.84/5.56 product(c1, b1) 40.84/5.56 40.84/5.56 Lemma 44: difference(a, product(X, a)) = difference(bigB, product(X, c)). 40.84/5.56 Proof: 40.84/5.56 difference(a, product(X, a)) 40.84/5.56 = { by axiom 8 (sos01) R->L } 40.84/5.56 difference(bigB, product(bigB, difference(a, product(X, a)))) 40.84/5.56 = { by lemma 39 R->L } 40.84/5.56 difference(bigB, product(bigB, product(difference(a, X), a))) 40.84/5.56 = { by lemma 27 R->L } 40.84/5.56 difference(bigB, product(product(a, difference(a, X)), c)) 40.84/5.56 = { by axiom 10 (sos02) R->L } 40.84/5.56 difference(bigB, product(X, c)) 40.84/5.56 40.84/5.56 Lemma 45: quotient(product(b1, c1), b1) = a. 40.84/5.56 Proof: 40.84/5.56 quotient(product(b1, c1), b1) 40.84/5.56 = { by lemma 32 R->L } 40.84/5.56 quotient(product(a, b1), b1) 40.84/5.56 = { by axiom 9 (sos03) R->L } 40.84/5.56 a 40.84/5.56 40.84/5.56 Lemma 46: product(X, product(Y, difference(X, Z))) = product(product(X, Y), Z). 40.84/5.56 Proof: 40.84/5.56 product(X, product(Y, difference(X, Z))) 40.84/5.56 = { by lemma 21 R->L } 40.84/5.56 product(product(X, Y), product(X, difference(X, Z))) 40.84/5.56 = { by axiom 10 (sos02) R->L } 40.84/5.56 product(product(X, Y), Z) 40.84/5.56 40.84/5.56 Lemma 47: product(b, difference(bigB, product(X, c))) = product(X, bigC). 40.84/5.56 Proof: 40.84/5.56 product(b, difference(bigB, product(X, c))) 40.84/5.56 = { by lemma 44 R->L } 40.84/5.56 product(b, difference(a, product(X, a))) 40.84/5.56 = { by lemma 39 R->L } 40.84/5.56 product(b, product(difference(a, X), a)) 40.84/5.56 = { by lemma 21 R->L } 40.84/5.56 product(product(b, difference(a, X)), product(b, a)) 40.84/5.56 = { by lemma 25 R->L } 40.84/5.56 product(product(b, difference(a, X)), product(a, bigC)) 40.84/5.56 = { by axiom 14 (sos05) R->L } 40.84/5.56 product(product(b, a), product(difference(a, X), bigC)) 40.84/5.56 = { by lemma 25 R->L } 40.84/5.56 product(product(a, bigC), product(difference(a, X), bigC)) 40.84/5.56 = { by lemma 22 } 40.84/5.56 product(product(a, difference(a, X)), bigC) 40.84/5.56 = { by axiom 10 (sos02) R->L } 40.84/5.56 product(X, bigC) 40.84/5.56 40.84/5.56 Lemma 48: product(c1, difference(bigB, product(X, c))) = product(X, b1). 40.84/5.56 Proof: 40.84/5.56 product(c1, difference(bigB, product(X, c))) 40.84/5.56 = { by lemma 44 R->L } 40.84/5.56 product(c1, difference(a, product(X, a))) 40.84/5.56 = { by lemma 39 R->L } 40.84/5.56 product(c1, product(difference(a, X), a)) 40.84/5.56 = { by lemma 21 R->L } 40.84/5.56 product(product(c1, difference(a, X)), product(c1, a)) 40.84/5.56 = { by lemma 37 R->L } 40.84/5.56 product(product(c1, difference(a, X)), product(b1, c1)) 40.84/5.56 = { by lemma 32 R->L } 40.84/5.56 product(product(c1, difference(a, X)), product(a, b1)) 40.84/5.56 = { by axiom 14 (sos05) } 40.84/5.56 product(product(c1, a), product(difference(a, X), b1)) 40.84/5.56 = { by lemma 37 R->L } 40.84/5.56 product(product(b1, c1), product(difference(a, X), b1)) 40.84/5.56 = { by lemma 28 R->L } 40.84/5.56 product(product(quotient(product(b1, c1), b1), difference(a, X)), b1) 40.84/5.56 = { by lemma 45 } 40.84/5.56 product(product(a, difference(a, X)), b1) 40.84/5.56 = { by axiom 10 (sos02) R->L } 40.84/5.56 product(X, b1) 40.84/5.56 40.84/5.56 Lemma 49: difference(X, product(product(X, Y), Z)) = product(Y, difference(X, Z)). 40.84/5.56 Proof: 40.84/5.56 difference(X, product(product(X, Y), Z)) 40.84/5.56 = { by lemma 46 R->L } 40.84/5.56 difference(X, product(X, product(Y, difference(X, Z)))) 40.84/5.56 = { by axiom 8 (sos01) } 40.84/5.56 product(Y, difference(X, Z)) 40.84/5.56 40.84/5.56 Goal 1 (goals): m(bigA, b1, bigC) = true. 40.84/5.56 Proof: 40.84/5.56 m(bigA, b1, bigC) 40.84/5.56 = { by axiom 17 (sos09) R->L } 40.84/5.56 fresh2(product(bigA, bigC), product(product(bigA, b1), product(b1, bigC)), bigA, b1, bigC) 40.84/5.56 = { by lemma 35 R->L } 40.84/5.56 fresh2(product(bigA, bigC), quotient(product(product(bigA, b1), product(product(b1, bigC), product(bigA, b1))), product(bigA, b1)), bigA, b1, bigC) 40.84/5.56 = { by axiom 8 (sos01) R->L } 40.84/5.56 fresh2(product(bigA, bigC), quotient(product(product(bigA, b1), product(product(b1, bigC), difference(b, product(b, product(bigA, b1))))), product(bigA, b1)), bigA, b1, bigC) 40.84/5.56 = { by lemma 21 R->L } 40.84/5.56 fresh2(product(bigA, bigC), quotient(product(product(bigA, b1), product(product(b1, bigC), difference(b, product(product(b, bigA), product(b, b1))))), product(bigA, b1)), bigA, b1, bigC) 40.84/5.56 = { by lemma 19 R->L } 40.84/5.56 fresh2(product(bigA, bigC), quotient(product(product(bigA, b1), product(product(b1, bigC), difference(b, product(fresh4(d(b, bigA, c), d(a1, b, c1), b, bigA, c), product(b, b1))))), product(bigA, b1)), bigA, b1, bigC) 40.84/5.57 = { by lemma 30 } 40.84/5.57 fresh2(product(bigA, bigC), quotient(product(product(bigA, b1), product(product(b1, bigC), difference(b, product(fresh4(d(a1, b, c1), d(a1, b, c1), b, bigA, c), product(b, b1))))), product(bigA, b1)), bigA, b1, bigC) 40.84/5.57 = { by axiom 12 (sos08_1) } 40.84/5.57 fresh2(product(bigA, bigC), quotient(product(product(bigA, b1), product(product(b1, bigC), difference(b, product(product(bigA, c), product(b, b1))))), product(bigA, b1)), bigA, b1, bigC) 40.84/5.57 = { by lemma 43 } 40.84/5.57 fresh2(product(bigA, bigC), quotient(product(product(bigA, b1), product(product(b1, bigC), difference(b, product(product(c1, b1), product(b, b1))))), product(bigA, b1)), bigA, b1, bigC) 40.84/5.57 = { by axiom 14 (sos05) } 40.84/5.57 fresh2(product(bigA, bigC), quotient(product(product(bigA, b1), product(product(b1, bigC), difference(b, product(product(c1, b), product(b1, b1))))), product(bigA, b1)), bigA, b1, bigC) 40.84/5.57 = { by axiom 1 (sos06) } 40.84/5.57 fresh2(product(bigA, bigC), quotient(product(product(bigA, b1), product(product(b1, bigC), difference(b, product(product(c1, b), b1)))), product(bigA, b1)), bigA, b1, bigC) 40.84/5.57 = { by lemma 46 R->L } 40.84/5.57 fresh2(product(bigA, bigC), quotient(product(product(bigA, b1), product(product(b1, bigC), difference(b, product(c1, product(b, difference(c1, b1)))))), product(bigA, b1)), bigA, b1, bigC) 40.84/5.57 = { by axiom 8 (sos01) R->L } 40.84/5.57 fresh2(product(bigA, bigC), quotient(product(product(bigA, b1), product(product(b1, bigC), difference(b, product(c1, product(b, difference(a, product(a, difference(c1, b1)))))))), product(bigA, b1)), bigA, b1, bigC) 40.84/5.57 = { by lemma 49 R->L } 40.84/5.57 fresh2(product(bigA, bigC), quotient(product(product(bigA, b1), product(product(b1, bigC), difference(b, product(c1, product(b, difference(a, difference(c1, product(product(c1, a), b1)))))))), product(bigA, b1)), bigA, b1, bigC) 40.84/5.57 = { by lemma 45 R->L } 40.84/5.57 fresh2(product(bigA, bigC), quotient(product(product(bigA, b1), product(product(b1, bigC), difference(b, product(c1, product(b, difference(a, difference(c1, product(product(c1, quotient(product(b1, c1), b1)), b1)))))))), product(bigA, b1)), bigA, b1, bigC) 40.84/5.57 = { by lemma 23 } 40.84/5.57 fresh2(product(bigA, bigC), quotient(product(product(bigA, b1), product(product(b1, bigC), difference(b, product(c1, product(b, difference(a, difference(c1, product(product(c1, b1), product(b1, c1))))))))), product(bigA, b1)), bigA, b1, bigC) 40.84/5.57 = { by lemma 37 } 40.84/5.57 fresh2(product(bigA, bigC), quotient(product(product(bigA, b1), product(product(b1, bigC), difference(b, product(c1, product(b, difference(a, difference(c1, product(product(c1, b1), product(c1, a))))))))), product(bigA, b1)), bigA, b1, bigC) 40.84/5.57 = { by axiom 14 (sos05) } 40.84/5.57 fresh2(product(bigA, bigC), quotient(product(product(bigA, b1), product(product(b1, bigC), difference(b, product(c1, product(b, difference(a, difference(c1, product(product(c1, c1), product(b1, a))))))))), product(bigA, b1)), bigA, b1, bigC) 40.84/5.57 = { by axiom 1 (sos06) } 40.84/5.57 fresh2(product(bigA, bigC), quotient(product(product(bigA, b1), product(product(b1, bigC), difference(b, product(c1, product(b, difference(a, difference(c1, product(c1, product(b1, a))))))))), product(bigA, b1)), bigA, b1, bigC) 40.84/5.57 = { by axiom 8 (sos01) } 40.84/5.57 fresh2(product(bigA, bigC), quotient(product(product(bigA, b1), product(product(b1, bigC), difference(b, product(c1, product(b, difference(a, product(b1, a))))))), product(bigA, b1)), bigA, b1, bigC) 40.84/5.57 = { by lemma 44 } 40.84/5.57 fresh2(product(bigA, bigC), quotient(product(product(bigA, b1), product(product(b1, bigC), difference(b, product(c1, product(b, difference(bigB, product(b1, c))))))), product(bigA, b1)), bigA, b1, bigC) 40.84/5.57 = { by lemma 47 } 40.84/5.57 fresh2(product(bigA, bigC), quotient(product(product(bigA, b1), product(product(b1, bigC), difference(b, product(c1, product(b1, bigC))))), product(bigA, b1)), bigA, b1, bigC) 40.84/5.57 = { by lemma 49 R->L } 40.84/5.57 fresh2(product(bigA, bigC), quotient(product(product(bigA, b1), difference(b, product(product(b, product(b1, bigC)), product(c1, product(b1, bigC))))), product(bigA, b1)), bigA, b1, bigC) 40.84/5.57 = { by lemma 22 } 40.84/5.57 fresh2(product(bigA, bigC), quotient(product(product(bigA, b1), difference(b, product(product(b, c1), product(b1, bigC)))), product(bigA, b1)), bigA, b1, bigC) 40.84/5.57 = { by lemma 49 } 40.84/5.57 fresh2(product(bigA, bigC), quotient(product(product(bigA, b1), product(c1, difference(b, product(b1, bigC)))), product(bigA, b1)), bigA, b1, bigC) 40.84/5.57 = { by lemma 47 R->L } 40.84/5.57 fresh2(product(bigA, bigC), quotient(product(product(bigA, b1), product(c1, difference(b, product(b, difference(bigB, product(b1, c)))))), product(bigA, b1)), bigA, b1, bigC) 40.84/5.57 = { by axiom 8 (sos01) } 40.84/5.57 fresh2(product(bigA, bigC), quotient(product(product(bigA, b1), product(c1, difference(bigB, product(b1, c)))), product(bigA, b1)), bigA, b1, bigC) 40.84/5.57 = { by lemma 48 } 40.84/5.57 fresh2(product(bigA, bigC), quotient(product(product(bigA, b1), product(b1, b1)), product(bigA, b1)), bigA, b1, bigC) 40.84/5.57 = { by axiom 1 (sos06) } 40.84/5.57 fresh2(product(bigA, bigC), quotient(product(product(bigA, b1), b1), product(bigA, b1)), bigA, b1, bigC) 40.84/5.57 = { by axiom 11 (sos04) } 40.84/5.57 fresh2(product(bigA, bigC), quotient(product(product(quotient(product(bigA, b1), bigA), bigA), b1), product(bigA, b1)), bigA, b1, bigC) 40.84/5.57 = { by lemma 22 R->L } 40.84/5.57 fresh2(product(bigA, bigC), quotient(product(product(quotient(product(bigA, b1), bigA), b1), product(bigA, b1)), product(bigA, b1)), bigA, b1, bigC) 40.84/5.57 = { by axiom 9 (sos03) R->L } 40.84/5.57 fresh2(product(bigA, bigC), product(quotient(product(bigA, b1), bigA), b1), bigA, b1, bigC) 40.84/5.57 = { by axiom 8 (sos01) R->L } 40.84/5.57 fresh2(product(bigA, bigC), difference(c1, product(c1, product(quotient(product(bigA, b1), bigA), b1))), bigA, b1, bigC) 40.84/5.57 = { by lemma 21 R->L } 40.84/5.57 fresh2(product(bigA, bigC), difference(c1, product(product(c1, quotient(product(bigA, b1), bigA)), product(c1, b1))), bigA, b1, bigC) 40.84/5.57 = { by lemma 43 R->L } 40.84/5.57 fresh2(product(bigA, bigC), difference(c1, product(product(c1, quotient(product(bigA, b1), bigA)), product(bigA, c))), bigA, b1, bigC) 40.84/5.57 = { by lemma 31 R->L } 40.84/5.57 fresh2(product(bigA, bigC), difference(c1, product(product(c1, quotient(product(bigA, b1), bigA)), product(b, bigA))), bigA, b1, bigC) 40.84/5.57 = { by axiom 14 (sos05) } 40.84/5.57 fresh2(product(bigA, bigC), difference(c1, product(product(c1, b), product(quotient(product(bigA, b1), bigA), bigA))), bigA, b1, bigC) 40.84/5.57 = { by lemma 49 } 40.84/5.57 fresh2(product(bigA, bigC), product(b, difference(c1, product(quotient(product(bigA, b1), bigA), bigA))), bigA, b1, bigC) 40.84/5.57 = { by axiom 11 (sos04) R->L } 40.84/5.57 fresh2(product(bigA, bigC), product(b, difference(c1, product(bigA, b1))), bigA, b1, bigC) 40.84/5.57 = { by lemma 48 R->L } 40.84/5.57 fresh2(product(bigA, bigC), product(b, difference(c1, product(c1, difference(bigB, product(bigA, c))))), bigA, b1, bigC) 40.84/5.57 = { by axiom 8 (sos01) } 40.84/5.57 fresh2(product(bigA, bigC), product(b, difference(bigB, product(bigA, c))), bigA, b1, bigC) 40.84/5.57 = { by lemma 47 } 40.84/5.57 fresh2(product(bigA, bigC), product(bigA, bigC), bigA, b1, bigC) 40.84/5.57 = { by axiom 13 (sos09) } 40.84/5.57 true 40.84/5.57 % SZS output end Proof 40.84/5.57 40.84/5.57 RESULT: Theorem (the conjecture is true). 40.84/5.58 EOF