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