<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE PROOF SYSTEM "http://a3pat.ensiie.fr/pub/a3pat.dtd">
<PROOF><SIGNATURE><SYMBOLLIST><SYMBOL arity="0" unmarked=""><NAME>u</NAME></SYMBOL><SYMBOL arity="2" unmarked="merge"><NAME>Marked_merge</NAME></SYMBOL><SYMBOL arity="0" unmarked=""><NAME>nil</NAME></SYMBOL><SYMBOL arity="2" unmarked=""><NAME>++</NAME></SYMBOL><SYMBOL arity="0" unmarked=""><NAME>v</NAME></SYMBOL><SYMBOL arity="2" unmarked=""><NAME>merge</NAME></SYMBOL></SYMBOLLIST><VARLIST><VAR>z</VAR><VAR>y</VAR><VAR>x</VAR></VARLIST></SIGNATURE><PROPERTY criterion="dp" prop="sntrs"><SYSTEM><REWSYS><RULE><LHS>merge(x,nil)</LHS><RHS>x</RHS></RULE><RULE><LHS>merge(nil,y)</LHS><RHS>y</RHS></RULE><RULE><LHS>merge(++(x,y),++(u,v))</LHS><RHS>++(x,merge(y,++(u,v)))</RHS></RULE><RULE><LHS>merge(++(x,y),++(u,v))</LHS><RHS>++(u,merge(++(x,y),v))</RHS></RULE></REWSYS></SYSTEM><CRITERION/><PROPERTY criterion="weakgraph" prop="sndp"><SYSTEM><DPSYS><REWSYS><RULE><LHS>merge(x,nil)</LHS><RHS>x</RHS></RULE><RULE><LHS>merge(nil,y)</LHS><RHS>y</RHS></RULE><RULE><LHS>merge(++(x,y),++(u,v))</LHS><RHS>++(x,merge(y,++(u,v)))</RHS></RULE><RULE><LHS>merge(++(x,y),++(u,v))</LHS><RHS>++(u,merge(++(x,y),v))</RHS></RULE></REWSYS><DPLIST><DPRULE num="0"><LHS>Marked_merge(++(x,y),++(u,v))</LHS><RHS>Marked_merge(y,++(u,v))</RHS></DPRULE><DPRULE num="1"><LHS>Marked_merge(++(x,y),++(u,v))</LHS><RHS>Marked_merge(++(x,y),v)</RHS></DPRULE></DPLIST></DPSYS></SYSTEM><CRITERION><DAG approx="simpl"><CCLIST><NONSCC num="0"><NODE ref="1"/></NONSCC><SCC num="1"><NODE ref="0"/></SCC></CCLIST><EDGE end="0" start="1"/></DAG></CRITERION><PROPERTY criterion="ordering" prop="sndp"><SYSTEM><DPSYS><REWSYS><RULE><LHS>merge(x,nil)</LHS><RHS>x</RHS></RULE><RULE><LHS>merge(nil,y)</LHS><RHS>y</RHS></RULE><RULE><LHS>merge(++(x,y),++(u,v))</LHS><RHS>++(x,merge(y,++(u,v)))</RHS></RULE><RULE><LHS>merge(++(x,y),++(u,v))</LHS><RHS>++(u,merge(++(x,y),v))</RHS></RULE></REWSYS><DPLIST><DPRULE num="0"><LHS>Marked_merge(++(x,y),++(u,v))</LHS><RHS>Marked_merge(y,++(u,v))</RHS></DPRULE></DPLIST></DPSYS></SYSTEM><CRITERION><ORDERING type="poly"><POLYSYMB><SYMBOL><NAME>merge</NAME></SYMBOL><POLYNOMIAL><SUMPOLY><POLYNOMIAL><MONOME><COEF><INT>3</INT></COEF></MONOME></POLYNOMIAL><POLYNOMIAL><SUMPOLY><POLYNOMIAL><MONOME><COEF><INT>2</INT></COEF><ARG degree="1" num="0"/></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></SUMPOLY></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>v</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>++</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="1"/></MONOME></POLYNOMIAL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></SUMPOLY></POLYNOMIAL></SUMPOLY></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>nil</NAME></SYMBOL><POLYNOMIAL><SUMPOLY><POLYNOMIAL><MONOME><COEF><INT>3</INT></COEF></MONOME></POLYNOMIAL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></SUMPOLY></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>Marked_merge</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>u</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB></ORDERING></CRITERION></PROPERTY></PROPERTY></PROPERTY></PROOF>
