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.24 % Computer : n123.star.cs.uiowa.edu 0.02/0.24 % Model : x86_64 x86_64 0.02/0.24 % CPU : Intel(R) Xeon(R) CPU E5-2609 0 @ 2.40GHz 0.02/0.24 % Memory : 32218.625MB 0.02/0.24 % OS : Linux 3.10.0-693.2.2.el7.x86_64 0.02/0.24 % CPULimit : 300 0.02/0.24 % DateTime : Sat Jul 14 04:24:54 CDT 2018 0.02/0.25 % CPUTime : 0.06/0.40 % SZS status Theorem 0.06/0.40 0.06/0.40 % SZS output start Proof 0.06/0.40 Take the following subset of the input axioms: 0.06/0.47 fof(axiom_46, axiom, 0.06/0.47 ![Y, Q, X]: (elem(X, cons(Y, Q)) <=> (elem(X, Q) | X=Y))). 0.06/0.47 fof(conj, conjecture, 0.06/0.47 ![Y, X, V, W]: 0.06/0.47 ((![Z, Pid0]: 0.06/0.47 (elem(m_Down(Pid0), queue(host(Z))) => ~setIn(Pid0, alive)) 0.06/0.47 & (![Z, Pid0, Pid20]: 0.06/0.47 (~leq(host(Z), host(Pid0)) 0.06/0.47 <= elem(m_Ack(Pid0, Z), queue(host(Pid20)))) 0.06/0.47 & (![Z, Pid0]: 0.06/0.47 ((~setIn(Z, alive) & (host(Pid0)=host(Z) & leq(Pid0, Z))) 0.06/0.47 => ~setIn(Pid0, alive)) 0.06/0.47 & (![Z, Pid0, Pid20, Pid30]: 0.06/0.47 ((host(Pid20)!=host(Z) 0.06/0.47 & (setIn(Z, alive) 0.06/0.47 & (setIn(Pid20, alive) 0.06/0.47 & (host(Pid0)=host(Pid20) & host(Z)=host(Pid30))))) 0.06/0.47 => ~(elem(m_Down(Pid30), queue(host(Pid20))) 0.06/0.47 & elem(m_Down(Pid0), queue(host(Z))))) 0.06/0.47 & (cons(m_Down(Y), V)=queue(host(X)) 0.06/0.47 & (![Z, Pid0]: 0.06/0.47 ((host(Z)=host(Pid0) & Z!=Pid0) 0.06/0.47 => (~setIn(Z, alive) | ~setIn(Pid0, alive))) 0.06/0.47 & (![Z, Pid0]: 0.06/0.47 (elem(m_Halt(Pid0), queue(host(Z))) 0.06/0.47 => ~leq(host(Z), host(Pid0))) 0.06/0.47 & (![Z, Pid0]: 0.06/0.47 (host(Z)!=host(Pid0) 0.06/0.47 <= elem(m_Down(Pid0), queue(host(Z)))) 0.06/0.47 & ![Z, Pid0]: 0.06/0.47 (~elem(m_Down(Pid0), queue(host(Z))) 0.06/0.47 <= setIn(Pid0, alive)))))))))) 0.06/0.47 => ((~leq(host(X), host(Y)) 0.06/0.47 => ((![Z]: 0.06/0.47 (![W0, X0]: 0.06/0.47 (host(X)=host(X0) 0.06/0.47 => ![Y0]: 0.06/0.47 ((host(X0)!=host(Z) 0.06/0.47 & (setIn(Z, alive) 0.06/0.47 & (host(Z)=host(W0) 0.06/0.47 & (host(X0)=host(Y0) & setIn(X0, alive))))) 0.06/0.47 => ~(elem(m_Down(W0), V) & elem(m_Down(Y0), queue(host(Z)))))) 0.06/0.47 <= host(X)!=host(Z)) 0.06/0.47 <= ~(![Z]: 0.06/0.47 ((Z=host(Y) | setIn(Z, index(down, host(X)))) 0.06/0.47 <= (~leq(host(X), Z) & leq(s(zero), Z))) 0.06/0.47 & elec_1=index(status, host(X)))) 0.06/0.47 <= ~((index(ldr, host(X))=host(Y) & norm=index(status, host(X))) 0.06/0.47 | (host(index(elid, host(X)))=host(Y) 0.06/0.47 & index(status, host(X))=wait)))) 0.06/0.47 <= setIn(X, alive)))). 0.06/0.47 0.06/0.47 Now clausify the problem and encode Horn clauses using encoding 3 of 0.06/0.47 http://www.cse.chalmers.se/~nicsma/papers/horn.pdf. 0.06/0.47 We repeatedly replace C & s=t => u=v by the two clauses: 0.06/0.47 $$fresh(y, y, x1...xn) = u 0.06/0.47 C => $$fresh(s, t, x1...xn) = v 0.06/0.47 where $$fresh is a fresh function symbol and x1..xn are the free 0.06/0.47 variables of u and v. 0.06/0.47 A predicate p(X) is encoded as p(X)=$$true (this is sound, because the 0.06/0.47 input problem has no model of domain size 1). 0.06/0.47 0.06/0.47 The encoding turns the above axioms into the following unit equations and goals: 0.06/0.47 0.06/0.47 Axiom 10 (axiom_46_1): $$fresh33(X, X, Y, Z, W) = $$true2. 0.06/0.47 Axiom 43 (conj_10): $$fresh42(X, X, Y, Z) = host(Y). 0.06/0.47 Axiom 44 (conj_10): $$fresh40(X, X, Y, Z, W) = host(W). 0.06/0.47 Axiom 45 (conj_10): $$fresh43(X, X, Y, Z, W, V) = $$fresh42(host(Y), host(Z), Y, W). 0.06/0.47 Axiom 46 (conj_10): $$fresh39(X, X, Y, Z, W, V) = $$fresh43(elem(m_Down(Z), queue(host(W))), $$true2, Y, Z, W, V). 0.06/0.47 Axiom 47 (conj_10): $$fresh41(X, X, Y, Z, W, V) = $$fresh40(host(V), host(W), Y, Z, W). 0.06/0.47 Axiom 48 (conj_10): $$fresh38(X, X, Y, Z, W, V) = $$fresh39(setIn(Y, alive), $$true2, Y, Z, W, V). 0.06/0.47 Axiom 91 (axiom_46_1): $$fresh33(elem(X, Y), $$true2, X, Z, Y) = elem(X, cons(Z, Y)). 0.06/0.47 Axiom 102 (conj): host(sK8_conj_X) = host(sK4_conj_X0). 0.06/0.47 Axiom 103 (conj_1): host(sK5_conj_Z) = host(sK3_conj_W0). 0.06/0.47 Axiom 104 (conj_2): host(sK4_conj_X0) = host(sK2_conj_Y0). 0.06/0.47 Axiom 105 (conj_3): cons(m_Down(sK7_conj_Y), sK6_conj_V) = queue(host(sK8_conj_X)). 0.06/0.47 Axiom 106 (conj_4): elem(m_Down(sK3_conj_W0), sK6_conj_V) = $$true2. 0.06/0.47 Axiom 107 (conj_5): elem(m_Down(sK2_conj_Y0), queue(host(sK5_conj_Z))) = $$true2. 0.06/0.47 Axiom 108 (conj_6): setIn(sK8_conj_X, alive) = $$true2. 0.06/0.47 Axiom 109 (conj_7): setIn(sK5_conj_Z, alive) = $$true2. 0.06/0.47 Axiom 112 (conj_10): $$fresh38(setIn(X, alive), $$true2, Y, Z, X, W) = $$fresh41(elem(m_Down(W), queue(host(Y))), $$true2, Y, Z, X, W). 0.06/0.47 0.06/0.47 Lemma 113: host(sK5_conj_Z) = host(sK8_conj_X). 0.06/0.47 Proof: 0.06/0.47 host(sK5_conj_Z) 0.06/0.47 = { by axiom 43 (conj_10) } 0.06/0.47 $$fresh42(host(sK5_conj_Z), host(sK5_conj_Z), sK5_conj_Z, sK8_conj_X) 0.06/0.47 = { by axiom 103 (conj_1) } 0.06/0.47 $$fresh42(host(sK5_conj_Z), host(sK3_conj_W0), sK5_conj_Z, sK8_conj_X) 0.06/0.47 = { by axiom 45 (conj_10) } 0.06/0.47 $$fresh43($$true2, $$true2, sK5_conj_Z, sK3_conj_W0, sK8_conj_X, sK2_conj_Y0) 0.06/0.47 = { by axiom 10 (axiom_46_1) } 0.06/0.47 $$fresh43($$fresh33($$true2, $$true2, m_Down(sK3_conj_W0), m_Down(sK7_conj_Y), sK6_conj_V), $$true2, sK5_conj_Z, sK3_conj_W0, sK8_conj_X, sK2_conj_Y0) 0.06/0.47 = { by axiom 106 (conj_4) } 0.06/0.47 $$fresh43($$fresh33(elem(m_Down(sK3_conj_W0), sK6_conj_V), $$true2, m_Down(sK3_conj_W0), m_Down(sK7_conj_Y), sK6_conj_V), $$true2, sK5_conj_Z, sK3_conj_W0, sK8_conj_X, sK2_conj_Y0) 0.06/0.47 = { by axiom 91 (axiom_46_1) } 0.06/0.47 $$fresh43(elem(m_Down(sK3_conj_W0), cons(m_Down(sK7_conj_Y), sK6_conj_V)), $$true2, sK5_conj_Z, sK3_conj_W0, sK8_conj_X, sK2_conj_Y0) 0.06/0.47 = { by axiom 105 (conj_3) } 0.06/0.47 $$fresh43(elem(m_Down(sK3_conj_W0), queue(host(sK8_conj_X))), $$true2, sK5_conj_Z, sK3_conj_W0, sK8_conj_X, sK2_conj_Y0) 0.06/0.47 = { by axiom 46 (conj_10) } 0.06/0.47 $$fresh39($$true2, $$true2, sK5_conj_Z, sK3_conj_W0, sK8_conj_X, sK2_conj_Y0) 0.06/0.47 = { by axiom 109 (conj_7) } 0.06/0.47 $$fresh39(setIn(sK5_conj_Z, alive), $$true2, sK5_conj_Z, sK3_conj_W0, sK8_conj_X, sK2_conj_Y0) 0.06/0.47 = { by axiom 48 (conj_10) } 0.06/0.47 $$fresh38($$true2, $$true2, sK5_conj_Z, sK3_conj_W0, sK8_conj_X, sK2_conj_Y0) 0.06/0.47 = { by axiom 108 (conj_6) } 0.06/0.47 $$fresh38(setIn(sK8_conj_X, alive), $$true2, sK5_conj_Z, sK3_conj_W0, sK8_conj_X, sK2_conj_Y0) 0.06/0.47 = { by axiom 112 (conj_10) } 0.06/0.47 $$fresh41(elem(m_Down(sK2_conj_Y0), queue(host(sK5_conj_Z))), $$true2, sK5_conj_Z, sK3_conj_W0, sK8_conj_X, sK2_conj_Y0) 0.06/0.47 = { by axiom 107 (conj_5) } 0.06/0.47 $$fresh41($$true2, $$true2, sK5_conj_Z, sK3_conj_W0, sK8_conj_X, sK2_conj_Y0) 0.06/0.47 = { by axiom 47 (conj_10) } 0.06/0.47 $$fresh40(host(sK2_conj_Y0), host(sK8_conj_X), sK5_conj_Z, sK3_conj_W0, sK8_conj_X) 0.06/0.47 = { by axiom 104 (conj_2) } 0.06/0.47 $$fresh40(host(sK4_conj_X0), host(sK8_conj_X), sK5_conj_Z, sK3_conj_W0, sK8_conj_X) 0.06/0.47 = { by axiom 102 (conj) } 0.06/0.47 $$fresh40(host(sK8_conj_X), host(sK8_conj_X), sK5_conj_Z, sK3_conj_W0, sK8_conj_X) 0.06/0.47 = { by axiom 44 (conj_10) } 0.06/0.47 host(sK8_conj_X) 0.06/0.47 0.06/0.47 Goal 1 (conj_17): host(sK4_conj_X0) = host(sK5_conj_Z). 0.06/0.47 Proof: 0.06/0.47 host(sK4_conj_X0) 0.06/0.47 = { by axiom 102 (conj) } 0.06/0.47 host(sK8_conj_X) 0.06/0.47 = { by lemma 113 } 0.06/0.47 host(sK5_conj_Z) 0.06/0.47 0.06/0.47 Goal 2 (conj_14): host(sK8_conj_X) = host(sK5_conj_Z). 0.06/0.47 Proof: 0.06/0.47 host(sK8_conj_X) 0.06/0.47 = { by lemma 113 } 0.06/0.47 host(sK5_conj_Z) 0.06/0.47 % SZS output end Proof 0.06/0.47 0.06/0.47 RESULT: Theorem (the conjecture is true). 0.06/0.48 EOF