NO

Problem 1: 

Infeasibility Problem:
[(VAR vNonEmpty x vNonEmpty x)
(STRATEGY CONTEXTSENSITIVE
(p 1)
(pos 1)
(s 1)
(0)
(fSNonEmpty)
(false)
(true)
)
(RULES
p(s(x)) -> x
pos(p(x)) -> false | pos(x) ->* false
pos(s(0)) -> true
pos(s(x)) -> true | pos(x) ->* true
pos(0) -> false
s(p(x)) -> x
)
]

Infeasibility Conditions:
pos(s(x)) ->* false

Problem 1: 

Obtaining a proof using Prover9:

 -> Prover9 Output:
============================== Prover9 ===============================
Prover9 (64) version 2009-11A, November 2009.
Process 3327435 was started by sandbox on z031.star.cs.uiowa.edu,
Tue Jul 30 09:24:55 2024
The command was "./prover9 -f /tmp/prover93327424-0.in".
============================== end of head ===========================

============================== INPUT =================================

% Reading from file /tmp/prover93327424-0.in

assign(max_seconds,20).

formulas(assumptions).
->_s0(x1,y) -> ->_s0(p(x1),p(y)) # label(congruence).
->_s0(x1,y) -> ->_s0(pos(x1),pos(y)) # label(congruence).
->_s0(x1,y) -> ->_s0(s(x1),s(y)) # label(congruence).
->_s0(p(s(x1)),x1) # label(replacement).
->*_s0(pos(x1),false) -> ->_s0(pos(p(x1)),false) # label(replacement).
->_s0(pos(s(0)),true) # label(replacement).
->*_s0(pos(x1),true) -> ->_s0(pos(s(x1)),true) # label(replacement).
->_s0(pos(0),false) # label(replacement).
->_s0(s(p(x1)),x1) # label(replacement).
->*_s0(x,x) # label(reflexivity).
->_s0(x,y) & ->*_s0(y,z) -> ->*_s0(x,z) # label(transitivity).
end_of_list.

formulas(goals).
(exists x3 ->*_s0(pos(s(x3)),false)) # label(goal).
end_of_list.

============================== end of input ==========================

============================== PROCESS NON-CLAUSAL FORMULAS ==========

% Formulas that are not ordinary clauses:
1 ->_s0(x1,y) -> ->_s0(p(x1),p(y)) # label(congruence) # label(non_clause).  [assumption].
2 ->_s0(x1,y) -> ->_s0(pos(x1),pos(y)) # label(congruence) # label(non_clause).  [assumption].
3 ->_s0(x1,y) -> ->_s0(s(x1),s(y)) # label(congruence) # label(non_clause).  [assumption].
4 ->*_s0(pos(x1),false) -> ->_s0(pos(p(x1)),false) # label(replacement) # label(non_clause).  [assumption].
5 ->*_s0(pos(x1),true) -> ->_s0(pos(s(x1)),true) # label(replacement) # label(non_clause).  [assumption].
6 ->_s0(x,y) & ->*_s0(y,z) -> ->*_s0(x,z) # label(transitivity) # label(non_clause).  [assumption].
7 (exists x3 ->*_s0(pos(s(x3)),false)) # label(goal) # label(non_clause) # label(goal).  [goal].

============================== end of process non-clausal formulas ===

============================== PROCESS INITIAL CLAUSES ===============

% Clauses before input processing:

formulas(usable).
end_of_list.

formulas(sos).
-->_s0(x,y) | ->_s0(p(x),p(y)) # label(congruence).  [clausify(1)].
-->_s0(x,y) | ->_s0(pos(x),pos(y)) # label(congruence).  [clausify(2)].
-->_s0(x,y) | ->_s0(s(x),s(y)) # label(congruence).  [clausify(3)].
->_s0(p(s(x)),x) # label(replacement).  [assumption].
-->*_s0(pos(x),false) | ->_s0(pos(p(x)),false) # label(replacement).  [clausify(4)].
->_s0(pos(s(0)),true) # label(replacement).  [assumption].
-->*_s0(pos(x),true) | ->_s0(pos(s(x)),true) # label(replacement).  [clausify(5)].
->_s0(pos(0),false) # label(replacement).  [assumption].
->_s0(s(p(x)),x) # label(replacement).  [assumption].
->*_s0(x,x) # label(reflexivity).  [assumption].
-->_s0(x,y) | -->*_s0(y,z) | ->*_s0(x,z) # label(transitivity).  [clausify(6)].
-->*_s0(pos(s(x)),false) # label(goal).  [deny(7)].
end_of_list.

