YES TRS: first(0(),X) -> nil() first(s(X),cons(Y)) -> cons(Y) from(X) -> cons(X) linear polynomial interpretations on N: first_A(x1,x2) = x1 + x2 first#_A(x1,x2) = x1 + x2 0_A = 1 0#_A = 1 nil_A = 0 nil#_A = 0 s_A(x1) = x1 + 1 s#_A(x1) = x1 + 1 cons_A(x1) = x1 cons#_A(x1) = x1 from_A(x1) = x1 + 1 from#_A(x1) = x1 + 1 precedence: 0 > nil > first = s > cons > from