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.03/0.23 % Computer : n066.star.cs.uiowa.edu 0.03/0.23 % Model : x86_64 x86_64 0.03/0.23 % CPU : Intel(R) Xeon(R) CPU E5-2609 0 @ 2.40GHz 0.03/0.23 % Memory : 32218.625MB 0.03/0.23 % OS : Linux 3.10.0-693.2.2.el7.x86_64 0.03/0.23 % CPULimit : 300 0.03/0.23 % DateTime : Sat Jul 14 05:30:39 CDT 2018 0.03/0.23 % CPUTime : 297.46/297.73 % SZS status Theorem 297.46/297.73 297.46/297.73 % SZS output start Proof 297.46/297.73 Take the following subset of the input axioms: 297.46/297.74 fof(conj_0, conjecture, 297.46/297.74 c_Hoare__Mirabelle_Ohoare__derivs(t_a, 297.46/297.74 hAPP(hAPP(c_Set_Oinsert(tc_Hoare__Mirabelle_Otriple(t_a)), 297.46/297.74 v_t), 297.46/297.74 c_Orderings_Obot__class_Obot(tc_fun(tc_Hoare__Mirabelle_Otriple(t_a), 297.46/297.74 tc_HOL_Obool))), 297.46/297.74 hAPP(hAPP(c_Set_Oinsert(tc_Hoare__Mirabelle_Otriple(t_a)), 297.46/297.74 v_t), 297.46/297.74 c_Orderings_Obot__class_Obot(tc_fun(tc_Hoare__Mirabelle_Otriple(t_a), 297.46/297.74 tc_HOL_Obool))))). 297.46/297.74 fof(fact_Collect__def, axiom, 297.46/297.74 ![T_b, V_P_2]: V_P_2=hAPP(c_Set_OCollect(T_b), V_P_2)). 297.46/297.74 fof(fact_asm, axiom, 297.46/297.74 ![T_b, V_ts_2, V_G_2]: 297.46/297.74 (hBOOL(hAPP(hAPP(c_Orderings_Oord__class_Oless__eq(tc_fun(tc_Hoare__Mirabelle_Otriple(T_b), 297.46/297.74 tc_HOL_Obool)), 297.46/297.74 V_ts_2), 297.46/297.74 V_G_2)) 297.46/297.74 => c_Hoare__Mirabelle_Ohoare__derivs(T_b, V_G_2, V_ts_2))). 297.46/297.74 fof(fact_equalityD2, axiom, 297.46/297.74 ![T_b, V_A_2, V_B_2]: 297.46/297.74 (hBOOL(hAPP(hAPP(c_Orderings_Oord__class_Oless__eq(tc_fun(T_b, 297.46/297.74 tc_HOL_Obool)), 297.46/297.74 V_B_2), 297.46/297.74 V_A_2)) 297.46/297.74 <= V_B_2=V_A_2)). 297.46/297.74 fof(fact_singleton__conv2, axiom, 297.46/297.74 ![T_b, V_a_2]: 297.46/297.74 hAPP(hAPP(c_Set_Oinsert(T_b), V_a_2), 297.46/297.74 c_Orderings_Obot__class_Obot(tc_fun(T_b, 297.46/297.74 tc_HOL_Obool)))=hAPP(c_Set_OCollect(T_b), 297.46/297.74 hAPP(c_fequal, V_a_2))). 297.46/297.74 297.46/297.74 Now clausify the problem and encode Horn clauses using encoding 3 of 297.46/297.74 http://www.cse.chalmers.se/~nicsma/papers/horn.pdf. 297.46/297.74 We repeatedly replace C & s=t => u=v by the two clauses: 297.46/297.74 $$fresh(y, y, x1...xn) = u 297.46/297.74 C => $$fresh(s, t, x1...xn) = v 297.46/297.74 where $$fresh is a fresh function symbol and x1..xn are the free 297.46/297.74 variables of u and v. 297.46/297.74 A predicate p(X) is encoded as p(X)=$$true (this is sound, because the 297.46/297.74 input problem has no model of domain size 1). 297.46/297.74 297.46/297.74 The encoding turns the above axioms into the following unit equations and goals: 297.46/297.74 297.46/297.74 Axiom 64 (fact_Collect__conv__if2_1): $$fresh4470(X, X, Y, Z, W) = hAPP(hAPP(c_Set_Oinsert(W), Y), c_Orderings_Obot__class_Obot(tc_fun(W, tc_HOL_Obool))). 297.46/297.74 Axiom 615 (fact_Times__subset__cancel2_1): $$fresh4122(X, X, Y, Z, W, V, U) = hBOOL(hAPP(hAPP(c_Orderings_Oord__class_Oless__eq(tc_fun(W, tc_HOL_Obool)), Z), Y)). 297.46/297.74 Axiom 737 (fact_abs__le__D1): $$fresh4046(X, X, Y, Z, W) = hBOOL(hAPP(hAPP(c_Orderings_Oord__class_Oless__eq(W), Z), Y)). 297.46/297.74 Axiom 1075 (fact_asm): $$fresh3845(X, X, Y, Z, W) = $$true2. 297.46/297.74 Axiom 1143 (fact_atMost__Int__atLeast): $$fresh3822(X, X, Y, Z) = hAPP(hAPP(c_Set_Oinsert(Z), Y), c_Orderings_Obot__class_Obot(tc_fun(Z, tc_HOL_Obool))). 297.46/297.74 Axiom 3406 (fact_le__fun__def): $$fresh2678(X, X, Y, Z, W, V) = hBOOL(hAPP(hAPP(c_Orderings_Oord__class_Oless__eq(tc_fun(W, V)), Z), Y)). 297.46/297.74 Axiom 5168 (fact_order__fun_I1_J_1): $$fresh5929(X, X, Y, Z, W, V) = hBOOL(hAPP(hAPP(c_Orderings_Oord__class_Oless__eq(tc_fun(W, V)), Z), Y)). 297.46/297.74 Axiom 5175 (fact_order__fun_I2_J_1): $$fresh6404(X, X, Y, Z, W, V) = hBOOL(hAPP(hAPP(c_Orderings_Oord__class_Oless__eq(tc_fun(W, V)), Z), Y)). 297.46/297.74 Axiom 6457 (fact_subset__trans): $$fresh993(X, X, Y, Z, W, V) = hBOOL(hAPP(hAPP(c_Orderings_Oord__class_Oless__eq(tc_fun(V, tc_HOL_Obool)), W), Y)). 297.46/297.74 Axiom 7617 (fact_equalityD2): hBOOL(hAPP(hAPP(c_Orderings_Oord__class_Oless__eq(tc_fun(X, tc_HOL_Obool)), Y), Y)) = $$true2. 297.46/297.74 Axiom 10957 (fact_Collect__def): X = hAPP(c_Set_OCollect(Y), X). 297.46/297.74 Axiom 11513 (fact_asm): $$fresh3845(hBOOL(hAPP(hAPP(c_Orderings_Oord__class_Oless__eq(tc_fun(tc_Hoare__Mirabelle_Otriple(X), tc_HOL_Obool)), Y), Z)), $$true2, Z, Y, X) = c_Hoare__Mirabelle_Ohoare__derivs(X, Z, Y). 297.46/297.74 Axiom 12052 (fact_singleton__conv2): hAPP(hAPP(c_Set_Oinsert(X), Y), c_Orderings_Obot__class_Obot(tc_fun(X, tc_HOL_Obool))) = hAPP(c_Set_OCollect(X), hAPP(c_fequal, Y)). 297.46/297.74 297.46/297.74 Lemma 12053: $$fresh4470(?, ?, Y, ?, Z) = $$fresh3822(?, ?, Y, Z). 297.46/297.74 Proof: 297.46/297.74 $$fresh4470(?, ?, Y, ?, Z) 297.46/297.74 = { by axiom 64 (fact_Collect__conv__if2_1) } 297.46/297.74 hAPP(hAPP(c_Set_Oinsert(Z), Y), c_Orderings_Obot__class_Obot(tc_fun(Z, tc_HOL_Obool))) 297.46/297.74 = { by axiom 1143 (fact_atMost__Int__atLeast) } 297.46/297.74 $$fresh3822(?, ?, Y, Z) 297.46/297.74 297.46/297.74 Lemma 12054: $$fresh4046(?, ?, Y, Z, tc_fun(W, V)) = $$fresh2678(?, ?, Y, Z, W, V). 297.46/297.74 Proof: 297.46/297.74 $$fresh4046(?, ?, Y, Z, tc_fun(W, V)) 297.46/297.74 = { by axiom 737 (fact_abs__le__D1) } 297.46/297.74 hBOOL(hAPP(hAPP(c_Orderings_Oord__class_Oless__eq(tc_fun(W, V)), Z), Y)) 297.46/297.74 = { by axiom 3406 (fact_le__fun__def) } 297.46/297.74 $$fresh2678(?, ?, Y, Z, W, V) 297.46/297.74 297.46/297.74 Lemma 12055: $$fresh2678(?, ?, Y, Z, W, V) = $$fresh5929(?, ?, Y, Z, W, V). 297.46/297.74 Proof: 297.46/297.74 $$fresh2678(?, ?, Y, Z, W, V) 297.46/297.74 = { by lemma 12054 } 297.46/297.74 $$fresh4046(?, ?, Y, Z, tc_fun(W, V)) 297.46/297.74 = { by axiom 737 (fact_abs__le__D1) } 297.46/297.74 hBOOL(hAPP(hAPP(c_Orderings_Oord__class_Oless__eq(tc_fun(W, V)), Z), Y)) 297.46/297.74 = { by axiom 5168 (fact_order__fun_I1_J_1) } 297.46/297.74 $$fresh5929(?, ?, Y, Z, W, V) 297.46/297.74 297.46/297.74 Lemma 12056: $$fresh4122(?, ?, Y, W, V, ?, ?) = $$fresh993(?, ?, Y, ?, W, V). 297.46/297.74 Proof: 297.46/297.74 $$fresh4122(?, ?, Y, W, V, ?, ?) 297.46/297.74 = { by axiom 615 (fact_Times__subset__cancel2_1) } 297.46/297.74 hBOOL(hAPP(hAPP(c_Orderings_Oord__class_Oless__eq(tc_fun(V, tc_HOL_Obool)), W), Y)) 297.46/297.74 = { by axiom 6457 (fact_subset__trans) } 297.46/297.74 $$fresh993(?, ?, Y, ?, W, V) 297.46/297.74 297.46/297.74 Lemma 12057: hAPP(hAPP(c_Set_Oinsert(W), Y), c_Orderings_Obot__class_Obot(tc_fun(W, tc_HOL_Obool))) = hAPP(c_fequal, Y). 297.46/297.74 Proof: 297.46/297.74 hAPP(hAPP(c_Set_Oinsert(W), Y), c_Orderings_Obot__class_Obot(tc_fun(W, tc_HOL_Obool))) 297.46/297.74 = { by axiom 64 (fact_Collect__conv__if2_1) } 297.46/297.74 $$fresh4470(?, ?, Y, ?, W) 297.46/297.74 = { by axiom 64 (fact_Collect__conv__if2_1) } 297.46/297.74 hAPP(hAPP(c_Set_Oinsert(W), Y), c_Orderings_Obot__class_Obot(tc_fun(W, tc_HOL_Obool))) 297.46/297.74 = { by axiom 12052 (fact_singleton__conv2) } 297.46/297.74 hAPP(c_Set_OCollect(W), hAPP(c_fequal, Y)) 297.46/297.74 = { by axiom 10957 (fact_Collect__def) } 297.46/297.74 hAPP(c_fequal, Y) 297.46/297.74 297.46/297.74 Lemma 12058: $$fresh993(?, ?, Y, ?, Z, W) = $$fresh6404(?, ?, Y, Z, W, tc_HOL_Obool). 297.46/297.74 Proof: 297.46/297.74 $$fresh993(?, ?, Y, ?, Z, W) 297.46/297.74 = { by lemma 12056 } 297.46/297.74 $$fresh4122(?, ?, Y, Z, W, ?, ?) 297.46/297.74 = { by axiom 615 (fact_Times__subset__cancel2_1) } 297.46/297.74 hBOOL(hAPP(hAPP(c_Orderings_Oord__class_Oless__eq(tc_fun(W, tc_HOL_Obool)), Z), Y)) 297.46/297.74 = { by axiom 5175 (fact_order__fun_I2_J_1) } 297.46/297.74 $$fresh6404(?, ?, Y, Z, W, tc_HOL_Obool) 297.46/297.74 297.46/297.74 Goal 1 (conj_0): c_Hoare__Mirabelle_Ohoare__derivs(t_a, hAPP(hAPP(c_Set_Oinsert(tc_Hoare__Mirabelle_Otriple(t_a)), v_t), c_Orderings_Obot__class_Obot(tc_fun(tc_Hoare__Mirabelle_Otriple(t_a), tc_HOL_Obool))), hAPP(hAPP(c_Set_Oinsert(tc_Hoare__Mirabelle_Otriple(t_a)), v_t), c_Orderings_Obot__class_Obot(tc_fun(tc_Hoare__Mirabelle_Otriple(t_a), tc_HOL_Obool)))) = $$true2. 297.46/297.74 Proof: 297.46/297.74 c_Hoare__Mirabelle_Ohoare__derivs(t_a, hAPP(hAPP(c_Set_Oinsert(tc_Hoare__Mirabelle_Otriple(t_a)), v_t), c_Orderings_Obot__class_Obot(tc_fun(tc_Hoare__Mirabelle_Otriple(t_a), tc_HOL_Obool))), hAPP(hAPP(c_Set_Oinsert(tc_Hoare__Mirabelle_Otriple(t_a)), v_t), c_Orderings_Obot__class_Obot(tc_fun(tc_Hoare__Mirabelle_Otriple(t_a), tc_HOL_Obool)))) 297.46/297.74 = { by lemma 12057 } 297.46/297.74 c_Hoare__Mirabelle_Ohoare__derivs(t_a, hAPP(c_fequal, v_t), hAPP(hAPP(c_Set_Oinsert(tc_Hoare__Mirabelle_Otriple(t_a)), v_t), c_Orderings_Obot__class_Obot(tc_fun(tc_Hoare__Mirabelle_Otriple(t_a), tc_HOL_Obool)))) 297.46/297.74 = { by lemma 12057 } 297.46/297.74 c_Hoare__Mirabelle_Ohoare__derivs(t_a, hAPP(c_fequal, v_t), hAPP(c_fequal, v_t)) 297.46/297.74 = { by axiom 11513 (fact_asm) } 297.46/297.74 $$fresh3845(hBOOL(hAPP(hAPP(c_Orderings_Oord__class_Oless__eq(tc_fun(tc_Hoare__Mirabelle_Otriple(t_a), tc_HOL_Obool)), hAPP(c_fequal, v_t)), hAPP(c_fequal, v_t))), $$true2, hAPP(c_fequal, v_t), hAPP(c_fequal, v_t), t_a) 297.46/297.74 = { by axiom 7617 (fact_equalityD2) } 297.46/297.74 $$fresh3845($$true2, $$true2, hAPP(c_fequal, v_t), hAPP(c_fequal, v_t), t_a) 297.46/297.74 = { by axiom 1075 (fact_asm) } 297.46/297.74 $$true2 297.46/297.74 % SZS output end Proof 297.46/297.74 297.46/297.74 RESULT: Theorem (the conjecture is true). 297.75/298.03 EOF