formulas(demodulators).
end_of_list.

============================== PREDICATE ELIMINATION =================

No predicates eliminated.

============================== end predicate elimination =============

Auto_denials:
  % copying label goal to answer in negative clause

Term ordering decisions:
Predicate symbol precedence:  predicate_order([ ->_s0, ->*_s0 ]).
Function symbol precedence:  function_order([ false, true, 0, pos, s, p ]).
After inverse_order:  (no changes).
Unfolding symbols: (none).

Auto_inference settings:
  % set(neg_binary_resolution).  % (HNE depth_diff=-5)
  % clear(ordered_res).  % (HNE depth_diff=-5)
  % set(ur_resolution).  % (HNE depth_diff=-5)
    % set(ur_resolution) -> set(pos_ur_resolution).
    % set(ur_resolution) -> set(neg_ur_resolution).

Auto_process settings:  (no changes).

kept:      8 -->_s0(x,y) | ->_s0(p(x),p(y)) # label(congruence).  [clausify(1)].
kept:      9 -->_s0(x,y) | ->_s0(pos(x),pos(y)) # label(congruence).  [clausify(2)].
kept:      10 -->_s0(x,y) | ->_s0(s(x),s(y)) # label(congruence).  [clausify(3)].
kept:      11 ->_s0(p(s(x)),x) # label(replacement).  [assumption].
kept:      12 -->*_s0(pos(x),false) | ->_s0(pos(p(x)),false) # label(replacement).  [clausify(4)].
kept:      13 ->_s0(pos(s(0)),true) # label(replacement).  [assumption].
kept:      14 -->*_s0(pos(x),true) | ->_s0(pos(s(x)),true) # label(replacement).  [clausify(5)].
kept:      15 ->_s0(pos(0),false) # label(replacement).  [assumption].
kept:      16 ->_s0(s(p(x)),x) # label(replacement).  [assumption].
kept:      17 ->*_s0(x,x) # label(reflexivity).  [assumption].
kept:      18 -->_s0(x,y) | -->*_s0(y,z) | ->*_s0(x,z) # label(transitivity).  [clausify(6)].
kept:      19 -->*_s0(pos(s(x)),false) # label(goal) # answer(goal).  [deny(7)].

============================== end of process initial clauses ========

============================== CLAUSES FOR SEARCH ====================

% Clauses after input processing:

formulas(usable).
end_of_list.

formulas(sos).
8 -->_s0(x,y) | ->_s0(p(x),p(y)) # label(congruence).  [clausify(1)].
9 -->_s0(x,y) | ->_s0(pos(x),pos(y)) # label(congruence).  [clausify(2)].
10 -->_s0(x,y) | ->_s0(s(x),s(y)) # label(congruence).  [clausify(3)].
11 ->_s0(p(s(x)),x) # label(replacement).  [assumption].
12 -->*_s0(pos(x),false) | ->_s0(pos(p(x)),false) # label(replacement).  [clausify(4)].
13 ->_s0(pos(s(0)),true) # label(replacement).  [assumption].
14 -->*_s0(pos(x),true) | ->_s0(pos(s(x)),true) # label(replacement).  [clausify(5)].
15 ->_s0(pos(0),false) # label(replacement).  [assumption].
16 ->_s0(s(p(x)),x) # label(replacement).  [assumption].
17 ->*_s0(x,x) # label(reflexivity).  [assumption].
18 -->_s0(x,y) | -->*_s0(y,z) | ->*_s0(x,z) # label(transitivity).  [clausify(6)].
19 -->*_s0(pos(s(x)),false) # label(goal) # answer(goal).  [deny(7)].
end_of_list.

formulas(demodulators).
end_of_list.

============================== end of clauses for search =============

============================== SEARCH ================================

% Starting search at 0.00 seconds.

given #1 (I,wt=8): 8 -->_s0(x,y) | ->_s0(p(x),p(y)) # label(congruence).  [clausify(1)].

given #2 (I,wt=8): 9 -->_s0(x,y) | ->_s0(pos(x),pos(y)) # label(congruence).  [clausify(2)].

given #3 (I,wt=8): 10 -->_s0(x,y) | ->_s0(s(x),s(y)) # label(congruence).  [clausify(3)].

given #4 (I,wt=5): 11 ->_s0(p(s(x)),x) # label(replacement).  [assumption].

given #5 (I,wt=9): 12 -->*_s0(pos(x),false) | ->_s0(pos(p(x)),false) # label(replacement).  [clausify(4)].

