YES(O(1),O(n^1)) We are left with following problem, upon which TcT provides the certificate YES(O(1),O(n^1)). Strict Trs: { from(X) -> cons(X, n__from(n__s(X))) , from(X) -> n__from(X) , after(0(), XS) -> XS , after(s(N), cons(X, XS)) -> after(N, activate(XS)) , s(X) -> n__s(X) , activate(X) -> X , activate(n__from(X)) -> from(activate(X)) , activate(n__s(X)) -> s(activate(X)) } Obligation: innermost runtime complexity Answer: YES(O(1),O(n^1)) Arguments of following rules are not normal-forms: { after(s(N), cons(X, XS)) -> after(N, activate(XS)) } All above mentioned rules can be savely removed. We are left with following problem, upon which TcT provides the certificate YES(O(1),O(n^1)). Strict Trs: { from(X) -> cons(X, n__from(n__s(X))) , from(X) -> n__from(X) , after(0(), XS) -> XS , s(X) -> n__s(X) , activate(X) -> X , activate(n__from(X)) -> from(activate(X)) , activate(n__s(X)) -> s(activate(X)) } Obligation: innermost runtime complexity Answer: YES(O(1),O(n^1)) We use the processor 'Small Polynomial Path Order (PS,1-bounded)' to orient following rules strictly. Trs: { from(X) -> cons(X, n__from(n__s(X))) , from(X) -> n__from(X) , after(0(), XS) -> XS , s(X) -> n__s(X) , activate(X) -> X , activate(n__from(X)) -> from(activate(X)) , activate(n__s(X)) -> s(activate(X)) } The induced complexity on above rules (modulo remaining rules) is YES(?,O(n^1)) . These rules are moved into the corresponding weak component(s). Sub-proof: ---------- The input was oriented with the instance of 'Small Polynomial Path Order (PS,1-bounded)' as induced by the safe mapping safe(from) = {1}, safe(cons) = {1, 2}, safe(n__from) = {1}, safe(n__s) = {1}, safe(after) = {}, safe(0) = {}, safe(s) = {1}, safe(activate) = {} and precedence from > s, after > from, after > s, activate > from, activate > s, after ~ activate . Following symbols are considered recursive: {activate} The recursion depth is 1. For your convenience, here are the satisfied ordering constraints: from(; X) > cons(; X, n__from(; n__s(; X))) from(; X) > n__from(; X) after(0(), XS;) > XS s(; X) > n__s(; X) activate(X;) > X activate(n__from(; X);) > from(; activate(X;)) activate(n__s(; X);) > s(; activate(X;)) We return to the main proof. We are left with following problem, upon which TcT provides the certificate YES(O(1),O(1)). Weak Trs: { from(X) -> cons(X, n__from(n__s(X))) , from(X) -> n__from(X) , after(0(), XS) -> XS , s(X) -> n__s(X) , activate(X) -> X , activate(n__from(X)) -> from(activate(X)) , activate(n__s(X)) -> s(activate(X)) } Obligation: innermost runtime complexity Answer: YES(O(1),O(1)) Empty rules are trivially bounded Hurray, we answered YES(O(1),O(n^1))