20.048/20.048 NO 20.048/20.048 20.048/20.048 Problem 1: 20.048/20.048 20.048/20.048 20.048/20.048 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 20.048/20.048 Confluence Problem: 20.048/20.048 (VAR vNonEmpty x y) 20.048/20.048 (REPLACEMENT-MAP 20.048/20.048 (a) 20.048/20.048 (b) 20.048/20.048 (f 1, 2) 20.048/20.048 (g 1) 20.048/20.048 (h 1) 20.048/20.048 (d) 20.048/20.048 (fSNonEmpty) 20.048/20.048 (s 1) 20.048/20.048 ) 20.048/20.048 (RULES 20.048/20.048 a -> d 20.048/20.048 b -> d 20.048/20.048 f(x,y) -> g(x) | a ->* d 20.048/20.048 f(x,y) -> h(x) | b ->* d 20.048/20.048 g(s(x)) -> x 20.048/20.048 h(s(x)) -> x 20.048/20.048 ) 20.048/20.048 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 20.048/20.048 20.048/20.048 20.048/20.048 Problem 1: 20.048/20.048 20.048/20.048 Inlining of Conditions Processor [STERN17]: 20.048/20.048 20.048/20.048 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 20.048/20.048 Confluence Problem: 20.048/20.048 (VAR vNonEmpty x y) 20.048/20.048 (REPLACEMENT-MAP 20.048/20.048 (a) 20.048/20.048 (b) 20.048/20.048 (f 1, 2) 20.048/20.048 (g 1) 20.048/20.048 (h 1) 20.048/20.048 (d) 20.048/20.048 (fSNonEmpty) 20.048/20.048 (s 1) 20.048/20.048 ) 20.048/20.048 (RULES 20.048/20.048 a -> d 20.048/20.048 b -> d 20.048/20.048 f(x,y) -> g(x) | a ->* d 20.048/20.048 f(x,y) -> h(x) | b ->* d 20.048/20.048 g(s(x)) -> x 20.048/20.048 h(s(x)) -> x 20.048/20.048 ) 20.048/20.048 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 20.048/20.048 20.048/20.048 20.048/20.048 Problem 1: 20.048/20.048 20.048/20.048 Clean CTRS Processor: 20.048/20.048 20.048/20.048 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 20.048/20.048 Confluence Problem: 20.048/20.048 (VAR x y) 20.048/20.048 (REPLACEMENT-MAP 20.048/20.048 (a) 20.048/20.048 (b) 20.048/20.048 (f 1, 2) 20.048/20.048 (g 1) 20.048/20.048 (h 1) 20.048/20.048 (d) 20.048/20.048 (fSNonEmpty) 20.048/20.048 (s 1) 20.048/20.048 ) 20.048/20.048 (RULES 20.048/20.048 a -> d 20.048/20.048 b -> d 20.048/20.048 f(x,y) -> g(x) | a ->* d 20.048/20.048 f(x,y) -> h(x) | b ->* d 20.048/20.048 g(s(x)) -> x 20.048/20.048 h(s(x)) -> x 20.048/20.048 ) 20.048/20.048 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 20.048/20.048 20.048/20.048 CRule InfChecker Info: 20.048/20.048 a -> d 20.048/20.048 Rule remains 20.048/20.048 Proof: 20.048/20.048 NO_CONDS 20.048/20.048 20.048/20.048 CRule InfChecker Info: 20.048/20.048 b -> d 20.048/20.048 Rule remains 20.048/20.048 Proof: 20.048/20.048 NO_CONDS 20.048/20.048 20.048/20.048 CRule InfChecker Info: 20.048/20.048 f(x,y) -> g(x) | a ->* d 20.048/20.048 Rule remains 20.048/20.048 Proof: 20.048/20.048 NO 20.048/20.048 20.048/20.048 Problem 1: 20.048/20.048 20.048/20.048 Infeasibility Problem: 20.048/20.048 [(VAR vNonEmpty x y vNonEmpty) 20.048/20.048 (STRATEGY CONTEXTSENSITIVE 20.048/20.048 (a) 20.048/20.048 (b) 20.048/20.048 (f 1 2) 20.048/20.048 (g 1) 20.048/20.048 (h 1) 20.048/20.048 (d) 20.048/20.048 (fSNonEmpty) 20.048/20.048 (s 1) 20.048/20.048 ) 20.048/20.048 (RULES 20.048/20.048 a -> d 20.048/20.048 b -> d 20.048/20.048 f(x,y) -> g(x) | a ->* d 20.048/20.048 f(x,y) -> h(x) | b ->* d 20.048/20.048 g(s(x)) -> x 20.048/20.048 h(s(x)) -> x 20.048/20.048 )] 20.048/20.048 20.048/20.048 Infeasibility Conditions: 20.048/20.048 a ->* d 20.048/20.048 20.048/20.048 Problem 1: 20.048/20.048 20.048/20.048 Obtaining a proof using Prover9: 20.048/20.048 20.048/20.048 -> Prover9 Output: 20.048/20.048 ============================== Prover9 =============================== 20.048/20.048 Prover9 (64) version 2009-11A, November 2009. 20.048/20.048 Process 72768 was started by ubuntu on ubuntu, 20.048/20.048 Wed Mar 9 10:04:24 2022 20.048/20.048 The command was "./prover9 -f /tmp/prover972759-0.in". 20.048/20.048 ============================== end of head =========================== 20.048/20.048 20.048/20.048 ============================== INPUT ================================= 20.048/20.048 20.048/20.048 % Reading from file /tmp/prover972759-0.in 20.048/20.048 20.048/20.048 assign(max_seconds,20). 20.048/20.048 20.048/20.048 formulas(assumptions). 20.048/20.048 ->_s0(x1,y) -> ->_s0(f(x1,x2),f(y,x2)) # label(congruence). 20.048/20.048 ->_s0(x2,y) -> ->_s0(f(x1,x2),f(x1,y)) # label(congruence). 20.048/20.048 ->_s0(x1,y) -> ->_s0(g(x1),g(y)) # label(congruence). 20.048/20.048 ->_s0(x1,y) -> ->_s0(h(x1),h(y)) # label(congruence). 20.048/20.048 ->_s0(x1,y) -> ->_s0(s(x1),s(y)) # label(congruence). 20.048/20.048 ->_s0(a,d) # label(replacement). 20.048/20.048 ->*_s0(x,x) # label(reflexivity). 20.048/20.048 ->_s0(x,y) & ->*_s0(y,z) -> ->*_s0(x,z) # label(transitivity). 20.048/20.048 end_of_list. 20.048/20.048 20.048/20.048 formulas(goals). 20.048/20.048 ->*_s0(a,d) # label(goal). 20.048/20.048 end_of_list. 20.048/20.048 20.048/20.048 ============================== end of input ========================== 20.048/20.048 20.048/20.048 ============================== PROCESS NON-CLAUSAL FORMULAS ========== 20.048/20.048 20.048/20.048 % Formulas that are not ordinary clauses: 20.048/20.048 1 ->_s0(x1,y) -> ->_s0(f(x1,x2),f(y,x2)) # label(congruence) # label(non_clause). [assumption]. 20.048/20.048 2 ->_s0(x2,y) -> ->_s0(f(x1,x2),f(x1,y)) # label(congruence) # label(non_clause). [assumption]. 20.048/20.048 3 ->_s0(x1,y) -> ->_s0(g(x1),g(y)) # label(congruence) # label(non_clause). [assumption]. 20.048/20.048 4 ->_s0(x1,y) -> ->_s0(h(x1),h(y)) # label(congruence) # label(non_clause). [assumption]. 20.048/20.048 5 ->_s0(x1,y) -> ->_s0(s(x1),s(y)) # label(congruence) # label(non_clause). [assumption]. 20.048/20.048 6 ->_s0(x,y) & ->*_s0(y,z) -> ->*_s0(x,z) # label(transitivity) # label(non_clause). [assumption]. 20.048/20.048 7 ->*_s0(a,d) # label(goal) # label(non_clause) # label(goal). [goal]. 20.048/20.048 20.048/20.048 ============================== end of process non-clausal formulas === 20.048/20.048 20.048/20.048 ============================== PROCESS INITIAL CLAUSES =============== 20.048/20.048 20.048/20.048 % Clauses before input processing: 20.048/20.048 20.048/20.048 formulas(usable). 20.048/20.048 end_of_list. 20.048/20.048 20.048/20.048 formulas(sos). 20.048/20.048 -->_s0(x,y) | ->_s0(f(x,z),f(y,z)) # label(congruence). [clausify(1)]. 20.048/20.048 -->_s0(x,y) | ->_s0(f(z,x),f(z,y)) # label(congruence). [clausify(2)]. 20.048/20.048 -->_s0(x,y) | ->_s0(g(x),g(y)) # label(congruence). [clausify(3)]. 20.048/20.048 -->_s0(x,y) | ->_s0(h(x),h(y)) # label(congruence). [clausify(4)]. 20.048/20.048 -->_s0(x,y) | ->_s0(s(x),s(y)) # label(congruence). [clausify(5)]. 20.048/20.048 ->_s0(a,d) # label(replacement). [assumption]. 20.048/20.048 ->*_s0(x,x) # label(reflexivity). [assumption]. 20.048/20.048 -->_s0(x,y) | -->*_s0(y,z) | ->*_s0(x,z) # label(transitivity). [clausify(6)]. 20.048/20.048 -->*_s0(a,d) # label(goal). [deny(7)]. 20.048/20.048 end_of_list. 20.048/20.048 20.048/20.048 formulas(demodulators). 20.048/20.048 end_of_list. 20.048/20.048 20.048/20.048 ============================== PREDICATE ELIMINATION ================= 20.048/20.048 20.048/20.048 No predicates eliminated. 20.048/20.048 20.048/20.048 ============================== end predicate elimination ============= 20.048/20.048 20.048/20.048 Auto_denials: 20.048/20.048 % copying label goal to answer in negative clause 20.048/20.048 20.048/20.048 Term ordering decisions: 20.048/20.048 Predicate symbol precedence: predicate_order([ ->_s0, ->*_s0 ]). 20.048/20.048 Function symbol precedence: function_order([ a, d, f, g, h, s ]). 20.048/20.048 After inverse_order: (no changes). 20.048/20.048 Unfolding symbols: (none). 20.048/20.048 20.048/20.048 Auto_inference settings: 20.048/20.048 % set(neg_binary_resolution). % (HNE depth_diff=-5) 20.048/20.048 % clear(ordered_res). % (HNE depth_diff=-5) 20.048/20.048 % set(ur_resolution). % (HNE depth_diff=-5) 20.048/20.048 % set(ur_resolution) -> set(pos_ur_resolution). 20.048/20.048 % set(ur_resolution) -> set(neg_ur_resolution). 20.048/20.048 20.048/20.048 Auto_process settings: (no changes). 20.048/20.048 20.048/20.048 kept: 8 -->_s0(x,y) | ->_s0(f(x,z),f(y,z)) # label(congruence). [clausify(1)]. 20.048/20.048 kept: 9 -->_s0(x,y) | ->_s0(f(z,x),f(z,y)) # label(congruence). [clausify(2)]. 20.048/20.048 kept: 10 -->_s0(x,y) | ->_s0(g(x),g(y)) # label(congruence). [clausify(3)]. 20.048/20.048 kept: 11 -->_s0(x,y) | ->_s0(h(x),h(y)) # label(congruence). [clausify(4)]. 20.048/20.048 kept: 12 -->_s0(x,y) | ->_s0(s(x),s(y)) # label(congruence). [clausify(5)]. 20.048/20.048 kept: 13 ->_s0(a,d) # label(replacement). [assumption]. 20.048/20.048 kept: 14 ->*_s0(x,x) # label(reflexivity). [assumption]. 20.048/20.048 kept: 15 -->_s0(x,y) | -->*_s0(y,z) | ->*_s0(x,z) # label(transitivity). [clausify(6)]. 20.048/20.048 kept: 16 -->*_s0(a,d) # label(goal) # answer(goal). [deny(7)]. 20.048/20.048 20.048/20.048 ============================== end of process initial clauses ======== 20.048/20.048 20.048/20.048 ============================== CLAUSES FOR SEARCH ==================== 20.048/20.048 20.048/20.048 % Clauses after input processing: 20.048/20.048 20.048/20.048 formulas(usable). 20.048/20.048 end_of_list. 20.048/20.048 20.048/20.048 formulas(sos). 20.048/20.048 8 -->_s0(x,y) | ->_s0(f(x,z),f(y,z)) # label(congruence). [clausify(1)]. 20.048/20.048 9 -->_s0(x,y) | ->_s0(f(z,x),f(z,y)) # label(congruence). [clausify(2)]. 20.048/20.048 10 -->_s0(x,y) | ->_s0(g(x),g(y)) # label(congruence). [clausify(3)]. 20.048/20.048 11 -->_s0(x,y) | ->_s0(h(x),h(y)) # label(congruence). [clausify(4)]. 20.048/20.048 12 -->_s0(x,y) | ->_s0(s(x),s(y)) # label(congruence). [clausify(5)]. 20.048/20.048 13 ->_s0(a,d) # label(replacement). [assumption]. 20.048/20.048 14 ->*_s0(x,x) # label(reflexivity). [assumption]. 20.048/20.048 15 -->_s0(x,y) | -->*_s0(y,z) | ->*_s0(x,z) # label(transitivity). [clausify(6)]. 20.048/20.048 16 -->*_s0(a,d) # label(goal) # answer(goal). [deny(7)]. 20.048/20.048 end_of_list. 20.048/20.048 20.048/20.048 formulas(demodulators). 20.048/20.048 end_of_list. 20.048/20.048 20.048/20.048 ============================== end of clauses for search ============= 20.048/20.048 20.048/20.048 ============================== SEARCH ================================ 20.048/20.048 20.048/20.048 % Starting search at 0.00 seconds. 20.048/20.048 20.048/20.048 given #1 (I,wt=10): 8 -->_s0(x,y) | ->_s0(f(x,z),f(y,z)) # label(congruence). [clausify(1)]. 20.048/20.048 20.048/20.048 given #2 (I,wt=10): 9 -->_s0(x,y) | ->_s0(f(z,x),f(z,y)) # label(congruence). [clausify(2)]. 20.048/20.048 20.048/20.048 given #3 (I,wt=8): 10 -->_s0(x,y) | ->_s0(g(x),g(y)) # label(congruence). [clausify(3)]. 20.048/20.048 20.048/20.048 given #4 (I,wt=8): 11 -->_s0(x,y) | ->_s0(h(x),h(y)) # label(congruence). [clausify(4)]. 20.048/20.048 20.048/20.048 given #5 (I,wt=8): 12 -->_s0(x,y) | ->_s0(s(x),s(y)) # label(congruence). [clausify(5)]. 20.048/20.048 20.048/20.048 given #6 (I,wt=3): 13 ->_s0(a,d) # label(replacement). [assumption]. 20.048/20.048 20.048/20.048 given #7 (I,wt=3): 14 ->*_s0(x,x) # label(reflexivity). [assumption]. 20.048/20.048 20.048/20.048 given #8 (I,wt=9): 15 -->_s0(x,y) | -->*_s0(y,z) | ->*_s0(x,z) # label(transitivity). [clausify(6)]. 20.048/20.048 20.048/20.048 ============================== PROOF ================================= 20.048/20.048 20.048/20.048 % Proof 1 at 0.00 (+ 0.00) seconds: goal. 20.048/20.048 % Length of proof is 8. 20.048/20.048 % Level of proof is 3. 20.048/20.048 % Maximum clause weight is 9.000. 20.048/20.048 % Given clauses 8. 20.048/20.048 20.048/20.048 6 ->_s0(x,y) & ->*_s0(y,z) -> ->*_s0(x,z) # label(transitivity) # label(non_clause). [assumption]. 20.048/20.048 7 ->*_s0(a,d) # label(goal) # label(non_clause) # label(goal). [goal]. 20.048/20.048 13 ->_s0(a,d) # label(replacement). [assumption]. 20.048/20.048 14 ->*_s0(x,x) # label(reflexivity). [assumption]. 20.048/20.048 15 -->_s0(x,y) | -->*_s0(y,z) | ->*_s0(x,z) # label(transitivity). [clausify(6)]. 20.048/20.048 16 -->*_s0(a,d) # label(goal) # answer(goal). [deny(7)]. 20.048/20.048 22 ->*_s0(a,d). [ur(15,a,13,a,b,14,a)]. 20.048/20.048 23 $F # answer(goal). [resolve(22,a,16,a)]. 20.048/20.048 20.048/20.048 ============================== end of proof ========================== 20.048/20.048 20.048/20.048 ============================== STATISTICS ============================ 20.048/20.048 20.048/20.048 Given=8. Generated=15. Kept=15. proofs=1. 20.048/20.048 Usable=8. Sos=6. Demods=0. Limbo=0, Disabled=9. Hints=0. 20.048/20.048 Kept_by_rule=0, Deleted_by_rule=0. 20.048/20.048 Forward_subsumed=0. Back_subsumed=0. 20.048/20.048 Sos_limit_deleted=0. Sos_displaced=0. Sos_removed=0. 20.048/20.048 New_demodulators=0 (0 lex), Back_demodulated=0. Back_unit_deleted=0. 20.048/20.048 Demod_attempts=0. Demod_rewrites=0. 20.048/20.048 Res_instance_prunes=0. Para_instance_prunes=0. Basic_paramod_prunes=0. 20.048/20.048 Nonunit_fsub_feature_tests=1. Nonunit_bsub_feature_tests=9. 20.048/20.048 Megabytes=0.06. 20.048/20.048 User_CPU=0.00, System_CPU=0.00, Wall_clock=0. 20.048/20.048 20.048/20.048 ============================== end of statistics ===================== 20.048/20.048 20.048/20.048 ============================== end of search ========================= 20.048/20.048 20.048/20.048 THEOREM PROVED 20.048/20.048 20.048/20.048 Exiting with 1 proof. 20.048/20.048 20.048/20.048 Process 72768 exit (max_proofs) Wed Mar 9 10:04:24 2022 20.048/20.048 20.048/20.048 20.048/20.048 The problem is feasible. 20.048/20.048 20.048/20.048 20.048/20.048 CRule InfChecker Info: 20.048/20.048 f(x,y) -> h(x) | b ->* d 20.048/20.048 Rule remains 20.048/20.048 Proof: 20.048/20.048 NO 20.048/20.048 20.048/20.048 Problem 1: 20.048/20.048 20.048/20.048 Infeasibility Problem: 20.048/20.048 [(VAR vNonEmpty x y vNonEmpty) 20.048/20.048 (STRATEGY CONTEXTSENSITIVE 20.048/20.048 (a) 20.048/20.048 (b) 20.048/20.048 (f 1 2) 20.048/20.048 (g 1) 20.048/20.048 (h 1) 20.048/20.048 (d) 20.048/20.048 (fSNonEmpty) 20.048/20.048 (s 1) 20.048/20.048 ) 20.048/20.048 (RULES 20.048/20.048 a -> d 20.048/20.048 b -> d 20.048/20.048 f(x,y) -> g(x) | a ->* d 20.048/20.048 f(x,y) -> h(x) | b ->* d 20.048/20.048 g(s(x)) -> x 20.048/20.048 h(s(x)) -> x 20.048/20.048 )] 20.048/20.048 20.048/20.048 Infeasibility Conditions: 20.048/20.048 b ->* d 20.048/20.048 20.048/20.048 Problem 1: 20.048/20.048 20.048/20.048 Obtaining a proof using Prover9: 20.048/20.048 20.048/20.048 -> Prover9 Output: 20.048/20.048 ============================== Prover9 =============================== 20.048/20.048 Prover9 (64) version 2009-11A, November 2009. 20.048/20.048 Process 72792 was started by ubuntu on ubuntu, 20.048/20.048 Wed Mar 9 10:04:24 2022 20.048/20.048 The command was "./prover9 -f /tmp/prover972783-0.in". 20.048/20.048 ============================== end of head =========================== 20.048/20.048 20.048/20.048 ============================== INPUT ================================= 20.048/20.048 20.048/20.048 % Reading from file /tmp/prover972783-0.in 20.048/20.048 20.048/20.048 assign(max_seconds,20). 20.048/20.048 20.048/20.048 formulas(assumptions). 20.048/20.048 ->_s0(x1,y) -> ->_s0(f(x1,x2),f(y,x2)) # label(congruence). 20.048/20.048 ->_s0(x2,y) -> ->_s0(f(x1,x2),f(x1,y)) # label(congruence). 20.048/20.048 ->_s0(x1,y) -> ->_s0(g(x1),g(y)) # label(congruence). 20.048/20.048 ->_s0(x1,y) -> ->_s0(h(x1),h(y)) # label(congruence). 20.048/20.048 ->_s0(x1,y) -> ->_s0(s(x1),s(y)) # label(congruence). 20.048/20.048 ->_s0(b,d) # label(replacement). 20.048/20.048 ->*_s0(x,x) # label(reflexivity). 20.048/20.048 ->_s0(x,y) & ->*_s0(y,z) -> ->*_s0(x,z) # label(transitivity). 20.048/20.048 end_of_list. 20.048/20.048 20.048/20.048 formulas(goals). 20.048/20.048 ->*_s0(b,d) # label(goal). 20.048/20.048 end_of_list. 20.048/20.048 20.048/20.048 ============================== end of input ========================== 20.048/20.048 20.048/20.048 ============================== PROCESS NON-CLAUSAL FORMULAS ========== 20.048/20.048 20.048/20.048 % Formulas that are not ordinary clauses: 20.048/20.048 1 ->_s0(x1,y) -> ->_s0(f(x1,x2),f(y,x2)) # label(congruence) # label(non_clause). [assumption]. 20.048/20.048 2 ->_s0(x2,y) -> ->_s0(f(x1,x2),f(x1,y)) # label(congruence) # label(non_clause). [assumption]. 20.048/20.048 3 ->_s0(x1,y) -> ->_s0(g(x1),g(y)) # label(congruence) # label(non_clause). [assumption]. 20.048/20.048 4 ->_s0(x1,y) -> ->_s0(h(x1),h(y)) # label(congruence) # label(non_clause). [assumption]. 20.048/20.048 5 ->_s0(x1,y) -> ->_s0(s(x1),s(y)) # label(congruence) # label(non_clause). [assumption]. 20.048/20.048 6 ->_s0(x,y) & ->*_s0(y,z) -> ->*_s0(x,z) # label(transitivity) # label(non_clause). [assumption]. 20.048/20.048 7 ->*_s0(b,d) # label(goal) # label(non_clause) # label(goal). [goal]. 20.048/20.048 20.048/20.048 ============================== end of process non-clausal formulas === 20.048/20.048 20.048/20.048 ============================== PROCESS INITIAL CLAUSES =============== 20.048/20.048 20.048/20.048 % Clauses before input processing: 20.048/20.048 20.048/20.048 formulas(usable). 20.048/20.048 end_of_list. 20.048/20.048 20.048/20.048 formulas(sos). 20.048/20.048 -->_s0(x,y) | ->_s0(f(x,z),f(y,z)) # label(congruence). [clausify(1)]. 20.048/20.048 -->_s0(x,y) | ->_s0(f(z,x),f(z,y)) # label(congruence). [clausify(2)]. 20.048/20.048 -->_s0(x,y) | ->_s0(g(x),g(y)) # label(congruence). [clausify(3)]. 20.048/20.048 -->_s0(x,y) | ->_s0(h(x),h(y)) # label(congruence). [clausify(4)]. 20.048/20.048 -->_s0(x,y) | ->_s0(s(x),s(y)) # label(congruence). [clausify(5)]. 20.048/20.048 ->_s0(b,d) # label(replacement). [assumption]. 20.048/20.048 ->*_s0(x,x) # label(reflexivity). [assumption]. 20.048/20.048 -->_s0(x,y) | -->*_s0(y,z) | ->*_s0(x,z) # label(transitivity). [clausify(6)]. 20.048/20.048 -->*_s0(b,d) # label(goal). [deny(7)]. 20.048/20.048 end_of_list. 20.048/20.048 20.048/20.048 formulas(demodulators). 20.048/20.048 end_of_list. 20.048/20.048 20.048/20.048 ============================== PREDICATE ELIMINATION ================= 20.048/20.048 20.048/20.048 No predicates eliminated. 20.048/20.048 20.048/20.048 ============================== end predicate elimination ============= 20.048/20.048 20.048/20.048 Auto_denials: 20.048/20.048 % copying label goal to answer in negative clause 20.048/20.048 20.048/20.048 Term ordering decisions: 20.048/20.048 Predicate symbol precedence: predicate_order([ ->_s0, ->*_s0 ]). 20.048/20.048 Function symbol precedence: function_order([ b, d, f, g, h, s ]). 20.048/20.048 After inverse_order: (no changes). 20.048/20.048 Unfolding symbols: (none). 20.048/20.048 20.048/20.048 Auto_inference settings: 20.048/20.048 % set(neg_binary_resolution). % (HNE depth_diff=-5) 20.048/20.048 % clear(ordered_res). % (HNE depth_diff=-5) 20.048/20.048 % set(ur_resolution). % (HNE depth_diff=-5) 20.048/20.048 % set(ur_resolution) -> set(pos_ur_resolution). 20.048/20.048 % set(ur_resolution) -> set(neg_ur_resolution). 20.048/20.048 20.048/20.048 Auto_process settings: (no changes). 20.048/20.048 20.048/20.048 kept: 8 -->_s0(x,y) | ->_s0(f(x,z),f(y,z)) # label(congruence). [clausify(1)]. 20.048/20.048 kept: 9 -->_s0(x,y) | ->_s0(f(z,x),f(z,y)) # label(congruence). [clausify(2)]. 20.048/20.048 kept: 10 -->_s0(x,y) | ->_s0(g(x),g(y)) # label(congruence). [clausify(3)]. 20.048/20.048 kept: 11 -->_s0(x,y) | ->_s0(h(x),h(y)) # label(congruence). [clausify(4)]. 20.048/20.048 kept: 12 -->_s0(x,y) | ->_s0(s(x),s(y)) # label(congruence). [clausify(5)]. 20.048/20.048 kept: 13 ->_s0(b,d) # label(replacement). [assumption]. 20.048/20.048 kept: 14 ->*_s0(x,x) # label(reflexivity). [assumption]. 20.048/20.048 kept: 15 -->_s0(x,y) | -->*_s0(y,z) | ->*_s0(x,z) # label(transitivity). [clausify(6)]. 20.048/20.048 kept: 16 -->*_s0(b,d) # label(goal) # answer(goal). [deny(7)]. 20.048/20.048 20.048/20.048 ============================== end of process initial clauses ======== 20.048/20.048 20.048/20.048 ============================== CLAUSES FOR SEARCH ==================== 20.048/20.048 20.048/20.048 % Clauses after input processing: 20.048/20.048 20.048/20.048 formulas(usable). 20.048/20.048 end_of_list. 20.048/20.048 20.048/20.048 formulas(sos). 20.048/20.048 8 -->_s0(x,y) | ->_s0(f(x,z),f(y,z)) # label(congruence). [clausify(1)]. 20.048/20.048 9 -->_s0(x,y) | ->_s0(f(z,x),f(z,y)) # label(congruence). [clausify(2)]. 20.048/20.048 10 -->_s0(x,y) | ->_s0(g(x),g(y)) # label(congruence). [clausify(3)]. 20.048/20.048 11 -->_s0(x,y) | ->_s0(h(x),h(y)) # label(congruence). [clausify(4)]. 20.048/20.048 12 -->_s0(x,y) | ->_s0(s(x),s(y)) # label(congruence). [clausify(5)]. 20.048/20.048 13 ->_s0(b,d) # label(replacement). [assumption]. 20.048/20.048 14 ->*_s0(x,x) # label(reflexivity). [assumption]. 20.048/20.048 15 -->_s0(x,y) | -->*_s0(y,z) | ->*_s0(x,z) # label(transitivity). [clausify(6)]. 20.048/20.048 16 -->*_s0(b,d) # label(goal) # answer(goal). [deny(7)]. 20.048/20.048 end_of_list. 20.048/20.048 20.048/20.048 formulas(demodulators). 20.048/20.048 end_of_list. 20.048/20.048 20.048/20.048 ============================== end of clauses for search ============= 20.048/20.048 20.048/20.048 ============================== SEARCH ================================ 20.048/20.048 20.048/20.048 % Starting search at 0.00 seconds. 20.048/20.048 20.048/20.048 given #1 (I,wt=10): 8 -->_s0(x,y) | ->_s0(f(x,z),f(y,z)) # label(congruence). [clausify(1)]. 20.048/20.048 20.048/20.048 given #2 (I,wt=10): 9 -->_s0(x,y) | ->_s0(f(z,x),f(z,y)) # label(congruence). [clausify(2)]. 20.048/20.048 20.048/20.048 given #3 (I,wt=8): 10 -->_s0(x,y) | ->_s0(g(x),g(y)) # label(congruence). [clausify(3)]. 20.048/20.048 20.048/20.048 given #4 (I,wt=8): 11 -->_s0(x,y) | ->_s0(h(x),h(y)) # label(congruence). [clausify(4)]. 20.048/20.048 20.048/20.048 given #5 (I,wt=8): 12 -->_s0(x,y) | ->_s0(s(x),s(y)) # label(congruence). [clausify(5)]. 20.048/20.048 20.048/20.048 given #6 (I,wt=3): 13 ->_s0(b,d) # label(replacement). [assumption]. 20.048/20.048 20.048/20.048 given #7 (I,wt=3): 14 ->*_s0(x,x) # label(reflexivity). [assumption]. 20.048/20.048 20.048/20.048 given #8 (I,wt=9): 15 -->_s0(x,y) | -->*_s0(y,z) | ->*_s0(x,z) # label(transitivity). [clausify(6)]. 20.048/20.048 20.048/20.048 ============================== PROOF ================================= 20.048/20.048 20.048/20.048 % Proof 1 at 0.00 (+ 0.00) seconds: goal. 20.048/20.048 % Length of proof is 8. 20.048/20.048 % Level of proof is 3. 20.048/20.048 % Maximum clause weight is 9.000. 20.048/20.048 % Given clauses 8. 20.048/20.048 20.048/20.048 6 ->_s0(x,y) & ->*_s0(y,z) -> ->*_s0(x,z) # label(transitivity) # label(non_clause). [assumption]. 20.048/20.048 7 ->*_s0(b,d) # label(goal) # label(non_clause) # label(goal). [goal]. 20.048/20.048 13 ->_s0(b,d) # label(replacement). [assumption]. 20.048/20.048 14 ->*_s0(x,x) # label(reflexivity). [assumption]. 20.048/20.048 15 -->_s0(x,y) | -->*_s0(y,z) | ->*_s0(x,z) # label(transitivity). [clausify(6)]. 20.048/20.048 16 -->*_s0(b,d) # label(goal) # answer(goal). [deny(7)]. 20.048/20.048 22 ->*_s0(b,d). [ur(15,a,13,a,b,14,a)]. 20.048/20.048 23 $F # answer(goal). [resolve(22,a,16,a)]. 20.048/20.048 20.048/20.048 ============================== end of proof ========================== 20.048/20.048 20.048/20.048 ============================== STATISTICS ============================ 20.048/20.048 20.048/20.048 Given=8. Generated=15. Kept=15. proofs=1. 20.048/20.048 Usable=8. Sos=6. Demods=0. Limbo=0, Disabled=9. Hints=0. 20.048/20.048 Kept_by_rule=0, Deleted_by_rule=0. 20.048/20.048 Forward_subsumed=0. Back_subsumed=0. 20.048/20.048 Sos_limit_deleted=0. Sos_displaced=0. Sos_removed=0. 20.048/20.048 New_demodulators=0 (0 lex), Back_demodulated=0. Back_unit_deleted=0. 20.048/20.048 Demod_attempts=0. Demod_rewrites=0. 20.048/20.048 Res_instance_prunes=0. Para_instance_prunes=0. Basic_paramod_prunes=0. 20.048/20.048 Nonunit_fsub_feature_tests=1. Nonunit_bsub_feature_tests=9. 20.048/20.048 Megabytes=0.06. 20.048/20.048 User_CPU=0.00, System_CPU=0.00, Wall_clock=0. 20.048/20.048 20.048/20.048 ============================== end of statistics ===================== 20.048/20.048 20.048/20.048 ============================== end of search ========================= 20.048/20.048 20.048/20.048 THEOREM PROVED 20.048/20.048 20.048/20.048 Exiting with 1 proof. 20.048/20.048 20.048/20.048 Process 72792 exit (max_proofs) Wed Mar 9 10:04:24 2022 20.048/20.048 20.048/20.048 20.048/20.048 The problem is feasible. 20.048/20.048 20.048/20.048 20.048/20.048 CRule InfChecker Info: 20.048/20.048 g(s(x)) -> x 20.048/20.048 Rule remains 20.048/20.048 Proof: 20.048/20.048 NO_CONDS 20.048/20.048 20.048/20.048 CRule InfChecker Info: 20.048/20.048 h(s(x)) -> x 20.048/20.048 Rule remains 20.048/20.048 Proof: 20.048/20.048 NO_CONDS 20.048/20.048 20.048/20.048 Problem 1: 20.048/20.048 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 20.048/20.048 Confluence Problem: 20.048/20.048 (VAR x y) 20.048/20.048 (REPLACEMENT-MAP 20.048/20.048 (a) 20.048/20.048 (b) 20.048/20.048 (f 1, 2) 20.048/20.048 (g 1) 20.048/20.048 (h 1) 20.048/20.048 (d) 20.048/20.048 (fSNonEmpty) 20.048/20.048 (s 1) 20.048/20.048 ) 20.048/20.048 (RULES 20.048/20.048 a -> d 20.048/20.048 b -> d 20.048/20.048 f(x,y) -> g(x) | a ->* d 20.048/20.048 f(x,y) -> h(x) | b ->* d 20.048/20.048 g(s(x)) -> x 20.048/20.048 h(s(x)) -> x 20.048/20.048 ) 20.048/20.048 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 20.048/20.048 20.048/20.048 Critical Pairs Processor: 20.048/20.048 -> Rules: 20.048/20.048 a -> d 20.048/20.048 b -> d 20.048/20.048 f(x,y) -> g(x) | a ->* d 20.048/20.048 f(x,y) -> h(x) | b ->* d 20.048/20.048 g(s(x)) -> x 20.048/20.048 h(s(x)) -> x 20.048/20.048 -> Vars: 20.048/20.048 "x", "y" 20.048/20.048 20.048/20.048 -> Rlps: 20.048/20.048 crule: a -> d, id: 1, possubterms: a-> [] 20.048/20.048 crule: b -> d, id: 2, possubterms: b-> [] 20.048/20.048 crule: f(x,y) -> g(x) | a ->* d, id: 3, possubterms: f(x,y)-> [] 20.048/20.048 crule: f(x,y) -> h(x) | b ->* d, id: 4, possubterms: f(x,y)-> [] 20.048/20.048 crule: g(s(x)) -> x, id: 5, possubterms: g(s(x))-> [], s(x)-> [1] 20.048/20.048 crule: h(s(x)) -> x, id: 6, possubterms: h(s(x))-> [], s(x)-> [1] 20.048/20.048 20.048/20.048 -> Unifications: 20.048/20.048 R4 unifies with R3 at p: [], l: f(x,y), lp: f(x,y), conds: {b ->* d, a ->* d}, sig: {x -> x',y -> y'}, l': f(x',y'), r: h(x), r': g(x') 20.048/20.048 20.048/20.048 -> Critical pairs info: 20.048/20.048 | b ->* d, a ->* d => Not trivial, Overlay, NW2, N1 20.048/20.048 20.048/20.048 -> Problem conclusions: 20.048/20.048 Left linear, Right linear, Linear 20.048/20.048 Not weakly orthogonal, Not almost orthogonal, Not orthogonal 20.048/20.048 CTRS Type: 1 20.048/20.048 Deterministic, Strongly deterministic 20.048/20.048 Oriented CTRS, Properly oriented CTRS, Not join CTRS, Not semiequational CTRS 20.048/20.048 Maybe right-stable CTRS, Overlay CTRS 20.048/20.048 Maybe normal CTRS, Maybe almost normal CTRS 20.048/20.048 Maybe terminating CTRS, Maybe operational terminating CTRS, Maybe joinable CCPs 20.048/20.048 Maybe level confluent 20.048/20.048 Maybe confluent 20.048/20.048 20.048/20.048 Problem 1: 20.048/20.048 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 20.048/20.048 Confluence Problem: 20.048/20.048 (VAR x y x') 20.048/20.048 (REPLACEMENT-MAP 20.048/20.048 (a) 20.048/20.048 (b) 20.048/20.048 (f 1, 2) 20.048/20.048 (g 1) 20.048/20.048 (h 1) 20.048/20.048 (d) 20.048/20.048 (fSNonEmpty) 20.048/20.048 (s 1) 20.048/20.048 ) 20.048/20.048 (RULES 20.048/20.048 a -> d 20.048/20.048 b -> d 20.048/20.048 f(x,y) -> g(x) | a ->* d 20.048/20.048 f(x,y) -> h(x) | b ->* d 20.048/20.048 g(s(x)) -> x 20.048/20.048 h(s(x)) -> x 20.048/20.048 ) 20.048/20.048 Critical Pairs: 20.048/20.048 | b ->* d, a ->* d => Not trivial, Overlay, NW2, N1 20.048/20.048 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 20.048/20.048 20.048/20.048 Conditional Critical Pairs Distributor Processor 20.048/20.048 20.048/20.048 Problem 1: 20.048/20.048 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 20.048/20.048 Confluence Problem: 20.048/20.048 (VAR x y x') 20.048/20.048 (REPLACEMENT-MAP 20.048/20.048 (a) 20.048/20.048 (b) 20.048/20.048 (f 1, 2) 20.048/20.048 (g 1) 20.048/20.048 (h 1) 20.048/20.048 (d) 20.048/20.048 (fSNonEmpty) 20.048/20.048 (s 1) 20.048/20.048 ) 20.048/20.048 (RULES 20.048/20.048 a -> d 20.048/20.048 b -> d 20.048/20.048 f(x,y) -> g(x) | a ->* d 20.048/20.048 f(x,y) -> h(x) | b ->* d 20.048/20.048 g(s(x)) -> x 20.048/20.048 h(s(x)) -> x 20.048/20.048 ) 20.048/20.048 Critical Pairs: 20.048/20.048 | b ->* d, a ->* d => Not trivial, Overlay, NW2, N1 20.048/20.048 ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: 20.048/20.048 20.048/20.048 Infeasible Convergence Constantized CCP Processor: 20.048/20.048 20.048/20.048 Infeasible constantized conditions? 20.048/20.048 NO 20.048/20.048 20.048/20.048 Problem 1: 20.048/20.048 20.048/20.048 Infeasibility Problem: 20.048/20.048 [(VAR vNonEmpty x y x1 vNonEmpty) 20.048/20.048 (STRATEGY CONTEXTSENSITIVE 20.048/20.048 (a) 20.048/20.048 (b) 20.048/20.048 (f 1 2) 20.048/20.048 (g 1) 20.048/20.048 (h 1) 20.048/20.048 (d) 20.048/20.048 (fSNonEmpty) 20.048/20.048 (s 1) 20.048/20.048 ) 20.048/20.048 (RULES 20.048/20.048 a -> d 20.048/20.048 b -> d 20.048/20.048 f(x,y) -> g(x) | a ->* d 20.048/20.048 f(x,y) -> h(x) | b ->* d 20.048/20.048 g(s(x)) -> x 20.048/20.048 h(s(x)) -> x 20.048/20.048 )] 20.048/20.048 20.048/20.048 Infeasibility Conditions: 20.048/20.048 b ->* d, a ->* d 20.048/20.048 20.048/20.048 Problem 1: 20.048/20.048 20.048/20.048 Obtaining a proof using Prover9: 20.048/20.048 20.048/20.048 -> Prover9 Output: 20.048/20.048 ============================== Prover9 =============================== 20.048/20.048 Prover9 (64) version 2009-11A, November 2009. 20.048/20.048 Process 72825 was started by ubuntu on ubuntu, 20.048/20.048 Wed Mar 9 10:04:24 2022 20.048/20.048 The command was "./prover9 -f /tmp/prover972808-0.in". 20.048/20.048 ============================== end of head =========================== 20.048/20.048 20.048/20.048 ============================== INPUT ================================= 20.048/20.048 20.048/20.048 % Reading from file /tmp/prover972808-0.in 20.048/20.048 20.048/20.048 assign(max_seconds,20). 20.048/20.048 20.048/20.048 formulas(assumptions). 20.048/20.048 ->_s0(x1,y) -> ->_s0(f(x1,x2),f(y,x2)) # label(congruence). 20.048/20.048 ->_s0(x2,y) -> ->_s0(f(x1,x2),f(x1,y)) # label(congruence). 20.048/20.048 ->_s0(x1,y) -> ->_s0(g(x1),g(y)) # label(congruence). 20.048/20.048 ->_s0(x1,y) -> ->_s0(h(x1),h(y)) # label(congruence). 20.048/20.048 ->_s0(x1,y) -> ->_s0(s(x1),s(y)) # label(congruence). 20.048/20.048 ->_s0(a,d) # label(replacement). 20.048/20.048 ->_s0(b,d) # label(replacement). 20.048/20.048 ->*_s0(x,x) # label(reflexivity). 20.048/20.048 ->_s0(x,y) & ->*_s0(y,z) -> ->*_s0(x,z) # label(transitivity). 20.048/20.048 end_of_list. 20.048/20.048 20.048/20.048 formulas(goals). 20.048/20.048 ->*_s0(b,d) & ->*_s0(a,d) # label(goal). 20.048/20.048 end_of_list. 20.048/20.048 20.048/20.048 ============================== end of input ========================== 20.048/20.048 20.048/20.048 ============================== PROCESS NON-CLAUSAL FORMULAS ========== 20.048/20.048 20.048/20.048 % Formulas that are not ordinary clauses: 20.048/20.048 1 ->_s0(x1,y) -> ->_s0(f(x1,x2),f(y,x2)) # label(congruence) # label(non_clause). [assumption]. 20.048/20.048 2 ->_s0(x2,y) -> ->_s0(f(x1,x2),f(x1,y)) # label(congruence) # label(non_clause). [assumption]. 20.048/20.048 3 ->_s0(x1,y) -> ->_s0(g(x1),g(y)) # label(congruence) # label(non_clause). [assumption]. 20.048/20.048 4 ->_s0(x1,y) -> ->_s0(h(x1),h(y)) # label(congruence) # label(non_clause). [assumption]. 20.048/20.048 5 ->_s0(x1,y) -> ->_s0(s(x1),s(y)) # label(congruence) # label(non_clause). [assumption]. 20.048/20.048 6 ->_s0(x,y) & ->*_s0(y,z) -> ->*_s0(x,z) # label(transitivity) # label(non_clause). [assumption]. 20.048/20.048 7 ->*_s0(b,d) & ->*_s0(a,d) # label(goal) # label(non_clause) # label(goal). [goal]. 20.048/20.048 20.048/20.048 ============================== end of process non-clausal formulas === 20.048/20.048 20.048/20.048 ============================== PROCESS INITIAL CLAUSES =============== 20.048/20.048 20.048/20.048 % Clauses before input processing: 20.048/20.048 20.048/20.048 formulas(usable). 20.048/20.048 end_of_list. 20.048/20.048 20.048/20.048 formulas(sos). 20.048/20.048 -->_s0(x,y) | ->_s0(f(x,z),f(y,z)) # label(congruence). [clausify(1)]. 20.048/20.048 -->_s0(x,y) | ->_s0(f(z,x),f(z,y)) # label(congruence). [clausify(2)]. 20.048/20.048 -->_s0(x,y) | ->_s0(g(x),g(y)) # label(congruence). [clausify(3)]. 20.048/20.048 -->_s0(x,y) | ->_s0(h(x),h(y)) # label(congruence). [clausify(4)]. 20.048/20.048 -->_s0(x,y) | ->_s0(s(x),s(y)) # label(congruence). [clausify(5)]. 20.048/20.048 ->_s0(a,d) # label(replacement). [assumption]. 20.048/20.048 ->_s0(b,d) # label(replacement). [assumption]. 20.048/20.048 ->*_s0(x,x) # label(reflexivity). [assumption]. 20.048/20.048 -->_s0(x,y) | -->*_s0(y,z) | ->*_s0(x,z) # label(transitivity). [clausify(6)]. 20.048/20.048 -->*_s0(b,d) | -->*_s0(a,d) # label(goal). [deny(7)]. 20.048/20.048 end_of_list. 20.048/20.048 20.048/20.048 formulas(demodulators). 20.048/20.048 end_of_list. 20.048/20.048 20.048/20.048 ============================== PREDICATE ELIMINATION ================= 20.048/20.048 20.048/20.048 No predicates eliminated. 20.048/20.048 20.048/20.048 ============================== end predicate elimination ============= 20.048/20.048 20.048/20.048 Auto_denials: 20.048/20.048 % copying label goal to answer in negative clause 20.048/20.048 20.048/20.048 Term ordering decisions: 20.048/20.048 Predicate symbol precedence: predicate_order([ ->_s0, ->*_s0 ]). 20.048/20.048 Function symbol precedence: function_order([ d, a, b, f, g, h, s ]). 20.048/20.048 After inverse_order: (no changes). 20.048/20.048 Unfolding symbols: (none). 20.048/20.048 20.048/20.048 Auto_inference settings: 20.048/20.048 % set(neg_binary_resolution). % (HNE depth_diff=-5) 20.048/20.048 % clear(ordered_res). % (HNE depth_diff=-5) 20.048/20.048 % set(ur_resolution). % (HNE depth_diff=-5) 20.048/20.048 % set(ur_resolution) -> set(pos_ur_resolution). 20.048/20.048 % set(ur_resolution) -> set(neg_ur_resolution). 20.048/20.048 20.048/20.048 Auto_process settings: 20.048/20.048 % set(unit_deletion). % (Horn set with negative nonunits) 20.048/20.048 20.048/20.048 kept: 8 -->_s0(x,y) | ->_s0(f(x,z),f(y,z)) # label(congruence). [clausify(1)]. 20.048/20.048 kept: 9 -->_s0(x,y) | ->_s0(f(z,x),f(z,y)) # label(congruence). [clausify(2)]. 20.048/20.048 kept: 10 -->_s0(x,y) | ->_s0(g(x),g(y)) # label(congruence). [clausify(3)]. 20.048/20.048 kept: 11 -->_s0(x,y) | ->_s0(h(x),h(y)) # label(congruence). [clausify(4)]. 20.048/20.048 kept: 12 -->_s0(x,y) | ->_s0(s(x),s(y)) # label(congruence). [clausify(5)]. 20.048/20.048 kept: 13 ->_s0(a,d) # label(replacement). [assumption]. 20.048/20.048 kept: 14 ->_s0(b,d) # label(replacement). [assumption]. 20.048/20.048 kept: 15 ->*_s0(x,x) # label(reflexivity). [assumption]. 20.048/20.048 kept: 16 -->_s0(x,y) | -->*_s0(y,z) | ->*_s0(x,z) # label(transitivity). [clausify(6)]. 20.048/20.048 kept: 17 -->*_s0(b,d) | -->*_s0(a,d) # label(goal) # answer(goal). [deny(7)]. 20.048/20.048 20.048/20.048 ============================== end of process initial clauses ======== 20.048/20.048 20.048/20.048 ============================== CLAUSES FOR SEARCH ==================== 20.048/20.048 20.048/20.048 % Clauses after input processing: 20.048/20.048 20.048/20.048 formulas(usable). 20.048/20.048 end_of_list. 20.048/20.048 20.048/20.048 formulas(sos). 20.048/20.048 8 -->_s0(x,y) | ->_s0(f(x,z),f(y,z)) # label(congruence). [clausify(1)]. 20.048/20.048 9 -->_s0(x,y) | ->_s0(f(z,x),f(z,y)) # label(congruence). [clausify(2)]. 20.048/20.048 10 -->_s0(x,y) | ->_s0(g(x),g(y)) # label(congruence). [clausify(3)]. 20.048/20.048 11 -->_s0(x,y) | ->_s0(h(x),h(y)) # label(congruence). [clausify(4)]. 20.048/20.048 12 -->_s0(x,y) | ->_s0(s(x),s(y)) # label(congruence). [clausify(5)]. 20.048/20.048 13 ->_s0(a,d) # label(replacement). [assumption]. 20.048/20.048 14 ->_s0(b,d) # label(replacement). [assumption]. 20.048/20.048 15 ->*_s0(x,x) # label(reflexivity). [assumption]. 20.048/20.048 16 -->_s0(x,y) | -->*_s0(y,z) | ->*_s0(x,z) # label(transitivity). [clausify(6)]. 20.048/20.048 17 -->*_s0(b,d) | -->*_s0(a,d) # label(goal) # answer(goal). [deny(7)]. 20.048/20.048 end_of_list. 20.048/20.048 20.048/20.048 formulas(demodulators). 20.048/20.048 end_of_list. 20.048/20.048 20.048/20.048 ============================== end of clauses for search ============= 20.048/20.048 20.048/20.048 ============================== SEARCH ================================ 20.048/20.048 20.048/20.048 % Starting search at 0.00 seconds. 20.048/20.048 20.048/20.048 given #1 (I,wt=10): 8 -->_s0(x,y) | ->_s0(f(x,z),f(y,z)) # label(congruence). [clausify(1)]. 20.048/20.048 20.048/20.048 given #2 (I,wt=10): 9 -->_s0(x,y) | ->_s0(f(z,x),f(z,y)) # label(congruence). [clausify(2)]. 20.048/20.048 20.048/20.048 given #3 (I,wt=8): 10 -->_s0(x,y) | ->_s0(g(x),g(y)) # label(congruence). [clausify(3)]. 20.048/20.048 20.048/20.048 given #4 (I,wt=8): 11 -->_s0(x,y) | ->_s0(h(x),h(y)) # label(congruence). [clausify(4)]. 20.048/20.048 20.048/20.048 given #5 (I,wt=8): 12 -->_s0(x,y) | ->_s0(s(x),s(y)) # label(congruence). [clausify(5)]. 20.048/20.048 20.048/20.048 given #6 (I,wt=3): 13 ->_s0(a,d) # label(replacement). [assumption]. 20.048/20.048 20.048/20.048 given #7 (I,wt=3): 14 ->_s0(b,d) # label(replacement). [assumption]. 20.048/20.048 20.048/20.048 given #8 (I,wt=3): 15 ->*_s0(x,x) # label(reflexivity). [assumption]. 20.048/20.048 20.048/20.048 given #9 (I,wt=9): 16 -->_s0(x,y) | -->*_s0(y,z) | ->*_s0(x,z) # label(transitivity). [clausify(6)]. 20.048/20.048 20.048/20.048 ============================== PROOF ================================= 20.048/20.048 20.048/20.048 % Proof 1 at 0.00 (+ 0.00) seconds: goal. 20.048/20.048 % Length of proof is 10. 20.048/20.048 % Level of proof is 3. 20.048/20.048 % Maximum clause weight is 9.000. 20.048/20.048 % Given clauses 9. 20.048/20.048 20.048/20.048 6 ->_s0(x,y) & ->*_s0(y,z) -> ->*_s0(x,z) # label(transitivity) # label(non_clause). [assumption]. 20.048/20.048 7 ->*_s0(b,d) & ->*_s0(a,d) # label(goal) # label(non_clause) # label(goal). [goal]. 20.048/20.048 13 ->_s0(a,d) # label(replacement). [assumption]. 20.048/20.048 14 ->_s0(b,d) # label(replacement). [assumption]. 20.048/20.048 15 ->*_s0(x,x) # label(reflexivity). [assumption]. 20.048/20.048 16 -->_s0(x,y) | -->*_s0(y,z) | ->*_s0(x,z) # label(transitivity). [clausify(6)]. 20.048/20.048 17 -->*_s0(b,d) | -->*_s0(a,d) # label(goal) # answer(goal). [deny(7)]. 20.048/20.048 28 ->*_s0(b,d). [ur(16,a,14,a,b,15,a)]. 20.048/20.048 29 ->*_s0(a,d). [ur(16,a,13,a,b,15,a)]. 20.048/20.048 30 $F # answer(goal). [back_unit_del(17),unit_del(a,28),unit_del(b,29)]. 20.048/20.048 20.048/20.048 ============================== end of proof ========================== 20.048/20.048 20.048/20.048 ============================== STATISTICS ============================ 20.048/20.048 20.048/20.048 Given=9. Generated=23. Kept=22. proofs=1. 20.048/20.048 Usable=9. Sos=10. Demods=0. Limbo=2, Disabled=11. Hints=0. 20.048/20.048 Kept_by_rule=0, Deleted_by_rule=0. 20.048/20.048 Forward_subsumed=0. Back_subsumed=0. 20.048/20.048 Sos_limit_deleted=0. Sos_displaced=0. Sos_removed=0. 20.048/20.048 New_demodulators=0 (0 lex), Back_demodulated=0. Back_unit_deleted=1. 20.048/20.048 Demod_attempts=0. Demod_rewrites=0. 20.048/20.048 Res_instance_prunes=0. Para_instance_prunes=0. Basic_paramod_prunes=0. 20.048/20.048 Nonunit_fsub_feature_tests=1. Nonunit_bsub_feature_tests=10. 20.048/20.048 Megabytes=0.07. 20.048/20.048 User_CPU=0.00, System_CPU=0.00, Wall_clock=0. 20.048/20.048 20.048/20.048 ============================== end of statistics ===================== 20.048/20.048 20.048/20.048 ============================== end of search ========================= 20.048/20.048 20.048/20.048 THEOREM PROVED 20.048/20.048 20.048/20.048 Exiting with 1 proof. 20.048/20.048 20.048/20.048 Process 72825 exit (max_proofs) Wed Mar 9 10:04:24 2022 20.048/20.048 20.048/20.048 20.048/20.048 The problem is feasible. 20.048/20.048 20.048/20.048 Infeasible constantized CCP convergence? 20.048/20.048 YES 20.048/20.048 20.048/20.048 Problem 1: 20.048/20.048 20.048/20.048 Infeasibility Problem: 20.048/20.048 [(VAR vNonEmpty x y x1 vNonEmpty z) 20.048/20.048 (STRATEGY CONTEXTSENSITIVE 20.048/20.048 (a) 20.048/20.048 (b) 20.048/20.048 (f 1 2) 20.048/20.048 (g 1) 20.048/20.048 (h 1) 20.048/20.048 (c_x1) 20.048/20.048 (d) 20.048/20.048 (fSNonEmpty) 20.048/20.048 (s 1) 20.048/20.048 ) 20.048/20.048 (RULES 20.048/20.048 a -> d 20.048/20.048 b -> d 20.048/20.048 f(x,y) -> g(x) | a ->* d 20.048/20.048 f(x,y) -> h(x) | b ->* d 20.048/20.048 g(s(x)) -> x 20.048/20.048 h(s(x)) -> x 20.048/20.048 )] 20.048/20.048 20.048/20.048 Infeasibility Conditions: 20.048/20.048 g(c_x1) ->* z, h(c_x1) ->* z 20.048/20.048 20.048/20.048 Problem 1: 20.048/20.048 20.048/20.048 Obtaining a model using Mace4: 20.048/20.048 20.048/20.048 -> Usable Rules: 20.048/20.048 g(s(x)) -> x 20.048/20.048 h(s(x)) -> x 20.048/20.048 20.048/20.048 -> Mace4 Output: 20.048/20.048 ============================== Mace4 ================================= 20.048/20.048 Mace4 (64) version 2009-11A, November 2009. 20.048/20.048 Process 72875 was started by ubuntu on ubuntu, 20.048/20.048 Wed Mar 9 10:04:24 2022 20.048/20.048 The command was "./mace4 -c -f /tmp/mace472845-2.in". 20.048/20.048 ============================== end of head =========================== 20.048/20.048 20.048/20.048 ============================== INPUT ================================= 20.048/20.048 20.048/20.048 % Reading from file /tmp/mace472845-2.in 20.048/20.048 20.048/20.048 assign(max_seconds,20). 20.048/20.048 20.048/20.048 formulas(assumptions). 20.048/20.048 ->(x1,y) -> ->(f(x1,x2),f(y,x2)) # label(congruence). 20.048/20.048 ->(x2,y) -> ->(f(x1,x2),f(x1,y)) # label(congruence). 20.048/20.048 ->(x1,y) -> ->(g(x1),g(y)) # label(congruence). 20.048/20.048 ->(x1,y) -> ->(h(x1),h(y)) # label(congruence). 20.048/20.048 ->(x1,y) -> ->(s(x1),s(y)) # label(congruence). 20.048/20.048 ->(g(s(x1)),x1) # label(replacement). 20.048/20.048 ->(h(s(x1)),x1) # label(replacement). 20.048/20.048 ->*(x,x) # label(reflexivity). 20.048/20.048 ->(x,y) & ->*(y,z) -> ->*(x,z) # label(transitivity). 20.048/20.048 end_of_list. 20.048/20.048 20.048/20.048 formulas(goals). 20.048/20.048 (exists x5 (->*(g(c_x1),x5) & ->*(h(c_x1),x5))) # label(goal). 20.048/20.048 end_of_list. 20.048/20.048 20.048/20.048 ============================== end of input ========================== 20.048/20.048 20.048/20.048 ============================== PROCESS NON-CLAUSAL FORMULAS ========== 20.048/20.048 20.048/20.048 % Formulas that are not ordinary clauses: 20.048/20.048 1 ->(x1,y) -> ->(f(x1,x2),f(y,x2)) # label(congruence) # label(non_clause). [assumption]. 20.048/20.048 2 ->(x2,y) -> ->(f(x1,x2),f(x1,y)) # label(congruence) # label(non_clause). [assumption]. 20.048/20.048 3 ->(x1,y) -> ->(g(x1),g(y)) # label(congruence) # label(non_clause). [assumption]. 20.048/20.048 4 ->(x1,y) -> ->(h(x1),h(y)) # label(congruence) # label(non_clause). [assumption]. 20.048/20.048 5 ->(x1,y) -> ->(s(x1),s(y)) # label(congruence) # label(non_clause). [assumption]. 20.048/20.048 6 ->(x,y) & ->*(y,z) -> ->*(x,z) # label(transitivity) # label(non_clause). [assumption]. 20.048/20.048 7 (exists x5 (->*(g(c_x1),x5) & ->*(h(c_x1),x5))) # label(goal) # label(non_clause) # label(goal). [goal]. 20.048/20.048 20.048/20.048 ============================== end of process non-clausal formulas === 20.048/20.048 20.048/20.048 ============================== CLAUSES FOR SEARCH ==================== 20.048/20.048 20.048/20.048 formulas(mace4_clauses). 20.048/20.048 -->(x,y) | ->(f(x,z),f(y,z)) # label(congruence). 20.048/20.048 -->(x,y) | ->(f(z,x),f(z,y)) # label(congruence). 20.048/20.048 -->(x,y) | ->(g(x),g(y)) # label(congruence). 20.048/20.048 -->(x,y) | ->(h(x),h(y)) # label(congruence). 20.048/20.048 -->(x,y) | ->(s(x),s(y)) # label(congruence). 20.048/20.048 ->(g(s(x)),x) # label(replacement). 20.048/20.048 ->(h(s(x)),x) # label(replacement). 20.048/20.048 ->*(x,x) # label(reflexivity). 20.048/20.048 -->(x,y) | -->*(y,z) | ->*(x,z) # label(transitivity). 20.048/20.048 -->*(g(c_x1),x) | -->*(h(c_x1),x) # label(goal). 20.048/20.048 end_of_list. 20.048/20.048 20.048/20.048 ============================== end of clauses for search ============= 20.048/20.048 20.048/20.048 % There are no natural numbers in the input. 20.048/20.048 20.048/20.048 ============================== DOMAIN SIZE 2 ========================= 20.048/20.048 20.048/20.048 ============================== STATISTICS ============================ 20.048/20.048 20.048/20.048 For domain size 2. 20.048/20.048 20.048/20.048 Current CPU time: 0.00 seconds (total CPU time: 0.00 seconds). 20.048/20.048 Ground clauses: seen=44, kept=40. 20.048/20.048 Selections=10, assignments=19, propagations=32, current_models=0. 20.048/20.048 Rewrite_terms=140, rewrite_bools=148, indexes=30. 20.048/20.048 Rules_from_neg_clauses=8, cross_offs=8. 20.048/20.048 20.048/20.048 ============================== end of statistics ===================== 20.048/20.048 20.048/20.048 ============================== DOMAIN SIZE 3 ========================= 20.048/20.048 20.048/20.048 ============================== MODEL ================================= 20.048/20.048 20.048/20.048 interpretation( 3, [number=1, seconds=0], [ 20.048/20.048 20.048/20.048 function(c_x1, [ 0 ]), 20.048/20.048 20.048/20.048 function(s(_), [ 1, 2, 2 ]), 20.048/20.048 20.048/20.048 function(g(_), [ 0, 0, 2 ]), 20.048/20.048 20.048/20.048 function(h(_), [ 1, 0, 2 ]), 20.048/20.048 20.048/20.048 function(f(_,_), [ 20.048/20.048 0, 0, 0, 20.048/20.048 0, 0, 0, 20.048/20.048 0, 0, 0 ]), 20.048/20.048 20.048/20.048 relation(->*(_,_), [ 20.048/20.048 1, 0, 0, 20.048/20.048 0, 1, 0, 20.048/20.048 1, 1, 1 ]), 20.048/20.048 20.048/20.048 relation(->(_,_), [ 20.048/20.048 1, 0, 0, 20.048/20.048 0, 1, 0, 20.048/20.048 1, 1, 1 ]) 20.048/20.048 ]). 20.048/20.048 20.048/20.048 ============================== end of model ========================== 20.048/20.048 20.048/20.048 ============================== STATISTICS ============================ 20.048/20.048 20.048/20.048 For domain size 3. 20.048/20.048 20.048/20.048 Current CPU time: 0.00 seconds (total CPU time: 0.00 seconds). 20.048/20.048 Ground clauses: seen=120, kept=111. 20.048/20.048 Selections=58, assignments=146, propagations=45, current_models=1. 20.048/20.048 Rewrite_terms=894, rewrite_bools=522, indexes=47. 20.048/20.048 Rules_from_neg_clauses=8, cross_offs=26. 20.048/20.048 20.048/20.048 ============================== end of statistics ===================== 20.048/20.048 20.048/20.048 User_CPU=0.00, System_CPU=0.00, Wall_clock=0. 20.048/20.048 20.048/20.048 Exiting with 1 model. 20.048/20.048 20.048/20.048 Process 72875 exit (max_models) Wed Mar 9 10:04:24 2022 20.048/20.048 The process finished Wed Mar 9 10:04:24 2022 20.048/20.048 20.048/20.048 20.048/20.048 Mace4 cooked interpretation: 20.048/20.048 20.048/20.048 20.048/20.048 20.048/20.048 The problem is infeasible. 20.048/20.048 20.048/20.048 20.048/20.048 The problem is not joinable. 20.048/20.048 16.25user 0.52system 0:20.48elapsed 81%CPU (0avgtext+0avgdata 62328maxresident)k 20.048/20.048 8inputs+0outputs (0major+35891minor)pagefaults 0swaps