<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE PROOF SYSTEM "http://a3pat.ensiie.fr/pub/a3pat.dtd">
<PROOF><SIGNATURE><SYMBOLLIST><SYMBOL arity="2" unmarked=""><NAME>apply</NAME></SYMBOL><SYMBOL arity="3" unmarked="ren"><NAME>Marked_ren</NAME></SYMBOL><SYMBOL arity="2" unmarked=""><NAME>eq</NAME></SYMBOL><SYMBOL arity="2" unmarked="eq"><NAME>Marked_eq</NAME></SYMBOL><SYMBOL arity="2" unmarked=""><NAME>cons</NAME></SYMBOL><SYMBOL arity="3" unmarked=""><NAME>if</NAME></SYMBOL><SYMBOL arity="2" unmarked=""><NAME>and</NAME></SYMBOL><SYMBOL arity="2" unmarked="and"><NAME>Marked_and</NAME></SYMBOL><SYMBOL arity="1" unmarked=""><NAME>var</NAME></SYMBOL><SYMBOL arity="3" unmarked=""><NAME>ren</NAME></SYMBOL><SYMBOL arity="0" unmarked=""><NAME>true</NAME></SYMBOL><SYMBOL arity="3" unmarked="if"><NAME>Marked_if</NAME></SYMBOL><SYMBOL arity="0" unmarked=""><NAME>nil</NAME></SYMBOL><SYMBOL arity="2" unmarked=""><NAME>lambda</NAME></SYMBOL><SYMBOL arity="0" unmarked=""><NAME>false</NAME></SYMBOL></SYMBOLLIST><VARLIST><VAR>Z</VAR><VAR>Y</VAR><VAR>K</VAR><VAR>Xp</VAR><VAR>X</VAR><VAR>Sp</VAR><VAR>S</VAR><VAR>Lp</VAR><VAR>Tp</VAR><VAR>L</VAR><VAR>T</VAR></VARLIST></SIGNATURE><PROPERTY criterion="dp" prop="sntrs"><SYSTEM><REWSYS><RULE><LHS>and(false,false)</LHS><RHS>false</RHS></RULE><RULE><LHS>and(true,false)</LHS><RHS>false</RHS></RULE><RULE><LHS>and(false,true)</LHS><RHS>false</RHS></RULE><RULE><LHS>and(true,true)</LHS><RHS>true</RHS></RULE><RULE><LHS>eq(nil,nil)</LHS><RHS>true</RHS></RULE><RULE><LHS>eq(cons(T,L),nil)</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(nil,cons(T,L))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(cons(T,L),cons(Tp,Lp))</LHS><RHS>and(eq(T,Tp),eq(L,Lp))</RHS></RULE><RULE><LHS>eq(var(L),var(Lp))</LHS><RHS>eq(L,Lp)</RHS></RULE><RULE><LHS>eq(var(L),apply(T,S))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(var(L),lambda(X,T))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(apply(T,S),var(L))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(apply(T,S),apply(Tp,Sp))</LHS><RHS>and(eq(T,Tp),eq(S,Sp))</RHS></RULE><RULE><LHS>eq(apply(T,S),lambda(X,Tp))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(lambda(X,T),var(L))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(lambda(X,T),apply(Tp,Sp))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(lambda(X,T),lambda(Xp,Tp))</LHS><RHS>and(eq(T,Tp),eq(X,Xp))</RHS></RULE><RULE><LHS>if(true,var(K),var(L))</LHS><RHS>var(K)</RHS></RULE><RULE><LHS>if(false,var(K),var(L))</LHS><RHS>var(L)</RHS></RULE><RULE><LHS>ren(var(L),var(K),var(Lp))</LHS><RHS>if(eq(L,Lp),var(K),var(Lp))</RHS></RULE><RULE><LHS>ren(X,Y,apply(T,S))</LHS><RHS>apply(ren(X,Y,T),ren(X,Y,S))</RHS></RULE><RULE><LHS>ren(X,Y,lambda(Z,T))</LHS><RHS>lambda(var(cons(X,cons(Y,cons(lambda(Z,T),nil)))),
 ren(X,Y,ren(Z,var(cons(X,cons(Y,cons(lambda(Z,T),nil)))),T)))</RHS></RULE></REWSYS></SYSTEM><CRITERION/><PROPERTY criterion="weakgraph" prop="sndp"><SYSTEM><DPSYS><REWSYS><RULE><LHS>and(false,false)</LHS><RHS>false</RHS></RULE><RULE><LHS>and(true,false)</LHS><RHS>false</RHS></RULE><RULE><LHS>and(false,true)</LHS><RHS>false</RHS></RULE><RULE><LHS>and(true,true)</LHS><RHS>true</RHS></RULE><RULE><LHS>eq(nil,nil)</LHS><RHS>true</RHS></RULE><RULE><LHS>eq(cons(T,L),nil)</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(nil,cons(T,L))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(cons(T,L),cons(Tp,Lp))</LHS><RHS>and(eq(T,Tp),eq(L,Lp))</RHS></RULE><RULE><LHS>eq(var(L),var(Lp))</LHS><RHS>eq(L,Lp)</RHS></RULE><RULE><LHS>eq(var(L),apply(T,S))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(var(L),lambda(X,T))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(apply(T,S),var(L))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(apply(T,S),apply(Tp,Sp))</LHS><RHS>and(eq(T,Tp),eq(S,Sp))</RHS></RULE><RULE><LHS>eq(apply(T,S),lambda(X,Tp))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(lambda(X,T),var(L))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(lambda(X,T),apply(Tp,Sp))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(lambda(X,T),lambda(Xp,Tp))</LHS><RHS>and(eq(T,Tp),eq(X,Xp))</RHS></RULE><RULE><LHS>if(true,var(K),var(L))</LHS><RHS>var(K)</RHS></RULE><RULE><LHS>if(false,var(K),var(L))</LHS><RHS>var(L)</RHS></RULE><RULE><LHS>ren(var(L),var(K),var(Lp))</LHS><RHS>if(eq(L,Lp),var(K),var(Lp))</RHS></RULE><RULE><LHS>ren(X,Y,apply(T,S))</LHS><RHS>apply(ren(X,Y,T),ren(X,Y,S))</RHS></RULE><RULE><LHS>ren(X,Y,lambda(Z,T))</LHS><RHS>lambda(var(cons(X,cons(Y,cons(lambda(Z,T),nil)))),
 ren(X,Y,ren(Z,var(cons(X,cons(Y,cons(lambda(Z,T),nil)))),T)))</RHS></RULE></REWSYS><DPLIST><DPRULE num="0"><LHS>Marked_eq(cons(T,L),cons(Tp,Lp))</LHS><RHS>Marked_and(eq(T,Tp),eq(L,Lp))</RHS></DPRULE><DPRULE num="1"><LHS>Marked_eq(cons(T,L),cons(Tp,Lp))</LHS><RHS>Marked_eq(T,Tp)</RHS></DPRULE><DPRULE num="2"><LHS>Marked_eq(cons(T,L),cons(Tp,Lp))</LHS><RHS>Marked_eq(L,Lp)</RHS></DPRULE><DPRULE num="3"><LHS>Marked_eq(var(L),var(Lp))</LHS><RHS>Marked_eq(L,Lp)</RHS></DPRULE><DPRULE num="4"><LHS>Marked_eq(apply(T,S),apply(Tp,Sp))</LHS><RHS>Marked_and(eq(T,Tp),eq(S,Sp))</RHS></DPRULE><DPRULE num="5"><LHS>Marked_eq(apply(T,S),apply(Tp,Sp))</LHS><RHS>Marked_eq(T,Tp)</RHS></DPRULE><DPRULE num="6"><LHS>Marked_eq(apply(T,S),apply(Tp,Sp))</LHS><RHS>Marked_eq(S,Sp)</RHS></DPRULE><DPRULE num="7"><LHS>Marked_eq(lambda(X,T),lambda(Xp,Tp))</LHS><RHS>Marked_and(eq(T,Tp),eq(X,Xp))</RHS></DPRULE><DPRULE num="8"><LHS>Marked_eq(lambda(X,T),lambda(Xp,Tp))</LHS><RHS>Marked_eq(T,Tp)</RHS></DPRULE><DPRULE num="9"><LHS>Marked_eq(lambda(X,T),lambda(Xp,Tp))</LHS><RHS>Marked_eq(X,Xp)</RHS></DPRULE><DPRULE num="10"><LHS>Marked_ren(var(L),var(K),var(Lp))</LHS><RHS>Marked_if(eq(L,Lp),var(K),var(Lp))</RHS></DPRULE><DPRULE num="11"><LHS>Marked_ren(var(L),var(K),var(Lp))</LHS><RHS>Marked_eq(L,Lp)</RHS></DPRULE><DPRULE num="12"><LHS>Marked_ren(X,Y,apply(T,S))</LHS><RHS>Marked_ren(X,Y,T)</RHS></DPRULE><DPRULE num="13"><LHS>Marked_ren(X,Y,apply(T,S))</LHS><RHS>Marked_ren(X,Y,S)</RHS></DPRULE><DPRULE num="14"><LHS>Marked_ren(X,Y,lambda(Z,T))</LHS><RHS>Marked_ren(X,Y,ren(Z,var(cons(X,cons(Y,cons(lambda(Z,T),nil)))),T))</RHS></DPRULE><DPRULE num="15"><LHS>Marked_ren(X,Y,lambda(Z,T))</LHS><RHS>Marked_ren(Z,var(cons(X,cons(Y,cons(lambda(Z,T),nil)))),T)</RHS></DPRULE></DPLIST></DPSYS></SYSTEM><CRITERION><DAG approx="simpl"><CCLIST><SCC num="0"><NODE ref="12"/><NODE ref="13"/><NODE ref="14"/><NODE ref="15"/></SCC><NONSCC num="1"><NODE ref="11"/></NONSCC><NONSCC num="2"><NODE ref="10"/></NONSCC><SCC num="3"><NODE ref="1"/><NODE ref="2"/><NODE ref="3"/><NODE ref="5"/><NODE ref="6"/><NODE ref="8"/><NODE ref="9"/></SCC><NONSCC num="4"><NODE ref="7"/></NONSCC><NONSCC num="5"><NODE ref="4"/></NONSCC><NONSCC num="6"><NODE ref="0"/></NONSCC></CCLIST><EDGE end="2" start="0"/><EDGE end="1" start="0"/><EDGE end="6" start="1"/><EDGE end="5" start="1"/><EDGE end="4" start="1"/><EDGE end="3" start="1"/><EDGE end="6" start="3"/><EDGE end="5" start="3"/><EDGE end="4" start="3"/></DAG></CRITERION><PROPERTY criterion="stronggraph" prop="sndp"><SYSTEM><DPSYS><REWSYS><RULE><LHS>and(false,false)</LHS><RHS>false</RHS></RULE><RULE><LHS>and(true,false)</LHS><RHS>false</RHS></RULE><RULE><LHS>and(false,true)</LHS><RHS>false</RHS></RULE><RULE><LHS>and(true,true)</LHS><RHS>true</RHS></RULE><RULE><LHS>eq(nil,nil)</LHS><RHS>true</RHS></RULE><RULE><LHS>eq(cons(T,L),nil)</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(nil,cons(T,L))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(cons(T,L),cons(Tp,Lp))</LHS><RHS>and(eq(T,Tp),eq(L,Lp))</RHS></RULE><RULE><LHS>eq(var(L),var(Lp))</LHS><RHS>eq(L,Lp)</RHS></RULE><RULE><LHS>eq(var(L),apply(T,S))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(var(L),lambda(X,T))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(apply(T,S),var(L))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(apply(T,S),apply(Tp,Sp))</LHS><RHS>and(eq(T,Tp),eq(S,Sp))</RHS></RULE><RULE><LHS>eq(apply(T,S),lambda(X,Tp))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(lambda(X,T),var(L))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(lambda(X,T),apply(Tp,Sp))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(lambda(X,T),lambda(Xp,Tp))</LHS><RHS>and(eq(T,Tp),eq(X,Xp))</RHS></RULE><RULE><LHS>if(true,var(K),var(L))</LHS><RHS>var(K)</RHS></RULE><RULE><LHS>if(false,var(K),var(L))</LHS><RHS>var(L)</RHS></RULE><RULE><LHS>ren(var(L),var(K),var(Lp))</LHS><RHS>if(eq(L,Lp),var(K),var(Lp))</RHS></RULE><RULE><LHS>ren(X,Y,apply(T,S))</LHS><RHS>apply(ren(X,Y,T),ren(X,Y,S))</RHS></RULE><RULE><LHS>ren(X,Y,lambda(Z,T))</LHS><RHS>lambda(var(cons(X,cons(Y,cons(lambda(Z,T),nil)))),
 ren(X,Y,ren(Z,var(cons(X,cons(Y,cons(lambda(Z,T),nil)))),T)))</RHS></RULE></REWSYS><DPLIST><DPRULE num="0"><LHS>Marked_ren(X,Y,apply(T,S))</LHS><RHS>Marked_ren(X,Y,T)</RHS></DPRULE><DPRULE num="1"><LHS>Marked_ren(X,Y,apply(T,S))</LHS><RHS>Marked_ren(X,Y,S)</RHS></DPRULE><DPRULE num="2"><LHS>Marked_ren(X,Y,lambda(Z,T))</LHS><RHS>Marked_ren(X,Y,ren(Z,var(cons(X,cons(Y,cons(lambda(Z,T),nil)))),T))</RHS></DPRULE><DPRULE num="3"><LHS>Marked_ren(X,Y,lambda(Z,T))</LHS><RHS>Marked_ren(Z,var(cons(X,cons(Y,cons(lambda(Z,T),nil)))),T)</RHS></DPRULE></DPLIST></DPSYS></SYSTEM><CRITERION><ORDERING type="poly"><POLYSYMB><SYMBOL><NAME>false</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>lambda</NAME></SYMBOL><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></POLYSYMB><POLYSYMB><SYMBOL><NAME>nil</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>true</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>ren</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>var</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>and</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>if</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>cons</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>Marked_ren</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>apply</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="0"/></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></SUMPOLY></POLYNOMIAL></POLYSYMB></ORDERING><STRICTPAIRS><DPLIST><DPRULE num="0"><LHS>Marked_ren(X,Y,apply(T,S))</LHS><RHS>Marked_ren(X,Y,T)</RHS></DPRULE><DPRULE num="1"><LHS>Marked_ren(X,Y,apply(T,S))</LHS><RHS>Marked_ren(X,Y,S)</RHS></DPRULE></DPLIST></STRICTPAIRS></CRITERION><PROPERTY criterion="weakgraph" prop="sndp"><SYSTEM><DPSYS><REWSYS><RULE><LHS>and(false,false)</LHS><RHS>false</RHS></RULE><RULE><LHS>and(true,false)</LHS><RHS>false</RHS></RULE><RULE><LHS>and(false,true)</LHS><RHS>false</RHS></RULE><RULE><LHS>and(true,true)</LHS><RHS>true</RHS></RULE><RULE><LHS>eq(nil,nil)</LHS><RHS>true</RHS></RULE><RULE><LHS>eq(cons(T,L),nil)</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(nil,cons(T,L))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(cons(T,L),cons(Tp,Lp))</LHS><RHS>and(eq(T,Tp),eq(L,Lp))</RHS></RULE><RULE><LHS>eq(var(L),var(Lp))</LHS><RHS>eq(L,Lp)</RHS></RULE><RULE><LHS>eq(var(L),apply(T,S))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(var(L),lambda(X,T))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(apply(T,S),var(L))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(apply(T,S),apply(Tp,Sp))</LHS><RHS>and(eq(T,Tp),eq(S,Sp))</RHS></RULE><RULE><LHS>eq(apply(T,S),lambda(X,Tp))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(lambda(X,T),var(L))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(lambda(X,T),apply(Tp,Sp))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(lambda(X,T),lambda(Xp,Tp))</LHS><RHS>and(eq(T,Tp),eq(X,Xp))</RHS></RULE><RULE><LHS>if(true,var(K),var(L))</LHS><RHS>var(K)</RHS></RULE><RULE><LHS>if(false,var(K),var(L))</LHS><RHS>var(L)</RHS></RULE><RULE><LHS>ren(var(L),var(K),var(Lp))</LHS><RHS>if(eq(L,Lp),var(K),var(Lp))</RHS></RULE><RULE><LHS>ren(X,Y,apply(T,S))</LHS><RHS>apply(ren(X,Y,T),ren(X,Y,S))</RHS></RULE><RULE><LHS>ren(X,Y,lambda(Z,T))</LHS><RHS>lambda(var(cons(X,cons(Y,cons(lambda(Z,T),nil)))),
 ren(X,Y,ren(Z,var(cons(X,cons(Y,cons(lambda(Z,T),nil)))),T)))</RHS></RULE></REWSYS><DPLIST><DPRULE num="0"><LHS>Marked_ren(X,Y,lambda(Z,T))</LHS><RHS>Marked_ren(X,Y,ren(Z,var(cons(X,cons(Y,cons(lambda(Z,T),nil)))),T))</RHS></DPRULE><DPRULE num="1"><LHS>Marked_ren(X,Y,lambda(Z,T))</LHS><RHS>Marked_ren(Z,var(cons(X,cons(Y,cons(lambda(Z,T),nil)))),T)</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="ordering" prop="sndp"><SYSTEM><DPSYS><REWSYS><RULE><LHS>and(false,false)</LHS><RHS>false</RHS></RULE><RULE><LHS>and(true,false)</LHS><RHS>false</RHS></RULE><RULE><LHS>and(false,true)</LHS><RHS>false</RHS></RULE><RULE><LHS>and(true,true)</LHS><RHS>true</RHS></RULE><RULE><LHS>eq(nil,nil)</LHS><RHS>true</RHS></RULE><RULE><LHS>eq(cons(T,L),nil)</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(nil,cons(T,L))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(cons(T,L),cons(Tp,Lp))</LHS><RHS>and(eq(T,Tp),eq(L,Lp))</RHS></RULE><RULE><LHS>eq(var(L),var(Lp))</LHS><RHS>eq(L,Lp)</RHS></RULE><RULE><LHS>eq(var(L),apply(T,S))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(var(L),lambda(X,T))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(apply(T,S),var(L))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(apply(T,S),apply(Tp,Sp))</LHS><RHS>and(eq(T,Tp),eq(S,Sp))</RHS></RULE><RULE><LHS>eq(apply(T,S),lambda(X,Tp))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(lambda(X,T),var(L))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(lambda(X,T),apply(Tp,Sp))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(lambda(X,T),lambda(Xp,Tp))</LHS><RHS>and(eq(T,Tp),eq(X,Xp))</RHS></RULE><RULE><LHS>if(true,var(K),var(L))</LHS><RHS>var(K)</RHS></RULE><RULE><LHS>if(false,var(K),var(L))</LHS><RHS>var(L)</RHS></RULE><RULE><LHS>ren(var(L),var(K),var(Lp))</LHS><RHS>if(eq(L,Lp),var(K),var(Lp))</RHS></RULE><RULE><LHS>ren(X,Y,apply(T,S))</LHS><RHS>apply(ren(X,Y,T),ren(X,Y,S))</RHS></RULE><RULE><LHS>ren(X,Y,lambda(Z,T))</LHS><RHS>lambda(var(cons(X,cons(Y,cons(lambda(Z,T),nil)))),
 ren(X,Y,ren(Z,var(cons(X,cons(Y,cons(lambda(Z,T),nil)))),T)))</RHS></RULE></REWSYS><DPLIST><DPRULE num="0"><LHS>Marked_ren(X,Y,lambda(Z,T))</LHS><RHS>Marked_ren(X,Y,ren(Z,var(cons(X,cons(Y,cons(lambda(Z,T),nil)))),T))</RHS></DPRULE><DPRULE num="1"><LHS>Marked_ren(X,Y,lambda(Z,T))</LHS><RHS>Marked_ren(Z,var(cons(X,cons(Y,cons(lambda(Z,T),nil)))),T)</RHS></DPRULE></DPLIST></DPSYS></SYSTEM><CRITERION><ORDERING type="poly"><POLYSYMB><SYMBOL><NAME>false</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>lambda</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><POLYSYMB><SYMBOL><NAME>nil</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>true</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>ren</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>var</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>and</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>if</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>cons</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>Marked_ren</NAME></SYMBOL><POLYNOMIAL><SUMPOLY><POLYNOMIAL><MONOME><COEF><INT>2</INT></COEF><ARG degree="1" num="2"/></MONOME></POLYNOMIAL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></SUMPOLY></POLYNOMIAL></POLYSYMB><POLYSYMB><SYMBOL><NAME>apply</NAME></SYMBOL><POLYNOMIAL><MONOME><COEF><INT>0</INT></COEF></MONOME></POLYNOMIAL></POLYSYMB></ORDERING></CRITERION></PROPERTY></PROPERTY></PROPERTY><PROPERTY criterion="sterm" prop="sndp"><SYSTEM><DPSYS><REWSYS><RULE><LHS>and(false,false)</LHS><RHS>false</RHS></RULE><RULE><LHS>and(true,false)</LHS><RHS>false</RHS></RULE><RULE><LHS>and(false,true)</LHS><RHS>false</RHS></RULE><RULE><LHS>and(true,true)</LHS><RHS>true</RHS></RULE><RULE><LHS>eq(nil,nil)</LHS><RHS>true</RHS></RULE><RULE><LHS>eq(cons(T,L),nil)</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(nil,cons(T,L))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(cons(T,L),cons(Tp,Lp))</LHS><RHS>and(eq(T,Tp),eq(L,Lp))</RHS></RULE><RULE><LHS>eq(var(L),var(Lp))</LHS><RHS>eq(L,Lp)</RHS></RULE><RULE><LHS>eq(var(L),apply(T,S))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(var(L),lambda(X,T))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(apply(T,S),var(L))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(apply(T,S),apply(Tp,Sp))</LHS><RHS>and(eq(T,Tp),eq(S,Sp))</RHS></RULE><RULE><LHS>eq(apply(T,S),lambda(X,Tp))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(lambda(X,T),var(L))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(lambda(X,T),apply(Tp,Sp))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(lambda(X,T),lambda(Xp,Tp))</LHS><RHS>and(eq(T,Tp),eq(X,Xp))</RHS></RULE><RULE><LHS>if(true,var(K),var(L))</LHS><RHS>var(K)</RHS></RULE><RULE><LHS>if(false,var(K),var(L))</LHS><RHS>var(L)</RHS></RULE><RULE><LHS>ren(var(L),var(K),var(Lp))</LHS><RHS>if(eq(L,Lp),var(K),var(Lp))</RHS></RULE><RULE><LHS>ren(X,Y,apply(T,S))</LHS><RHS>apply(ren(X,Y,T),ren(X,Y,S))</RHS></RULE><RULE><LHS>ren(X,Y,lambda(Z,T))</LHS><RHS>lambda(var(cons(X,cons(Y,cons(lambda(Z,T),nil)))),
 ren(X,Y,ren(Z,var(cons(X,cons(Y,cons(lambda(Z,T),nil)))),T)))</RHS></RULE></REWSYS><DPLIST><DPRULE num="0"><LHS>Marked_eq(cons(T,L),cons(Tp,Lp))</LHS><RHS>Marked_eq(T,Tp)</RHS></DPRULE><DPRULE num="1"><LHS>Marked_eq(cons(T,L),cons(Tp,Lp))</LHS><RHS>Marked_eq(L,Lp)</RHS></DPRULE><DPRULE num="2"><LHS>Marked_eq(var(L),var(Lp))</LHS><RHS>Marked_eq(L,Lp)</RHS></DPRULE><DPRULE num="3"><LHS>Marked_eq(apply(T,S),apply(Tp,Sp))</LHS><RHS>Marked_eq(T,Tp)</RHS></DPRULE><DPRULE num="4"><LHS>Marked_eq(apply(T,S),apply(Tp,Sp))</LHS><RHS>Marked_eq(S,Sp)</RHS></DPRULE><DPRULE num="5"><LHS>Marked_eq(lambda(X,T),lambda(Xp,Tp))</LHS><RHS>Marked_eq(T,Tp)</RHS></DPRULE><DPRULE num="6"><LHS>Marked_eq(lambda(X,T),lambda(Xp,Tp))</LHS><RHS>Marked_eq(X,Xp)</RHS></DPRULE></DPLIST></DPSYS></SYSTEM><PROJECTION><PROJ><SYMBOL><NAME>Marked_eq</NAME></SYMBOL><INT>2</INT></PROJ></PROJECTION><STRICTPAIRS><DPLIST><DPRULE num="0"><LHS>Marked_eq(lambda(X,T),lambda(Xp,Tp))</LHS><RHS>Marked_eq(X,Xp)</RHS></DPRULE><DPRULE num="1"><LHS>Marked_eq(lambda(X,T),lambda(Xp,Tp))</LHS><RHS>Marked_eq(T,Tp)</RHS></DPRULE><DPRULE num="2"><LHS>Marked_eq(apply(T,S),apply(Tp,Sp))</LHS><RHS>Marked_eq(S,Sp)</RHS></DPRULE><DPRULE num="3"><LHS>Marked_eq(apply(T,S),apply(Tp,Sp))</LHS><RHS>Marked_eq(T,Tp)</RHS></DPRULE><DPRULE num="4"><LHS>Marked_eq(var(L),var(Lp))</LHS><RHS>Marked_eq(L,Lp)</RHS></DPRULE><DPRULE num="5"><LHS>Marked_eq(cons(T,L),cons(Tp,Lp))</LHS><RHS>Marked_eq(L,Lp)</RHS></DPRULE><DPRULE num="6"><LHS>Marked_eq(cons(T,L),cons(Tp,Lp))</LHS><RHS>Marked_eq(T,Tp)</RHS></DPRULE></DPLIST></STRICTPAIRS><PROPERTY criterion="weakgraph" prop="sndp"><SYSTEM><DPSYS><REWSYS><RULE><LHS>and(false,false)</LHS><RHS>false</RHS></RULE><RULE><LHS>and(true,false)</LHS><RHS>false</RHS></RULE><RULE><LHS>and(false,true)</LHS><RHS>false</RHS></RULE><RULE><LHS>and(true,true)</LHS><RHS>true</RHS></RULE><RULE><LHS>eq(nil,nil)</LHS><RHS>true</RHS></RULE><RULE><LHS>eq(cons(T,L),nil)</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(nil,cons(T,L))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(cons(T,L),cons(Tp,Lp))</LHS><RHS>and(eq(T,Tp),eq(L,Lp))</RHS></RULE><RULE><LHS>eq(var(L),var(Lp))</LHS><RHS>eq(L,Lp)</RHS></RULE><RULE><LHS>eq(var(L),apply(T,S))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(var(L),lambda(X,T))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(apply(T,S),var(L))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(apply(T,S),apply(Tp,Sp))</LHS><RHS>and(eq(T,Tp),eq(S,Sp))</RHS></RULE><RULE><LHS>eq(apply(T,S),lambda(X,Tp))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(lambda(X,T),var(L))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(lambda(X,T),apply(Tp,Sp))</LHS><RHS>false</RHS></RULE><RULE><LHS>eq(lambda(X,T),lambda(Xp,Tp))</LHS><RHS>and(eq(T,Tp),eq(X,Xp))</RHS></RULE><RULE><LHS>if(true,var(K),var(L))</LHS><RHS>var(K)</RHS></RULE><RULE><LHS>if(false,var(K),var(L))</LHS><RHS>var(L)</RHS></RULE><RULE><LHS>ren(var(L),var(K),var(Lp))</LHS><RHS>if(eq(L,Lp),var(K),var(Lp))</RHS></RULE><RULE><LHS>ren(X,Y,apply(T,S))</LHS><RHS>apply(ren(X,Y,T),ren(X,Y,S))</RHS></RULE><RULE><LHS>ren(X,Y,lambda(Z,T))</LHS><RHS>lambda(var(cons(X,cons(Y,cons(lambda(Z,T),nil)))),
 ren(X,Y,ren(Z,var(cons(X,cons(Y,cons(lambda(Z,T),nil)))),T)))</RHS></RULE></REWSYS><DPLIST/></DPSYS></SYSTEM><CRITERION><DAG approx="simpl"><CCLIST/></DAG></CRITERION></PROPERTY></PROPERTY></PROPERTY></PROPERTY></PROOF>
