YES TRS: a__app(nil(),YS) -> mark(YS) a__app(cons(X,XS),YS) -> cons(mark(X),app(XS,YS)) a__from(X) -> cons(mark(X),from(s(X))) a__zWadr(nil(),YS) -> nil() a__zWadr(XS,nil()) -> nil() a__zWadr(cons(X,XS),cons(Y,YS)) -> cons(a__app(mark(Y),cons(mark(X),nil())),zWadr(XS,YS)) a__prefix(L) -> cons(nil(),zWadr(L,prefix(L))) mark(app(X1,X2)) -> a__app(mark(X1),mark(X2)) mark(from(X)) -> a__from(mark(X)) mark(zWadr(X1,X2)) -> a__zWadr(mark(X1),mark(X2)) mark(prefix(X)) -> a__prefix(mark(X)) mark(nil()) -> nil() mark(cons(X1,X2)) -> cons(mark(X1),X2) mark(s(X)) -> s(mark(X)) a__app(X1,X2) -> app(X1,X2) a__from(X) -> from(X) a__zWadr(X1,X2) -> zWadr(X1,X2) a__prefix(X) -> prefix(X) max/plus interpretations on N: a__app_A(x1,x2) = max{103, 65 + x1, 24 + x2} a__app#_A(x1,x2) = max{72, 86 + x1, 54 + x2} nil_A = 138 nil#_A = 2 mark_A(x1) = max{4, 6 + x1} mark#_A(x1) = max{109, 47 + x1} cons_A(x1,x2) = max{4, 34 + x1, 24} cons#_A(x1,x2) = max{0, 1 + x1, 1} app_A(x1,x2) = max{97, 65 + x1, 24 + x2} app#_A(x1,x2) = max{85, 86, 46} a__from_A(x1) = max{3, 74 + x1} a__from#_A(x1) = max{112, 114 + x1} from_A(x1) = max{74, 74 + x1} from#_A(x1) = max{113, 48} s_A(x1) = max{63, 74 + x1} s#_A(x1) = max{111, 114 + x1} a__zWadr_A(x1,x2) = max{137, 78 + x1, 71 + x2} a__zWadr#_A(x1,x2) = max{3, 69 + x1, 75 + x2} zWadr_A(x1,x2) = max{131, 78 + x1, 71 + x2} zWadr#_A(x1,x2) = max{2, 74, 2} a__prefix_A(x1) = max{3, 172 + x1} a__prefix#_A(x1) = max{148, 140 + x1} prefix_A(x1) = max{100, 172 + x1} prefix#_A(x1) = max{145, 147} precedence: a__zWadr > a__app = from > app = a__from = prefix > mark = s > a__prefix > cons = zWadr > nil