============================== Prover9 =============================== Prover9 (64) version Aug-2007, Aug 2007. Process 26230 was started by veroff on titan, Sat Jan 19 14:18:43 2008 The command was "prover9 -f 4.3.in". ============================== end of head =========================== ============================== INPUT ================================= % Reading from file 4.3.in clear(auto). % clear(auto) -> clear(auto_inference). % clear(auto_inference) -> clear(predicate_elim). % clear(auto_inference) -> assign(eq_defs, pass). % clear(auto) -> clear(auto_limits). % clear(auto_limits) -> assign(max_weight, 2147483647). % clear(auto_limits) -> assign(sos_limit, -1). % clear(auto) -> clear(auto_denials). % clear(auto) -> clear(auto_process). op(400,infix,[^,v,"->","=>",*]). op(200,prefix,[~,-]). lex([0,1,*,^,=>,->,v,~,-]). assign(order,kbo). set(lex_order_vars). set(paramodulation). % set(paramodulation) -> set(back_demod). set(para_units_only). % set(para_units_only) -> assign(para_lit_limit, 1). clear(back_demod). set(hyper_resolution). % set(hyper_resolution) -> set(pos_hyper_resolution). set(auto_denials). formulas(assumptions). (x v y) v z = x v (y v z) # label("(D1)"). (x ^ y) ^ z = x ^ (y ^ z) # label("(D2)"). x v y = y v x # label("(D3)"). x ^ y = y ^ x # label("(D4)"). x v (x ^ y) = x # label("(D5)"). x ^ (x v y) = x # label("(D6)"). (x => y) => ((y => z) => (x => z)) = 1 # label("(BCK1)"). 1 => x = x # label("(BCK2)"). x => 1 = 1 # label("(BCK3)"). x => y != 1 | y => x != 1 | x = y # label("(BCK4)"). x * 1 = x # label("(M1)"). x * y = y * x # label("(M2)"). (x * y) * z = x * (y * z) # label("(M3)"). (x * y) => z = x => (y => z) # label("(P)"). x ^ 1 = x # label("(D10)"). x ^ ((x => y) => y) = x # label("(3.7)"). (x ^ y) => y = 1 # label("(3.11)"). x v 0 = x # label("(D9)"). x -> y = x => (x => y) # label("(-> def)"). ~ x = x => 0 # label("(~ def)"). -x = x => (x => 0) # label("(- def)"). x => (x => (x => y)) = x => (x => y) # label("(E_2)"). (x v y) ^ (x v z) = x v (y ^ z) # label("(D7)"). (x ^ y) v (x ^ z) = x ^ (y v z) # label("(D8)"). ~ ~ x = x # label("(DN)"). (x -> y) ^ (~ y -> ~ x) = x => y # label("(N)"). (x => y) => ((z => x) => (z => y)) = 1 # label("(BCK1')"). x => ((x => y) => y) = 1 # label("(BCK5)"). x => x = 1 # label("(3.16)"). x => (y => x) = 1 # label("(3.17)"). x => (y => z) = y => (x => z) # label("(3.18)"). (x * y) v (x * z) = x * (y v z) # label("(4.1)"). (x => y) ^ (x => z) = x => (y ^ z) # label("(4.2)"). (x * (x => y)) v y = y # label("(4.3)"). (x => y) ^ (z => y) = (x v z) => y # label("(4.4)"). ((x => y) * z) => (x => (y * z)) = 1 # label("(4.5)"). end_of_list. formulas(assumptions). (A => B) ^ B != B | (A v B) => B != A => B | A -> (B => C) != B => (A -> C) | A ^ (~ A => B) != A # answer("(Lemma 4.3, 4 parts)"). end_of_list. formulas(hints). (x => y) ^ y = y # label("(3.13)"). (x v y) => y = x => y # label("(4.6)"). x -> (y => z) = y => (x -> z) # label("(4.7)"). x ^ (~ x => y) = x # label("(4.8)"). x v y = y v x. x ^ y = y ^ x. 1 => x = x. x ^ 1 = x. x ^ ((x => y) => y) = x. x -> y = x => (x => y). x => (x => y) = x -> y. ~ x = x => 0. x => 0 = ~ x. ~ ~ x = x. x => x = 1. x => (y => x) = 1. x => (y => z) = y => (x => z). (x => y) ^ (z => y) = (x v z) => y. x = 1 ^ x. 1 ^ x = x. ~ x => 0 = x. x => (y -> z) = y => (x => (y => z)). x => (y => (x => z)) = y => (x -> z). x => ~ y = y => (x => 0). x => (y => 0) = y => ~ x. 1 ^ (x => y) = (y v x) => y. (x v y) => x = 1 ^ (y => x). x => y = ~ y => ~ x. ~ x => ~ y = y => x. ~ x => y = ~ y => x. x => (~ x => y) = 1. x ^ (1 => (~ x => y)) = x. x ^ (~ x => y) = x. x ^ (y => x) = x. x = (y => x) ^ x. (x => y) ^ y = y. (x v y) => x = y => x. (x v y) => y = x => y. x => (x => (y => z)) = y => (x -> z). x => (y -> z) = y -> (x => z). x -> (y => z) = y => (x -> z). end_of_list. ============================== end of input ========================== ============================== PROCESS NON-CLAUSAL FORMULAS ========== % Formulas that are not ordinary clauses: ============================== end of process non-clausal formulas === ============================== PROCESS INITIAL CLAUSES =============== % Clauses before input processing: formulas(usable). end_of_list. formulas(sos). (x v y) v z = x v (y v z) # label("(D1)"). [assumption]. (x ^ y) ^ z = x ^ (y ^ z) # label("(D2)"). [assumption]. x v y = y v x # label("(D3)"). [assumption]. x ^ y = y ^ x # label("(D4)"). [assumption]. x v (x ^ y) = x # label("(D5)"). [assumption]. x ^ (x v y) = x # label("(D6)"). [assumption]. (x => y) => ((y => z) => (x => z)) = 1 # label("(BCK1)"). [assumption]. 1 => x = x # label("(BCK2)"). [assumption]. x => 1 = 1 # label("(BCK3)"). [assumption]. x => y != 1 | y => x != 1 | x = y # label("(BCK4)"). [assumption]. x * 1 = x # label("(M1)"). [assumption]. x * y = y * x # label("(M2)"). [assumption]. (x * y) * z = x * (y * z) # label("(M3)"). [assumption]. (x * y) => z = x => (y => z) # label("(P)"). [assumption]. x ^ 1 = x # label("(D10)"). [assumption]. x ^ ((x => y) => y) = x # label("(3.7)"). [assumption]. (x ^ y) => y = 1 # label("(3.11)"). [assumption]. x v 0 = x # label("(D9)"). [assumption]. x -> y = x => (x => y) # label("(-> def)"). [assumption]. ~ x = x => 0 # label("(~ def)"). [assumption]. -x = x => (x => 0) # label("(- def)"). [assumption]. x => (x => (x => y)) = x => (x => y) # label("(E_2)"). [assumption]. (x v y) ^ (x v z) = x v (y ^ z) # label("(D7)"). [assumption]. (x ^ y) v (x ^ z) = x ^ (y v z) # label("(D8)"). [assumption]. ~ ~ x = x # label("(DN)"). [assumption]. (x -> y) ^ (~ y -> ~ x) = x => y # label("(N)"). [assumption]. (x => y) => ((z => x) => (z => y)) = 1 # label("(BCK1')"). [assumption]. x => ((x => y) => y) = 1 # label("(BCK5)"). [assumption]. x => x = 1 # label("(3.16)"). [assumption]. x => (y => x) = 1 # label("(3.17)"). [assumption]. x => (y => z) = y => (x => z) # label("(3.18)"). [assumption]. (x * y) v (x * z) = x * (y v z) # label("(4.1)"). [assumption]. (x => y) ^ (x => z) = x => (y ^ z) # label("(4.2)"). [assumption]. (x * (x => y)) v y = y # label("(4.3)"). [assumption]. (x => y) ^ (z => y) = (x v z) => y # label("(4.4)"). [assumption]. ((x => y) * z) => (x => (y * z)) = 1 # label("(4.5)"). [assumption]. (A => B) ^ B != B | (A v B) => B != A => B | A -> (B => C) != B => (A -> C) | A ^ (~ A => B) != A # answer("(Lemma 4.3, 4 parts)"). [assumption]. end_of_list. formulas(demodulators). end_of_list. WARNING, function symbols not in function_order (lex) command: A, B, C. % 41 hints input. Auto_denials: (no changes). Term ordering decisions: WARNING, function symbols not in function_order (lex) command: A, B, C. Function symbol KB weights: A=1. B=1. C=1. 0=1. 1=1. *=1. ^=1. =>=1. ->=1. v=1. ~=1. -=1. Predicate symbol precedence: predicate_order([ = ]). Function symbol precedence: function_order([ A, B, C, 0, 1, *, ^, =>, ->, v, ~, - ]). Skipping inverse_order, because there is a function_order (lex) command. % Operation v is commutative; C redundancy checks enabled. % Operation ^ is commutative; C redundancy checks enabled. % Operation * is commutative; C redundancy checks enabled. ============================== end of process initial clauses ======== ============================== CLAUSES FOR SEARCH ==================== % Clauses after input processing: formulas(usable). end_of_list. formulas(sos). 1 (x v y) v z = x v (y v z) # label("(D1)"). [assumption]. 2 (x ^ y) ^ z = x ^ (y ^ z) # label("(D2)"). [assumption]. 3 x v y = y v x # label("(D3)"). [assumption]. 4 x ^ y = y ^ x # label("(D4)"). [assumption]. 5 x v (x ^ y) = x # label("(D5)"). [assumption]. 6 x ^ (x v y) = x # label("(D6)"). [assumption]. 7 (x => y) => ((y => z) => (x => z)) = 1 # label("(BCK1)"). [assumption]. 8 1 => x = x # label("(BCK2)"). [assumption]. 9 x => 1 = 1 # label("(BCK3)"). [assumption]. 10 x => y != 1 | y => x != 1 | x = y # label("(BCK4)"). [assumption]. 11 x * 1 = x # label("(M1)"). [assumption]. 12 x * y = y * x # label("(M2)"). [assumption]. 13 (x * y) * z = x * (y * z) # label("(M3)"). [assumption]. 14 (x * y) => z = x => (y => z) # label("(P)"). [assumption]. 15 x ^ 1 = x # label("(D10)"). [assumption]. 16 x ^ ((x => y) => y) = x # label("(3.7)"). [assumption]. 17 (x ^ y) => y = 1 # label("(3.11)"). [assumption]. 18 x v 0 = x # label("(D9)"). [assumption]. 20 x => (x => y) = x -> y. [copy(19),flip(a)]. 22 x => 0 = ~ x. [copy(21),flip(a)]. 24 x => (x => 0) = -x. [copy(23),flip(a)]. 25 x => (x => (x => y)) = x => (x => y) # label("(E_2)"). [assumption]. 26 (x v y) ^ (x v z) = x v (y ^ z) # label("(D7)"). [assumption]. 27 (x ^ y) v (x ^ z) = x ^ (y v z) # label("(D8)"). [assumption]. 28 ~ ~ x = x # label("(DN)"). [assumption]. 29 (x -> y) ^ (~ y -> ~ x) = x => y # label("(N)"). [assumption]. 30 (x => y) => ((z => x) => (z => y)) = 1 # label("(BCK1')"). [assumption]. 31 x => ((x => y) => y) = 1 # label("(BCK5)"). [assumption]. 32 x => x = 1 # label("(3.16)"). [assumption]. 33 x => (y => x) = 1 # label("(3.17)"). [assumption]. 34 x => (y => z) = y => (x => z) # label("(3.18)"). [assumption]. 35 (x * y) v (x * z) = x * (y v z) # label("(4.1)"). [assumption]. 36 (x => y) ^ (x => z) = x => (y ^ z) # label("(4.2)"). [assumption]. 37 (x * (x => y)) v y = y # label("(4.3)"). [assumption]. 38 (x => y) ^ (z => y) = (x v z) => y # label("(4.4)"). [assumption]. 39 ((x => y) * z) => (x => (y * z)) = 1 # label("(4.5)"). [assumption]. 40 (A => B) ^ B != B | (A v B) => B != A => B | A -> (B => C) != B => (A -> C) | A ^ (~ A => B) != A # answer("(Lemma 4.3, 4 parts)"). [assumption]. end_of_list. formulas(demodulators). end_of_list. % 41 hints processed (13 are redundant). ============================== end of clauses for search ============= ============================== SEARCH ================================ % Starting search at 0.00 seconds. given #1 (I,wt=11): 1 (x v y) v z = x v (y v z) # label("(D1)"). [assumption]. given #2 (I,wt=11): 2 (x ^ y) ^ z = x ^ (y ^ z) # label("(D2)"). [assumption]. given #3 (I,wt=7): 3 x v y = y v x # label("(D3)"). [assumption]. given #4 (I,wt=7): 4 x ^ y = y ^ x # label("(D4)"). [assumption]. given #5 (I,wt=7): 5 x v (x ^ y) = x # label("(D5)"). [assumption]. given #6 (I,wt=7): 6 x ^ (x v y) = x # label("(D6)"). [assumption]. given #7 (I,wt=13): 7 (x => y) => ((y => z) => (x => z)) = 1 # label("(BCK1)"). [assumption]. given #8 (I,wt=5): 8 1 => x = x # label("(BCK2)"). [assumption]. given #9 (I,wt=5): 9 x => 1 = 1 # label("(BCK3)"). [assumption]. given #10 (I,wt=13): 10 x => y != 1 | y => x != 1 | x = y # label("(BCK4)"). [assumption]. given #11 (I,wt=5): 11 x * 1 = x # label("(M1)"). [assumption]. given #12 (I,wt=7): 12 x * y = y * x # label("(M2)"). [assumption]. given #13 (I,wt=11): 13 (x * y) * z = x * (y * z) # label("(M3)"). [assumption]. given #14 (I,wt=11): 14 (x * y) => z = x => (y => z) # label("(P)"). [assumption]. given #15 (I,wt=5): 15 x ^ 1 = x # label("(D10)"). [assumption]. given #16 (I,wt=9): 16 x ^ ((x => y) => y) = x # label("(3.7)"). [assumption]. given #17 (I,wt=7): 17 (x ^ y) => y = 1 # label("(3.11)"). [assumption]. given #18 (I,wt=5): 18 x v 0 = x # label("(D9)"). [assumption]. given #19 (I,wt=9): 20 x => (x => y) = x -> y. [copy(19),flip(a)]. given #20 (I,wt=6): 22 x => 0 = ~ x. [copy(21),flip(a)]. given #21 (I,wt=8): 24 x => (x => 0) = -x. [copy(23),flip(a)]. given #22 (I,wt=13): 25 x => (x => (x => y)) = x => (x => y) # label("(E_2)"). [assumption]. given #23 (I,wt=13): 26 (x v y) ^ (x v z) = x v (y ^ z) # label("(D7)"). [assumption]. given #24 (I,wt=13): 27 (x ^ y) v (x ^ z) = x ^ (y v z) # label("(D8)"). [assumption]. given #25 (I,wt=5): 28 ~ ~ x = x # label("(DN)"). [assumption]. given #26 (I,wt=13): 29 (x -> y) ^ (~ y -> ~ x) = x => y # label("(N)"). [assumption]. given #27 (I,wt=13): 30 (x => y) => ((z => x) => (z => y)) = 1 # label("(BCK1')"). [assumption]. given #28 (I,wt=9): 31 x => ((x => y) => y) = 1 # label("(BCK5)"). [assumption]. given #29 (I,wt=5): 32 x => x = 1 # label("(3.16)"). [assumption]. given #30 (I,wt=7): 33 x => (y => x) = 1 # label("(3.17)"). [assumption]. given #31 (I,wt=11): 34 x => (y => z) = y => (x => z) # label("(3.18)"). [assumption]. given #32 (I,wt=13): 35 (x * y) v (x * z) = x * (y v z) # label("(4.1)"). [assumption]. given #33 (I,wt=13): 36 (x => y) ^ (x => z) = x => (y ^ z) # label("(4.2)"). [assumption]. given #34 (I,wt=9): 37 (x * (x => y)) v y = y # label("(4.3)"). [assumption]. given #35 (I,wt=13): 38 (x => y) ^ (z => y) = (x v z) => y # label("(4.4)"). [assumption]. given #36 (I,wt=13): 39 ((x => y) * z) => (x => (y * z)) = 1 # label("(4.5)"). [assumption]. given #37 (I,wt=35): 40 (A => B) ^ B != B | (A v B) => B != A => B | A -> (B => C) != B => (A -> C) | A ^ (~ A => B) != A # answer("(Lemma 4.3, 4 parts)"). [assumption]. given #38 (H,wt=5): 104 1 ^ x = x. [para(15(a,1),4(a,1)),flip(a)]. given #39 (H,wt=6): 242 ~ x => 0 = x. [para(28(a,1),22(a,2))]. given #40 (H,wt=10): 365 x => (y => 0) = y => ~ x. [para(22(a,1),34(a,1,2)),flip(a)]. given #41 (H,wt=9): 641 ~ x => ~ y = y => x. [para(242(a,1),365(a,1,2)),flip(a)]. given #42 (H,wt=9): 659 ~ x => y = ~ y => x. [para(28(a,1),641(a,1,2))]. given #43 (H,wt=8): 706 x => (~ x => y) = 1. [para(659(a,1),33(a,1,2))]. given #44 (H,wt=10): 729 x ^ (1 => (~ x => y)) = x. [para(706(a,1),16(a,1,2,1))]. given #45 (H,wt=8): 756 x ^ (~ x => y) = x # label("(4.8)"). [para(8(a,1),729(a,1,2))]. given #46 (H,wt=7): 783 x ^ (y => x) = x. [para(641(a,1),756(a,1,2))]. given #47 (H,wt=7): 787 (x => y) ^ y = y # label("(3.13)"). [para(783(a,1),4(a,1)),flip(a)]. given #48 (H,wt=11): 520 (x v y) => x = 1 ^ (y => x). [para(32(a,1),38(a,1,1)),flip(a)]. given #49 (H,wt=9): 873 (x v y) => x = y => x. [para(520(a,2),104(a,1))]. given #50 (H,wt=9): 888 (x v y) => y = x => y # label("(4.6)"). [para(3(a,1),873(a,1,1))]. given #51 (H,wt=13): 364 x => (y => (x => z)) = y => (x -> z). [para(20(a,1),34(a,1,2)),flip(a)]. given #52 (H,wt=13): 1050 x => (x => (y => z)) = y => (x -> z). [para(34(a,1),364(a,1,2))]. given #53 (H,wt=11): 1109 x -> (y => z) = y => (x -> z) # label("(4.7)"). [para(1050(a,1),20(a,1)),flip(a)]. -------- Proof 1 -------- "(Lemma 4.3, 4 parts)". ============================== PROOF ================================= % Proof 1 at 0.04 (+ 0.00) seconds: "(Lemma 4.3, 4 parts)". % Length of proof is 32. % Level of proof is 10. % Maximum clause weight is 35. % Given clauses 53. 3 x v y = y v x # label("(D3)"). [assumption]. 4 x ^ y = y ^ x # label("(D4)"). [assumption]. 8 1 => x = x # label("(BCK2)"). [assumption]. 15 x ^ 1 = x # label("(D10)"). [assumption]. 16 x ^ ((x => y) => y) = x # label("(3.7)"). [assumption]. 19 x -> y = x => (x => y) # label("(-> def)"). [assumption]. 20 x => (x => y) = x -> y. [copy(19),flip(a)]. 21 ~ x = x => 0 # label("(~ def)"). [assumption]. 22 x => 0 = ~ x. [copy(21),flip(a)]. 28 ~ ~ x = x # label("(DN)"). [assumption]. 32 x => x = 1 # label("(3.16)"). [assumption]. 33 x => (y => x) = 1 # label("(3.17)"). [assumption]. 34 x => (y => z) = y => (x => z) # label("(3.18)"). [assumption]. 38 (x => y) ^ (z => y) = (x v z) => y # label("(4.4)"). [assumption]. 40 (A => B) ^ B != B | (A v B) => B != A => B | A -> (B => C) != B => (A -> C) | A ^ (~ A => B) != A # answer("(Lemma 4.3, 4 parts)"). [assumption]. 104 1 ^ x = x. [para(15(a,1),4(a,1)),flip(a)]. 242 ~ x => 0 = x. [para(28(a,1),22(a,2))]. 364 x => (y => (x => z)) = y => (x -> z). [para(20(a,1),34(a,1,2)),flip(a)]. 365 x => (y => 0) = y => ~ x. [para(22(a,1),34(a,1,2)),flip(a)]. 520 (x v y) => x = 1 ^ (y => x). [para(32(a,1),38(a,1,1)),flip(a)]. 641 ~ x => ~ y = y => x. [para(242(a,1),365(a,1,2)),flip(a)]. 659 ~ x => y = ~ y => x. [para(28(a,1),641(a,1,2))]. 706 x => (~ x => y) = 1. [para(659(a,1),33(a,1,2))]. 729 x ^ (1 => (~ x => y)) = x. [para(706(a,1),16(a,1,2,1))]. 756 x ^ (~ x => y) = x # label("(4.8)"). [para(8(a,1),729(a,1,2))]. 783 x ^ (y => x) = x. [para(641(a,1),756(a,1,2))]. 787 (x => y) ^ y = y # label("(3.13)"). [para(783(a,1),4(a,1)),flip(a)]. 873 (x v y) => x = y => x. [para(520(a,2),104(a,1))]. 888 (x v y) => y = x => y # label("(4.6)"). [para(3(a,1),873(a,1,1))]. 1050 x => (x => (y => z)) = y => (x -> z). [para(34(a,1),364(a,1,2))]. 1109 x -> (y => z) = y => (x -> z) # label("(4.7)"). [para(1050(a,1),20(a,1)),flip(a)]. 1168 $F # answer("(Lemma 4.3, 4 parts)"). [hyper(40,a,787,a,b,888,a,c,1109,a,d,756,a)]. ============================== end of proof ========================== ============================== STATISTICS ============================ Given=53. Generated=1616. Kept=1164. proofs=1. Usable=52. Sos=1074. Demods=0. Limbo=0, Disabled=75. Hints=41. Weight_deleted=0. Literals_deleted=0. Forward_subsumed=451. Back_subsumed=38. Sos_limit_deleted=0. Sos_displaced=0. Sos_removed=0. New_demodulators=0 (0 lex), Back_demodulated=0. Back_unit_deleted=0. Demod_attempts=0. Demod_rewrites=0. Res_instance_prunes=0. Para_instance_prunes=0. Basic_paramod_prunes=0. Nonunit_fsub_feature_tests=0. Nonunit_bsub_feature_tests=2. Megabytes=1.47. User_CPU=0.04, System_CPU=0.00, Wall_clock=0. ============================== end of statistics ===================== ============================== end of search ========================= THEOREM PROVED THEOREM PROVED Exiting with 1 proof. ------ process 26230 exit (max_proofs) ------  Process 26230 exit (max_proofs) Sat Jan 19 14:18:43 2008