YES TRS: fib(N) -> sel(N,fib1(s(0()),s(0()))) fib1(X,Y) -> cons(X,n__fib1(Y,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) activate(n__fib1(X1,X2)) -> fib1(X1,X2) activate(X) -> X max/plus interpretations on N: fib_A(x1) = max{14, 11} fib#_A(x1) = max{17, 12 + x1} sel_A(x1,x2) = max{14, 13, 3 + x2} sel#_A(x1,x2) = max{16, 17, 6 + x2} fib1_A(x1,x2) = max{5, -3 + x1, -3 + x2} fib1#_A(x1,x2) = max{17, 1 + x1, -2 + x2} s_A(x1) = max{12, 13} s#_A(x1) = max{17, -4} 0_A = 1 0#_A = 0 cons_A(x1,x2) = max{1, -3 + x1, 3 + x2} cons#_A(x1,x2) = max{17, -3, 3 + x2} n__fib1_A(x1,x2) = max{1, -6 + x1, -6 + x2} n__fib1#_A(x1,x2) = max{17, -3, 1} add_A(x1,x2) = max{5, x1, x2} add#_A(x1,x2) = max{0, 17, -3} activate_A(x1) = max{11, 3 + x1} activate#_A(x1) = max{17, 8 + x1} precedence: fib > sel = 0 > activate > fib1 > cons = n__fib1 = add > s