YES Problem: f(0()) -> cons(0(),n__f(n__s(n__0()))) f(s(0())) -> f(p(s(0()))) p(s(0())) -> 0() f(X) -> n__f(X) s(X) -> n__s(X) 0() -> n__0() activate(n__f(X)) -> f(activate(X)) activate(n__s(X)) -> s(activate(X)) activate(n__0()) -> 0() activate(X) -> X Proof: DP Processor: DPs: f#(s(0())) -> p#(s(0())) f#(s(0())) -> f#(p(s(0()))) activate#(n__f(X)) -> activate#(X) activate#(n__f(X)) -> f#(activate(X)) activate#(n__s(X)) -> activate#(X) activate#(n__s(X)) -> s#(activate(X)) activate#(n__0()) -> 0#() TRS: f(0()) -> cons(0(),n__f(n__s(n__0()))) f(s(0())) -> f(p(s(0()))) p(s(0())) -> 0() f(X) -> n__f(X) s(X) -> n__s(X) 0() -> n__0() activate(n__f(X)) -> f(activate(X)) activate(n__s(X)) -> s(activate(X)) activate(n__0()) -> 0() activate(X) -> X Matrix Interpretation Processor: dim=1 usable rules: f(0()) -> cons(0(),n__f(n__s(n__0()))) f(s(0())) -> f(p(s(0()))) p(s(0())) -> 0() f(X) -> n__f(X) s(X) -> n__s(X) 0() -> n__0() activate(n__f(X)) -> f(activate(X)) activate(n__s(X)) -> s(activate(X)) activate(n__0()) -> 0() activate(X) -> X interpretation: [activate#](x0) = x0 + 2, [0#] = 0, [s#](x0) = x0, [p#](x0) = 0, [f#](x0) = x0 + 2, [activate](x0) = x0, [p](x0) = 4, [s](x0) = x0 + 2, [cons](x0, x1) = 4, [n__f](x0) = x0 + 1, [n__s](x0) = x0 + 2, [n__0] = 3, [f](x0) = x0 + 1, [0] = 3 orientation: f#(s(0())) = 7 >= 0 = p#(s(0())) f#(s(0())) = 7 >= 6 = f#(p(s(0()))) activate#(n__f(X)) = X + 3 >= X + 2 = activate#(X) activate#(n__f(X)) = X + 3 >= X + 2 = f#(activate(X)) activate#(n__s(X)) = X + 4 >= X + 2 = activate#(X) activate#(n__s(X)) = X + 4 >= X = s#(activate(X)) activate#(n__0()) = 5 >= 0 = 0#() f(0()) = 4 >= 4 = cons(0(),n__f(n__s(n__0()))) f(s(0())) = 6 >= 5 = f(p(s(0()))) p(s(0())) = 4 >= 3 = 0() f(X) = X + 1 >= X + 1 = n__f(X) s(X) = X + 2 >= X + 2 = n__s(X) 0() = 3 >= 3 = n__0() activate(n__f(X)) = X + 1 >= X + 1 = f(activate(X)) activate(n__s(X)) = X + 2 >= X + 2 = s(activate(X)) activate(n__0()) = 3 >= 3 = 0() activate(X) = X >= X = X problem: DPs: TRS: f(0()) -> cons(0(),n__f(n__s(n__0()))) f(s(0())) -> f(p(s(0()))) p(s(0())) -> 0() f(X) -> n__f(X) s(X) -> n__s(X) 0() -> n__0() activate(n__f(X)) -> f(activate(X)) activate(n__s(X)) -> s(activate(X)) activate(n__0()) -> 0() activate(X) -> X Qed