----- Otter 3.2, August 2001 ----- The process was started by ??? on ???, Sun Nov 30 22:28:19 2003 The command was "otter". set(auto). dependent: set(auto1). dependent: set(process_input). dependent: clear(print_kept). dependent: clear(print_new_demod). dependent: clear(print_back_demod). dependent: clear(print_back_sub). dependent: set(control_memory). dependent: assign(max_mem, 12000). dependent: assign(pick_given_ratio, 4). dependent: assign(stats_level, 1). dependent: assign(max_seconds, 10800). clear(print_given). assign(max_seconds,20). assign(max_distinct_vars,3). assign(max_literals,1). include("booleanAx.txt"). ------- start included file booleanAx.txt------- include("1_2booleanAx.txt"). ------- start included file 1_2booleanAx.txt------- formula_list(usable). all x y (u(x,y)=u(y,x)). all x y z (u(x,u(y,z))=u(u(x,y),z)). end_of_list. -------> usable clausifies to: list(usable). 0 [] u(x,y)=u(y,x). 0 [] u(x,u(y,z))=u(u(x,y),z). end_of_list. ------- end included file 1_2booleanAx.txt------- include("3booleanAx.txt"). ------- start included file 3booleanAx.txt------- formula_list(usable). all x y (u(c(u(c(x),y)),c(u(c(x),c(y))))=x). end_of_list. -------> usable clausifies to: list(usable). 0 [] u(c(u(c(x),y)),c(u(c(x),c(y))))=x. end_of_list. ------- end included file 3booleanAx.txt------- ------- end included file booleanAx.txt------- include("iDef.txt"). ------- start included file iDef.txt------- formula_list(usable). all x y (i(x,y)<->u(x,y)=y). end_of_list. -------> usable clausifies to: list(usable). 0 [] -i(x,y)|u(x,y)=y. 0 [] i(x,y)|u(x,y)!=y. end_of_list. ------- end included file iDef.txt------- include("nDef.txt"). ------- start included file nDef.txt------- formula_list(usable). all x y (n(x,y)=c(u(c(x),c(y)))). end_of_list. -------> usable clausifies to: list(usable). 0 [] n(x,y)=c(u(c(x),c(y))). end_of_list. ------- end included file nDef.txt------- include("uzDef.txt"). ------- start included file uzDef.txt------- formula_list(usable). D=c(I). U=u(I,D). Z=c(U). end_of_list. -------> usable clausifies to: list(usable). 0 [] D=c(I). 0 [] U=u(I,D). 0 [] Z=c(U). end_of_list. ------- end included file uzDef.txt------- include("booleanLaws.txt"). ------- start included file booleanLaws.txt------- include("1To4booleanLaws.txt"). ------- start included file 1To4booleanLaws.txt------- formula_list(usable). all x y z (i(x,u(y,z))->i(n(x,c(z)),y)). all x y z (i(x,y)->i(u(z,x),u(z,y))). all x y (x=u(n(x,c(y)),n(x,y))). all x y i(n(x,y),y). end_of_list. -------> usable clausifies to: list(usable). 0 [] -i(x,u(y,z))|i(n(x,c(z)),y). 0 [] -i(x,y)|i(u(z,x),u(z,y)). 0 [] x=u(n(x,c(y)),n(x,y)). 0 [] i(n(x,y),y). end_of_list. ------- end included file 1To4booleanLaws.txt------- include("4To8booleanLaws.txt"). ------- start included file 4To8booleanLaws.txt------- formula_list(usable). all x y i(n(x,y),y). all x y z i(n(x,u(y,z)),u(y,n(x,z))). all x y (x=u(n(x,y),n(x,c(y)))). all x y z (i(x,y)->i(u(z,x),u(z,y))). all x y z (i(x,y)->i(n(z,x),n(z,y))). end_of_list. -------> usable clausifies to: list(usable). 0 [] i(n(x,y),y). 0 [] i(n(x,u(y,z)),u(y,n(x,z))). 0 [] x=u(n(x,y),n(x,c(y))). 0 [] -i(x,y)|i(u(z,x),u(z,y)). 0 [] -i(x,y)|i(n(z,x),n(z,y)). end_of_list. ------- end included file 4To8booleanLaws.txt------- include("9_10booleanLaws.txt"). ------- start included file 9_10booleanLaws.txt------- formula_list(usable). all x (u(x,Z)=x). all x y z (i(x,y)&i(y,z)->i(x,z)). end_of_list. -------> usable clausifies to: list(usable). 0 [] u(x,Z)=x. 0 [] -i(x,y)| -i(y,z)|i(x,z). end_of_list. ------- end included file 9_10booleanLaws.txt------- include("11booleanLaws.txt"). ------- start included file 11booleanLaws.txt------- formula_list(usable). all x y (c(n(x,y))=u(c(x),c(y))). all x y (c(u(x,y))=n(c(x),c(y))). end_of_list. -------> usable clausifies to: list(usable). 0 [] c(n(x,y))=u(c(x),c(y)). 0 [] c(u(x,y))=n(c(x),c(y)). end_of_list. ------- end included file 11booleanLaws.txt------- include("12booleanLaws.txt"). ------- start included file 12booleanLaws.txt------- formula_list(usable). all x y z (i(x,z)&i(y,z)->i(u(x,y),z)). end_of_list. -------> usable clausifies to: list(usable). 0 [] -i(x,z)| -i(y,z)|i(u(x,y),z). end_of_list. ------- end included file 12booleanLaws.txt------- include("13booleanLaws.txt"). ------- start included file 13booleanLaws.txt------- formula_list(usable). all x y (i(x,y)&i(y,x)->x=y). end_of_list. -------> usable clausifies to: list(usable). 0 [] -i(x,y)| -i(y,x)|x=y. end_of_list. ------- end included file 13booleanLaws.txt------- include("14booleanLaws.txt"). ------- start included file 14booleanLaws.txt------- formula_list(usable). c(D)=I. c(Z)=U. end_of_list. -------> usable clausifies to: list(usable). 0 [] c(D)=I. 0 [] c(Z)=U. end_of_list. ------- end included file 14booleanLaws.txt------- include("15_16booleanLaws.txt"). ------- start included file 15_16booleanLaws.txt------- formula_list(usable). all x (c(c(x))=x). all x y (u(x,y)=y->c(u(y,c(x)))=Z). all x y (c(u(y,c(x)))=Z->u(x,y)=y). end_of_list. -------> usable clausifies to: list(usable). 0 [] c(c(x))=x. 0 [] u(x,y)!=y|c(u(y,c(x)))=Z. 0 [] c(u(y,c(x)))!=Z|u(x,y)=y. end_of_list. ------- end included file 15_16booleanLaws.txt------- include("17To19booleanLaws.txt"). ------- start included file 17To19booleanLaws.txt------- formula_list(usable). all x (u(x,x)=x). all x y z (u(x,y)=y&u(y,z)=z->u(x,z)=z). all x y (u(x,y)=y->u(c(y),c(x))=c(x)). end_of_list. -------> usable clausifies to: list(usable). 0 [] u(x,x)=x. 0 [] u(x,y)!=y|u(y,z)!=z|u(x,z)=z. 0 [] u(x,y)!=y|u(c(y),c(x))=c(x). end_of_list. ------- end included file 17To19booleanLaws.txt------- include("20To24booleanLaws.txt"). ------- start included file 20To24booleanLaws.txt------- formula_list(usable). -(all x y (n(x,y)=n(y,x))). end_of_list. -------> usable clausifies to: list(usable). 0 [] n($c2,$c1)!=n($c1,$c2). end_of_list. ------- end included file 20To24booleanLaws.txt------- ------- end included file booleanLaws.txt------- SCAN INPUT: prop=0, horn=1, equality=1, symmetry=0, max_lits=3. This is a Horn set with equality. The strategy will be Knuth-Bendix and hyper_res, with positive clauses in sos and nonpositive clauses in usable. dependent: set(knuth_bendix). dependent: set(para_from). dependent: set(para_into). dependent: clear(para_from_right). dependent: clear(para_into_right). dependent: set(para_from_vars). dependent: set(eq_units_both_ways). dependent: set(dynamic_demod_all). dependent: set(dynamic_demod). dependent: set(order_eq). dependent: set(back_demod). dependent: set(lrpo). dependent: set(hyper_res). dependent: clear(order_hyper). ------------> process usable: ** KEPT (pick-wt=8): 1 [] -i(x,y)|u(x,y)=y. ** KEPT (pick-wt=8): 2 [] i(x,y)|u(x,y)!=y. ** KEPT (pick-wt=11): 3 [] -i(x,u(y,z))|i(n(x,c(z)),y). ** KEPT (pick-wt=10): 4 [] -i(x,y)|i(u(z,x),u(z,y)). Following clause subsumed by 4 during input processing: 0 [] -i(x,y)|i(u(z,x),u(z,y)). ** KEPT (pick-wt=10): 5 [] -i(x,y)|i(n(z,x),n(z,y)). ** KEPT (pick-wt=9): 6 [] -i(x,y)| -i(y,z)|i(x,z). ** KEPT (pick-wt=11): 7 [] -i(x,y)| -i(z,y)|i(u(x,z),y). ** KEPT (pick-wt=9): 8 [] -i(x,y)| -i(y,x)|x=y. ** KEPT (pick-wt=12): 9 [] u(x,y)!=y|c(u(y,c(x)))=Z. ** KEPT (pick-wt=12): 10 [] c(u(x,c(y)))!=Z|u(y,x)=x. ** KEPT (pick-wt=15): 11 [] u(x,y)!=y|u(y,z)!=z|u(x,z)=z. ** KEPT (pick-wt=13): 12 [] u(x,y)!=y|u(c(y),c(x))=c(x). ** KEPT (pick-wt=7): 13 [] n($c2,$c1)!=n($c1,$c2). ------------> process sos: ** KEPT (pick-wt=7): 14 [] u(x,y)=u(y,x). ** KEPT (pick-wt=11): 16 [copy,15,flip.1] u(u(x,y),z)=u(x,u(y,z)). ---> New Demodulator: 17 [new_demod,16] u(u(x,y),z)=u(x,u(y,z)). ** KEPT (pick-wt=14): 18 [] u(c(u(c(x),y)),c(u(c(x),c(y))))=x. ---> New Demodulator: 19 [new_demod,18] u(c(u(c(x),y)),c(u(c(x),c(y))))=x. ** KEPT (pick-wt=10): 21 [copy,20,flip.1] c(u(c(x),c(y)))=n(x,y). ---> New Demodulator: 22 [new_demod,21] c(u(c(x),c(y)))=n(x,y). ** KEPT (pick-wt=4): 24 [copy,23,flip.1] c(I)=D. ---> New Demodulator: 25 [new_demod,24] c(I)=D. ** KEPT (pick-wt=5): 27 [copy,26,flip.1] u(I,D)=U. ---> New Demodulator: 28 [new_demod,27] u(I,D)=U. ** KEPT (pick-wt=4): 30 [copy,29,flip.1] c(U)=Z. ---> New Demodulator: 31 [new_demod,30] c(U)=Z. ** KEPT (pick-wt=10): 33 [copy,32,flip.1] u(n(x,c(y)),n(x,y))=x. ---> New Demodulator: 34 [new_demod,33] u(n(x,c(y)),n(x,y))=x. ** KEPT (pick-wt=5): 35 [] i(n(x,y),y). Following clause subsumed by 35 during input processing: 0 [] i(n(x,y),y). ** KEPT (pick-wt=11): 36 [] i(n(x,u(y,z)),u(y,n(x,z))). ** KEPT (pick-wt=10): 38 [copy,37,flip.1] u(n(x,y),n(x,c(y)))=x. ---> New Demodulator: 39 [new_demod,38] u(n(x,y),n(x,c(y)))=x. ** KEPT (pick-wt=5): 40 [] u(x,Z)=x. ---> New Demodulator: 41 [new_demod,40] u(x,Z)=x. ** KEPT (pick-wt=10): 42 [] c(n(x,y))=u(c(x),c(y)). ---> New Demodulator: 43 [new_demod,42] c(n(x,y))=u(c(x),c(y)). ** KEPT (pick-wt=10): 44 [] c(u(x,y))=n(c(x),c(y)). ---> New Demodulator: 45 [new_demod,44] c(u(x,y))=n(c(x),c(y)). ** KEPT (pick-wt=4): 46 [] c(D)=I. ---> New Demodulator: 47 [new_demod,46] c(D)=I. ** KEPT (pick-wt=4): 48 [] c(Z)=U. ---> New Demodulator: 49 [new_demod,48] c(Z)=U. ** KEPT (pick-wt=5): 50 [] c(c(x))=x. ---> New Demodulator: 51 [new_demod,50] c(c(x))=x. ** KEPT (pick-wt=5): 52 [] u(x,x)=x. ---> New Demodulator: 53 [new_demod,52] u(x,x)=x. Following clause subsumed by 14 during input processing: 0 [copy,14,flip.1] u(x,y)=u(y,x). >>>> Starting back demodulation with 17. >>>> Starting back demodulation with 19. >>>> Starting back demodulation with 22. >> back demodulating 18 with 22. >>>> Starting back demodulation with 25. >>>> Starting back demodulation with 28. >>>> Starting back demodulation with 31. >>>> Starting back demodulation with 34. >>>> Starting back demodulation with 39. >>>> Starting back demodulation with 41. >>>> Starting back demodulation with 43. >>>> Starting back demodulation with 45. >> back demodulating 21 with 45. >> back demodulating 10 with 45. >> back demodulating 9 with 45. >>>> Starting back demodulation with 47. >>>> Starting back demodulation with 49. >>>> Starting back demodulation with 51. >>>> Starting back demodulation with 53. Following clause subsumed by 54 during input processing: 0 [copy,54,flip.1] x=x. ======= end of input processing ======= =========== start of search =========== ----> UNIT CONFLICT at 0.27 sec ----> 2967 [binary,2966.1,13.1] $F. Length of proof is 14. Level of proof is 11. ---------------- PROOF ---------------- 2 [] i(x,y)|u(x,y)!=y. 3 [] -i(x,u(y,z))|i(n(x,c(z)),y). 4 [] -i(x,y)|i(u(z,x),u(z,y)). 5 [] -i(x,y)|i(n(z,x),n(z,y)). 8 [] -i(x,y)| -i(y,x)|x=y. 13 [] n($c2,$c1)!=n($c1,$c2). 14 [] u(x,y)=u(y,x). 35 [] i(n(x,y),y). 36 [] i(n(x,u(y,z)),u(y,n(x,z))). 37 [] x=u(n(x,y),n(x,c(y))). 38 [copy,37,flip.1] u(n(x,y),n(x,c(y)))=x. 41,40 [] u(x,Z)=x. 51,50 [] c(c(x))=x. 64 [hyper,35,5] i(n(x,n(y,z)),n(x,z)). 70 [para_into,40.1.1,14.1.1] u(Z,x)=x. 105 [hyper,70,2] i(Z,x). 108 [hyper,105,4,demod,41] i(x,u(x,y)). 115 [para_from,38.1.1,36.1.1.2] i(n(x,y),u(n(y,z),n(x,n(y,c(z))))). 130 [para_into,108.1.2,14.1.1] i(x,u(y,x)). 191 [hyper,130,3] i(n(x,c(x)),y). 232 [hyper,191,8,105,flip.1] n(x,c(x))=Z. 234 [para_into,232.1.1.2,50.1.1] n(c(x),x)=Z. 400 [para_into,64.1.2,234.1.1] i(n(c(x),n(y,x)),Z). 2035 [hyper,400,8,105,flip.1] n(c(x),n(y,x))=Z. 2960 [para_from,2035.1.1,115.1.2.2,demod,51,41] i(n(x,y),n(y,x)). 2966 [hyper,2960,8,2960] n(x,y)=n(y,x). 2967 [binary,2966.1,13.1] $F. ------------ end of proof ------------- Search stopped by max_proofs option. ============ end of search ============ -------------- statistics ------------- clauses given 144 clauses generated 10440 clauses kept 2686 clauses forward subsumed 5434 clauses back subsumed 40 Kbytes malloced 1628 ----------- times (seconds) ----------- user CPU time 0.48 (0 hr, 0 min, 0 sec) system CPU time 0.00 (0 hr, 0 min, 0 sec) wall-clock time 1 (0 hr, 0 min, 1 sec) hyper_res time 0.00 para_into time 0.00 para_from time 0.00 for_sub time 0.00 back_sub time 0.00 conflict time 0.00 demod time 0.00 That finishes the proof of the theorem. Process 0 finished Sun Nov 30 22:28:20 2003