YES Problem 1: Infeasibility Problem: [(VAR vNonEmpty x y z vNonEmpty) (STRATEGY CONTEXTSENSITIVE (f 1 2) (a) (fSNonEmpty) (unit) ) (RULES f(f(x,y),z) -> f(x,f(y,z)) f(x,unit) -> x f(x,x) -> unit | x <-->* a ) ] Infeasibility Conditions: a <-->* f(a,a) Problem 1: Obtaining a model using Mace4: -> Usable Rules: f(f(x,y),z) -> f(x,f(y,z)) f(x,unit) -> x f(x,x) -> unit | x <-->* a -> Mace4 Output: ============================== Mace4 ================================= Mace4 (64) version 2009-11A, November 2009. Process 3292847 was started by sandbox on z008.star.cs.uiowa.edu, Tue Jul 30 09:00:09 2024 The command was "./mace4 -c -f /tmp/mace43292834-2.in". ============================== end of head =========================== ============================== INPUT ================================= % Reading from file /tmp/mace43292834-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). ->(f(f(x1,x2),x3),f(x1,f(x2,x3))) # label(replacement). ->(f(x1,unit),x1) # label(replacement). <-->*(x1,a) -> ->(f(x1,x1),unit) # label(replacement). ->(x,y) | ->(y,x) -> <-->(x,y) # label(convertibility). <-->*(x,x) # label(covertibility). <-->(x,y) & <-->*(y,z) -> <-->*(x,z) # label(convertibility). end_of_list. formulas(goals). <-->*(a,f(a,a)) # 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,a) -> ->(f(x1,x1),unit) # label(replacement) # label(non_clause). [assumption]. 4 ->(x,y) | ->(y,x) -> <-->(x,y) # label(convertibility) # label(non_clause). [assumption]. 5 <-->(x,y) & <-->*(y,z) -> <-->*(x,z) # label(convertibility) # label(non_clause). [assumption]. 6 <-->*(a,f(a,a)) # 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). ->(f(f(x,y),z),f(x,f(y,z))) # label(replacement). ->(f(x,unit),x) # label(replacement). -<-->*(x,a) | ->(f(x,x),unit) # label(replacement). -->(x,y) | <-->(x,y) # label(convertibility). -->(x,y) | <-->(y,x) # label(convertibility). <-->*(x,x) # label(covertibility). -<-->(x,y) | -<-->*(y,z) | <-->*(x,z) # label(convertibility). -<-->*(a,f(a,a)) # 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(a, [ 0 ]), function(unit, [ 1 ]), function(f(_,_), [ 1, 0, 0, 1 ]), relation(->(_,_), [ 1, 0, 0, 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=47, kept=43. Selections=2, assignments=2, propagations=16, current_models=1. Rewrite_terms=78, rewrite_bools=57, indexes=15. Rules_from_neg_clauses=5, cross_offs=5. ============================== end of statistics ===================== User_CPU=0.01, System_CPU=0.00, Wall_clock=0. Exiting with 1 model. Process 3292847 exit (max_models) Tue Jul 30 09:00:09 2024 The process finished Tue Jul 30 09:00:09 2024 Mace4 cooked interpretation: % number = 1 % seconds = 0 % Interpretation of size 2 a = 0. unit = 1. f(0,0) = 1. f(0,1) = 0. f(1,0) = 0. f(1,1) = 1. ->(0,0). - ->(0,1). - ->(1,0). ->(1,1). <-->*(0,0). - <-->*(0,1). - <-->*(1,0). <-->*(1,1). <-->(0,0). - <-->(0,1). - <-->(1,0). <-->(1,1). The problem is infeasible.