TRS:
 {       first(0(), X) -> nil(),
  first(s(X), cons(Y)) -> cons(Y),
               from(X) -> cons(X)}
 POP*:
  Precedence:
  first > nil, 
  from > cons
  empty
  
Normal:
   pi(from) = [1], pi(first) = [1,2]
  
Safe:
   pi(s) = [1], pi(cons) = [1]
  
Predicative System:
   {         first(0(),X;) -> nil(),
    first(s(;X),cons(;Y);) -> cons(;Y),
                  from(X;) -> cons(;X)}
  Qed