0.00/0.04 % Problem : theBenchmark.p : TPTP v0.0.0. Released v0.0.0. 0.00/0.04 % Command : twee %s --tstp --casc --quiet --conditional-encoding if --smaller --drop-non-horn 0.02/0.23 % Computer : n159.star.cs.uiowa.edu 0.02/0.23 % Model : x86_64 x86_64 0.02/0.23 % CPU : Intel(R) Xeon(R) CPU E5-2609 0 @ 2.40GHz 0.02/0.23 % Memory : 32218.625MB 0.02/0.23 % OS : Linux 3.10.0-693.2.2.el7.x86_64 0.02/0.23 % CPULimit : 300 0.02/0.23 % DateTime : Sat Jul 14 05:06:55 CDT 2018 0.02/0.24 % CPUTime : 0.07/0.59 % SZS status Theorem 0.07/0.59 0.07/0.59 % SZS output start Proof 0.07/0.59 Take the following subset of the input axioms: 0.07/0.59 fof(a, conjecture, leq(multiplication(a, a), star(a))). 0.07/0.59 fof(additive_associativity, axiom, 0.07/0.59 ![A, B, C]: 0.07/0.59 addition(addition(A, B), C)=addition(A, addition(B, C))). 0.07/0.59 fof(additive_commutativity, axiom, 0.07/0.59 ![A, B]: addition(A, B)=addition(B, A)). 0.07/0.59 fof(additive_idempotence, axiom, ![A]: A=addition(A, A)). 0.07/0.59 fof(left_distributivity, axiom, 0.07/0.59 ![A, B, C]: 0.07/0.59 addition(multiplication(A, C), 0.07/0.59 multiplication(B, C))=multiplication(addition(A, B), C)). 0.07/0.59 fof(multiplicative_left_identity, axiom, 0.07/0.59 ![A]: A=multiplication(one, A)). 0.07/0.59 fof(multiplicative_right_identity, axiom, 0.07/0.59 ![A]: multiplication(A, one)=A). 0.41/0.59 fof(order, axiom, ![A, B]: (addition(A, B)=B <=> leq(A, B))). 0.41/0.59 fof(right_distributivity, axiom, 0.41/0.59 ![A, B, C]: 0.41/0.59 addition(multiplication(A, B), 0.41/0.59 multiplication(A, C))=multiplication(A, addition(B, C))). 0.41/0.59 fof(star_unfold_left, axiom, 0.41/0.59 ![A]: leq(addition(one, multiplication(star(A), A)), star(A))). 0.41/0.59 0.41/0.59 Now clausify the problem and encode Horn clauses using encoding 3 of 0.41/0.59 http://www.cse.chalmers.se/~nicsma/papers/horn.pdf. 0.41/0.59 We repeatedly replace C & s=t => u=v by the two clauses: 0.41/0.59 $$fresh(y, y, x1...xn) = u 0.41/0.59 C => $$fresh(s, t, x1...xn) = v 0.41/0.59 where $$fresh is a fresh function symbol and x1..xn are the free 0.41/0.59 variables of u and v. 0.41/0.59 A predicate p(X) is encoded as p(X)=$$true (this is sound, because the 0.41/0.59 input problem has no model of domain size 1). 0.41/0.59 0.41/0.59 The encoding turns the above axioms into the following unit equations and goals: 0.41/0.59 0.41/0.59 Axiom 1 (order): $$fresh4(X, X, Y, Z) = $$true. 0.41/0.59 Axiom 2 (order_1): $$fresh(X, X, Y, Z) = Z. 0.41/0.59 Axiom 5 (order_1): $$fresh(leq(X, Y), $$true, X, Y) = addition(X, Y). 0.41/0.59 Axiom 6 (order): $$fresh4(addition(X, Y), Y, X, Y) = leq(X, Y). 0.41/0.59 Axiom 8 (additive_idempotence): X = addition(X, X). 0.41/0.59 Axiom 10 (multiplicative_left_identity): X = multiplication(one, X). 0.41/0.59 Axiom 11 (right_distributivity): addition(multiplication(X, Y), multiplication(X, Z)) = multiplication(X, addition(Y, Z)). 0.41/0.59 Axiom 13 (left_distributivity): addition(multiplication(X, Y), multiplication(Z, Y)) = multiplication(addition(X, Z), Y). 0.41/0.59 Axiom 14 (star_unfold_left): leq(addition(one, multiplication(star(X), X)), star(X)) = $$true. 0.41/0.59 Axiom 16 (multiplicative_right_identity): multiplication(X, one) = X. 0.41/0.59 Axiom 20 (additive_associativity): addition(addition(X, Y), Z) = addition(X, addition(Y, Z)). 0.41/0.59 Axiom 21 (additive_commutativity): addition(X, Y) = addition(Y, X). 0.41/0.59 0.41/0.59 Lemma 22: addition(X, addition(X, Y)) = addition(X, Y). 0.41/0.59 Proof: 0.41/0.59 addition(X, addition(X, Y)) 0.41/0.59 = { by axiom 20 (additive_associativity) } 0.41/0.59 addition(addition(X, X), Y) 0.41/0.59 = { by axiom 8 (additive_idempotence) } 0.41/0.59 addition(X, Y) 0.41/0.59 0.41/0.59 Lemma 23: addition(Y, multiplication(X, Y)) = multiplication(addition(X, one), Y). 0.41/0.59 Proof: 0.41/0.59 addition(Y, multiplication(X, Y)) 0.41/0.59 = { by axiom 10 (multiplicative_left_identity) } 0.41/0.59 addition(multiplication(one, Y), multiplication(X, Y)) 0.41/0.59 = { by axiom 13 (left_distributivity) } 0.41/0.59 multiplication(addition(one, X), Y) 0.41/0.59 = { by axiom 21 (additive_commutativity) } 0.41/0.59 multiplication(addition(X, one), Y) 0.41/0.59 0.41/0.59 Lemma 24: addition(X, multiplication(X, Y)) = multiplication(X, addition(Y, one)). 0.41/0.59 Proof: 0.41/0.59 addition(X, multiplication(X, Y)) 0.41/0.59 = { by axiom 16 (multiplicative_right_identity) } 0.41/0.59 addition(multiplication(X, one), multiplication(X, Y)) 0.41/0.59 = { by axiom 11 (right_distributivity) } 0.41/0.59 multiplication(X, addition(one, Y)) 0.41/0.59 = { by axiom 21 (additive_commutativity) } 0.41/0.59 multiplication(X, addition(Y, one)) 0.41/0.59 0.41/0.59 Lemma 25: addition(one, multiplication(star(X), addition(X, one))) = star(X). 0.41/0.59 Proof: 0.41/0.59 addition(one, multiplication(star(X), addition(X, one))) 0.41/0.59 = { by lemma 24 } 0.41/0.59 addition(one, addition(star(X), multiplication(star(X), X))) 0.41/0.59 = { by axiom 21 (additive_commutativity) } 0.41/0.59 addition(one, addition(multiplication(star(X), X), star(X))) 0.41/0.59 = { by axiom 20 (additive_associativity) } 0.41/0.59 addition(addition(one, multiplication(star(X), X)), star(X)) 0.41/0.59 = { by axiom 5 (order_1) } 0.41/0.59 $$fresh(leq(addition(one, multiplication(star(X), X)), star(X)), $$true, addition(one, multiplication(star(X), X)), star(X)) 0.41/0.59 = { by axiom 14 (star_unfold_left) } 0.41/0.59 $$fresh($$true, $$true, addition(one, multiplication(star(X), X)), star(X)) 0.41/0.59 = { by axiom 2 (order_1) } 0.41/0.59 star(X) 0.41/0.59 0.41/0.59 Lemma 26: addition(one, star(X)) = star(X). 0.41/0.59 Proof: 0.41/0.59 addition(one, star(X)) 0.41/0.59 = { by lemma 25 } 0.41/0.59 addition(one, addition(one, multiplication(star(X), addition(X, one)))) 0.41/0.59 = { by lemma 22 } 0.41/0.59 addition(one, multiplication(star(X), addition(X, one))) 0.41/0.59 = { by lemma 25 } 0.41/0.59 star(X) 0.41/0.59 0.41/0.59 Lemma 27: addition(X, star(X)) = star(X). 0.41/0.59 Proof: 0.41/0.59 addition(X, star(X)) 0.41/0.59 = { by lemma 26 } 0.41/0.59 addition(X, addition(one, star(X))) 0.41/0.59 = { by axiom 20 (additive_associativity) } 0.41/0.59 addition(addition(X, one), star(X)) 0.41/0.59 = { by lemma 25 } 0.41/0.59 addition(addition(X, one), addition(one, multiplication(star(X), addition(X, one)))) 0.41/0.59 = { by axiom 21 (additive_commutativity) } 0.41/0.59 addition(addition(X, one), addition(multiplication(star(X), addition(X, one)), one)) 0.41/0.59 = { by axiom 20 (additive_associativity) } 0.41/0.60 addition(addition(addition(X, one), multiplication(star(X), addition(X, one))), one) 0.41/0.60 = { by axiom 21 (additive_commutativity) } 0.41/0.60 addition(one, addition(addition(X, one), multiplication(star(X), addition(X, one)))) 0.41/0.60 = { by lemma 23 } 0.41/0.60 addition(one, multiplication(addition(star(X), one), addition(X, one))) 0.41/0.60 = { by axiom 21 (additive_commutativity) } 0.41/0.60 addition(one, multiplication(addition(one, star(X)), addition(X, one))) 0.41/0.60 = { by lemma 26 } 0.41/0.60 addition(one, multiplication(star(X), addition(X, one))) 0.41/0.60 = { by lemma 25 } 0.41/0.60 star(X) 0.41/0.60 0.41/0.60 Lemma 28: multiplication(star(X), addition(X, one)) = star(X). 0.41/0.60 Proof: 0.41/0.60 multiplication(star(X), addition(X, one)) 0.41/0.60 = { by lemma 26 } 0.41/0.60 multiplication(addition(one, star(X)), addition(X, one)) 0.41/0.60 = { by axiom 21 (additive_commutativity) } 0.41/0.60 multiplication(addition(star(X), one), addition(X, one)) 0.41/0.60 = { by lemma 23 } 0.41/0.60 addition(addition(X, one), multiplication(star(X), addition(X, one))) 0.41/0.60 = { by axiom 20 (additive_associativity) } 0.41/0.60 addition(X, addition(one, multiplication(star(X), addition(X, one)))) 0.41/0.60 = { by lemma 25 } 0.41/0.60 addition(X, star(X)) 0.41/0.60 = { by lemma 27 } 0.41/0.60 star(X) 0.41/0.60 0.41/0.60 Goal 1 (a): leq(multiplication(a, a), star(a)) = $$true. 0.41/0.60 Proof: 0.41/0.60 leq(multiplication(a, a), star(a)) 0.41/0.60 = { by lemma 28 } 0.41/0.60 leq(multiplication(a, a), multiplication(star(a), addition(a, one))) 0.41/0.60 = { by lemma 24 } 0.41/0.60 leq(multiplication(a, a), addition(star(a), multiplication(star(a), a))) 0.41/0.60 = { by lemma 27 } 0.41/0.60 leq(multiplication(a, a), addition(star(a), multiplication(addition(a, star(a)), a))) 0.41/0.60 = { by axiom 21 (additive_commutativity) } 0.41/0.60 leq(multiplication(a, a), addition(multiplication(addition(a, star(a)), a), star(a))) 0.41/0.60 = { by axiom 13 (left_distributivity) } 0.41/0.60 leq(multiplication(a, a), addition(addition(multiplication(a, a), multiplication(star(a), a)), star(a))) 0.41/0.60 = { by axiom 20 (additive_associativity) } 0.41/0.60 leq(multiplication(a, a), addition(multiplication(a, a), addition(multiplication(star(a), a), star(a)))) 0.41/0.60 = { by axiom 21 (additive_commutativity) } 0.41/0.60 leq(multiplication(a, a), addition(multiplication(a, a), addition(star(a), multiplication(star(a), a)))) 0.41/0.60 = { by lemma 24 } 0.41/0.60 leq(multiplication(a, a), addition(multiplication(a, a), multiplication(star(a), addition(a, one)))) 0.41/0.60 = { by lemma 28 } 0.41/0.60 leq(multiplication(a, a), addition(multiplication(a, a), star(a))) 0.41/0.60 = { by axiom 6 (order) } 0.41/0.60 $$fresh4(addition(multiplication(a, a), addition(multiplication(a, a), star(a))), addition(multiplication(a, a), star(a)), multiplication(a, a), addition(multiplication(a, a), star(a))) 0.41/0.60 = { by lemma 22 } 0.41/0.60 $$fresh4(addition(multiplication(a, a), star(a)), addition(multiplication(a, a), star(a)), multiplication(a, a), addition(multiplication(a, a), star(a))) 0.41/0.60 = { by axiom 1 (order) } 0.41/0.60 $$true 0.41/0.60 % SZS output end Proof 0.41/0.60 0.41/0.60 RESULT: Theorem (the conjecture is true). 0.41/0.60 EOF