<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE PROOF SYSTEM "http://a3pat.ensiie.fr/pub/a3pat.dtd">
<PROOF><SIGNATURE><SYMBOLLIST><SYMBOL arity="3" unmarked=""><NAME>ifappend</NAME></SYMBOL><SYMBOL arity="1" unmarked="tl"><NAME>Marked_tl</NAME></SYMBOL><SYMBOL arity="0" unmarked=""><NAME>false</NAME></SYMBOL><SYMBOL arity="1" unmarked="is_empty"><NAME>Marked_is_empty</NAME></SYMBOL><SYMBOL arity="1" unmarked=""><NAME>hd</NAME></SYMBOL><SYMBOL arity="3" unmarked="ifappend"><NAME>Marked_ifappend</NAME></SYMBOL><SYMBOL arity="1" unmarked=""><NAME>is_empty</NAME></SYMBOL><SYMBOL arity="1" unmarked=""><NAME>tl</NAME></SYMBOL><SYMBOL arity="2" unmarked="append"><NAME>Marked_append</NAME></SYMBOL><SYMBOL arity="0" unmarked=""><NAME>nil</NAME></SYMBOL><SYMBOL arity="1" unmarked="hd"><NAME>Marked_hd</NAME></SYMBOL><SYMBOL arity="2" unmarked=""><NAME>cons</NAME></SYMBOL><SYMBOL arity="2" unmarked=""><NAME>append</NAME></SYMBOL><SYMBOL arity="0" unmarked=""><NAME>true</NAME></SYMBOL></SYMBOLLIST><VARLIST><VAR>x</VAR><VAR>l</VAR><VAR>l1</VAR><VAR>l2</VAR></VARLIST></SIGNATURE><PROPERTY criterion="dp" prop="sntrs"><SYSTEM><REWSYS><RULE><LHS>is_empty(nil)</LHS><RHS>true</RHS></RULE><RULE><LHS>is_empty(cons(x,l))</LHS><RHS>false</RHS></RULE><RULE><LHS>hd(cons(x,l))</LHS><RHS>x</RHS></RULE><RULE><LHS>tl(cons(x,l))</LHS><RHS>l</RHS></RULE><RULE><LHS>append(l1,l2)</LHS><RHS>ifappend(l1,l2,l1)</RHS></RULE><RULE><LHS>ifappend(l1,l2,nil)</LHS><RHS>l2</RHS></RULE><RULE><LHS>ifappend(l1,l2,cons(x,l))</LHS><RHS>cons(x,append(l,l2))</RHS></RULE></REWSYS></SYSTEM><CRITERION/><PROPERTY criterion="weakgraph" prop="sndp"><SYSTEM><DPSYS><REWSYS><RULE><LHS>is_empty(nil)</LHS><RHS>true</RHS></RULE><RULE><LHS>is_empty(cons(x,l))</LHS><RHS>false</RHS></RULE><RULE><LHS>hd(cons(x,l))</LHS><RHS>x</RHS></RULE><RULE><LHS>tl(cons(x,l))</LHS><RHS>l</RHS></RULE><RULE><LHS>append(l1,l2)</LHS><RHS>ifappend(l1,l2,l1)</RHS></RULE><RULE><LHS>ifappend(l1,l2,nil)</LHS><RHS>l2</RHS></RULE><RULE><LHS>ifappend(l1,l2,cons(x,l))</LHS><RHS>cons(x,append(l,l2))</RHS></RULE></REWSYS><DPLIST><DPRULE num="0"><LHS>Marked_append(l1,l2)</LHS><RHS>Marked_ifappend(l1,l2,l1)</RHS></DPRULE><DPRULE num="1"><LHS>Marked_ifappend(l1,l2,cons(x,l))</LHS><RHS>Marked_append(l,l2)</RHS></DPRULE></DPLIST></DPSYS></SYSTEM><CRITERION><DAG approx="simpl"><CCLIST><SCC num="0"><NODE ref="0"/><NODE ref="1"/></SCC></CCLIST></DAG></CRITERION><PROPERTY criterion="sterm" prop="sndp"><SYSTEM><DPSYS><REWSYS><RULE><LHS>is_empty(nil)</LHS><RHS>true</RHS></RULE><RULE><LHS>is_empty(cons(x,l))</LHS><RHS>false</RHS></RULE><RULE><LHS>hd(cons(x,l))</LHS><RHS>x</RHS></RULE><RULE><LHS>tl(cons(x,l))</LHS><RHS>l</RHS></RULE><RULE><LHS>append(l1,l2)</LHS><RHS>ifappend(l1,l2,l1)</RHS></RULE><RULE><LHS>ifappend(l1,l2,nil)</LHS><RHS>l2</RHS></RULE><RULE><LHS>ifappend(l1,l2,cons(x,l))</LHS><RHS>cons(x,append(l,l2))</RHS></RULE></REWSYS><DPLIST><DPRULE num="0"><LHS>Marked_append(l1,l2)</LHS><RHS>Marked_ifappend(l1,l2,l1)</RHS></DPRULE><DPRULE num="1"><LHS>Marked_ifappend(l1,l2,cons(x,l))</LHS><RHS>Marked_append(l,l2)</RHS></DPRULE></DPLIST></DPSYS></SYSTEM><PROJECTION><PROJ><SYMBOL><NAME>Marked_ifappend</NAME></SYMBOL><INT>3</INT></PROJ><PROJ><SYMBOL><NAME>Marked_append</NAME></SYMBOL><INT>1</INT></PROJ></PROJECTION><STRICTPAIRS><DPLIST><DPRULE num="0"><LHS>Marked_ifappend(l1,l2,cons(x,l))</LHS><RHS>Marked_append(l,l2)</RHS></DPRULE></DPLIST></STRICTPAIRS><PROPERTY criterion="weakgraph" prop="sndp"><SYSTEM><DPSYS><REWSYS><RULE><LHS>is_empty(nil)</LHS><RHS>true</RHS></RULE><RULE><LHS>is_empty(cons(x,l))</LHS><RHS>false</RHS></RULE><RULE><LHS>hd(cons(x,l))</LHS><RHS>x</RHS></RULE><RULE><LHS>tl(cons(x,l))</LHS><RHS>l</RHS></RULE><RULE><LHS>append(l1,l2)</LHS><RHS>ifappend(l1,l2,l1)</RHS></RULE><RULE><LHS>ifappend(l1,l2,nil)</LHS><RHS>l2</RHS></RULE><RULE><LHS>ifappend(l1,l2,cons(x,l))</LHS><RHS>cons(x,append(l,l2))</RHS></RULE></REWSYS><DPLIST><DPRULE num="0"><LHS>Marked_append(l1,l2)</LHS><RHS>Marked_ifappend(l1,l2,l1)</RHS></DPRULE></DPLIST></DPSYS></SYSTEM><CRITERION><DAG approx="simpl"><CCLIST><NONSCC num="0"><NODE ref="0"/></NONSCC></CCLIST></DAG></CRITERION></PROPERTY></PROPERTY></PROPERTY></PROPERTY></PROOF>
