Problem: sel(0(),cons()) -> X sel(s(),cons()) -> sel(X,Z) dbl1(s()) -> s1(s1(dbl1(X))) sel1(0(),cons()) -> X sel1(s(),cons()) -> sel1(X,Z) quote(s()) -> s1(quote(X)) dbl(0()) -> 0() dbl(s()) -> s() dbls(nil()) -> nil() dbls(cons()) -> cons() indx(nil()) -> nil() indx(cons()) -> cons() from() -> cons() dbl1(0()) -> 01() quote(0()) -> 01() quote(dbl(X)) -> dbl1(X) quote(sel(X,Y)) -> sel1(X,Y) Proof: Fresh Variable Processor: loop length: 1 terms: sel(0(),cons()) context: [] substitution: X -> sel(0(),cons()) Qed