<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE PROOF SYSTEM "http://a3pat.ensiie.fr/pub/a3pat.dtd">
<PROOF><SIGNATURE><SYMBOLLIST><SYMBOL arity="3" unmarked="replace"><NAME>Marked_replace</NAME></SYMBOL><SYMBOL arity="2" unmarked=""><NAME>cons</NAME></SYMBOL><SYMBOL arity="4" unmarked=""><NAME>if_replace</NAME></SYMBOL><SYMBOL arity="2" unmarked="le"><NAME>Marked_le</NAME></SYMBOL><SYMBOL arity="0" unmarked=""><NAME>false</NAME></SYMBOL><SYMBOL arity="1" unmarked="sort"><NAME>Marked_sort</NAME></SYMBOL><SYMBOL arity="2" unmarked=""><NAME>le</NAME></SYMBOL><SYMBOL arity="2" unmarked=""><NAME>if_min</NAME></SYMBOL><SYMBOL arity="2" unmarked="eq"><NAME>Marked_eq</NAME></SYMBOL><SYMBOL arity="2" unmarked=""><NAME>eq</NAME></SYMBOL><SYMBOL arity="1" unmarked="min"><NAME>Marked_min</NAME></SYMBOL><SYMBOL arity="1" unmarked=""><NAME>min</NAME></SYMBOL><SYMBOL arity="3" unmarked=""><NAME>replace</NAME></SYMBOL><SYMBOL arity="2" unmarked="if_min"><NAME>Marked_if_min</NAME></SYMBOL><SYMBOL arity="0" unmarked=""><NAME>0</NAME></SYMBOL><SYMBOL arity="1" unmarked=""><NAME>sort</NAME></SYMBOL><SYMBOL arity="1" unmarked=""><NAME>s</NAME></SYMBOL><SYMBOL arity="0" unmarked=""><NAME>nil</NAME></SYMBOL><SYMBOL arity="4" unmarked="if_replace"><NAME>Marked_if_replace</NAME></SYMBOL><SYMBOL arity="0" unmarked=""><NAME>true</NAME></SYMBOL></SYMBOLLIST><VARLIST><VAR>x</VAR><VAR>n</VAR><VAR>m</VAR><VAR>k</VAR></VARLIST></SIGNATURE><PROPERTY criterion="dp" prop="sntrs"><SYSTEM><REWSYS><RULE><LHS>eq(0,0)</LHS><RHS>true</RHS></RULE><RULE><LHS>eq(0,s(m))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(s(n),0)</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(s(n),s(m))</LHS><RHS>eq(n,m)</RHS></RULE><RULE><LHS>le(0,m)</LHS><RHS>true</RHS></RULE><RULE><LHS>le(s(n),0)</LHS><RHS>false</RHS></RULE><RULE><LHS>le(s(n),s(m))</LHS><RHS>le(n,m)</RHS></RULE><RULE><LHS>min(cons(0,nil))</LHS><RHS>0</RHS></RULE><RULE><LHS>min(cons(s(n),nil))</LHS><RHS>s(n)</RHS></RULE><RULE><LHS>min(cons(n,cons(m,x)))</LHS><RHS>if_min(le(n,m),cons(n,cons(m,x)))</RHS></RULE><RULE><LHS>if_min(true,cons(n,cons(m,x)))</LHS><RHS>min(cons(n,x))</RHS></RULE><RULE><LHS>if_min(false,cons(n,cons(m,x)))</LHS><RHS>min(cons(m,x))</RHS></RULE><RULE><LHS>replace(n,m,nil)</LHS><RHS>nil</RHS></RULE><RULE><LHS>replace(n,m,cons(k,x))</LHS><RHS>if_replace(eq(n,k),n,m,cons(k,x))</RHS></RULE><RULE><LHS>if_replace(true,n,m,cons(k,x))</LHS><RHS>cons(m,x)</RHS></RULE><RULE><LHS>if_replace(false,n,m,cons(k,x))</LHS><RHS>cons(k,replace(n,m,x))</RHS></RULE><RULE><LHS>sort(nil)</LHS><RHS>nil</RHS></RULE><RULE><LHS>sort(cons(n,x))</LHS><RHS>cons(min(cons(n,x)),sort(replace(min(cons(n,x)),n,x)))</RHS></RULE></REWSYS></SYSTEM><CRITERION/><PROPERTY criterion="weakgraph" prop="sndp"><SYSTEM><DPSYS><REWSYS><RULE><LHS>eq(0,0)</LHS><RHS>true</RHS></RULE><RULE><LHS>eq(0,s(m))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(s(n),0)</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(s(n),s(m))</LHS><RHS>eq(n,m)</RHS></RULE><RULE><LHS>le(0,m)</LHS><RHS>true</RHS></RULE><RULE><LHS>le(s(n),0)</LHS><RHS>false</RHS></RULE><RULE><LHS>le(s(n),s(m))</LHS><RHS>le(n,m)</RHS></RULE><RULE><LHS>min(cons(0,nil))</LHS><RHS>0</RHS></RULE><RULE><LHS>min(cons(s(n),nil))</LHS><RHS>s(n)</RHS></RULE><RULE><LHS>min(cons(n,cons(m,x)))</LHS><RHS>if_min(le(n,m),cons(n,cons(m,x)))</RHS></RULE><RULE><LHS>if_min(true,cons(n,cons(m,x)))</LHS><RHS>min(cons(n,x))</RHS></RULE><RULE><LHS>if_min(false,cons(n,cons(m,x)))</LHS><RHS>min(cons(m,x))</RHS></RULE><RULE><LHS>replace(n,m,nil)</LHS><RHS>nil</RHS></RULE><RULE><LHS>replace(n,m,cons(k,x))</LHS><RHS>if_replace(eq(n,k),n,m,cons(k,x))</RHS></RULE><RULE><LHS>if_replace(true,n,m,cons(k,x))</LHS><RHS>cons(m,x)</RHS></RULE><RULE><LHS>if_replace(false,n,m,cons(k,x))</LHS><RHS>cons(k,replace(n,m,x))</RHS></RULE><RULE><LHS>sort(nil)</LHS><RHS>nil</RHS></RULE><RULE><LHS>sort(cons(n,x))</LHS><RHS>cons(min(cons(n,x)),sort(replace(min(cons(n,x)),n,x)))</RHS></RULE></REWSYS><DPLIST><DPRULE num="0"><LHS>Marked_eq(s(n),s(m))</LHS><RHS>Marked_eq(n,m)</RHS></DPRULE><DPRULE num="1"><LHS>Marked_le(s(n),s(m))</LHS><RHS>Marked_le(n,m)</RHS></DPRULE><DPRULE num="2"><LHS>Marked_min(cons(n,cons(m,x)))</LHS><RHS>Marked_if_min(le(n,m),cons(n,cons(m,x)))</RHS></DPRULE><DPRULE num="3"><LHS>Marked_min(cons(n,cons(m,x)))</LHS><RHS>Marked_le(n,m)</RHS></DPRULE><DPRULE num="4"><LHS>Marked_if_min(true,cons(n,cons(m,x)))</LHS><RHS>Marked_min(cons(n,x))</RHS></DPRULE><DPRULE num="5"><LHS>Marked_if_min(false,cons(n,cons(m,x)))</LHS><RHS>Marked_min(cons(m,x))</RHS></DPRULE><DPRULE num="6"><LHS>Marked_replace(n,m,cons(k,x))</LHS><RHS>Marked_if_replace(eq(n,k),n,m,cons(k,x))</RHS></DPRULE><DPRULE num="7"><LHS>Marked_replace(n,m,cons(k,x))</LHS><RHS>Marked_eq(n,k)</RHS></DPRULE><DPRULE num="8"><LHS>Marked_if_replace(false,n,m,cons(k,x))</LHS><RHS>Marked_replace(n,m,x)</RHS></DPRULE><DPRULE num="9"><LHS>Marked_sort(cons(n,x))</LHS><RHS>Marked_min(cons(n,x))</RHS></DPRULE><DPRULE num="10"><LHS>Marked_sort(cons(n,x))</LHS><RHS>Marked_sort(replace(min(cons(n,x)),n,x))</RHS></DPRULE><DPRULE num="11"><LHS>Marked_sort(cons(n,x))</LHS><RHS>Marked_replace(min(cons(n,x)),n,x)</RHS></DPRULE><DPRULE num="12"><LHS>Marked_sort(cons(n,x))</LHS><RHS>Marked_min(cons(n,x))</RHS></DPRULE></DPLIST></DPSYS></SYSTEM><CRITERION><DAG approx="simpl"><CCLIST><NONSCC num="0"><NODE ref="9"/></NONSCC><NONSCC num="1"><NODE ref="3"/></NONSCC><SCC num="2"><NODE ref="2"/><NODE ref="4"/><NODE ref="5"/></SCC><NONSCC num="3"><NODE ref="11"/></NONSCC><NONSCC num="4"><NODE ref="7"/></NONSCC><SCC num="5"><NODE ref="6"/><NODE ref="8"/></SCC><SCC num="6"><NODE ref="10"/></SCC><SCC num="7"><NODE ref="0"/></SCC><SCC num="8"><NODE ref="1"/></SCC></CCLIST><EDGE end="2" start="0"/><EDGE end="1" start="0"/><EDGE end="8" start="1"/><EDGE end="1" start="2"/><EDGE end="5" start="3"/><EDGE end="4" start="3"/><EDGE end="7" start="4"/><EDGE end="4" start="5"/><EDGE end="3" start="6"/><EDGE end="0" start="6"/></DAG></CRITERION><PROPERTY criterion="ordering" prop="sndp"><SYSTEM><DPSYS><REWSYS><RULE><LHS>eq(0,0)</LHS><RHS>true</RHS></RULE><RULE><LHS>eq(0,s(m))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(s(n),0)</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(s(n),s(m))</LHS><RHS>eq(n,m)</RHS></RULE><RULE><LHS>le(0,m)</LHS><RHS>true</RHS></RULE><RULE><LHS>le(s(n),0)</LHS><RHS>false</RHS></RULE><RULE><LHS>le(s(n),s(m))</LHS><RHS>le(n,m)</RHS></RULE><RULE><LHS>min(cons(0,nil))</LHS><RHS>0</RHS></RULE><RULE><LHS>min(cons(s(n),nil))</LHS><RHS>s(n)</RHS></RULE><RULE><LHS>min(cons(n,cons(m,x)))</LHS><RHS>if_min(le(n,m),cons(n,cons(m,x)))</RHS></RULE><RULE><LHS>if_min(true,cons(n,cons(m,x)))</LHS><RHS>min(cons(n,x))</RHS></RULE><RULE><LHS>if_min(false,cons(n,cons(m,x)))</LHS><RHS>min(cons(m,x))</RHS></RULE><RULE><LHS>replace(n,m,nil)</LHS><RHS>nil</RHS></RULE><RULE><LHS>replace(n,m,cons(k,x))</LHS><RHS>if_replace(eq(n,k),n,m,cons(k,x))</RHS></RULE><RULE><LHS>if_replace(true,n,m,cons(k,x))</LHS><RHS>cons(m,x)</RHS></RULE><RULE><LHS>if_replace(false,n,m,cons(k,x))</LHS><RHS>cons(k,replace(n,m,x))</RHS></RULE><RULE><LHS>sort(nil)</LHS><RHS>nil</RHS></RULE><RULE><LHS>sort(cons(n,x))</LHS><RHS>cons(min(cons(n,x)),sort(replace(min(cons(n,x)),n,x)))</RHS></RULE></REWSYS><DPLIST><DPRULE num="0"><LHS>Marked_sort(cons(n,x))</LHS><RHS>Marked_sort(replace(min(cons(n,x)),n,x))</RHS></DPRULE></DPLIST></DPSYS></SYSTEM><CRITERION><ORDERING type="poly"><POLYSYMB><SYMBOL><NAME>true</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>nil</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>s</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>sort</NAME></SYMBOL><POLYNOMIAL><SUMPOLY><POLYNOMIAL><MONOME><COEF><INT>2</INT></COEF><ARG degree="1" num="0"/></MONOME></POLYNOMIAL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></SUMPOLY></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>0</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>replace</NAME></SYMBOL><POLYNOMIAL><SUMPOLY><POLYNOMIAL><MONOME><COEF><INT>1</INT></COEF></MONOME></POLYNOMIAL><POLYNOMIAL><SUMPOLY><POLYNOMIAL><MONOME><COEF><INT>1</INT></COEF><ARG degree="1" num="2"/></MONOME></POLYNOMIAL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></SUMPOLY></POLYNOMIAL></SUMPOLY></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>min</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>eq</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>if_min</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>le</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>Marked_sort</NAME></SYMBOL><POLYNOMIAL><SUMPOLY><POLYNOMIAL><MONOME><COEF><INT>1</INT></COEF><ARG degree="1" num="0"/></MONOME></POLYNOMIAL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></SUMPOLY></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>false</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>if_replace</NAME></SYMBOL><POLYNOMIAL><SUMPOLY><POLYNOMIAL><MONOME><COEF><INT>1</INT></COEF></MONOME></POLYNOMIAL><POLYNOMIAL><SUMPOLY><POLYNOMIAL><MONOME><COEF><INT>1</INT></COEF><ARG degree="1" num="3"/></MONOME></POLYNOMIAL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></SUMPOLY></POLYNOMIAL></SUMPOLY></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>cons</NAME></SYMBOL><POLYNOMIAL><SUMPOLY><POLYNOMIAL><MONOME><COEF><INT>2</INT></COEF></MONOME></POLYNOMIAL><POLYNOMIAL><SUMPOLY><POLYNOMIAL><MONOME><COEF><INT>1</INT></COEF><ARG degree="1" num="1"/></MONOME></POLYNOMIAL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></SUMPOLY></POLYNOMIAL></SUMPOLY></POLYNOMIAL></POLYSYMB></ORDERING></CRITERION></PROPERTY><PROPERTY criterion="sterm" prop="sndp"><SYSTEM><DPSYS><REWSYS><RULE><LHS>eq(0,0)</LHS><RHS>true</RHS></RULE><RULE><LHS>eq(0,s(m))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(s(n),0)</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(s(n),s(m))</LHS><RHS>eq(n,m)</RHS></RULE><RULE><LHS>le(0,m)</LHS><RHS>true</RHS></RULE><RULE><LHS>le(s(n),0)</LHS><RHS>false</RHS></RULE><RULE><LHS>le(s(n),s(m))</LHS><RHS>le(n,m)</RHS></RULE><RULE><LHS>min(cons(0,nil))</LHS><RHS>0</RHS></RULE><RULE><LHS>min(cons(s(n),nil))</LHS><RHS>s(n)</RHS></RULE><RULE><LHS>min(cons(n,cons(m,x)))</LHS><RHS>if_min(le(n,m),cons(n,cons(m,x)))</RHS></RULE><RULE><LHS>if_min(true,cons(n,cons(m,x)))</LHS><RHS>min(cons(n,x))</RHS></RULE><RULE><LHS>if_min(false,cons(n,cons(m,x)))</LHS><RHS>min(cons(m,x))</RHS></RULE><RULE><LHS>replace(n,m,nil)</LHS><RHS>nil</RHS></RULE><RULE><LHS>replace(n,m,cons(k,x))</LHS><RHS>if_replace(eq(n,k),n,m,cons(k,x))</RHS></RULE><RULE><LHS>if_replace(true,n,m,cons(k,x))</LHS><RHS>cons(m,x)</RHS></RULE><RULE><LHS>if_replace(false,n,m,cons(k,x))</LHS><RHS>cons(k,replace(n,m,x))</RHS></RULE><RULE><LHS>sort(nil)</LHS><RHS>nil</RHS></RULE><RULE><LHS>sort(cons(n,x))</LHS><RHS>cons(min(cons(n,x)),sort(replace(min(cons(n,x)),n,x)))</RHS></RULE></REWSYS><DPLIST><DPRULE num="0"><LHS>Marked_replace(n,m,cons(k,x))</LHS><RHS>Marked_if_replace(eq(n,k),n,m,cons(k,x))</RHS></DPRULE><DPRULE num="1"><LHS>Marked_if_replace(false,n,m,cons(k,x))</LHS><RHS>Marked_replace(n,m,x)</RHS></DPRULE></DPLIST></DPSYS></SYSTEM><PROJECTION><PROJ><SYMBOL><NAME>Marked_if_replace</NAME></SYMBOL><INT>4</INT></PROJ><PROJ><SYMBOL><NAME>Marked_replace</NAME></SYMBOL><INT>3</INT></PROJ></PROJECTION><STRICTPAIRS><DPLIST><DPRULE num="0"><LHS>Marked_if_replace(false,n,m,cons(k,x))</LHS><RHS>Marked_replace(n,m,x)</RHS></DPRULE></DPLIST></STRICTPAIRS><PROPERTY criterion="weakgraph" prop="sndp"><SYSTEM><DPSYS><REWSYS><RULE><LHS>eq(0,0)</LHS><RHS>true</RHS></RULE><RULE><LHS>eq(0,s(m))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(s(n),0)</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(s(n),s(m))</LHS><RHS>eq(n,m)</RHS></RULE><RULE><LHS>le(0,m)</LHS><RHS>true</RHS></RULE><RULE><LHS>le(s(n),0)</LHS><RHS>false</RHS></RULE><RULE><LHS>le(s(n),s(m))</LHS><RHS>le(n,m)</RHS></RULE><RULE><LHS>min(cons(0,nil))</LHS><RHS>0</RHS></RULE><RULE><LHS>min(cons(s(n),nil))</LHS><RHS>s(n)</RHS></RULE><RULE><LHS>min(cons(n,cons(m,x)))</LHS><RHS>if_min(le(n,m),cons(n,cons(m,x)))</RHS></RULE><RULE><LHS>if_min(true,cons(n,cons(m,x)))</LHS><RHS>min(cons(n,x))</RHS></RULE><RULE><LHS>if_min(false,cons(n,cons(m,x)))</LHS><RHS>min(cons(m,x))</RHS></RULE><RULE><LHS>replace(n,m,nil)</LHS><RHS>nil</RHS></RULE><RULE><LHS>replace(n,m,cons(k,x))</LHS><RHS>if_replace(eq(n,k),n,m,cons(k,x))</RHS></RULE><RULE><LHS>if_replace(true,n,m,cons(k,x))</LHS><RHS>cons(m,x)</RHS></RULE><RULE><LHS>if_replace(false,n,m,cons(k,x))</LHS><RHS>cons(k,replace(n,m,x))</RHS></RULE><RULE><LHS>sort(nil)</LHS><RHS>nil</RHS></RULE><RULE><LHS>sort(cons(n,x))</LHS><RHS>cons(min(cons(n,x)),sort(replace(min(cons(n,x)),n,x)))</RHS></RULE></REWSYS><DPLIST><DPRULE num="0"><LHS>Marked_replace(n,m,cons(k,x))</LHS><RHS>Marked_if_replace(eq(n,k),n,m,cons(k,x))</RHS></DPRULE></DPLIST></DPSYS></SYSTEM><CRITERION><DAG approx="simpl"><CCLIST><NONSCC num="0"><NODE ref="0"/></NONSCC></CCLIST></DAG></CRITERION></PROPERTY></PROPERTY><PROPERTY criterion="sterm" prop="sndp"><SYSTEM><DPSYS><REWSYS><RULE><LHS>eq(0,0)</LHS><RHS>true</RHS></RULE><RULE><LHS>eq(0,s(m))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(s(n),0)</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(s(n),s(m))</LHS><RHS>eq(n,m)</RHS></RULE><RULE><LHS>le(0,m)</LHS><RHS>true</RHS></RULE><RULE><LHS>le(s(n),0)</LHS><RHS>false</RHS></RULE><RULE><LHS>le(s(n),s(m))</LHS><RHS>le(n,m)</RHS></RULE><RULE><LHS>min(cons(0,nil))</LHS><RHS>0</RHS></RULE><RULE><LHS>min(cons(s(n),nil))</LHS><RHS>s(n)</RHS></RULE><RULE><LHS>min(cons(n,cons(m,x)))</LHS><RHS>if_min(le(n,m),cons(n,cons(m,x)))</RHS></RULE><RULE><LHS>if_min(true,cons(n,cons(m,x)))</LHS><RHS>min(cons(n,x))</RHS></RULE><RULE><LHS>if_min(false,cons(n,cons(m,x)))</LHS><RHS>min(cons(m,x))</RHS></RULE><RULE><LHS>replace(n,m,nil)</LHS><RHS>nil</RHS></RULE><RULE><LHS>replace(n,m,cons(k,x))</LHS><RHS>if_replace(eq(n,k),n,m,cons(k,x))</RHS></RULE><RULE><LHS>if_replace(true,n,m,cons(k,x))</LHS><RHS>cons(m,x)</RHS></RULE><RULE><LHS>if_replace(false,n,m,cons(k,x))</LHS><RHS>cons(k,replace(n,m,x))</RHS></RULE><RULE><LHS>sort(nil)</LHS><RHS>nil</RHS></RULE><RULE><LHS>sort(cons(n,x))</LHS><RHS>cons(min(cons(n,x)),sort(replace(min(cons(n,x)),n,x)))</RHS></RULE></REWSYS><DPLIST><DPRULE num="0"><LHS>Marked_eq(s(n),s(m))</LHS><RHS>Marked_eq(n,m)</RHS></DPRULE></DPLIST></DPSYS></SYSTEM><PROJECTION><PROJ><SYMBOL><NAME>Marked_eq</NAME></SYMBOL><INT>1</INT></PROJ></PROJECTION><STRICTPAIRS><DPLIST><DPRULE num="0"><LHS>Marked_eq(s(n),s(m))</LHS><RHS>Marked_eq(n,m)</RHS></DPRULE></DPLIST></STRICTPAIRS><PROPERTY criterion="weakgraph" prop="sndp"><SYSTEM><DPSYS><REWSYS><RULE><LHS>eq(0,0)</LHS><RHS>true</RHS></RULE><RULE><LHS>eq(0,s(m))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(s(n),0)</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(s(n),s(m))</LHS><RHS>eq(n,m)</RHS></RULE><RULE><LHS>le(0,m)</LHS><RHS>true</RHS></RULE><RULE><LHS>le(s(n),0)</LHS><RHS>false</RHS></RULE><RULE><LHS>le(s(n),s(m))</LHS><RHS>le(n,m)</RHS></RULE><RULE><LHS>min(cons(0,nil))</LHS><RHS>0</RHS></RULE><RULE><LHS>min(cons(s(n),nil))</LHS><RHS>s(n)</RHS></RULE><RULE><LHS>min(cons(n,cons(m,x)))</LHS><RHS>if_min(le(n,m),cons(n,cons(m,x)))</RHS></RULE><RULE><LHS>if_min(true,cons(n,cons(m,x)))</LHS><RHS>min(cons(n,x))</RHS></RULE><RULE><LHS>if_min(false,cons(n,cons(m,x)))</LHS><RHS>min(cons(m,x))</RHS></RULE><RULE><LHS>replace(n,m,nil)</LHS><RHS>nil</RHS></RULE><RULE><LHS>replace(n,m,cons(k,x))</LHS><RHS>if_replace(eq(n,k),n,m,cons(k,x))</RHS></RULE><RULE><LHS>if_replace(true,n,m,cons(k,x))</LHS><RHS>cons(m,x)</RHS></RULE><RULE><LHS>if_replace(false,n,m,cons(k,x))</LHS><RHS>cons(k,replace(n,m,x))</RHS></RULE><RULE><LHS>sort(nil)</LHS><RHS>nil</RHS></RULE><RULE><LHS>sort(cons(n,x))</LHS><RHS>cons(min(cons(n,x)),sort(replace(min(cons(n,x)),n,x)))</RHS></RULE></REWSYS><DPLIST/></DPSYS></SYSTEM><CRITERION><DAG approx="simpl"><CCLIST/></DAG></CRITERION></PROPERTY></PROPERTY><PROPERTY criterion="ordering" prop="sndp"><SYSTEM><DPSYS><REWSYS><RULE><LHS>eq(0,0)</LHS><RHS>true</RHS></RULE><RULE><LHS>eq(0,s(m))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(s(n),0)</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(s(n),s(m))</LHS><RHS>eq(n,m)</RHS></RULE><RULE><LHS>le(0,m)</LHS><RHS>true</RHS></RULE><RULE><LHS>le(s(n),0)</LHS><RHS>false</RHS></RULE><RULE><LHS>le(s(n),s(m))</LHS><RHS>le(n,m)</RHS></RULE><RULE><LHS>min(cons(0,nil))</LHS><RHS>0</RHS></RULE><RULE><LHS>min(cons(s(n),nil))</LHS><RHS>s(n)</RHS></RULE><RULE><LHS>min(cons(n,cons(m,x)))</LHS><RHS>if_min(le(n,m),cons(n,cons(m,x)))</RHS></RULE><RULE><LHS>if_min(true,cons(n,cons(m,x)))</LHS><RHS>min(cons(n,x))</RHS></RULE><RULE><LHS>if_min(false,cons(n,cons(m,x)))</LHS><RHS>min(cons(m,x))</RHS></RULE><RULE><LHS>replace(n,m,nil)</LHS><RHS>nil</RHS></RULE><RULE><LHS>replace(n,m,cons(k,x))</LHS><RHS>if_replace(eq(n,k),n,m,cons(k,x))</RHS></RULE><RULE><LHS>if_replace(true,n,m,cons(k,x))</LHS><RHS>cons(m,x)</RHS></RULE><RULE><LHS>if_replace(false,n,m,cons(k,x))</LHS><RHS>cons(k,replace(n,m,x))</RHS></RULE><RULE><LHS>sort(nil)</LHS><RHS>nil</RHS></RULE><RULE><LHS>sort(cons(n,x))</LHS><RHS>cons(min(cons(n,x)),sort(replace(min(cons(n,x)),n,x)))</RHS></RULE></REWSYS><DPLIST><DPRULE num="0"><LHS>Marked_min(cons(n,cons(m,x)))</LHS><RHS>Marked_if_min(le(n,m),cons(n,cons(m,x)))</RHS></DPRULE><DPRULE num="1"><LHS>Marked_if_min(true,cons(n,cons(m,x)))</LHS><RHS>Marked_min(cons(n,x))</RHS></DPRULE><DPRULE num="2"><LHS>Marked_if_min(false,cons(n,cons(m,x)))</LHS><RHS>Marked_min(cons(m,x))</RHS></DPRULE></DPLIST></DPSYS></SYSTEM><CRITERION><ORDERING type="poly"><POLYSYMB><SYMBOL><NAME>true</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>nil</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>s</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>sort</NAME></SYMBOL><POLYNOMIAL><SUMPOLY><POLYNOMIAL><MONOME><COEF><INT>2</INT></COEF><ARG degree="1" num="0"/></MONOME></POLYNOMIAL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></SUMPOLY></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>0</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>Marked_if_min</NAME></SYMBOL><POLYNOMIAL><SUMPOLY><POLYNOMIAL><MONOME><COEF><INT>1</INT></COEF><ARG degree="1" num="1"/></MONOME></POLYNOMIAL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></SUMPOLY></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>replace</NAME></SYMBOL><POLYNOMIAL><SUMPOLY><POLYNOMIAL><MONOME><COEF><INT>1</INT></COEF><ARG degree="1" num="2"/></MONOME></POLYNOMIAL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></SUMPOLY></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>min</NAME></SYMBOL><POLYNOMIAL><SUMPOLY><POLYNOMIAL><MONOME><COEF><INT>3</INT></COEF><ARG degree="1" num="0"/></MONOME></POLYNOMIAL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></SUMPOLY></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>Marked_min</NAME></SYMBOL><POLYNOMIAL><SUMPOLY><POLYNOMIAL><MONOME><COEF><INT>2</INT></COEF><ARG degree="1" num="0"/></MONOME></POLYNOMIAL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></SUMPOLY></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>eq</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>if_min</NAME></SYMBOL><POLYNOMIAL><SUMPOLY><POLYNOMIAL><MONOME><COEF><INT>2</INT></COEF></MONOME></POLYNOMIAL><POLYNOMIAL><SUMPOLY><POLYNOMIAL><MONOME><COEF><INT>2</INT></COEF><ARG degree="1" num="1"/></MONOME></POLYNOMIAL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></SUMPOLY></POLYNOMIAL></SUMPOLY></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>le</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>false</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>if_replace</NAME></SYMBOL><POLYNOMIAL><SUMPOLY><POLYNOMIAL><MONOME><COEF><INT>1</INT></COEF><ARG degree="1" num="3"/></MONOME></POLYNOMIAL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></SUMPOLY></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>cons</NAME></SYMBOL><POLYNOMIAL><SUMPOLY><POLYNOMIAL><MONOME><COEF><INT>2</INT></COEF></MONOME></POLYNOMIAL><POLYNOMIAL><SUMPOLY><POLYNOMIAL><MONOME><COEF><INT>3</INT></COEF><ARG degree="1" num="1"/></MONOME></POLYNOMIAL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></SUMPOLY></POLYNOMIAL></SUMPOLY></POLYNOMIAL></POLYSYMB></ORDERING></CRITERION></PROPERTY><PROPERTY criterion="sterm" prop="sndp"><SYSTEM><DPSYS><REWSYS><RULE><LHS>eq(0,0)</LHS><RHS>true</RHS></RULE><RULE><LHS>eq(0,s(m))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(s(n),0)</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(s(n),s(m))</LHS><RHS>eq(n,m)</RHS></RULE><RULE><LHS>le(0,m)</LHS><RHS>true</RHS></RULE><RULE><LHS>le(s(n),0)</LHS><RHS>false</RHS></RULE><RULE><LHS>le(s(n),s(m))</LHS><RHS>le(n,m)</RHS></RULE><RULE><LHS>min(cons(0,nil))</LHS><RHS>0</RHS></RULE><RULE><LHS>min(cons(s(n),nil))</LHS><RHS>s(n)</RHS></RULE><RULE><LHS>min(cons(n,cons(m,x)))</LHS><RHS>if_min(le(n,m),cons(n,cons(m,x)))</RHS></RULE><RULE><LHS>if_min(true,cons(n,cons(m,x)))</LHS><RHS>min(cons(n,x))</RHS></RULE><RULE><LHS>if_min(false,cons(n,cons(m,x)))</LHS><RHS>min(cons(m,x))</RHS></RULE><RULE><LHS>replace(n,m,nil)</LHS><RHS>nil</RHS></RULE><RULE><LHS>replace(n,m,cons(k,x))</LHS><RHS>if_replace(eq(n,k),n,m,cons(k,x))</RHS></RULE><RULE><LHS>if_replace(true,n,m,cons(k,x))</LHS><RHS>cons(m,x)</RHS></RULE><RULE><LHS>if_replace(false,n,m,cons(k,x))</LHS><RHS>cons(k,replace(n,m,x))</RHS></RULE><RULE><LHS>sort(nil)</LHS><RHS>nil</RHS></RULE><RULE><LHS>sort(cons(n,x))</LHS><RHS>cons(min(cons(n,x)),sort(replace(min(cons(n,x)),n,x)))</RHS></RULE></REWSYS><DPLIST><DPRULE num="0"><LHS>Marked_le(s(n),s(m))</LHS><RHS>Marked_le(n,m)</RHS></DPRULE></DPLIST></DPSYS></SYSTEM><PROJECTION><PROJ><SYMBOL><NAME>Marked_le</NAME></SYMBOL><INT>1</INT></PROJ></PROJECTION><STRICTPAIRS><DPLIST><DPRULE num="0"><LHS>Marked_le(s(n),s(m))</LHS><RHS>Marked_le(n,m)</RHS></DPRULE></DPLIST></STRICTPAIRS><PROPERTY criterion="weakgraph" prop="sndp"><SYSTEM><DPSYS><REWSYS><RULE><LHS>eq(0,0)</LHS><RHS>true</RHS></RULE><RULE><LHS>eq(0,s(m))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(s(n),0)</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(s(n),s(m))</LHS><RHS>eq(n,m)</RHS></RULE><RULE><LHS>le(0,m)</LHS><RHS>true</RHS></RULE><RULE><LHS>le(s(n),0)</LHS><RHS>false</RHS></RULE><RULE><LHS>le(s(n),s(m))</LHS><RHS>le(n,m)</RHS></RULE><RULE><LHS>min(cons(0,nil))</LHS><RHS>0</RHS></RULE><RULE><LHS>min(cons(s(n),nil))</LHS><RHS>s(n)</RHS></RULE><RULE><LHS>min(cons(n,cons(m,x)))</LHS><RHS>if_min(le(n,m),cons(n,cons(m,x)))</RHS></RULE><RULE><LHS>if_min(true,cons(n,cons(m,x)))</LHS><RHS>min(cons(n,x))</RHS></RULE><RULE><LHS>if_min(false,cons(n,cons(m,x)))</LHS><RHS>min(cons(m,x))</RHS></RULE><RULE><LHS>replace(n,m,nil)</LHS><RHS>nil</RHS></RULE><RULE><LHS>replace(n,m,cons(k,x))</LHS><RHS>if_replace(eq(n,k),n,m,cons(k,x))</RHS></RULE><RULE><LHS>if_replace(true,n,m,cons(k,x))</LHS><RHS>cons(m,x)</RHS></RULE><RULE><LHS>if_replace(false,n,m,cons(k,x))</LHS><RHS>cons(k,replace(n,m,x))</RHS></RULE><RULE><LHS>sort(nil)</LHS><RHS>nil</RHS></RULE><RULE><LHS>sort(cons(n,x))</LHS><RHS>cons(min(cons(n,x)),sort(replace(min(cons(n,x)),n,x)))</RHS></RULE></REWSYS><DPLIST/></DPSYS></SYSTEM><CRITERION><DAG approx="simpl"><CCLIST/></DAG></CRITERION></PROPERTY></PROPERTY></PROPERTY></PROPERTY></PROOF>
