<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE PROOF SYSTEM "http://a3pat.ensiie.fr/pub/a3pat.dtd">
<PROOF><SIGNATURE><SYMBOLLIST><SYMBOL arity="1" unmarked=""><NAME>len</NAME></SYMBOL><SYMBOL arity="2" unmarked="fst"><NAME>Marked_fst</NAME></SYMBOL><SYMBOL arity="1" unmarked=""><NAME>cons</NAME></SYMBOL><SYMBOL arity="1" unmarked=""><NAME>from</NAME></SYMBOL><SYMBOL arity="2" unmarked="add"><NAME>Marked_add</NAME></SYMBOL><SYMBOL arity="2" unmarked=""><NAME>fst</NAME></SYMBOL><SYMBOL arity="2" unmarked=""><NAME>add</NAME></SYMBOL><SYMBOL arity="1" unmarked="from"><NAME>Marked_from</NAME></SYMBOL><SYMBOL arity="0" unmarked=""><NAME>0</NAME></SYMBOL><SYMBOL arity="0" unmarked=""><NAME>s</NAME></SYMBOL><SYMBOL arity="1" unmarked="len"><NAME>Marked_len</NAME></SYMBOL><SYMBOL arity="0" unmarked=""><NAME>nil</NAME></SYMBOL></SYMBOLLIST><VARLIST><VAR>X</VAR><VAR>Y</VAR><VAR>Z</VAR></VARLIST></SIGNATURE><PROPERTY criterion="dp" prop="sntrs"><SYSTEM><REWSYS><RULE><LHS>fst(0,Z)</LHS><RHS>nil</RHS></RULE><RULE><LHS>fst(s,cons(Y))</LHS><RHS>cons(Y)</RHS></RULE><RULE><LHS>from(X)</LHS><RHS>cons(X)</RHS></RULE><RULE><LHS>add(0,X)</LHS><RHS>X</RHS></RULE><RULE><LHS>add(s,Y)</LHS><RHS>s</RHS></RULE><RULE><LHS>len(nil)</LHS><RHS>0</RHS></RULE><RULE><LHS>len(cons(X))</LHS><RHS>s</RHS></RULE></REWSYS></SYSTEM><CRITERION/><PROPERTY criterion="weakgraph" prop="sndp"><SYSTEM><DPSYS><REWSYS><RULE><LHS>fst(0,Z)</LHS><RHS>nil</RHS></RULE><RULE><LHS>fst(s,cons(Y))</LHS><RHS>cons(Y)</RHS></RULE><RULE><LHS>from(X)</LHS><RHS>cons(X)</RHS></RULE><RULE><LHS>add(0,X)</LHS><RHS>X</RHS></RULE><RULE><LHS>add(s,Y)</LHS><RHS>s</RHS></RULE><RULE><LHS>len(nil)</LHS><RHS>0</RHS></RULE><RULE><LHS>len(cons(X))</LHS><RHS>s</RHS></RULE></REWSYS><DPLIST/></DPSYS></SYSTEM><CRITERION><DAG approx="simpl"><CCLIST/></DAG></CRITERION></PROPERTY></PROPERTY></PROOF>
