YES(?,O(n^1)) We are left with following problem, upon which TcT provides the certificate YES(?,O(n^1)). Strict Trs: { f(X1, X2) -> n__f(X1, X2) , f(g(X), Y) -> f(X, n__f(n__g(X), activate(Y))) , g(X) -> n__g(X) , activate(X) -> X , activate(n__f(X1, X2)) -> f(activate(X1), X2) , activate(n__g(X)) -> g(activate(X)) } Obligation: innermost runtime complexity Answer: YES(?,O(n^1)) Arguments of following rules are not normal-forms: { f(g(X), Y) -> f(X, n__f(n__g(X), activate(Y))) } All above mentioned rules can be savely removed. We are left with following problem, upon which TcT provides the certificate YES(?,O(n^1)). Strict Trs: { f(X1, X2) -> n__f(X1, X2) , g(X) -> n__g(X) , activate(X) -> X , activate(n__f(X1, X2)) -> f(activate(X1), X2) , activate(n__g(X)) -> g(activate(X)) } Obligation: innermost runtime complexity Answer: YES(?,O(n^1)) The input was oriented with the instance of 'Small Polynomial Path Order (PS,1-bounded)' as induced by the safe mapping safe(f) = {1, 2}, safe(g) = {1}, safe(n__f) = {1, 2}, safe(n__g) = {1}, safe(activate) = {} and precedence activate > f, activate > g, f ~ g . Following symbols are considered recursive: {activate} The recursion depth is 1. For your convenience, here are the satisfied ordering constraints: f(; X1, X2) > n__f(; X1, X2) g(; X) > n__g(; X) activate(X;) > X activate(n__f(; X1, X2);) > f(; activate(X1;), X2) activate(n__g(; X);) > g(; activate(X;)) Hurray, we answered YES(?,O(n^1))