YES Problem 1: Infeasibility Problem: [(VAR vNonEmpty x y vNonEmpty x1 y) (STRATEGY CONTEXTSENSITIVE (f 1 2) (h 1) (a 1) (b) (c 1) (fSNonEmpty) ) (RULES f(c(c(c(x))),y) -> a(y) | c(f(c(x),c(c(y)))) ->* c(a(a(b))) f(c(x),c(c(y))) -> a(a(x)) | c(f(x,y)) ->* c(a(b)) h(a(a(x))) -> a(b) | h(x) ->* b h(b) -> b ) ] Infeasibility Conditions: c(f(c(c(x1)),y)) ->* c(a(b)), c(f(c(x1),c(c(c(c(y)))))) ->* c(a(a(b))) Problem 1: Obtaining a model using Mace4: -> Usable Rules: f(c(c(c(x))),y) -> a(y) | c(f(c(x),c(c(y)))) ->* c(a(a(b))) f(c(x),c(c(y))) -> a(a(x)) | c(f(x,y)) ->* c(a(b)) h(a(a(x))) -> a(b) | h(x) ->* b h(b) -> b -> Mace4 Output: ============================== Mace4 ================================= Mace4 (64) version 2009-11A, November 2009. Process 3425417 was started by sandbox on z018.star.cs.uiowa.edu, Tue Jul 30 09:54:25 2024 The command was "./mace4 -c -f /tmp/mace43425406-2.in". ============================== end of head =========================== ============================== INPUT ================================= % Reading from file /tmp/mace43425406-2.in assign(max_seconds,100). formulas(assumptions). ->(x1,y) -> ->(f(x1,x2),f(y,x2)) # label(congruence). ->(x2,y) -> ->(f(x1,x2),f(x1,y)) # label(congruence). ->(x1,y) -> ->(h(x1),h(y)) # label(congruence). ->(x1,y) -> ->(a(x1),a(y)) # label(congruence). ->(x1,y) -> ->(c(x1),c(y)) # label(congruence). ->*(c(f(c(x1),c(c(x2)))),c(a(a(b)))) -> ->(f(c(c(c(x1))),x2),a(x2)) # label(replacement). ->*(c(f(x1,x2)),c(a(b))) -> ->(f(c(x1),c(c(x2))),a(a(x1))) # label(replacement). ->*(h(x1),b) -> ->(h(a(a(x1))),a(b)) # label(replacement). ->(h(b),b) # label(replacement). ->*(x,x) # label(reflexivity). ->(x,y) & ->*(y,z) -> ->*(x,z) # label(transitivity). end_of_list. formulas(goals). (exists x4 exists x5 (->*(c(f(c(c(x4)),x5)),c(a(b))) & ->*(c(f(c(x4),c(c(c(c(x5)))))),c(a(a(b)))))) # label(goal). end_of_list. ============================== end of input ========================== ============================== PROCESS NON-CLAUSAL FORMULAS ========== % Formulas that are not ordinary clauses: 1 ->(x1,y) -> ->(f(x1,x2),f(y,x2)) # label(congruence) # label(non_clause). [assumption]. 2 ->(x2,y) -> ->(f(x1,x2),f(x1,y)) # label(congruence) # label(non_clause). [assumption]. 3 ->(x1,y) -> ->(h(x1),h(y)) # label(congruence) # label(non_clause). [assumption]. 4 ->(x1,y) -> ->(a(x1),a(y)) # label(congruence) # label(non_clause). [assumption]. 5 ->(x1,y) -> ->(c(x1),c(y)) # label(congruence) # label(non_clause). [assumption]. 6 ->*(c(f(c(x1),c(c(x2)))),c(a(a(b)))) -> ->(f(c(c(c(x1))),x2),a(x2)) # label(replacement) # label(non_clause). [assumption]. 7 ->*(c(f(x1,x2)),c(a(b))) -> ->(f(c(x1),c(c(x2))),a(a(x1))) # label(replacement) # label(non_clause). [assumption]. 8 ->*(h(x1),b) -> ->(h(a(a(x1))),a(b)) # label(replacement) # label(non_clause). [assumption]. 9 ->(x,y) & ->*(y,z) -> ->*(x,z) # label(transitivity) # label(non_clause). [assumption]. 10 (exists x4 exists x5 (->*(c(f(c(c(x4)),x5)),c(a(b))) & ->*(c(f(c(x4),c(c(c(c(x5)))))),c(a(a(b)))))) # label(goal) # label(non_clause) # label(goal). [goal]. ============================== end of process non-clausal formulas === ============================== CLAUSES FOR SEARCH ==================== formulas(mace4_clauses). -->(x,y) | ->(f(x,z),f(y,z)) # label(congruence). -->(x,y) | ->(f(z,x),f(z,y)) # label(congruence). -->(x,y) | ->(h(x),h(y)) # label(congruence). -->(x,y) | ->(a(x),a(y)) # label(congruence). -->(x,y) | ->(c(x),c(y)) # label(congruence). -->*(c(f(c(x),c(c(y)))),c(a(a(b)))) | ->(f(c(c(c(x))),y),a(y)) # label(replacement). -->*(c(f(x,y)),c(a(b))) | ->(f(c(x),c(c(y))),a(a(x))) # label(replacement). -->*(h(x),b) | ->(h(a(a(x))),a(b)) # label(replacement). ->(h(b),b) # label(replacement). ->*(x,x) # label(reflexivity). -->(x,y) | -->*(y,z) | ->*(x,z) # label(transitivity). -->*(c(f(c(c(x)),y)),c(a(b))) | -->*(c(f(c(x),c(c(c(c(y)))))),c(a(a(b)))) # label(goal). end_of_list. ============================== end of clauses for search ============= % There are no natural numbers in the input. ============================== DOMAIN SIZE 2 ========================= ============================== MODEL ================================= interpretation( 2, [number=1, seconds=0], [ function(b, [ 0 ]), function(h(_), [ 0, 0 ]), function(a(_), [ 0, 0 ]), function(c(_), [ 0, 1 ]), function(f(_,_), [ 1, 1, 1, 1 ]), relation(->*(_,_), [ 1, 0, 0, 1 ]), relation(->(_,_), [ 1, 0, 0, 1 ]) ]). ============================== end of model ========================== ============================== STATISTICS ============================ For domain size 2. Current CPU time: 0.00 seconds (total CPU time: 0.01 seconds). Ground clauses: seen=53, kept=49. Selections=13, assignments=18, propagations=7, current_models=1. Rewrite_terms=280, rewrite_bools=95, indexes=87. Rules_from_neg_clauses=0, cross_offs=0. ============================== end of statistics ===================== User_CPU=0.01, System_CPU=0.00, Wall_clock=0. Exiting with 1 model. Process 3425417 exit (max_models) Tue Jul 30 09:54:25 2024 The process finished Tue Jul 30 09:54:25 2024 Mace4 cooked interpretation: % number = 1 % seconds = 0 % Interpretation of size 2 b = 0. h(0) = 0. h(1) = 0. a(0) = 0. a(1) = 0. c(0) = 0. c(1) = 1. f(0,0) = 1. f(0,1) = 1. f(1,0) = 1. f(1,1) = 1. ->*(0,0). - ->*(0,1). - ->*(1,0). ->*(1,1). ->(0,0). - ->(0,1). - ->(1,0). ->(1,1). The problem is infeasible.