NO Problem 1: (VAR v_NonEmpty:S X:S XS:S) (RULES tail(cons(X:S,XS:S)) -> XS:S zeros -> cons(0,zeros) ) Problem 1: Dependency Pairs Processor: -> Pairs: ZEROS -> ZEROS -> Rules: tail(cons(X:S,XS:S)) -> XS:S zeros -> cons(0,zeros) Problem 1: Infinite Processor: -> Pairs: ZEROS -> ZEROS -> Rules: tail(cons(X:S,XS:S)) -> XS:S zeros -> cons(0,zeros) -> Pairs in cycle: ZEROS -> ZEROS The problem is infinite.