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