MAYBE * Step 1: DependencyPairs MAYBE + Considered Problem: - Strict TRS: activate(X) -> X activate(n__f(X1,X2)) -> f(X1,X2) f(X1,X2) -> n__f(X1,X2) f(g(X),Y) -> f(X,n__f(g(X),activate(Y))) - Signature: {activate/1,f/2} / {g/1,n__f/2} - Obligation: innermost runtime complexity wrt. defined symbols {activate,f} and constructors {g,n__f} + Applied Processor: DependencyPairs {dpKind_ = DT} + Details: We add the following dependency tuples: Strict DPs activate#(X) -> c_1() activate#(n__f(X1,X2)) -> c_2(f#(X1,X2)) f#(X1,X2) -> c_3() f#(g(X),Y) -> c_4(f#(X,n__f(g(X),activate(Y))),activate#(Y)) Weak DPs and mark the set of starting terms. * Step 2: PredecessorEstimation MAYBE + Considered Problem: - Strict DPs: activate#(X) -> c_1() activate#(n__f(X1,X2)) -> c_2(f#(X1,X2)) f#(X1,X2) -> c_3() f#(g(X),Y) -> c_4(f#(X,n__f(g(X),activate(Y))),activate#(Y)) - Weak TRS: activate(X) -> X activate(n__f(X1,X2)) -> f(X1,X2) f(X1,X2) -> n__f(X1,X2) f(g(X),Y) -> f(X,n__f(g(X),activate(Y))) - Signature: {activate/1,f/2,activate#/1,f#/2} / {g/1,n__f/2,c_1/0,c_2/1,c_3/0,c_4/2} - Obligation: innermost runtime complexity wrt. defined symbols {activate#,f#} and constructors {g,n__f} + Applied Processor: PredecessorEstimation {onSelection = all simple predecessor estimation selector} + Details: We estimate the number of application of {1,3} by application of Pre({1,3}) = {2,4}. Here rules are labelled as follows: 1: activate#(X) -> c_1() 2: activate#(n__f(X1,X2)) -> c_2(f#(X1,X2)) 3: f#(X1,X2) -> c_3() 4: f#(g(X),Y) -> c_4(f#(X,n__f(g(X),activate(Y))),activate#(Y)) * Step 3: RemoveWeakSuffixes MAYBE + Considered Problem: - Strict DPs: activate#(n__f(X1,X2)) -> c_2(f#(X1,X2)) f#(g(X),Y) -> c_4(f#(X,n__f(g(X),activate(Y))),activate#(Y)) - Weak DPs: activate#(X) -> c_1() f#(X1,X2) -> c_3() - Weak TRS: activate(X) -> X activate(n__f(X1,X2)) -> f(X1,X2) f(X1,X2) -> n__f(X1,X2) f(g(X),Y) -> f(X,n__f(g(X),activate(Y))) - Signature: {activate/1,f/2,activate#/1,f#/2} / {g/1,n__f/2,c_1/0,c_2/1,c_3/0,c_4/2} - Obligation: innermost runtime complexity wrt. defined symbols {activate#,f#} and constructors {g,n__f} + Applied Processor: RemoveWeakSuffixes + Details: Consider the dependency graph 1:S:activate#(n__f(X1,X2)) -> c_2(f#(X1,X2)) -->_1 f#(g(X),Y) -> c_4(f#(X,n__f(g(X),activate(Y))),activate#(Y)):2 -->_1 f#(X1,X2) -> c_3():4 2:S:f#(g(X),Y) -> c_4(f#(X,n__f(g(X),activate(Y))),activate#(Y)) -->_1 f#(X1,X2) -> c_3():4 -->_2 activate#(X) -> c_1():3 -->_1 f#(g(X),Y) -> c_4(f#(X,n__f(g(X),activate(Y))),activate#(Y)):2 -->_2 activate#(n__f(X1,X2)) -> c_2(f#(X1,X2)):1 3:W:activate#(X) -> c_1() 4:W:f#(X1,X2) -> c_3() The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed. 3: activate#(X) -> c_1() 4: f#(X1,X2) -> c_3() * Step 4: Failure MAYBE + Considered Problem: - Strict DPs: activate#(n__f(X1,X2)) -> c_2(f#(X1,X2)) f#(g(X),Y) -> c_4(f#(X,n__f(g(X),activate(Y))),activate#(Y)) - Weak TRS: activate(X) -> X activate(n__f(X1,X2)) -> f(X1,X2) f(X1,X2) -> n__f(X1,X2) f(g(X),Y) -> f(X,n__f(g(X),activate(Y))) - Signature: {activate/1,f/2,activate#/1,f#/2} / {g/1,n__f/2,c_1/0,c_2/1,c_3/0,c_4/2} - Obligation: innermost runtime complexity wrt. defined symbols {activate#,f#} and constructors {g,n__f} + Applied Processor: EmptyProcessor + Details: The problem is still open. MAYBE