25.037/25.037 NO 25.037/25.037 25.037/25.037 Problem 1: 25.037/25.037 25.037/25.037 25.037/25.037 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 25.037/25.037 Confluence Problem: 25.037/25.037 (VAR vNonEmpty:S x:S y:S z:S) 25.037/25.037 (STRATEGY CONTEXTSENSITIVE 25.037/25.037 (between 1 2 3) 25.037/25.037 (down 1) 25.037/25.037 (up 1) 25.037/25.037 (fSNonEmpty) 25.037/25.037 (s 1) 25.037/25.037 (true) 25.037/25.037 ) 25.037/25.037 (RULES 25.037/25.037 between(x:S,y:S,z:S) -> true | up(x:S) ->* y:S, down(z:S) ->* y:S 25.037/25.037 down(s(x:S)) -> down(x:S) 25.037/25.037 down(x:S) -> x:S 25.037/25.037 up(x:S) -> up(s(x:S)) 25.037/25.037 up(x:S) -> x:S 25.037/25.037 ) 25.037/25.037 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 25.037/25.037 25.037/25.037 25.037/25.037 Problem 1: 25.037/25.037 25.037/25.037 Inlining of Conditions Processor [STERN17]: 25.037/25.037 25.037/25.037 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 25.037/25.037 Confluence Problem: 25.037/25.037 (VAR vNonEmpty:S x:S y:S z:S) 25.037/25.037 (STRATEGY CONTEXTSENSITIVE 25.037/25.037 (between 1 2 3) 25.037/25.037 (down 1) 25.037/25.037 (up 1) 25.037/25.037 (fSNonEmpty) 25.037/25.037 (s 1) 25.037/25.037 (true) 25.037/25.037 ) 25.037/25.037 (RULES 25.037/25.037 between(x:S,y:S,z:S) -> true | down(z:S) ->* y:S, up(x:S) ->* y:S 25.037/25.037 down(s(x:S)) -> down(x:S) 25.037/25.037 down(x:S) -> x:S 25.037/25.037 up(x:S) -> up(s(x:S)) 25.037/25.037 up(x:S) -> x:S 25.037/25.037 ) 25.037/25.037 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 25.037/25.037 25.037/25.037 25.037/25.037 Problem 1: 25.037/25.037 25.037/25.037 Clean CTRS Processor: 25.037/25.037 25.037/25.037 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 25.037/25.037 Confluence Problem: 25.037/25.037 (VAR x:S y:S z:S) 25.037/25.037 (STRATEGY CONTEXTSENSITIVE 25.037/25.037 (between 1 2 3) 25.037/25.037 (down 1) 25.037/25.037 (up 1) 25.037/25.037 (fSNonEmpty) 25.037/25.037 (s 1) 25.037/25.037 (true) 25.037/25.037 ) 25.037/25.037 (RULES 25.037/25.037 between(x:S,y:S,z:S) -> true | down(z:S) ->* y:S, up(x:S) ->* y:S 25.037/25.037 down(s(x:S)) -> down(x:S) 25.037/25.037 down(x:S) -> x:S 25.037/25.037 up(x:S) -> up(s(x:S)) 25.037/25.037 up(x:S) -> x:S 25.037/25.037 ) 25.037/25.037 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 25.037/25.037 25.037/25.037 CRule InfChecker Info: 25.037/25.037 between(x:S,y:S,z:S) -> true | down(z:S) ->* y:S, up(x:S) ->* y:S 25.037/25.037 Rule remains 25.037/25.037 Proof: 25.037/25.037 NO 25.037/25.037 25.037/25.037 Problem 1: 25.037/25.037 25.037/25.037 Infeasibility Problem: 25.037/25.037 [(VAR vNonEmpty:S vNonEmpty:S:S x:S:S y:S:S z:S:S) 25.037/25.037 (STRATEGY CONTEXTSENSITIVE 25.037/25.037 (between 1 2 3) 25.037/25.037 (down 1) 25.037/25.037 (up 1) 25.037/25.037 (fSNonEmpty) 25.037/25.037 (s 1) 25.037/25.037 (true) 25.037/25.037 ) 25.037/25.037 (RULES 25.037/25.037 between(x:S:S,y:S:S,z:S:S) -> true | down(z:S:S) ->* y:S:S, up(x:S:S) ->* y:S:S 25.037/25.037 down(s(x:S:S)) -> down(x:S:S) 25.037/25.037 down(x:S:S) -> x:S:S 25.037/25.037 up(x:S:S) -> up(s(x:S:S)) 25.037/25.037 up(x:S:S) -> x:S:S 25.037/25.037 )] 25.037/25.037 25.037/25.037 Infeasibility Conditions: 25.037/25.037 down(z:S:S) ->* y:S:S, up(x:S:S) ->* y:S:S 25.037/25.037 25.037/25.037 Problem 1: 25.037/25.037 25.037/25.037 Obtaining a proof using Prover9: 25.037/25.037 25.037/25.037 -> Prover9 Output: 25.037/25.037 ============================== Prover9 =============================== 25.037/25.037 Prover9 (64) version 2009-11A, November 2009. 25.037/25.037 Process 50090 was started by ubuntu on ubuntu, 25.037/25.037 Wed Jul 14 10:53:30 2021 25.037/25.037 The command was "./prover9 -f /tmp/prover950081-0.in". 25.037/25.037 ============================== end of head =========================== 25.037/25.037 25.037/25.037 ============================== INPUT ================================= 25.037/25.037 25.037/25.037 % Reading from file /tmp/prover950081-0.in 25.037/25.037 25.037/25.037 assign(max_seconds,20). 25.037/25.037 25.037/25.037 formulas(assumptions). 25.037/25.037 ->*_s0(x,x) # label(reflexivity). 25.037/25.037 ->_s0(x,y) & ->*_s0(y,z) -> ->*_s0(x,z) # label(transitivity). 25.037/25.037 ->_s0(x1,y) -> ->_s0(between(x1,x2,x3),between(y,x2,x3)) # label(congruence). 25.037/25.037 ->_s0(x2,y) -> ->_s0(between(x1,x2,x3),between(x1,y,x3)) # label(congruence). 25.037/25.037 ->_s0(x3,y) -> ->_s0(between(x1,x2,x3),between(x1,x2,y)) # label(congruence). 25.037/25.037 ->_s0(x1,y) -> ->_s0(down(x1),down(y)) # label(congruence). 25.037/25.037 ->_s0(x1,y) -> ->_s0(up(x1),up(y)) # label(congruence). 25.037/25.037 ->_s0(x1,y) -> ->_s0(s(x1),s(y)) # label(congruence). 25.037/25.037 ->*_s0(down(x4),x3) & ->*_s0(up(x2),x3) -> ->_s0(between(x2,x3,x4),true) # label(replacement). 25.037/25.037 ->_s0(down(s(x2)),down(x2)) # label(replacement). 25.037/25.037 ->_s0(down(x2),x2) # label(replacement). 25.037/25.037 ->_s0(up(x2),up(s(x2))) # label(replacement). 25.037/25.037 ->_s0(up(x2),x2) # label(replacement). 25.037/25.037 end_of_list. 25.037/25.037 25.037/25.037 formulas(goals). 25.037/25.037 (exists x2 exists x3 exists x4 (->*_s0(down(x4),x3) & ->*_s0(up(x2),x3))) # label(goal). 25.037/25.037 end_of_list. 25.037/25.037 25.037/25.037 ============================== end of input ========================== 25.037/25.037 25.037/25.037 ============================== PROCESS NON-CLAUSAL FORMULAS ========== 25.037/25.037 25.037/25.037 % Formulas that are not ordinary clauses: 25.037/25.037 1 ->_s0(x,y) & ->*_s0(y,z) -> ->*_s0(x,z) # label(transitivity) # label(non_clause). [assumption]. 25.037/25.037 2 ->_s0(x1,y) -> ->_s0(between(x1,x2,x3),between(y,x2,x3)) # label(congruence) # label(non_clause). [assumption]. 25.037/25.037 3 ->_s0(x2,y) -> ->_s0(between(x1,x2,x3),between(x1,y,x3)) # label(congruence) # label(non_clause). [assumption]. 25.037/25.037 4 ->_s0(x3,y) -> ->_s0(between(x1,x2,x3),between(x1,x2,y)) # label(congruence) # label(non_clause). [assumption]. 25.037/25.037 5 ->_s0(x1,y) -> ->_s0(down(x1),down(y)) # label(congruence) # label(non_clause). [assumption]. 25.037/25.037 6 ->_s0(x1,y) -> ->_s0(up(x1),up(y)) # label(congruence) # label(non_clause). [assumption]. 25.037/25.037 7 ->_s0(x1,y) -> ->_s0(s(x1),s(y)) # label(congruence) # label(non_clause). [assumption]. 25.037/25.037 8 ->*_s0(down(x4),x3) & ->*_s0(up(x2),x3) -> ->_s0(between(x2,x3,x4),true) # label(replacement) # label(non_clause). [assumption]. 25.037/25.037 9 (exists x2 exists x3 exists x4 (->*_s0(down(x4),x3) & ->*_s0(up(x2),x3))) # label(goal) # label(non_clause) # label(goal). [goal]. 25.037/25.037 25.037/25.037 ============================== end of process non-clausal formulas === 25.037/25.037 25.037/25.037 ============================== PROCESS INITIAL CLAUSES =============== 25.037/25.037 25.037/25.037 % Clauses before input processing: 25.037/25.037 25.037/25.037 formulas(usable). 25.037/25.037 end_of_list. 25.037/25.037 25.037/25.037 formulas(sos). 25.037/25.037 ->*_s0(x,x) # label(reflexivity). [assumption]. 25.037/25.037 -->_s0(x,y) | -->*_s0(y,z) | ->*_s0(x,z) # label(transitivity). [clausify(1)]. 25.037/25.037 -->_s0(x,y) | ->_s0(between(x,z,u),between(y,z,u)) # label(congruence). [clausify(2)]. 25.037/25.037 -->_s0(x,y) | ->_s0(between(z,x,u),between(z,y,u)) # label(congruence). [clausify(3)]. 25.037/25.037 -->_s0(x,y) | ->_s0(between(z,u,x),between(z,u,y)) # label(congruence). [clausify(4)]. 25.037/25.037 -->_s0(x,y) | ->_s0(down(x),down(y)) # label(congruence). [clausify(5)]. 25.037/25.037 -->_s0(x,y) | ->_s0(up(x),up(y)) # label(congruence). [clausify(6)]. 25.037/25.037 -->_s0(x,y) | ->_s0(s(x),s(y)) # label(congruence). [clausify(7)]. 25.037/25.037 -->*_s0(down(x),y) | -->*_s0(up(z),y) | ->_s0(between(z,y,x),true) # label(replacement). [clausify(8)]. 25.037/25.037 ->_s0(down(s(x)),down(x)) # label(replacement). [assumption]. 25.037/25.037 ->_s0(down(x),x) # label(replacement). [assumption]. 25.037/25.037 ->_s0(up(x),up(s(x))) # label(replacement). [assumption]. 25.037/25.037 ->_s0(up(x),x) # label(replacement). [assumption]. 25.037/25.037 -->*_s0(down(x),y) | -->*_s0(up(z),y) # label(goal). [deny(9)]. 25.037/25.037 end_of_list. 25.037/25.037 25.037/25.037 formulas(demodulators). 25.037/25.037 end_of_list. 25.037/25.037 25.037/25.037 ============================== PREDICATE ELIMINATION ================= 25.037/25.037 25.037/25.037 No predicates eliminated. 25.037/25.037 25.037/25.037 ============================== end predicate elimination ============= 25.037/25.037 25.037/25.037 Auto_denials: 25.037/25.037 % copying label goal to answer in negative clause 25.037/25.037 25.037/25.037 Term ordering decisions: 25.037/25.037 Predicate symbol precedence: predicate_order([ ->_s0, ->*_s0 ]). 25.037/25.037 Function symbol precedence: function_order([ true, down, up, s, between ]). 25.037/25.037 After inverse_order: (no changes). 25.037/25.037 Unfolding symbols: (none). 25.037/25.037 25.037/25.037 Auto_inference settings: 25.037/25.037 % set(neg_binary_resolution). % (HNE depth_diff=-6) 25.037/25.037 % clear(ordered_res). % (HNE depth_diff=-6) 25.037/25.037 % set(ur_resolution). % (HNE depth_diff=-6) 25.037/25.037 % set(ur_resolution) -> set(pos_ur_resolution). 25.037/25.037 % set(ur_resolution) -> set(neg_ur_resolution). 25.037/25.037 25.037/25.037 Auto_process settings: 25.037/25.037 % set(unit_deletion). % (Horn set with negative nonunits) 25.037/25.037 25.037/25.037 kept: 10 ->*_s0(x,x) # label(reflexivity). [assumption]. 25.037/25.037 kept: 11 -->_s0(x,y) | -->*_s0(y,z) | ->*_s0(x,z) # label(transitivity). [clausify(1)]. 25.037/25.037 kept: 12 -->_s0(x,y) | ->_s0(between(x,z,u),between(y,z,u)) # label(congruence). [clausify(2)]. 25.037/25.037 kept: 13 -->_s0(x,y) | ->_s0(between(z,x,u),between(z,y,u)) # label(congruence). [clausify(3)]. 25.037/25.037 kept: 14 -->_s0(x,y) | ->_s0(between(z,u,x),between(z,u,y)) # label(congruence). [clausify(4)]. 25.037/25.037 kept: 15 -->_s0(x,y) | ->_s0(down(x),down(y)) # label(congruence). [clausify(5)]. 25.037/25.037 kept: 16 -->_s0(x,y) | ->_s0(up(x),up(y)) # label(congruence). [clausify(6)]. 25.037/25.037 kept: 17 -->_s0(x,y) | ->_s0(s(x),s(y)) # label(congruence). [clausify(7)]. 25.037/25.037 kept: 18 -->*_s0(down(x),y) | -->*_s0(up(z),y) | ->_s0(between(z,y,x),true) # label(replacement). [clausify(8)]. 25.037/25.037 kept: 19 ->_s0(down(s(x)),down(x)) # label(replacement). [assumption]. 25.037/25.037 kept: 20 ->_s0(down(x),x) # label(replacement). [assumption]. 25.037/25.037 kept: 21 ->_s0(up(x),up(s(x))) # label(replacement). [assumption]. 25.037/25.037 kept: 22 ->_s0(up(x),x) # label(replacement). [assumption]. 25.037/25.037 kept: 23 -->*_s0(down(x),y) | -->*_s0(up(z),y) # label(goal) # answer(goal). [deny(9)]. 25.037/25.037 25.037/25.037 ============================== end of process initial clauses ======== 25.037/25.037 25.037/25.037 ============================== CLAUSES FOR SEARCH ==================== 25.037/25.037 25.037/25.037 % Clauses after input processing: 25.037/25.037 25.037/25.037 formulas(usable). 25.037/25.037 end_of_list. 25.037/25.037 25.037/25.037 formulas(sos). 25.037/25.037 10 ->*_s0(x,x) # label(reflexivity). [assumption]. 25.037/25.037 11 -->_s0(x,y) | -->*_s0(y,z) | ->*_s0(x,z) # label(transitivity). [clausify(1)]. 25.037/25.037 12 -->_s0(x,y) | ->_s0(between(x,z,u),between(y,z,u)) # label(congruence). [clausify(2)]. 25.037/25.037 13 -->_s0(x,y) | ->_s0(between(z,x,u),between(z,y,u)) # label(congruence). [clausify(3)]. 25.037/25.037 14 -->_s0(x,y) | ->_s0(between(z,u,x),between(z,u,y)) # label(congruence). [clausify(4)]. 25.037/25.037 15 -->_s0(x,y) | ->_s0(down(x),down(y)) # label(congruence). [clausify(5)]. 25.037/25.037 16 -->_s0(x,y) | ->_s0(up(x),up(y)) # label(congruence). [clausify(6)]. 25.037/25.037 17 -->_s0(x,y) | ->_s0(s(x),s(y)) # label(congruence). [clausify(7)]. 25.037/25.037 19 ->_s0(down(s(x)),down(x)) # label(replacement). [assumption]. 25.037/25.037 20 ->_s0(down(x),x) # label(replacement). [assumption]. 25.037/25.037 21 ->_s0(up(x),up(s(x))) # label(replacement). [assumption]. 25.037/25.037 22 ->_s0(up(x),x) # label(replacement). [assumption]. 25.037/25.037 23 -->*_s0(down(x),y) | -->*_s0(up(z),y) # label(goal) # answer(goal). [deny(9)]. 25.037/25.037 end_of_list. 25.037/25.037 25.037/25.037 formulas(demodulators). 25.037/25.037 end_of_list. 25.037/25.037 25.037/25.037 ============================== end of clauses for search ============= 25.037/25.037 25.037/25.037 ============================== SEARCH ================================ 25.037/25.037 25.037/25.037 % Starting search at 0.00 seconds. 25.037/25.037 25.037/25.037 given #1 (I,wt=3): 10 ->*_s0(x,x) # label(reflexivity). [assumption]. 25.037/25.037 25.037/25.037 given #2 (I,wt=9): 11 -->_s0(x,y) | -->*_s0(y,z) | ->*_s0(x,z) # label(transitivity). [clausify(1)]. 25.037/25.037 25.037/25.037 given #3 (I,wt=12): 12 -->_s0(x,y) | ->_s0(between(x,z,u),between(y,z,u)) # label(congruence). [clausify(2)]. 25.037/25.037 25.037/25.037 given #4 (I,wt=12): 13 -->_s0(x,y) | ->_s0(between(z,x,u),between(z,y,u)) # label(congruence). [clausify(3)]. 25.037/25.037 25.037/25.037 given #5 (I,wt=12): 14 -->_s0(x,y) | ->_s0(between(z,u,x),between(z,u,y)) # label(congruence). [clausify(4)]. 25.037/25.037 25.037/25.037 given #6 (I,wt=8): 15 -->_s0(x,y) | ->_s0(down(x),down(y)) # label(congruence). [clausify(5)]. 25.037/25.037 25.037/25.037 given #7 (I,wt=8): 16 -->_s0(x,y) | ->_s0(up(x),up(y)) # label(congruence). [clausify(6)]. 25.037/25.037 25.037/25.037 given #8 (I,wt=8): 17 -->_s0(x,y) | ->_s0(s(x),s(y)) # label(congruence). [clausify(7)]. 25.037/25.037 25.037/25.037 given #9 (I,wt=6): 19 ->_s0(down(s(x)),down(x)) # label(replacement). [assumption]. 25.037/25.037 25.037/25.037 given #10 (I,wt=4): 20 ->_s0(down(x),x) # label(replacement). [assumption]. 25.037/25.037 25.037/25.037 given #11 (I,wt=6): 21 ->_s0(up(x),up(s(x))) # label(replacement). [assumption]. 25.037/25.037 25.037/25.037 given #12 (I,wt=4): 22 ->_s0(up(x),x) # label(replacement). [assumption]. 25.037/25.037 25.037/25.037 given #13 (I,wt=8): 23 -->*_s0(down(x),y) | -->*_s0(up(z),y) # label(goal) # answer(goal). [deny(9)]. 25.037/25.037 25.037/25.037 ============================== PROOF ================================= 25.037/25.037 25.037/25.037 % Proof 1 at 0.00 (+ 0.00) seconds: goal. 25.037/25.037 % Length of proof is 9. 25.037/25.037 % Level of proof is 3. 25.037/25.037 % Maximum clause weight is 9.000. 25.037/25.037 % Given clauses 13. 25.037/25.037 25.037/25.037 1 ->_s0(x,y) & ->*_s0(y,z) -> ->*_s0(x,z) # label(transitivity) # label(non_clause). [assumption]. 25.037/25.037 9 (exists x2 exists x3 exists x4 (->*_s0(down(x4),x3) & ->*_s0(up(x2),x3))) # label(goal) # label(non_clause) # label(goal). [goal]. 25.037/25.037 10 ->*_s0(x,x) # label(reflexivity). [assumption]. 25.037/25.037 11 -->_s0(x,y) | -->*_s0(y,z) | ->*_s0(x,z) # label(transitivity). [clausify(1)]. 25.037/25.037 22 ->_s0(up(x),x) # label(replacement). [assumption]. 25.037/25.037 23 -->*_s0(down(x),y) | -->*_s0(up(z),y) # label(goal) # answer(goal). [deny(9)]. 25.037/25.037 49 ->*_s0(up(x),x). [ur(11,a,22,a,b,10,a)]. 25.037/25.037 51 -->*_s0(up(x),down(y)) # answer(goal). [resolve(23,a,10,a)]. 25.037/25.037 52 $F # answer(goal). [resolve(51,a,49,a)]. 25.037/25.037 25.037/25.037 ============================== end of proof ========================== 25.037/25.037 25.037/25.037 ============================== STATISTICS ============================ 25.037/25.037 25.037/25.037 Given=13. Generated=44. Kept=42. proofs=1. 25.037/25.037 Usable=13. Sos=26. Demods=0. Limbo=1, Disabled=15. Hints=0. 25.037/25.037 Kept_by_rule=0, Deleted_by_rule=0. 25.037/25.037 Forward_subsumed=2. Back_subsumed=1. 25.037/25.037 Sos_limit_deleted=0. Sos_displaced=0. Sos_removed=0. 25.037/25.037 New_demodulators=0 (0 lex), Back_demodulated=0. Back_unit_deleted=0. 25.037/25.037 Demod_attempts=0. Demod_rewrites=0. 25.037/25.037 Res_instance_prunes=0. Para_instance_prunes=0. Basic_paramod_prunes=0. 25.037/25.037 Nonunit_fsub_feature_tests=4. Nonunit_bsub_feature_tests=19. 25.037/25.037 Megabytes=0.11. 25.037/25.037 User_CPU=0.00, System_CPU=0.00, Wall_clock=0. 25.037/25.037 25.037/25.037 ============================== end of statistics ===================== 25.037/25.037 25.037/25.037 ============================== end of search ========================= 25.037/25.037 25.037/25.037 THEOREM PROVED 25.037/25.037 25.037/25.037 Exiting with 1 proof. 25.037/25.037 25.037/25.037 Process 50090 exit (max_proofs) Wed Jul 14 10:53:30 2021 25.037/25.037 25.037/25.037 25.037/25.037 The problem is feasible. 25.037/25.037 25.037/25.037 25.037/25.037 CRule InfChecker Info: 25.037/25.037 down(s(x:S)) -> down(x:S) 25.037/25.037 Rule remains 25.037/25.037 Proof: 25.037/25.037 NO_CONDS 25.037/25.037 25.037/25.037 CRule InfChecker Info: 25.037/25.037 down(x:S) -> x:S 25.037/25.037 Rule remains 25.037/25.037 Proof: 25.037/25.037 NO_CONDS 25.037/25.037 25.037/25.037 CRule InfChecker Info: 25.037/25.037 up(x:S) -> up(s(x:S)) 25.037/25.037 Rule remains 25.037/25.037 Proof: 25.037/25.037 NO_CONDS 25.037/25.037 25.037/25.037 CRule InfChecker Info: 25.037/25.037 up(x:S) -> x:S 25.037/25.037 Rule remains 25.037/25.037 Proof: 25.037/25.037 NO_CONDS 25.037/25.037 25.037/25.037 Problem 1: 25.037/25.037 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 25.037/25.037 Confluence Problem: 25.037/25.037 (VAR x:S y:S z:S) 25.037/25.037 (STRATEGY CONTEXTSENSITIVE 25.037/25.037 (between 1 2 3) 25.037/25.037 (down 1) 25.037/25.037 (up 1) 25.037/25.037 (fSNonEmpty) 25.037/25.037 (s 1) 25.037/25.037 (true) 25.037/25.037 ) 25.037/25.037 (RULES 25.037/25.037 between(x:S,y:S,z:S) -> true | down(z:S) ->* y:S, up(x:S) ->* y:S 25.037/25.037 down(s(x:S)) -> down(x:S) 25.037/25.037 down(x:S) -> x:S 25.037/25.037 up(x:S) -> up(s(x:S)) 25.037/25.037 up(x:S) -> x:S 25.037/25.037 ) 25.037/25.037 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 25.037/25.037 25.037/25.037 Critical Pairs Processor: 25.037/25.037 -> Rules: 25.037/25.037 between(x:S,y:S,z:S) -> true | down(z:S) ->* y:S, up(x:S) ->* y:S 25.037/25.037 down(s(x:S)) -> down(x:S) 25.037/25.037 down(x:S) -> x:S 25.037/25.037 up(x:S) -> up(s(x:S)) 25.037/25.037 up(x:S) -> x:S 25.037/25.037 -> Vars: 25.037/25.037 "x", "y", "z", "x", "x", "x", "x" 25.037/25.037 -> FVars: 25.037/25.037 "x4", "x5", "x6", "x7", "x8", "x9", "x10" 25.037/25.037 -> PVars: 25.037/25.037 "x": ["x4", "x7", "x8", "x9", "x10"], "y": ["x5"], "z": ["x6"] 25.037/25.037 25.037/25.037 -> Rlps: 25.037/25.037 crule: between(x4:S,x5:S,x6:S) -> true | down(x6:S) ->* x5:S, up(x4:S) ->* x5:S, id: 1, possubterms: between(x4:S,x5:S,x6:S)-> [] 25.037/25.037 crule: down(s(x7:S)) -> down(x7:S), id: 2, possubterms: down(s(x7:S))-> [], s(x7:S)-> [1] 25.037/25.037 crule: down(x8:S) -> x8:S, id: 3, possubterms: down(x8:S)-> [] 25.037/25.037 crule: up(x9:S) -> up(s(x9:S)), id: 4, possubterms: up(x9:S)-> [] 25.037/25.037 crule: up(x10:S) -> x10:S, id: 5, possubterms: up(x10:S)-> [] 25.037/25.037 25.037/25.037 -> Unifications: 25.037/25.037 R3 unifies with R2 at p: [], l: down(x8:S), lp: down(x8:S), conds: {}, sig: {x8:S -> s(x:S)}, l': down(s(x:S)), r: x8:S, r': down(x:S) 25.037/25.037 R5 unifies with R4 at p: [], l: up(x10:S), lp: up(x10:S), conds: {}, sig: {x10:S -> x:S}, l': up(x:S), r: x10:S, r': up(s(x:S)) 25.037/25.037 25.037/25.037 -> Critical pairs info: 25.037/25.037 => Not trivial, Overlay, N1 25.037/25.037 => Not trivial, Overlay, N2 25.037/25.037 25.037/25.037 -> Problem conclusions: 25.037/25.037 Left linear, Right linear, Linear 25.037/25.037 Not weakly orthogonal, Not almost orthogonal, Not orthogonal 25.037/25.037 CTRS Type: 1 25.037/25.037 Deterministic, Strongly deterministic 25.037/25.037 Oriented CTRS, Properly oriented CTRS, Not join CTRS 25.037/25.037 Maybe right-stable CTRS, Overlay CTRS 25.037/25.037 Maybe normal CTRS, Maybe almost normal CTRS 25.037/25.037 Maybe terminating CTRS, Maybe joinable CCPs 25.037/25.037 Maybe level confluent 25.037/25.037 Maybe confluent 25.037/25.037 25.037/25.037 Problem 1: 25.037/25.037 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 25.037/25.037 Confluence Problem: 25.037/25.037 (VAR x:S y:S z:S) 25.037/25.037 (STRATEGY CONTEXTSENSITIVE 25.037/25.037 (between 1 2 3) 25.037/25.037 (down 1) 25.037/25.037 (up 1) 25.037/25.037 (fSNonEmpty) 25.037/25.037 (s 1) 25.037/25.037 (true) 25.037/25.037 ) 25.037/25.037 (RULES 25.037/25.037 between(x:S,y:S,z:S) -> true | down(z:S) ->* y:S, up(x:S) ->* y:S 25.037/25.037 down(s(x:S)) -> down(x:S) 25.037/25.037 down(x:S) -> x:S 25.037/25.037 up(x:S) -> up(s(x:S)) 25.037/25.037 up(x:S) -> x:S 25.037/25.037 ) 25.037/25.037 Critical Pairs: 25.037/25.037 => Not trivial, Overlay, N1 25.037/25.037 => Not trivial, Overlay, N2 25.037/25.037 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 25.037/25.037 25.037/25.037 Conditional Critical Pairs Distributor Processor 25.037/25.037 25.037/25.037 Problem 1: 25.037/25.037 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 25.037/25.037 Confluence Problem: 25.037/25.037 (VAR x:S y:S z:S) 25.037/25.037 (STRATEGY CONTEXTSENSITIVE 25.037/25.037 (between 1 2 3) 25.037/25.037 (down 1) 25.037/25.037 (up 1) 25.037/25.037 (fSNonEmpty) 25.037/25.037 (s 1) 25.037/25.037 (true) 25.037/25.037 ) 25.037/25.037 (RULES 25.037/25.037 between(x:S,y:S,z:S) -> true | down(z:S) ->* y:S, up(x:S) ->* y:S 25.037/25.037 down(s(x:S)) -> down(x:S) 25.037/25.037 down(x:S) -> x:S 25.037/25.037 up(x:S) -> up(s(x:S)) 25.037/25.037 up(x:S) -> x:S 25.037/25.037 ) 25.037/25.037 Critical Pairs: 25.037/25.037 => Not trivial, Overlay, N1 25.037/25.037 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 25.037/25.037 25.037/25.037 Infeasible Convergence No Conditions CCP Processor: 25.037/25.037 Infeasible convergence? 25.037/25.037 YES 25.037/25.037 25.037/25.037 Problem 1: 25.037/25.037 25.037/25.037 Infeasibility Problem: 25.037/25.037 [(VAR vNonEmpty:S x:S y:S z:S) 25.037/25.037 (STRATEGY CONTEXTSENSITIVE 25.037/25.037 (between 1 2 3) 25.037/25.037 (down 1) 25.037/25.037 (up 1) 25.037/25.037 (cx) 25.037/25.037 (fSNonEmpty) 25.037/25.037 (s 1) 25.037/25.037 (true) 25.037/25.037 ) 25.037/25.037 (RULES 25.037/25.037 between(x:S,y:S,z:S) -> true | down(z:S) ->* y:S, up(x:S) ->* y:S 25.037/25.037 down(s(x:S)) -> down(x:S) 25.037/25.037 down(x:S) -> x:S 25.037/25.037 up(x:S) -> up(s(x:S)) 25.037/25.037 up(x:S) -> x:S 25.037/25.037 )] 25.037/25.037 25.037/25.037 Infeasibility Conditions: 25.037/25.037 up(s(cx)) ->* z:S, cx ->* z:S 25.037/25.037 25.037/25.037 Problem 1: 25.037/25.037 25.037/25.037 Obtaining a model using Mace4: 25.037/25.037 25.037/25.037 -> Usable Rules: 25.037/25.037 up(x:S) -> up(s(x:S)) 25.037/25.037 up(x:S) -> x:S 25.037/25.037 25.037/25.037 -> Mace4 Output: 25.037/25.037 ============================== Mace4 ================================= 25.037/25.037 Mace4 (64) version 2009-11A, November 2009. 25.037/25.037 Process 50116 was started by ubuntu on ubuntu, 25.037/25.037 Wed Jul 14 10:53:30 2021 25.037/25.037 The command was "./mace4 -c -f /tmp/mace450103-2.in". 25.037/25.037 ============================== end of head =========================== 25.037/25.037 25.037/25.037 ============================== INPUT ================================= 25.037/25.037 25.037/25.037 % Reading from file /tmp/mace450103-2.in 25.037/25.037 25.037/25.037 assign(max_seconds,20). 25.037/25.037 25.037/25.037 formulas(assumptions). 25.037/25.037 ->(x1,y) -> ->(between(x1,x2,x3),between(y,x2,x3)) # label(congruence). 25.037/25.037 ->(x2,y) -> ->(between(x1,x2,x3),between(x1,y,x3)) # label(congruence). 25.037/25.037 ->(x3,y) -> ->(between(x1,x2,x3),between(x1,x2,y)) # label(congruence). 25.037/25.037 ->(x1,y) -> ->(down(x1),down(y)) # label(congruence). 25.037/25.037 ->(x1,y) -> ->(up(x1),up(y)) # label(congruence). 25.037/25.037 ->(x1,y) -> ->(s(x1),s(y)) # label(congruence). 25.037/25.037 ->(up(x1),up(s(x1))) # label(replacement). 25.037/25.037 ->(up(x1),x1) # label(replacement). 25.037/25.037 ->*(x,x) # label(reflexivity). 25.037/25.037 ->(x,y) & ->*(y,z) -> ->*(x,z) # label(transitivity). 25.037/25.037 end_of_list. 25.037/25.037 25.037/25.037 formulas(goals). 25.037/25.037 (exists x3 (->*(up(s(cx)),x3) & ->*(cx,x3))) # label(goal). 25.037/25.037 end_of_list. 25.037/25.037 25.037/25.037 ============================== end of input ========================== 25.037/25.037 25.037/25.037 ============================== PROCESS NON-CLAUSAL FORMULAS ========== 25.037/25.037 25.037/25.037 % Formulas that are not ordinary clauses: 25.037/25.037 1 ->(x1,y) -> ->(between(x1,x2,x3),between(y,x2,x3)) # label(congruence) # label(non_clause). [assumption]. 25.037/25.037 2 ->(x2,y) -> ->(between(x1,x2,x3),between(x1,y,x3)) # label(congruence) # label(non_clause). [assumption]. 25.037/25.037 3 ->(x3,y) -> ->(between(x1,x2,x3),between(x1,x2,y)) # label(congruence) # label(non_clause). [assumption]. 25.037/25.037 4 ->(x1,y) -> ->(down(x1),down(y)) # label(congruence) # label(non_clause). [assumption]. 25.037/25.037 5 ->(x1,y) -> ->(up(x1),up(y)) # label(congruence) # label(non_clause). [assumption]. 25.037/25.037 6 ->(x1,y) -> ->(s(x1),s(y)) # label(congruence) # label(non_clause). [assumption]. 25.037/25.037 7 ->(x,y) & ->*(y,z) -> ->*(x,z) # label(transitivity) # label(non_clause). [assumption]. 25.037/25.037 8 (exists x3 (->*(up(s(cx)),x3) & ->*(cx,x3))) # label(goal) # label(non_clause) # label(goal). [goal]. 25.037/25.037 25.037/25.037 ============================== end of process non-clausal formulas === 25.037/25.037 25.037/25.037 ============================== CLAUSES FOR SEARCH ==================== 25.037/25.037 25.037/25.037 formulas(mace4_clauses). 25.037/25.037 -->(x,y) | ->(between(x,z,u),between(y,z,u)) # label(congruence). 25.037/25.037 -->(x,y) | ->(between(z,x,u),between(z,y,u)) # label(congruence). 25.037/25.037 -->(x,y) | ->(between(z,u,x),between(z,u,y)) # label(congruence). 25.037/25.037 -->(x,y) | ->(down(x),down(y)) # label(congruence). 25.037/25.037 -->(x,y) | ->(up(x),up(y)) # label(congruence). 25.037/25.037 -->(x,y) | ->(s(x),s(y)) # label(congruence). 25.037/25.037 ->(up(x),up(s(x))) # label(replacement). 25.037/25.037 ->(up(x),x) # label(replacement). 25.037/25.037 ->*(x,x) # label(reflexivity). 25.037/25.037 -->(x,y) | -->*(y,z) | ->*(x,z) # label(transitivity). 25.037/25.037 -->*(up(s(cx)),x) | -->*(cx,x) # label(goal). 25.037/25.037 end_of_list. 25.037/25.037 25.037/25.037 ============================== end of clauses for search ============= 25.037/25.037 25.037/25.037 % There are no natural numbers in the input. 25.037/25.037 25.037/25.037 ============================== DOMAIN SIZE 2 ========================= 25.037/25.037 25.037/25.037 ============================== STATISTICS ============================ 25.037/25.037 25.037/25.037 For domain size 2. 25.037/25.037 25.037/25.037 Current CPU time: 0.00 seconds (total CPU time: 0.00 seconds). 25.037/25.037 Ground clauses: seen=76, kept=72. 25.037/25.037 Selections=8, assignments=15, propagations=22, current_models=0. 25.037/25.037 Rewrite_terms=90, rewrite_bools=168, indexes=32. 25.037/25.037 Rules_from_neg_clauses=4, cross_offs=4. 25.037/25.037 25.037/25.037 ============================== end of statistics ===================== 25.037/25.037 25.037/25.037 ============================== DOMAIN SIZE 3 ========================= 25.037/25.037 25.037/25.037 ============================== MODEL ================================= 25.037/25.037 25.037/25.037 interpretation( 3, [number=1, seconds=0], [ 25.037/25.037 25.037/25.037 function(cx, [ 0 ]), 25.037/25.037 25.037/25.037 function(down(_), [ 0, 0, 0 ]), 25.037/25.037 25.037/25.037 function(up(_), [ 1, 1, 2 ]), 25.037/25.037 25.037/25.037 function(s(_), [ 2, 1, 2 ]), 25.037/25.037 25.037/25.037 function(between(_,_,_), [ 25.037/25.037 0, 0, 0, 25.037/25.037 0, 0, 0, 25.037/25.037 0, 0, 0, 25.037/25.037 0, 0, 0, 25.037/25.037 0, 0, 0, 25.037/25.037 0, 0, 0, 25.037/25.037 0, 0, 0, 25.037/25.037 0, 0, 0, 25.037/25.037 0, 0, 0 ]), 25.037/25.037 25.037/25.037 relation(->*(_,_), [ 25.037/25.037 1, 0, 0, 25.037/25.037 1, 1, 1, 25.037/25.037 0, 0, 1 ]), 25.037/25.037 25.037/25.037 relation(->(_,_), [ 25.037/25.037 1, 0, 0, 25.037/25.037 1, 1, 1, 25.037/25.037 0, 0, 1 ]) 25.037/25.037 ]). 25.037/25.037 25.037/25.037 ============================== end of model ========================== 25.037/25.037 25.037/25.037 ============================== STATISTICS ============================ 25.037/25.037 25.037/25.037 For domain size 3. 25.037/25.037 25.037/25.037 Current CPU time: 0.00 seconds (total CPU time: 0.00 seconds). 25.037/25.037 Ground clauses: seen=309, kept=300. 25.037/25.037 Selections=19, assignments=28, propagations=57, current_models=1. 25.037/25.037 Rewrite_terms=647, rewrite_bools=667, indexes=48. 25.037/25.037 Rules_from_neg_clauses=23, cross_offs=56. 25.037/25.037 25.037/25.037 ============================== end of statistics ===================== 25.037/25.037 25.037/25.037 User_CPU=0.00, System_CPU=0.00, Wall_clock=0. 25.037/25.037 25.037/25.037 Exiting with 1 model. 25.037/25.037 25.037/25.037 Process 50116 exit (max_models) Wed Jul 14 10:53:30 2021 25.037/25.037 The process finished Wed Jul 14 10:53:30 2021 25.037/25.037 25.037/25.037 25.037/25.037 Mace4 cooked interpretation: 25.037/25.037 25.037/25.037 25.037/25.037 25.037/25.037 The problem is infeasible. 25.037/25.037 25.037/25.037 25.037/25.037 The problem is not joinable. 25.037/25.037 18.79user 1.81system 0:25.37elapsed 81%CPU (0avgtext+0avgdata 116628maxresident)k 25.037/25.037 0inputs+0outputs (0major+48665minor)pagefaults 0swaps