WORST_CASE(?,O(n^1)) * Step 1: DependencyPairs WORST_CASE(?,O(n^1)) + Considered Problem: - Strict TRS: goal(xs) -> ordered(xs) notEmpty(Cons(x,xs)) -> True() notEmpty(Nil()) -> False() ordered(Cons(x,Nil())) -> True() ordered(Cons(x',Cons(x,xs))) -> ordered[Ite](<(x',x),Cons(x',Cons(x,xs))) ordered(Nil()) -> True() - Weak TRS: <(x,0()) -> False() <(0(),S(y)) -> True() <(S(x),S(y)) -> <(x,y) ordered[Ite](False(),xs) -> False() ordered[Ite](True(),Cons(x',Cons(x,xs))) -> ordered(xs) - Signature: { c_1(ordered#(xs)) notEmpty#(Cons(x,xs)) -> c_2() notEmpty#(Nil()) -> c_3() ordered#(Cons(x,Nil())) -> c_4() ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) ordered#(Nil()) -> c_6() Weak DPs <#(x,0()) -> c_7() <#(0(),S(y)) -> c_8() <#(S(x),S(y)) -> c_9(<#(x,y)) ordered[Ite]#(False(),xs) -> c_10() ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)) and mark the set of starting terms. * Step 2: UsableRules WORST_CASE(?,O(n^1)) + Considered Problem: - Strict DPs: goal#(xs) -> c_1(ordered#(xs)) notEmpty#(Cons(x,xs)) -> c_2() notEmpty#(Nil()) -> c_3() ordered#(Cons(x,Nil())) -> c_4() ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) ordered#(Nil()) -> c_6() - Strict TRS: goal(xs) -> ordered(xs) notEmpty(Cons(x,xs)) -> True() notEmpty(Nil()) -> False() ordered(Cons(x,Nil())) -> True() ordered(Cons(x',Cons(x,xs))) -> ordered[Ite](<(x',x),Cons(x',Cons(x,xs))) ordered(Nil()) -> True() - Weak DPs: <#(x,0()) -> c_7() <#(0(),S(y)) -> c_8() <#(S(x),S(y)) -> c_9(<#(x,y)) ordered[Ite]#(False(),xs) -> c_10() ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)) - Weak TRS: <(x,0()) -> False() <(0(),S(y)) -> True() <(S(x),S(y)) -> <(x,y) ordered[Ite](False(),xs) -> False() ordered[Ite](True(),Cons(x',Cons(x,xs))) -> ordered(xs) - Signature: { False() <(0(),S(y)) -> True() <(S(x),S(y)) -> <(x,y) <#(x,0()) -> c_7() <#(0(),S(y)) -> c_8() <#(S(x),S(y)) -> c_9(<#(x,y)) goal#(xs) -> c_1(ordered#(xs)) notEmpty#(Cons(x,xs)) -> c_2() notEmpty#(Nil()) -> c_3() ordered#(Cons(x,Nil())) -> c_4() ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) ordered#(Nil()) -> c_6() ordered[Ite]#(False(),xs) -> c_10() ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)) * Step 3: PredecessorEstimation WORST_CASE(?,O(n^1)) + Considered Problem: - Strict DPs: goal#(xs) -> c_1(ordered#(xs)) notEmpty#(Cons(x,xs)) -> c_2() notEmpty#(Nil()) -> c_3() ordered#(Cons(x,Nil())) -> c_4() ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) ordered#(Nil()) -> c_6() - Weak DPs: <#(x,0()) -> c_7() <#(0(),S(y)) -> c_8() <#(S(x),S(y)) -> c_9(<#(x,y)) ordered[Ite]#(False(),xs) -> c_10() ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)) - Weak TRS: <(x,0()) -> False() <(0(),S(y)) -> True() <(S(x),S(y)) -> <(x,y) - Signature: { c_1(ordered#(xs)) 2: notEmpty#(Cons(x,xs)) -> c_2() 3: notEmpty#(Nil()) -> c_3() 4: ordered#(Cons(x,Nil())) -> c_4() 5: ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) 6: ordered#(Nil()) -> c_6() 7: <#(x,0()) -> c_7() 8: <#(0(),S(y)) -> c_8() 9: <#(S(x),S(y)) -> c_9(<#(x,y)) 10: ordered[Ite]#(False(),xs) -> c_10() 11: ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)) * Step 4: RemoveWeakSuffixes WORST_CASE(?,O(n^1)) + Considered Problem: - Strict DPs: goal#(xs) -> c_1(ordered#(xs)) ordered#(Cons(x,Nil())) -> c_4() ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) ordered#(Nil()) -> c_6() - Weak DPs: <#(x,0()) -> c_7() <#(0(),S(y)) -> c_8() <#(S(x),S(y)) -> c_9(<#(x,y)) notEmpty#(Cons(x,xs)) -> c_2() notEmpty#(Nil()) -> c_3() ordered[Ite]#(False(),xs) -> c_10() ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)) - Weak TRS: <(x,0()) -> False() <(0(),S(y)) -> True() <(S(x),S(y)) -> <(x,y) - Signature: { c_1(ordered#(xs)) -->_1 ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))):3 -->_1 ordered#(Nil()) -> c_6():4 -->_1 ordered#(Cons(x,Nil())) -> c_4():2 2:S:ordered#(Cons(x,Nil())) -> c_4() 3:S:ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) -->_1 ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)):11 -->_1 ordered[Ite]#(False(),xs) -> c_10():10 4:S:ordered#(Nil()) -> c_6() 5:W:<#(x,0()) -> c_7() 6:W:<#(0(),S(y)) -> c_8() 7:W:<#(S(x),S(y)) -> c_9(<#(x,y)) -->_1 <#(S(x),S(y)) -> c_9(<#(x,y)):7 -->_1 <#(0(),S(y)) -> c_8():6 -->_1 <#(x,0()) -> c_7():5 8:W:notEmpty#(Cons(x,xs)) -> c_2() 9:W:notEmpty#(Nil()) -> c_3() 10:W:ordered[Ite]#(False(),xs) -> c_10() 11:W:ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)) -->_1 ordered#(Nil()) -> c_6():4 -->_1 ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))):3 -->_1 ordered#(Cons(x,Nil())) -> c_4():2 The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed. 9: notEmpty#(Nil()) -> c_3() 8: notEmpty#(Cons(x,xs)) -> c_2() 7: <#(S(x),S(y)) -> c_9(<#(x,y)) 6: <#(0(),S(y)) -> c_8() 5: <#(x,0()) -> c_7() 10: ordered[Ite]#(False(),xs) -> c_10() * Step 5: RemoveHeads WORST_CASE(?,O(n^1)) + Considered Problem: - Strict DPs: goal#(xs) -> c_1(ordered#(xs)) ordered#(Cons(x,Nil())) -> c_4() ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) ordered#(Nil()) -> c_6() - Weak DPs: ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)) - Weak TRS: <(x,0()) -> False() <(0(),S(y)) -> True() <(S(x),S(y)) -> <(x,y) - Signature: { c_1(ordered#(xs)) -->_1 ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))):3 -->_1 ordered#(Nil()) -> c_6():4 -->_1 ordered#(Cons(x,Nil())) -> c_4():2 2:S:ordered#(Cons(x,Nil())) -> c_4() 3:S:ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) -->_1 ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)):11 4:S:ordered#(Nil()) -> c_6() 11:W:ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)) -->_1 ordered#(Nil()) -> c_6():4 -->_1 ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))):3 -->_1 ordered#(Cons(x,Nil())) -> c_4():2 Following roots of the dependency graph are removed, as the considered set of starting terms is closed under reduction with respect to these rules (modulo compound contexts). [(1,goal#(xs) -> c_1(ordered#(xs)))] * Step 6: Decompose WORST_CASE(?,O(n^1)) + Considered Problem: - Strict DPs: ordered#(Cons(x,Nil())) -> c_4() ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) ordered#(Nil()) -> c_6() - Weak DPs: ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)) - Weak TRS: <(x,0()) -> False() <(0(),S(y)) -> True() <(S(x),S(y)) -> <(x,y) - Signature: { c_4() - Weak DPs: ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) ordered#(Nil()) -> c_6() ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)) - Weak TRS: <(x,0()) -> False() <(0(),S(y)) -> True() <(S(x),S(y)) -> <(x,y) - Signature: { c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) ordered#(Nil()) -> c_6() - Weak DPs: ordered#(Cons(x,Nil())) -> c_4() ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)) - Weak TRS: <(x,0()) -> False() <(0(),S(y)) -> True() <(S(x),S(y)) -> <(x,y) - Signature: { c_4() - Weak DPs: ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) ordered#(Nil()) -> c_6() ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)) - Weak TRS: <(x,0()) -> False() <(0(),S(y)) -> True() <(S(x),S(y)) -> <(x,y) - Signature: { c_4() 3:W:ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) -->_1 ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)):11 4:W:ordered#(Nil()) -> c_6() 11:W:ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)) -->_1 ordered#(Cons(x,Nil())) -> c_4():2 -->_1 ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))):3 -->_1 ordered#(Nil()) -> c_6():4 The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed. 4: ordered#(Nil()) -> c_6() ** Step 6.a:2: PredecessorEstimationCP WORST_CASE(?,O(1)) + Considered Problem: - Strict DPs: ordered#(Cons(x,Nil())) -> c_4() - Weak DPs: ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)) - Weak TRS: <(x,0()) -> False() <(0(),S(y)) -> True() <(S(x),S(y)) -> <(x,y) - Signature: { c_4() The strictly oriented rules are moved into the weak component. *** Step 6.a:2.a:1: NaturalMI WORST_CASE(?,O(1)) + Considered Problem: - Strict DPs: ordered#(Cons(x,Nil())) -> c_4() - Weak DPs: ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)) - Weak TRS: <(x,0()) -> False() <(0(),S(y)) -> True() <(S(x),S(y)) -> <(x,y) - Signature: { [0] = c_4() Following rules are (at-least) weakly oriented: ordered#(Cons(x',Cons(x,xs))) = [1] >= [1] = c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) ordered[Ite]#(True(),Cons(x',Cons(x,xs))) = [1] >= [1] = c_11(ordered#(xs)) *** Step 6.a:2.a:2: Assumption WORST_CASE(?,O(1)) + Considered Problem: - Weak DPs: ordered#(Cons(x,Nil())) -> c_4() ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)) - Weak TRS: <(x,0()) -> False() <(0(),S(y)) -> True() <(S(x),S(y)) -> <(x,y) - Signature: { c_4() ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)) - Weak TRS: <(x,0()) -> False() <(0(),S(y)) -> True() <(S(x),S(y)) -> <(x,y) - Signature: { c_4() 2:W:ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) -->_1 ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)):3 3:W:ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)) -->_1 ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))):2 -->_1 ordered#(Cons(x,Nil())) -> c_4():1 The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed. 2: ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) 3: ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)) 1: ordered#(Cons(x,Nil())) -> c_4() *** Step 6.a:2.b:2: EmptyProcessor WORST_CASE(?,O(1)) + Considered Problem: - Weak TRS: <(x,0()) -> False() <(0(),S(y)) -> True() <(S(x),S(y)) -> <(x,y) - Signature: { c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) ordered#(Nil()) -> c_6() - Weak DPs: ordered#(Cons(x,Nil())) -> c_4() ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)) - Weak TRS: <(x,0()) -> False() <(0(),S(y)) -> True() <(S(x),S(y)) -> <(x,y) - Signature: { c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) -->_1 ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)):4 2:S:ordered#(Nil()) -> c_6() 3:W:ordered#(Cons(x,Nil())) -> c_4() 4:W:ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)) -->_1 ordered#(Cons(x,Nil())) -> c_4():3 -->_1 ordered#(Nil()) -> c_6():2 -->_1 ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))):1 The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed. 3: ordered#(Cons(x,Nil())) -> c_4() ** Step 6.b:2: PredecessorEstimationCP WORST_CASE(?,O(n^1)) + Considered Problem: - Strict DPs: ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) ordered#(Nil()) -> c_6() - Weak DPs: ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)) - Weak TRS: <(x,0()) -> False() <(0(),S(y)) -> True() <(S(x),S(y)) -> <(x,y) - Signature: { c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) 2: ordered#(Nil()) -> c_6() Consider the set of all dependency pairs 1: ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) 2: ordered#(Nil()) -> c_6() 4: ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)) Processor NaturalMI {miDimension = 1, miDegree = 1, miKind = Algebraic, uargs = UArgs, urules = URules, selector = Nothing}induces the complexity certificateTIME (?,O(n^1)) SPACE(?,?)on application of the dependency pairs {1,2} These cover all (indirect) predecessors of dependency pairs {1,2,4} their number of applications is equally bounded. The dependency pairs are shifted into the weak component. *** Step 6.b:2.a:1: NaturalMI WORST_CASE(?,O(n^1)) + Considered Problem: - Strict DPs: ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) ordered#(Nil()) -> c_6() - Weak DPs: ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)) - Weak TRS: <(x,0()) -> False() <(0(),S(y)) -> True() <(S(x),S(y)) -> <(x,y) - Signature: { [8] x + [8] x' + [8] xs + [28] = c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) ordered#(Nil()) = [15] > [14] = c_6() Following rules are (at-least) weakly oriented: ordered[Ite]#(True(),Cons(x',Cons(x,xs))) = [8] x + [8] x' + [8] xs + [28] >= [8] xs + [15] = c_11(ordered#(xs)) <(x,0()) = [1] >= [0] = False() <(0(),S(y)) = [1] >= [1] = True() <(S(x),S(y)) = [1] >= [1] = <(x,y) *** Step 6.b:2.a:2: Assumption WORST_CASE(?,O(1)) + Considered Problem: - Weak DPs: ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) ordered#(Nil()) -> c_6() ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)) - Weak TRS: <(x,0()) -> False() <(0(),S(y)) -> True() <(S(x),S(y)) -> <(x,y) - Signature: { c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) ordered#(Nil()) -> c_6() ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)) - Weak TRS: <(x,0()) -> False() <(0(),S(y)) -> True() <(S(x),S(y)) -> <(x,y) - Signature: { c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) -->_1 ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)):3 2:W:ordered#(Nil()) -> c_6() 3:W:ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)) -->_1 ordered#(Nil()) -> c_6():2 -->_1 ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))):1 The following weak DPs constitute a sub-graph of the DG that is closed under successors. The DPs are removed. 1: ordered#(Cons(x',Cons(x,xs))) -> c_5(ordered[Ite]#(<(x',x),Cons(x',Cons(x,xs)))) 3: ordered[Ite]#(True(),Cons(x',Cons(x,xs))) -> c_11(ordered#(xs)) 2: ordered#(Nil()) -> c_6() *** Step 6.b:2.b:2: EmptyProcessor WORST_CASE(?,O(1)) + Considered Problem: - Weak TRS: <(x,0()) -> False() <(0(),S(y)) -> True() <(S(x),S(y)) -> <(x,y) - Signature: {