given #6 (I,wt=5): 13 ->_s0(pos(s(0)),true) # label(replacement).  [assumption].

given #7 (I,wt=9): 14 -->*_s0(pos(x),true) | ->_s0(pos(s(x)),true) # label(replacement).  [clausify(5)].

given #8 (I,wt=4): 15 ->_s0(pos(0),false) # label(replacement).  [assumption].

given #9 (I,wt=5): 16 ->_s0(s(p(x)),x) # label(replacement).  [assumption].

given #10 (I,wt=3): 17 ->*_s0(x,x) # label(reflexivity).  [assumption].

given #11 (I,wt=9): 18 -->_s0(x,y) | -->*_s0(y,z) | ->*_s0(x,z) # label(transitivity).  [clausify(6)].

given #12 (I,wt=5): 19 -->*_s0(pos(s(x)),false) # label(goal) # answer(goal).  [deny(7)].

given #13 (A,wt=7): 20 ->_s0(pos(p(s(x))),pos(x)).  [ur(9,a,11,a)].

given #14 (F,wt=3): 36 -->*_s0(true,false) # answer(goal).  [ur(18,a,13,a,c,19,a)].

given #15 (F,wt=3): 42 -->_s0(true,false) # answer(goal).  [ur(18,b,17,a,c,36,a)].

given #16 (F,wt=5): 35 -->_s0(pos(s(x)),false) # answer(goal).  [ur(18,b,17,a,c,19,a)].

given #17 (F,wt=6): 41 -->_s0(true,x) | -->*_s0(x,false) # answer(goal).  [resolve(36,a,18,c)].

given #18 (T,wt=4): 31 ->*_s0(pos(0),false).  [ur(18,a,15,a,b,17,a)].

============================== PROOF =================================

% Proof 1 at 0.00 (+ 0.00) seconds: goal.
% Length of proof is 13.
% Level of proof is 4.
% Maximum clause weight is 9.000.
% Given clauses 18.

2 ->_s0(x1,y) -> ->_s0(pos(x1),pos(y)) # label(congruence) # label(non_clause).  [assumption].
6 ->_s0(x,y) & ->*_s0(y,z) -> ->*_s0(x,z) # label(transitivity) # label(non_clause).  [assumption].
7 (exists x3 ->*_s0(pos(s(x3)),false)) # label(goal) # label(non_clause) # label(goal).  [goal].
9 -->_s0(x,y) | ->_s0(pos(x),pos(y)) # label(congruence).  [clausify(2)].
15 ->_s0(pos(0),false) # label(replacement).  [assumption].
16 ->_s0(s(p(x)),x) # label(replacement).  [assumption].
17 ->*_s0(x,x) # label(reflexivity).  [assumption].
18 -->_s0(x,y) | -->*_s0(y,z) | ->*_s0(x,z) # label(transitivity).  [clausify(6)].
19 -->*_s0(pos(s(x)),false) # label(goal) # answer(goal).  [deny(7)].
29 ->_s0(pos(s(p(x))),pos(x)).  [ur(9,a,16,a)].
31 ->*_s0(pos(0),false).  [ur(18,a,15,a,b,17,a)].
49 -->_s0(pos(s(x)),pos(0)) # answer(goal).  [ur(18,b,31,a,c,19,a)].
50 $F # answer(goal).  [resolve(49,a,29,a)].

============================== end of proof ==========================

============================== STATISTICS ============================

Given=18. Generated=48. Kept=42. proofs=1.
Usable=18. Sos=18. Demods=0. Limbo=5, Disabled=12. Hints=0.
Kept_by_rule=0, Deleted_by_rule=0.
Forward_subsumed=6. Back_subsumed=0.
Sos_limit_deleted=0. Sos_displaced=0. Sos_removed=0.
New_demodulators=0 (0 lex), Back_demodulated=0. Back_unit_deleted=0.
Demod_attempts=0. Demod_rewrites=0.
Res_instance_prunes=0. Para_instance_prunes=0. Basic_paramod_prunes=0.
Nonunit_fsub_feature_tests=1. Nonunit_bsub_feature_tests=12.
Megabytes=0.10.
User_CPU=0.00, System_CPU=0.00, Wall_clock=0.

============================== end of statistics =====================

============================== end of search =========================

THEOREM PROVED

Exiting with 1 proof.

Process 3327435 exit (max_proofs) Tue Jul 30 09:24:55 2024


The problem is feasible.