----- Otter 3.2, August 2001 ----- The process was started by ??? on ???, Sun Nov 30 22:34:22 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)). all x y (n(x,c(y))=Z->u(x,y)=y). all x y (u(x,y)=y->n(x,c(y))=Z). all x y (n(x,y)=Z&u(x,y)=U->c(x)=y). all x y (c(x)=y->n(x,y)=Z). all x y (c(x)=y->u(x,y)=U). end_of_list. -------> usable clausifies to: list(usable). 0 [] n(x,y)=n(y,x). 0 [] n(x,c(y))!=Z|u(x,y)=y. 0 [] u(x,y)!=y|n(x,c(y))=Z. 0 [] n(x,y)!=Z|u(x,y)!=U|c(x)=y. 0 [] c(x)!=y|n(x,y)=Z. 0 [] c(x)!=y|u(x,y)=U. end_of_list. ------- end included file 20To24booleanLaws.txt------- include("25booleanLaws.txt"). ------- start included file 25booleanLaws.txt------- formula_list(usable). all x y z (n(z,y)=Z->n(u(x,y),z)=n(z,x)). end_of_list. -------> usable clausifies to: list(usable). 0 [] n(z,y)!=Z|n(u(x,y),z)=n(z,x). end_of_list. ------- end included file 25booleanLaws.txt------- include("26_27booleanLaws.txt"). ------- start included file 26_27booleanLaws.txt------- formula_list(usable). all x y z (i(x,y)&i(x,z)->i(x,n(y,z))). -(all x y (i(n(x,y),x)&i(n(x,y),y))). end_of_list. -------> usable clausifies to: list(usable). 0 [] -i(x,y)| -i(x,z)|i(x,n(y,z)). 0 [] -i(n($c2,$c1),$c2)| -i(n($c2,$c1),$c1). end_of_list. ------- end included file 26_27booleanLaws.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=11): 13 [] n(x,c(y))!=Z|u(x,y)=y. ** KEPT (pick-wt=11): 14 [] u(x,y)!=y|n(x,c(y))=Z. ** KEPT (pick-wt=14): 15 [] n(x,y)!=Z|u(x,y)!=U|c(x)=y. ** KEPT (pick-wt=9): 16 [] c(x)!=y|n(x,y)=Z. ** KEPT (pick-wt=9): 17 [] c(x)!=y|u(x,y)=U. ** KEPT (pick-wt=14): 18 [] n(x,y)!=Z|n(u(z,y),x)=n(x,z). ** KEPT (pick-wt=11): 19 [] -i(x,y)| -i(x,z)|i(x,n(y,z)). ** KEPT (pick-wt=10): 20 [] -i(n($c2,$c1),$c2)| -i(n($c2,$c1),$c1). ------------> process sos: ** KEPT (pick-wt=7): 21 [] u(x,y)=u(y,x). ** KEPT (pick-wt=11): 23 [copy,22,flip.1] u(u(x,y),z)=u(x,u(y,z)). ---> New Demodulator: 24 [new_demod,23] u(u(x,y),z)=u(x,u(y,z)). ** KEPT (pick-wt=14): 25 [] u(c(u(c(x),y)),c(u(c(x),c(y))))=x. ---> New Demodulator: 26 [new_demod,25] u(c(u(c(x),y)),c(u(c(x),c(y))))=x. ** KEPT (pick-wt=10): 28 [copy,27,flip.1] c(u(c(x),c(y)))=n(x,y). ---> New Demodulator: 29 [new_demod,28] c(u(c(x),c(y)))=n(x,y). ** KEPT (pick-wt=4): 31 [copy,30,flip.1] c(I)=D. ---> New Demodulator: 32 [new_demod,31] c(I)=D. ** KEPT (pick-wt=5): 34 [copy,33,flip.1] u(I,D)=U. ---> New Demodulator: 35 [new_demod,34] u(I,D)=U. ** KEPT (pick-wt=4): 37 [copy,36,flip.1] c(U)=Z. ---> New Demodulator: 38 [new_demod,37] c(U)=Z. ** KEPT (pick-wt=10): 40 [copy,39,flip.1] u(n(x,c(y)),n(x,y))=x. ---> New Demodulator: 41 [new_demod,40] u(n(x,c(y)),n(x,y))=x. ** KEPT (pick-wt=5): 42 [] i(n(x,y),y). Following clause subsumed by 42 during input processing: 0 [] i(n(x,y),y). ** KEPT (pick-wt=11): 43 [] i(n(x,u(y,z)),u(y,n(x,z))). ** KEPT (pick-wt=10): 45 [copy,44,flip.1] u(n(x,y),n(x,c(y)))=x. ---> New Demodulator: 46 [new_demod,45] u(n(x,y),n(x,c(y)))=x. ** KEPT (pick-wt=5): 47 [] u(x,Z)=x. ---> New Demodulator: 48 [new_demod,47] u(x,Z)=x. ** KEPT (pick-wt=10): 49 [] c(n(x,y))=u(c(x),c(y)). ---> New Demodulator: 50 [new_demod,49] c(n(x,y))=u(c(x),c(y)). ** KEPT (pick-wt=10): 51 [] c(u(x,y))=n(c(x),c(y)). ---> New Demodulator: 52 [new_demod,51] c(u(x,y))=n(c(x),c(y)). ** KEPT (pick-wt=4): 53 [] c(D)=I. ---> New Demodulator: 54 [new_demod,53] c(D)=I. ** KEPT (pick-wt=4): 55 [] c(Z)=U. ---> New Demodulator: 56 [new_demod,55] c(Z)=U. ** KEPT (pick-wt=5): 57 [] c(c(x))=x. ---> New Demodulator: 58 [new_demod,57] c(c(x))=x. ** KEPT (pick-wt=5): 59 [] u(x,x)=x. ---> New Demodulator: 60 [new_demod,59] u(x,x)=x. ** KEPT (pick-wt=7): 61 [] n(x,y)=n(y,x). Following clause subsumed by 21 during input processing: 0 [copy,21,flip.1] u(x,y)=u(y,x). >>>> Starting back demodulation with 24. >>>> Starting back demodulation with 26. >>>> Starting back demodulation with 29. >> back demodulating 25 with 29. >>>> Starting back demodulation with 32. >>>> Starting back demodulation with 35. >>>> Starting back demodulation with 38. >>>> Starting back demodulation with 41. >>>> Starting back demodulation with 46. >>>> Starting back demodulation with 48. >>>> Starting back demodulation with 50. >>>> Starting back demodulation with 52. >> back demodulating 28 with 52. >> back demodulating 10 with 52. >> back demodulating 9 with 52. >>>> Starting back demodulation with 54. >>>> Starting back demodulation with 56. >>>> Starting back demodulation with 58. >>>> Starting back demodulation with 60. Following clause subsumed by 61 during input processing: 0 [copy,61,flip.1] n(x,y)=n(y,x). Following clause subsumed by 62 during input processing: 0 [copy,62,flip.1] x=x. ======= end of input processing ======= =========== start of search =========== -----> EMPTY CLAUSE at 0.07 sec ----> 289 [hyper,244,20,42] $F. Length of proof is 5. Level of proof is 4. ---------------- PROOF ---------------- 2 [] i(x,y)|u(x,y)!=y. 4 [] -i(x,y)|i(u(z,x),u(z,y)). 20 [] -i(n($c2,$c1),$c2)| -i(n($c2,$c1),$c1). 21 [] u(x,y)=u(y,x). 42 [] i(n(x,y),y). 44 [] x=u(n(x,y),n(x,c(y))). 45 [copy,44,flip.1] u(n(x,y),n(x,c(y)))=x. 48,47 [] u(x,Z)=x. 93 [para_into,47.1.1,21.1.1] u(Z,x)=x. 193 [hyper,93,2] i(Z,x). 196 [hyper,193,4,demod,48] i(x,u(x,y)). 244 [para_into,196.1.2,45.1.1] i(n(x,y),x). 289 [hyper,244,20,42] $F. ------------ end of proof ------------- Search stopped by max_proofs option. ============ end of search ============ -------------- statistics ------------- clauses given 40 clauses generated 1009 clauses kept 208 clauses forward subsumed 436 clauses back subsumed 33 Kbytes malloced 255 ----------- times (seconds) ----------- user CPU time 0.27 (0 hr, 0 min, 0 sec) system CPU time 0.00 (0 hr, 0 min, 0 sec) wall-clock time 0 (0 hr, 0 min, 0 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:34:22 2003