We consider the following Problem: Strict Trs: { active(f(0())) -> mark(cons(0(), f(s(0())))) , active(f(s(0()))) -> mark(f(p(s(0())))) , active(p(s(X))) -> mark(X) , mark(f(X)) -> active(f(mark(X))) , mark(0()) -> active(0()) , mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) , mark(s(X)) -> active(s(mark(X))) , mark(p(X)) -> active(p(mark(X))) , f(mark(X)) -> f(X) , f(active(X)) -> f(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) , s(mark(X)) -> s(X) , s(active(X)) -> s(X) , p(mark(X)) -> p(X) , p(active(X)) -> p(X)} StartTerms: basic terms Strategy: innermost Certificate: YES(?,O(n^1)) Proof: We consider the following Problem: Strict Trs: { active(f(0())) -> mark(cons(0(), f(s(0())))) , active(f(s(0()))) -> mark(f(p(s(0())))) , active(p(s(X))) -> mark(X) , mark(f(X)) -> active(f(mark(X))) , mark(0()) -> active(0()) , mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) , mark(s(X)) -> active(s(mark(X))) , mark(p(X)) -> active(p(mark(X))) , f(mark(X)) -> f(X) , f(active(X)) -> f(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) , s(mark(X)) -> s(X) , s(active(X)) -> s(X) , p(mark(X)) -> p(X) , p(active(X)) -> p(X)} StartTerms: basic terms Strategy: innermost Certificate: YES(?,O(n^1)) Proof: The weightgap principle applies, where following rules are oriented strictly: TRS Component: { f(mark(X)) -> f(X) , f(active(X)) -> f(X) , cons(mark(X1), X2) -> cons(X1, X2) , cons(active(X1), X2) -> cons(X1, X2) , s(mark(X)) -> s(X) , s(active(X)) -> s(X) , p(mark(X)) -> p(X) , p(active(X)) -> p(X)} Interpretation of nonconstant growth: ------------------------------------- The following argument positions are usable: Uargs(active) = {1}, Uargs(f) = {1}, Uargs(mark) = {}, Uargs(cons) = {1}, Uargs(s) = {1}, Uargs(p) = {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] f(x1) = [1 0] x1 + [0] [0 0] [1] 0() = [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] s(x1) = [1 0] x1 + [0] [0 0] [1] p(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(f(0())) -> mark(cons(0(), f(s(0())))) , active(f(s(0()))) -> mark(f(p(s(0())))) , active(p(s(X))) -> mark(X) , mark(f(X)) -> active(f(mark(X))) , mark(0()) -> active(0()) , mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) , mark(s(X)) -> active(s(mark(X))) , mark(p(X)) -> active(p(mark(X))) , cons(X1, mark(X2)) -> cons(X1, X2) , cons(X1, active(X2)) -> cons(X1, X2)} Weak Trs: { f(mark(X)) -> f(X) , f(active(X)) -> f(X) , cons(mark(X1), X2) -> cons(X1, X2) , cons(active(X1), X2) -> cons(X1, X2) , s(mark(X)) -> s(X) , s(active(X)) -> s(X) , p(mark(X)) -> p(X) , p(active(X)) -> p(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(p(s(X))) -> mark(X)} Interpretation of nonconstant growth: ------------------------------------- The following argument positions are usable: Uargs(active) = {1}, Uargs(f) = {1}, Uargs(mark) = {}, Uargs(cons) = {1}, Uargs(s) = {1}, Uargs(p) = {1} We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation: Interpretation Functions: active(x1) = [1 0] x1 + [1] [0 1] [1] f(x1) = [1 0] x1 + [0] [1 0] [0] 0() = [0] [0] mark(x1) = [1 0] x1 + [1] [0 0] [1] cons(x1, x2) = [1 0] x1 + [0 0] x2 + [0] [1 0] [0 0] [3] s(x1) = [1 0] x1 + [1] [0 0] [0] p(x1) = [1 0] x1 + [0] [0 0] [0] The strictly oriented rules are moved into the weak component. We consider the following Problem: Strict Trs: { active(f(0())) -> mark(cons(0(), f(s(0())))) , active(f(s(0()))) -> mark(f(p(s(0())))) , mark(f(X)) -> active(f(mark(X))) , mark(0()) -> active(0()) , mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) , mark(s(X)) -> active(s(mark(X))) , mark(p(X)) -> active(p(mark(X))) , cons(X1, mark(X2)) -> cons(X1, X2) , cons(X1, active(X2)) -> cons(X1, X2)} Weak Trs: { active(p(s(X))) -> mark(X) , f(mark(X)) -> f(X) , f(active(X)) -> f(X) , cons(mark(X1), X2) -> cons(X1, X2) , cons(active(X1), X2) -> cons(X1, X2) , s(mark(X)) -> s(X) , s(active(X)) -> s(X) , p(mark(X)) -> p(X) , p(active(X)) -> p(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(0()) -> active(0())} Interpretation of nonconstant growth: ------------------------------------- The following argument positions are usable: Uargs(active) = {1}, Uargs(f) = {1}, Uargs(mark) = {}, Uargs(cons) = {1}, Uargs(s) = {1}, Uargs(p) = {1} We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation: Interpretation Functions: active(x1) = [1 0] x1 + [1] [0 1] [1] f(x1) = [1 0] x1 + [0] [0 1] [0] 0() = [0] [1] mark(x1) = [1 0] x1 + [3] [0 1] [1] cons(x1, x2) = [1 0] x1 + [0 0] x2 + [0] [0 0] [0 1] [3] s(x1) = [1 0] x1 + [0] [0 1] [0] p(x1) = [1 0] x1 + [2] [0 1] [0] The strictly oriented rules are moved into the weak component. We consider the following Problem: Strict Trs: { active(f(0())) -> mark(cons(0(), f(s(0())))) , active(f(s(0()))) -> mark(f(p(s(0())))) , mark(f(X)) -> active(f(mark(X))) , mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) , mark(s(X)) -> active(s(mark(X))) , mark(p(X)) -> active(p(mark(X))) , cons(X1, mark(X2)) -> cons(X1, X2) , cons(X1, active(X2)) -> cons(X1, X2)} Weak Trs: { mark(0()) -> active(0()) , active(p(s(X))) -> mark(X) , f(mark(X)) -> f(X) , f(active(X)) -> f(X) , cons(mark(X1), X2) -> cons(X1, X2) , cons(active(X1), X2) -> cons(X1, X2) , s(mark(X)) -> s(X) , s(active(X)) -> s(X) , p(mark(X)) -> p(X) , p(active(X)) -> p(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(f(0())) -> mark(cons(0(), f(s(0())))) , active(f(s(0()))) -> mark(f(p(s(0()))))} Interpretation of nonconstant growth: ------------------------------------- The following argument positions are usable: Uargs(active) = {1}, Uargs(f) = {1}, Uargs(mark) = {}, Uargs(cons) = {1}, Uargs(s) = {1}, Uargs(p) = {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] [0] f(x1) = [1 0] x1 + [0] [0 0] [1] 0() = [0] [0] mark(x1) = [1 0] x1 + [0] [0 0] [0] cons(x1, x2) = [1 0] x1 + [0 0] x2 + [0] [0 0] [0 0] [0] s(x1) = [1 0] x1 + [0] [0 0] [0] p(x1) = [1 0] x1 + [0] [0 0] [0] The strictly oriented rules are moved into the weak component. We consider the following Problem: Strict Trs: { mark(f(X)) -> active(f(mark(X))) , mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) , mark(s(X)) -> active(s(mark(X))) , mark(p(X)) -> active(p(mark(X))) , cons(X1, mark(X2)) -> cons(X1, X2) , cons(X1, active(X2)) -> cons(X1, X2)} Weak Trs: { active(f(0())) -> mark(cons(0(), f(s(0())))) , active(f(s(0()))) -> mark(f(p(s(0())))) , mark(0()) -> active(0()) , active(p(s(X))) -> mark(X) , f(mark(X)) -> f(X) , f(active(X)) -> f(X) , cons(mark(X1), X2) -> cons(X1, X2) , cons(active(X1), X2) -> cons(X1, X2) , s(mark(X)) -> s(X) , s(active(X)) -> s(X) , p(mark(X)) -> p(X) , p(active(X)) -> p(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(f) = {1}, Uargs(mark) = {}, Uargs(cons) = {1}, Uargs(s) = {1}, Uargs(p) = {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] [1] f(x1) = [1 0] x1 + [0] [0 0] [0] 0() = [0] [0] mark(x1) = [1 0] x1 + [0] [0 1] [1] cons(x1, x2) = [1 0] x1 + [0 1] x2 + [0] [0 0] [0 0] [0] s(x1) = [1 0] x1 + [0] [0 1] [0] p(x1) = [1 0] x1 + [0] [0 1] [0] The strictly oriented rules are moved into the weak component. We consider the following Problem: Strict Trs: { mark(f(X)) -> active(f(mark(X))) , mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) , mark(s(X)) -> active(s(mark(X))) , mark(p(X)) -> active(p(mark(X)))} Weak Trs: { cons(X1, mark(X2)) -> cons(X1, X2) , cons(X1, active(X2)) -> cons(X1, X2) , active(f(0())) -> mark(cons(0(), f(s(0())))) , active(f(s(0()))) -> mark(f(p(s(0())))) , mark(0()) -> active(0()) , active(p(s(X))) -> mark(X) , f(mark(X)) -> f(X) , f(active(X)) -> f(X) , cons(mark(X1), X2) -> cons(X1, X2) , cons(active(X1), X2) -> cons(X1, X2) , s(mark(X)) -> s(X) , s(active(X)) -> s(X) , p(mark(X)) -> p(X) , p(active(X)) -> p(X)} StartTerms: basic terms Strategy: innermost Certificate: YES(?,O(n^1)) Proof: We consider the following Problem: Strict Trs: { mark(f(X)) -> active(f(mark(X))) , mark(cons(X1, X2)) -> active(cons(mark(X1), X2)) , mark(s(X)) -> active(s(mark(X))) , mark(p(X)) -> active(p(mark(X)))} Weak Trs: { cons(X1, mark(X2)) -> cons(X1, X2) , cons(X1, active(X2)) -> cons(X1, X2) , active(f(0())) -> mark(cons(0(), f(s(0())))) , active(f(s(0()))) -> mark(f(p(s(0())))) , mark(0()) -> active(0()) , active(p(s(X))) -> mark(X) , f(mark(X)) -> f(X) , f(active(X)) -> f(X) , cons(mark(X1), X2) -> cons(X1, X2) , cons(active(X1), X2) -> cons(X1, X2) , s(mark(X)) -> s(X) , s(active(X)) -> s(X) , p(mark(X)) -> p(X) , p(active(X)) -> p(X)} StartTerms: basic terms Strategy: innermost Certificate: YES(?,O(n^1)) Proof: The problem is match-bounded by 0. The enriched problem is compatible with the following automaton: { active_0(2) -> 1 , f_0(2) -> 1 , 0_0() -> 2 , mark_0(2) -> 1 , cons_0(2, 2) -> 1 , s_0(2) -> 1 , p_0(2) -> 1} Hurray, we answered YES(?,O(n^1))