YES TRS: a__zeros() -> cons(0(),zeros()) a__tail(cons(X,XS)) -> mark(XS) mark(zeros()) -> a__zeros() mark(tail(X)) -> a__tail(mark(X)) mark(cons(X1,X2)) -> cons(mark(X1),X2) mark(0()) -> 0() a__zeros() -> zeros() a__tail(X) -> tail(X) max/plus interpretations on N: a__zeros_A = 4 a__zeros#_A = 4 cons_A(x1,x2) = max{3, 3 + x1, 3 + x2} cons#_A(x1,x2) = max{3, 3 + x1, 3 + x2} 0_A = 0 0#_A = 0 zeros_A = 0 zeros#_A = 0 a__tail_A(x1) = max{10, 4 + x1} a__tail#_A(x1) = max{10, 4 + x1} mark_A(x1) = max{2, 5 + x1} mark#_A(x1) = max{2, 5 + x1} tail_A(x1) = max{5, 4 + x1} tail#_A(x1) = max{5, 4 + x1} precedence: 0 = zeros > a__zeros > mark > cons = a__tail > tail