YES TRS: fib(N) -> sel(N,fib1(s(0()),s(0()))) fib1(X,Y) -> cons(X,n__fib1(Y,n__add(X,Y))) add(0(),X) -> X add(s(X),Y) -> s(add(X,Y)) sel(0(),cons(X,XS)) -> X sel(s(N),cons(X,XS)) -> sel(N,activate(XS)) fib1(X1,X2) -> n__fib1(X1,X2) add(X1,X2) -> n__add(X1,X2) activate(n__fib1(X1,X2)) -> fib1(activate(X1),activate(X2)) activate(n__add(X1,X2)) -> add(activate(X1),activate(X2)) activate(X) -> X max/plus interpretations on N: fib_A(x1) = max{10, -1} fib#_A(x1) = max{23, 20} sel_A(x1,x2) = max{0, 0, -3 + x2} sel#_A(x1,x2) = max{6, 10, 9 + x2} fib1_A(x1,x2) = max{12, 5 + x1, 5 + x2} fib1#_A(x1,x2) = max{18, 12 + x1, 10 + x2} s_A(x1) = max{5, 8} s#_A(x1) = max{1, -1} 0_A = 1 0#_A = 21 cons_A(x1,x2) = max{2, 4 + x1, x2} cons#_A(x1,x2) = max{6, 6, 6} n__fib1_A(x1,x2) = max{12, 5 + x1, 5 + x2} n__fib1#_A(x1,x2) = max{17, 9 + x1, 11} n__add_A(x1,x2) = max{3, x1, x2} n__add#_A(x1,x2) = max{9, -1, -1} add_A(x1,x2) = max{4, x1, x2} add#_A(x1,x2) = max{0, 2, 10} activate_A(x1) = max{4, x1} activate#_A(x1) = max{7, 8 + x1} precedence: fib > sel = 0 = n__fib1 = n__add > activate > fib1 = add > s = cons