We consider the following Problem: Strict Trs: { active(zeros()) -> mark(cons(0(), zeros())) , active(tail(cons(X, XS))) -> mark(XS) , mark(zeros()) -> active(zeros()) , mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) , mark(0()) -> active(0()) , mark(tail(X)) -> active(tail(mark(X))) , cons(mark(X1), X2) -> cons(X1, X2) , cons(X1, mark(X2)) -> cons(X1, X2) , cons(active(X1), X2) -> cons(X1, X2) , cons(X1, active(X2)) -> cons(X1, X2) , tail(mark(X)) -> tail(X) , tail(active(X)) -> tail(X)} StartTerms: basic terms Strategy: innermost Certificate: YES(?,O(n^1)) Proof: We consider the following Problem: Strict Trs: { active(zeros()) -> mark(cons(0(), zeros())) , active(tail(cons(X, XS))) -> mark(XS) , mark(zeros()) -> active(zeros()) , mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) , mark(0()) -> active(0()) , mark(tail(X)) -> active(tail(mark(X))) , cons(mark(X1), X2) -> cons(X1, X2) , cons(X1, mark(X2)) -> cons(X1, X2) , cons(active(X1), X2) -> cons(X1, X2) , cons(X1, active(X2)) -> cons(X1, X2) , tail(mark(X)) -> tail(X) , tail(active(X)) -> tail(X)} StartTerms: basic terms Strategy: innermost Certificate: YES(?,O(n^1)) Proof: The weightgap principle applies, where following rules are oriented strictly: TRS Component: { cons(mark(X1), X2) -> cons(X1, X2) , cons(active(X1), X2) -> cons(X1, X2) , tail(mark(X)) -> tail(X) , tail(active(X)) -> tail(X)} Interpretation of nonconstant growth: ------------------------------------- The following argument positions are usable: Uargs(active) = {1}, Uargs(mark) = {}, Uargs(cons) = {1}, Uargs(tail) = {1} We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation: Interpretation Functions: active(x1) = [1 0] x1 + [1] [0 0] [1] zeros() = [0] [0] mark(x1) = [1 0] x1 + [1] [1 0] [1] cons(x1, x2) = [1 0] x1 + [0 0] x2 + [0] [0 0] [0 0] [1] 0() = [0] [0] tail(x1) = [1 0] x1 + [0] [0 0] [1] The strictly oriented rules are moved into the weak component. We consider the following Problem: Strict Trs: { active(zeros()) -> mark(cons(0(), zeros())) , active(tail(cons(X, XS))) -> mark(XS) , mark(zeros()) -> active(zeros()) , mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) , mark(0()) -> active(0()) , mark(tail(X)) -> active(tail(mark(X))) , cons(X1, mark(X2)) -> cons(X1, X2) , cons(X1, active(X2)) -> cons(X1, X2)} Weak Trs: { cons(mark(X1), X2) -> cons(X1, X2) , cons(active(X1), X2) -> cons(X1, X2) , tail(mark(X)) -> tail(X) , tail(active(X)) -> tail(X)} StartTerms: basic terms Strategy: innermost Certificate: YES(?,O(n^1)) Proof: The weightgap principle applies, where following rules are oriented strictly: TRS Component: { mark(zeros()) -> active(zeros()) , mark(0()) -> active(0())} Interpretation of nonconstant growth: ------------------------------------- The following argument positions are usable: Uargs(active) = {1}, Uargs(mark) = {}, Uargs(cons) = {1}, Uargs(tail) = {1} We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation: Interpretation Functions: active(x1) = [1 2] x1 + [1] [0 0] [1] zeros() = [0] [0] mark(x1) = [1 0] x1 + [3] [0 0] [1] cons(x1, x2) = [1 0] x1 + [0 0] x2 + [0] [0 0] [0 0] [3] 0() = [0] [0] tail(x1) = [1 0] x1 + [1] [0 0] [3] The strictly oriented rules are moved into the weak component. We consider the following Problem: Strict Trs: { active(zeros()) -> mark(cons(0(), zeros())) , active(tail(cons(X, XS))) -> mark(XS) , mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) , mark(tail(X)) -> active(tail(mark(X))) , cons(X1, mark(X2)) -> cons(X1, X2) , cons(X1, active(X2)) -> cons(X1, X2)} Weak Trs: { mark(zeros()) -> active(zeros()) , mark(0()) -> active(0()) , cons(mark(X1), X2) -> cons(X1, X2) , cons(active(X1), X2) -> cons(X1, X2) , tail(mark(X)) -> tail(X) , tail(active(X)) -> tail(X)} StartTerms: basic terms Strategy: innermost Certificate: YES(?,O(n^1)) Proof: The weightgap principle applies, where following rules are oriented strictly: TRS Component: {active(zeros()) -> mark(cons(0(), zeros()))} Interpretation of nonconstant growth: ------------------------------------- The following argument positions are usable: Uargs(active) = {1}, Uargs(mark) = {}, Uargs(cons) = {1}, Uargs(tail) = {1} We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation: Interpretation Functions: active(x1) = [1 1] x1 + [0] [0 0] [1] zeros() = [2] [0] mark(x1) = [1 0] x1 + [1] [0 0] [1] cons(x1, x2) = [1 0] x1 + [0 0] x2 + [0] [0 0] [0 0] [0] 0() = [0] [0] tail(x1) = [1 0] x1 + [0] [0 0] [3] The strictly oriented rules are moved into the weak component. We consider the following Problem: Strict Trs: { active(tail(cons(X, XS))) -> mark(XS) , mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) , mark(tail(X)) -> active(tail(mark(X))) , cons(X1, mark(X2)) -> cons(X1, X2) , cons(X1, active(X2)) -> cons(X1, X2)} Weak Trs: { active(zeros()) -> mark(cons(0(), zeros())) , mark(zeros()) -> active(zeros()) , mark(0()) -> active(0()) , cons(mark(X1), X2) -> cons(X1, X2) , cons(active(X1), X2) -> cons(X1, X2) , tail(mark(X)) -> tail(X) , tail(active(X)) -> tail(X)} StartTerms: basic terms Strategy: innermost Certificate: YES(?,O(n^1)) Proof: The weightgap principle applies, where following rules are oriented strictly: TRS Component: { cons(X1, mark(X2)) -> cons(X1, X2) , cons(X1, active(X2)) -> cons(X1, X2)} Interpretation of nonconstant growth: ------------------------------------- The following argument positions are usable: Uargs(active) = {1}, Uargs(mark) = {}, Uargs(cons) = {1}, Uargs(tail) = {1} We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation: Interpretation Functions: active(x1) = [1 0] x1 + [0] [0 1] [2] zeros() = [0] [0] mark(x1) = [1 0] x1 + [0] [0 1] [2] cons(x1, x2) = [1 2] x1 + [0 2] x2 + [0] [0 0] [0 0] [0] 0() = [0] [0] tail(x1) = [1 0] x1 + [0] [0 0] [1] The strictly oriented rules are moved into the weak component. We consider the following Problem: Strict Trs: { active(tail(cons(X, XS))) -> mark(XS) , mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) , mark(tail(X)) -> active(tail(mark(X)))} Weak Trs: { cons(X1, mark(X2)) -> cons(X1, X2) , cons(X1, active(X2)) -> cons(X1, X2) , active(zeros()) -> mark(cons(0(), zeros())) , mark(zeros()) -> active(zeros()) , mark(0()) -> active(0()) , cons(mark(X1), X2) -> cons(X1, X2) , cons(active(X1), X2) -> cons(X1, X2) , tail(mark(X)) -> tail(X) , tail(active(X)) -> tail(X)} StartTerms: basic terms Strategy: innermost Certificate: YES(?,O(n^1)) Proof: The weightgap principle applies, where following rules are oriented strictly: TRS Component: {active(tail(cons(X, XS))) -> mark(XS)} Interpretation of nonconstant growth: ------------------------------------- The following argument positions are usable: Uargs(active) = {1}, Uargs(mark) = {}, Uargs(cons) = {1}, Uargs(tail) = {1} We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation: Interpretation Functions: active(x1) = [1 0] x1 + [0] [0 0] [0] zeros() = [0] [0] mark(x1) = [1 0] x1 + [0] [0 0] [0] cons(x1, x2) = [1 0] x1 + [1 0] x2 + [0] [0 0] [0 0] [0] 0() = [0] [0] tail(x1) = [1 0] x1 + [2] [0 0] [1] The strictly oriented rules are moved into the weak component. We consider the following Problem: Strict Trs: { mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) , mark(tail(X)) -> active(tail(mark(X)))} Weak Trs: { active(tail(cons(X, XS))) -> mark(XS) , cons(X1, mark(X2)) -> cons(X1, X2) , cons(X1, active(X2)) -> cons(X1, X2) , active(zeros()) -> mark(cons(0(), zeros())) , mark(zeros()) -> active(zeros()) , mark(0()) -> active(0()) , cons(mark(X1), X2) -> cons(X1, X2) , cons(active(X1), X2) -> cons(X1, X2) , tail(mark(X)) -> tail(X) , tail(active(X)) -> tail(X)} StartTerms: basic terms Strategy: innermost Certificate: YES(?,O(n^1)) Proof: We consider the following Problem: Strict Trs: { mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) , mark(tail(X)) -> active(tail(mark(X)))} Weak Trs: { active(tail(cons(X, XS))) -> mark(XS) , cons(X1, mark(X2)) -> cons(X1, X2) , cons(X1, active(X2)) -> cons(X1, X2) , active(zeros()) -> mark(cons(0(), zeros())) , mark(zeros()) -> active(zeros()) , mark(0()) -> active(0()) , cons(mark(X1), X2) -> cons(X1, X2) , cons(active(X1), X2) -> cons(X1, X2) , tail(mark(X)) -> tail(X) , tail(active(X)) -> tail(X)} StartTerms: basic terms Strategy: innermost Certificate: YES(?,O(n^1)) Proof: The problem is match-bounded by 3. The enriched problem is compatible with the following automaton: { active_0(2) -> 1 , active_0(2) -> 3 , active_0(5) -> 1 , active_0(5) -> 3 , active_1(7) -> 1 , active_1(10) -> 8 , active_1(11) -> 8 , active_2(12) -> 1 , active_2(12) -> 3 , active_2(15) -> 13 , active_3(17) -> 8 , active_3(19) -> 18 , zeros_0() -> 2 , zeros_1() -> 11 , zeros_2() -> 16 , mark_0(2) -> 3 , mark_0(4) -> 1 , mark_0(5) -> 3 , mark_1(2) -> 8 , mark_1(5) -> 8 , mark_1(9) -> 1 , mark_1(9) -> 3 , mark_2(10) -> 13 , mark_2(14) -> 8 , mark_3(15) -> 18 , cons_0(2, 2) -> 4 , cons_0(2, 5) -> 4 , cons_0(5, 2) -> 4 , cons_0(5, 5) -> 4 , cons_1(2, 2) -> 7 , cons_1(2, 5) -> 7 , cons_1(5, 2) -> 7 , cons_1(5, 5) -> 7 , cons_1(8, 2) -> 7 , cons_1(8, 5) -> 7 , cons_1(10, 2) -> 7 , cons_1(10, 5) -> 7 , cons_1(10, 11) -> 9 , cons_1(11, 2) -> 7 , cons_1(11, 5) -> 7 , cons_2(10, 11) -> 12 , cons_2(13, 11) -> 12 , cons_2(14, 2) -> 7 , cons_2(14, 5) -> 7 , cons_2(15, 11) -> 12 , cons_2(15, 16) -> 14 , cons_2(17, 2) -> 7 , cons_2(17, 5) -> 7 , cons_3(15, 16) -> 17 , cons_3(18, 16) -> 17 , cons_3(19, 16) -> 17 , 0_0() -> 5 , 0_1() -> 10 , 0_2() -> 15 , 0_3() -> 19 , tail_0(2) -> 6 , tail_0(5) -> 6} Hurray, we answered YES(?,O(n^1))