YES TRS: terms(N) -> cons(recip(sqr(N))) sqr(0()) -> 0() sqr(s(X)) -> s(add(sqr(X),dbl(X))) dbl(0()) -> 0() dbl(s(X)) -> s(s(dbl(X))) add(0(),X) -> X add(s(X),Y) -> s(add(X,Y)) first(0(),X) -> nil() first(s(X),cons(Y)) -> cons(Y) half(0()) -> 0() half(s(0())) -> 0() half(s(s(X))) -> s(half(X)) half(dbl(X)) -> X max/plus interpretations on N: terms_A(x1) = max{11, 10 + x1} terms#_A(x1) = max{11, 10 + x1} cons_A(x1) = max{11, x1} cons#_A(x1) = max{11, x1} recip_A(x1) = max{11, 2 + x1} recip#_A(x1) = max{11, 2 + x1} sqr_A(x1) = max{9, 6 + x1} sqr#_A(x1) = max{9, 6 + x1} 0_A = 1 0#_A = 1 s_A(x1) = max{2, x1} s#_A(x1) = max{2, x1} add_A(x1,x2) = max{9, x1, 4 + x2} add#_A(x1,x2) = max{9, x1, 4 + x2} dbl_A(x1) = max{5, 1 + x1} dbl#_A(x1) = max{5, 1 + x1} first_A(x1,x2) = max{12, 12 + x1, 12 + x2} first#_A(x1,x2) = max{12, 12 + x1, 12 + x2} nil_A = 0 nil#_A = 0 half_A(x1) = max{2, x1} half#_A(x1) = max{2, x1} precedence: terms = 0 > recip = sqr > add = dbl > s = nil > first = half > cons