MAYBE * Step 1: DependencyPairs MAYBE + Considered Problem: - Strict TRS: ack_in(0(),n) -> ack_out(s(n)) ack_in(s(m),0()) -> u11(ack_in(m,s(0()))) ack_in(s(m),s(n)) -> u21(ack_in(s(m),n),m) u11(ack_out(n)) -> ack_out(n) u21(ack_out(n),m) -> u22(ack_in(m,n)) u22(ack_out(n)) -> ack_out(n) - Signature: {ack_in/2,u11/1,u21/2,u22/1} / {0/0,ack_out/1,s/1} - Obligation: innermost runtime complexity wrt. defined symbols {ack_in,u11,u21,u22} and constructors {0,ack_out,s} + Applied Processor: DependencyPairs {dpKind_ = DT} + Details: We add the following dependency tuples: Strict DPs ack_in#(0(),n) -> c_1() ack_in#(s(m),0()) -> c_2(u11#(ack_in(m,s(0()))),ack_in#(m,s(0()))) ack_in#(s(m),s(n)) -> c_3(u21#(ack_in(s(m),n),m),ack_in#(s(m),n)) u11#(ack_out(n)) -> c_4() u21#(ack_out(n),m) -> c_5(u22#(ack_in(m,n)),ack_in#(m,n)) u22#(ack_out(n)) -> c_6() Weak DPs and mark the set of starting terms. * Step 2: PredecessorEstimation MAYBE + Considered Problem: - Strict DPs: ack_in#(0(),n) -> c_1() ack_in#(s(m),0()) -> c_2(u11#(ack_in(m,s(0()))),ack_in#(m,s(0()))) ack_in#(s(m),s(n)) -> c_3(u21#(ack_in(s(m),n),m),ack_in#(s(m),n)) u11#(ack_out(n)) -> c_4() u21#(ack_out(n),m) -> c_5(u22#(ack_in(m,n)),ack_in#(m,n)) u22#(ack_out(n)) -> c_6() - Weak TRS: ack_in(0(),n) -> ack_out(s(n)) ack_in(s(m),0()) -> u11(ack_in(m,s(0()))) ack_in(s(m),s(n)) -> u21(ack_in(s(m),n),m) u11(ack_out(n)) -> ack_out(n) u21(ack_out(n),m) -> u22(ack_in(m,n)) u22(ack_out(n)) -> ack_out(n) - Signature: {ack_in/2,u11/1,u21/2,u22/1,ack_in#/2,u11#/1,u21#/2,u22#/1} / {0/0,ack_out/1,s/1,c_1/0,c_2/2,c_3/2,c_4/0 ,c_5/2,c_6/0} - Obligation: innermost runtime complexity wrt. defined symbols {ack_in#,u11#,u21#,u22#} and constructors {0,ack_out,s} + Applied Processor: PredecessorEstimation {onSelection = all simple predecessor estimation selector} + Details: We estimate the number of application of {1,4,6} by application of Pre({1,4,6}) = {2,5}. Here rules are labelled as follows: 1: ack_in#(0(),n) -> c_1() 2: ack_in#(s(m),0()) -> c_2(u11#(ack_in(m,s(0()))),ack_in#(m,s(0()))) 3: ack_in#(s(m),s(n)) -> c_3(u21#(ack_in(s(m),n),m),ack_in#(s(m),n)) 4: u11#(ack_out(n)) -> c_4() 5: u21#(ack_out(n),m) -> c_5(u22#(ack_in(m,n)),ack_in#(m,n)) 6: u22#(ack_out(n)) -> c_6() * Step 3: RemoveWeakSuffixes MAYBE + Considered Problem: - Strict DPs: ack_in#(s(m),0()) -> c_2(u11#(ack_in(m,s(0()))),ack_in#(m,s(0()))) ack_in#(s(m),s(n)) -> c_3(u21#(ack_in(s(m),n),m),ack_in#(s(m),n)) u21#(ack_out(n),m) -> c_5(u22#(ack_in(m,n)),ack_in#(m,n)) - Weak DPs: ack_in#(0(),n) -> c_1() u11#(ack_out(n)) -> c_4() u22#(ack_out(n)) -> c_6() - Weak TRS: ack_in(0(),n) -> ack_out(s(n)) ack_in(s(m),0()) -> u11(ack_in(m,s(0()))) ack_in(s(m),s(n)) -> u21(ack_in(s(m),n),m) u11(ack_out(n)) -> ack_out(n) u21(ack_out(n),m) -> u22(ack_in(m,n)) u22(ack_out(n)) -> ack_out(n) - Signature: {ack_in/2,u11/1,u21/2,u22/1,ack_in#/2,u11#/1,u21#/2,u22#/1} / {0/0,ack_out/1,s/1,c_1/0,c_2/2,c_3/2,c_4/0 ,c_5/2,c_6/0} - Obligation: innermost runtime complexity wrt. defined symbols {ack_in#,u11#,u21#,u22#} and constructors {0,ack_out,s} + Applied Processor: RemoveWeakSuffixes + Details: Consider the dependency graph 1:S:ack_in#(s(m),0()) -> c_2(u11#(ack_in(m,s(0()))),ack_in#(m,s(0()))) -->_2 ack_in#(s(m),s(n)) -> c_3(u21#(ack_in(s(m),n),m),ack_in#(s(m),n)):2 -->_1 u11#(ack_out(n)) -> c_4():5 -->_2 ack_in#(0(),n) -> c_1():4 2:S:ack_in#(s(m),s(n)) -> c_3(u21#(ack_in(s(m),n),m),ack_in#(s(m),n)) -->_1 u21#(ack_out(n),m) -> c_5(u22#(ack_in(m,n)),ack_in#(m,n)):3 -->_2 ack_in#(s(m),s(n)) -> c_3(u21#(ack_in(s(m),n),m),ack_in#(s(m),n)):2 -->_2 ack_in#(s(m),0()) -> c_2(u11#(ack_in(m,s(0()))),ack_in#(m,s(0()))):1 3:S:u21#(ack_out(n),m) -> c_5(u22#(ack_in(m,n)),ack_in#(m,n)) -->_1 u22#(ack_out(n)) -> c_6():6 -->_2 ack_in#(0(),n) -> c_1():4 -->_2 ack_in#(s(m),s(n)) -> c_3(u21#(ack_in(s(m),n),m),ack_in#(s(m),n)):2 -->_2 ack_in#(s(m),0()) -> c_2(u11#(ack_in(m,s(0()))),ack_in#(m,s(0()))):1 4:W:ack_in#(0(),n) -> c_1() 5:W:u11#(ack_out(n)) -> c_4() 6:W:u22#(ack_out(n)) -> c_6() The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed. 5: u11#(ack_out(n)) -> c_4() 4: ack_in#(0(),n) -> c_1() 6: u22#(ack_out(n)) -> c_6() * Step 4: SimplifyRHS MAYBE + Considered Problem: - Strict DPs: ack_in#(s(m),0()) -> c_2(u11#(ack_in(m,s(0()))),ack_in#(m,s(0()))) ack_in#(s(m),s(n)) -> c_3(u21#(ack_in(s(m),n),m),ack_in#(s(m),n)) u21#(ack_out(n),m) -> c_5(u22#(ack_in(m,n)),ack_in#(m,n)) - Weak TRS: ack_in(0(),n) -> ack_out(s(n)) ack_in(s(m),0()) -> u11(ack_in(m,s(0()))) ack_in(s(m),s(n)) -> u21(ack_in(s(m),n),m) u11(ack_out(n)) -> ack_out(n) u21(ack_out(n),m) -> u22(ack_in(m,n)) u22(ack_out(n)) -> ack_out(n) - Signature: {ack_in/2,u11/1,u21/2,u22/1,ack_in#/2,u11#/1,u21#/2,u22#/1} / {0/0,ack_out/1,s/1,c_1/0,c_2/2,c_3/2,c_4/0 ,c_5/2,c_6/0} - Obligation: innermost runtime complexity wrt. defined symbols {ack_in#,u11#,u21#,u22#} and constructors {0,ack_out,s} + Applied Processor: SimplifyRHS + Details: Consider the dependency graph 1:S:ack_in#(s(m),0()) -> c_2(u11#(ack_in(m,s(0()))),ack_in#(m,s(0()))) -->_2 ack_in#(s(m),s(n)) -> c_3(u21#(ack_in(s(m),n),m),ack_in#(s(m),n)):2 2:S:ack_in#(s(m),s(n)) -> c_3(u21#(ack_in(s(m),n),m),ack_in#(s(m),n)) -->_1 u21#(ack_out(n),m) -> c_5(u22#(ack_in(m,n)),ack_in#(m,n)):3 -->_2 ack_in#(s(m),s(n)) -> c_3(u21#(ack_in(s(m),n),m),ack_in#(s(m),n)):2 -->_2 ack_in#(s(m),0()) -> c_2(u11#(ack_in(m,s(0()))),ack_in#(m,s(0()))):1 3:S:u21#(ack_out(n),m) -> c_5(u22#(ack_in(m,n)),ack_in#(m,n)) -->_2 ack_in#(s(m),s(n)) -> c_3(u21#(ack_in(s(m),n),m),ack_in#(s(m),n)):2 -->_2 ack_in#(s(m),0()) -> c_2(u11#(ack_in(m,s(0()))),ack_in#(m,s(0()))):1 Due to missing edges in the depndency graph, the right-hand sides of following rules could be simplified: ack_in#(s(m),0()) -> c_2(ack_in#(m,s(0()))) u21#(ack_out(n),m) -> c_5(ack_in#(m,n)) * Step 5: Failure MAYBE + Considered Problem: - Strict DPs: ack_in#(s(m),0()) -> c_2(ack_in#(m,s(0()))) ack_in#(s(m),s(n)) -> c_3(u21#(ack_in(s(m),n),m),ack_in#(s(m),n)) u21#(ack_out(n),m) -> c_5(ack_in#(m,n)) - Weak TRS: ack_in(0(),n) -> ack_out(s(n)) ack_in(s(m),0()) -> u11(ack_in(m,s(0()))) ack_in(s(m),s(n)) -> u21(ack_in(s(m),n),m) u11(ack_out(n)) -> ack_out(n) u21(ack_out(n),m) -> u22(ack_in(m,n)) u22(ack_out(n)) -> ack_out(n) - Signature: {ack_in/2,u11/1,u21/2,u22/1,ack_in#/2,u11#/1,u21#/2,u22#/1} / {0/0,ack_out/1,s/1,c_1/0,c_2/1,c_3/2,c_4/0 ,c_5/1,c_6/0} - Obligation: innermost runtime complexity wrt. defined symbols {ack_in#,u11#,u21#,u22#} and constructors {0,ack_out,s} + Applied Processor: EmptyProcessor + Details: The problem is still open. MAYBE