We consider the following Problem: Strict Trs: { active(f(f(a()))) -> mark(f(g(f(a())))) , active(g(X)) -> g(active(X)) , g(mark(X)) -> mark(g(X)) , proper(f(X)) -> f(proper(X)) , proper(a()) -> ok(a()) , proper(g(X)) -> g(proper(X)) , f(ok(X)) -> ok(f(X)) , g(ok(X)) -> ok(g(X)) , top(mark(X)) -> top(proper(X)) , top(ok(X)) -> top(active(X))} StartTerms: basic terms Strategy: innermost Certificate: YES(?,O(n^1)) Proof: We consider the following Problem: Strict Trs: { active(f(f(a()))) -> mark(f(g(f(a())))) , active(g(X)) -> g(active(X)) , g(mark(X)) -> mark(g(X)) , proper(f(X)) -> f(proper(X)) , proper(a()) -> ok(a()) , proper(g(X)) -> g(proper(X)) , f(ok(X)) -> ok(f(X)) , g(ok(X)) -> ok(g(X)) , top(mark(X)) -> top(proper(X)) , top(ok(X)) -> top(active(X))} StartTerms: basic terms Strategy: innermost Certificate: YES(?,O(n^1)) Proof: The weightgap principle applies, where following rules are oriented strictly: TRS Component: {top(ok(X)) -> top(active(X))} Interpretation of nonconstant growth: ------------------------------------- The following argument positions are usable: Uargs(active) = {}, Uargs(f) = {1}, Uargs(mark) = {1}, Uargs(g) = {1}, Uargs(proper) = {}, Uargs(ok) = {1}, Uargs(top) = {1} We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation: Interpretation Functions: active(x1) = [0 0] x1 + [1] [1 0] [1] f(x1) = [1 0] x1 + [0] [0 0] [0] a() = [0] [0] mark(x1) = [1 0] x1 + [1] [0 0] [1] g(x1) = [1 0] x1 + [0] [0 0] [0] proper(x1) = [0 0] x1 + [1] [1 0] [0] ok(x1) = [1 0] x1 + [3] [0 0] [0] top(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(f(a()))) -> mark(f(g(f(a())))) , active(g(X)) -> g(active(X)) , g(mark(X)) -> mark(g(X)) , proper(f(X)) -> f(proper(X)) , proper(a()) -> ok(a()) , proper(g(X)) -> g(proper(X)) , f(ok(X)) -> ok(f(X)) , g(ok(X)) -> ok(g(X)) , top(mark(X)) -> top(proper(X))} Weak Trs: {top(ok(X)) -> top(active(X))} StartTerms: basic terms Strategy: innermost Certificate: YES(?,O(n^1)) Proof: The weightgap principle applies, where following rules are oriented strictly: TRS Component: {proper(a()) -> ok(a())} Interpretation of nonconstant growth: ------------------------------------- The following argument positions are usable: Uargs(active) = {}, Uargs(f) = {1}, Uargs(mark) = {1}, Uargs(g) = {1}, Uargs(proper) = {}, Uargs(ok) = {1}, Uargs(top) = {1} We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation: Interpretation Functions: active(x1) = [0 0] x1 + [1] [1 0] [1] f(x1) = [1 0] x1 + [0] [0 0] [0] a() = [0] [0] mark(x1) = [1 0] x1 + [1] [0 0] [1] g(x1) = [1 0] x1 + [0] [0 0] [1] proper(x1) = [0 0] x1 + [3] [1 0] [0] ok(x1) = [1 0] x1 + [1] [0 0] [0] top(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(f(a()))) -> mark(f(g(f(a())))) , active(g(X)) -> g(active(X)) , g(mark(X)) -> mark(g(X)) , proper(f(X)) -> f(proper(X)) , proper(g(X)) -> g(proper(X)) , f(ok(X)) -> ok(f(X)) , g(ok(X)) -> ok(g(X)) , top(mark(X)) -> top(proper(X))} Weak Trs: { proper(a()) -> ok(a()) , top(ok(X)) -> top(active(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(f(a()))) -> mark(f(g(f(a()))))} Interpretation of nonconstant growth: ------------------------------------- The following argument positions are usable: Uargs(active) = {}, Uargs(f) = {1}, Uargs(mark) = {1}, Uargs(g) = {1}, Uargs(proper) = {}, Uargs(ok) = {1}, Uargs(top) = {1} We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation: Interpretation Functions: active(x1) = [0 0] x1 + [1] [0 0] [0] f(x1) = [1 0] x1 + [0] [0 0] [1] a() = [0] [0] mark(x1) = [1 0] x1 + [0] [0 0] [0] g(x1) = [1 0] x1 + [0] [0 0] [0] proper(x1) = [0 0] x1 + [0] [0 0] [2] ok(x1) = [1 0] x1 + [0] [0 0] [2] top(x1) = [1 2] x1 + [0] [0 0] [1] The strictly oriented rules are moved into the weak component. We consider the following Problem: Strict Trs: { active(g(X)) -> g(active(X)) , g(mark(X)) -> mark(g(X)) , proper(f(X)) -> f(proper(X)) , proper(g(X)) -> g(proper(X)) , f(ok(X)) -> ok(f(X)) , g(ok(X)) -> ok(g(X)) , top(mark(X)) -> top(proper(X))} Weak Trs: { active(f(f(a()))) -> mark(f(g(f(a())))) , proper(a()) -> ok(a()) , top(ok(X)) -> top(active(X))} StartTerms: basic terms Strategy: innermost Certificate: YES(?,O(n^1)) Proof: The weightgap principle applies, where following rules are oriented strictly: TRS Component: {top(mark(X)) -> top(proper(X))} Interpretation of nonconstant growth: ------------------------------------- The following argument positions are usable: Uargs(active) = {}, Uargs(f) = {1}, Uargs(mark) = {1}, Uargs(g) = {1}, Uargs(proper) = {}, Uargs(ok) = {1}, Uargs(top) = {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] [2] f(x1) = [1 0] x1 + [0] [0 0] [0] a() = [3] [2] mark(x1) = [1 0] x1 + [0] [0 1] [2] g(x1) = [1 0] x1 + [0] [0 0] [0] proper(x1) = [1 0] x1 + [1] [0 1] [0] ok(x1) = [1 0] x1 + [0] [0 0] [2] top(x1) = [1 2] x1 + [0] [0 0] [0] The strictly oriented rules are moved into the weak component. We consider the following Problem: Strict Trs: { active(g(X)) -> g(active(X)) , g(mark(X)) -> mark(g(X)) , proper(f(X)) -> f(proper(X)) , proper(g(X)) -> g(proper(X)) , f(ok(X)) -> ok(f(X)) , g(ok(X)) -> ok(g(X))} Weak Trs: { top(mark(X)) -> top(proper(X)) , active(f(f(a()))) -> mark(f(g(f(a())))) , proper(a()) -> ok(a()) , top(ok(X)) -> top(active(X))} StartTerms: basic terms Strategy: innermost Certificate: YES(?,O(n^1)) Proof: The weightgap principle applies, where following rules are oriented strictly: TRS Component: {proper(f(X)) -> f(proper(X))} Interpretation of nonconstant growth: ------------------------------------- The following argument positions are usable: Uargs(active) = {}, Uargs(f) = {1}, Uargs(mark) = {1}, Uargs(g) = {1}, Uargs(proper) = {}, Uargs(ok) = {1}, Uargs(top) = {1} We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation: Interpretation Functions: active(x1) = [0 1] x1 + [0] [0 0] [0] f(x1) = [1 0] x1 + [0] [0 1] [2] a() = [0] [0] mark(x1) = [1 1] x1 + [0] [0 0] [0] g(x1) = [1 0] x1 + [0] [0 1] [0] proper(x1) = [0 1] x1 + [0] [0 1] [0] ok(x1) = [1 1] x1 + [0] [0 0] [0] top(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(g(X)) -> g(active(X)) , g(mark(X)) -> mark(g(X)) , proper(g(X)) -> g(proper(X)) , f(ok(X)) -> ok(f(X)) , g(ok(X)) -> ok(g(X))} Weak Trs: { proper(f(X)) -> f(proper(X)) , top(mark(X)) -> top(proper(X)) , active(f(f(a()))) -> mark(f(g(f(a())))) , proper(a()) -> ok(a()) , top(ok(X)) -> top(active(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(g(X)) -> g(active(X))} Interpretation of nonconstant growth: ------------------------------------- The following argument positions are usable: Uargs(active) = {}, Uargs(f) = {1}, Uargs(mark) = {1}, Uargs(g) = {1}, Uargs(proper) = {}, Uargs(ok) = {1}, Uargs(top) = {1} We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation: Interpretation Functions: active(x1) = [0 1] x1 + [0] [0 1] [1] f(x1) = [1 0] x1 + [0] [0 0] [0] a() = [0] [0] mark(x1) = [1 0] x1 + [0] [0 0] [1] g(x1) = [1 0] x1 + [0] [0 1] [2] proper(x1) = [0 0] x1 + [0] [0 0] [0] ok(x1) = [1 1] x1 + [0] [0 0] [0] top(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: { g(mark(X)) -> mark(g(X)) , proper(g(X)) -> g(proper(X)) , f(ok(X)) -> ok(f(X)) , g(ok(X)) -> ok(g(X))} Weak Trs: { active(g(X)) -> g(active(X)) , proper(f(X)) -> f(proper(X)) , top(mark(X)) -> top(proper(X)) , active(f(f(a()))) -> mark(f(g(f(a())))) , proper(a()) -> ok(a()) , top(ok(X)) -> top(active(X))} StartTerms: basic terms Strategy: innermost Certificate: YES(?,O(n^1)) Proof: The weightgap principle applies, where following rules are oriented strictly: TRS Component: {proper(g(X)) -> g(proper(X))} Interpretation of nonconstant growth: ------------------------------------- The following argument positions are usable: Uargs(active) = {}, Uargs(f) = {1}, Uargs(mark) = {1}, Uargs(g) = {1}, Uargs(proper) = {}, Uargs(ok) = {1}, Uargs(top) = {1} We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation: Interpretation Functions: active(x1) = [0 2] x1 + [0] [0 1] [0] f(x1) = [1 0] x1 + [0] [0 1] [1] a() = [0] [0] mark(x1) = [1 1] x1 + [1] [0 0] [0] g(x1) = [1 0] x1 + [0] [0 1] [1] proper(x1) = [0 1] x1 + [0] [0 1] [0] ok(x1) = [1 2] x1 + [0] [0 0] [0] top(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: { g(mark(X)) -> mark(g(X)) , f(ok(X)) -> ok(f(X)) , g(ok(X)) -> ok(g(X))} Weak Trs: { proper(g(X)) -> g(proper(X)) , active(g(X)) -> g(active(X)) , proper(f(X)) -> f(proper(X)) , top(mark(X)) -> top(proper(X)) , active(f(f(a()))) -> mark(f(g(f(a())))) , proper(a()) -> ok(a()) , top(ok(X)) -> top(active(X))} StartTerms: basic terms Strategy: innermost Certificate: YES(?,O(n^1)) Proof: We consider the following Problem: Strict Trs: { g(mark(X)) -> mark(g(X)) , f(ok(X)) -> ok(f(X)) , g(ok(X)) -> ok(g(X))} Weak Trs: { proper(g(X)) -> g(proper(X)) , active(g(X)) -> g(active(X)) , proper(f(X)) -> f(proper(X)) , top(mark(X)) -> top(proper(X)) , active(f(f(a()))) -> mark(f(g(f(a())))) , proper(a()) -> ok(a()) , top(ok(X)) -> top(active(X))} StartTerms: basic terms Strategy: innermost Certificate: YES(?,O(n^1)) Proof: The problem is match-bounded by 2. The enriched problem is compatible with the following automaton: { active_0(2) -> 1 , active_1(2) -> 6 , active_1(3) -> 5 , active_1(4) -> 5 , active_2(7) -> 10 , active_2(8) -> 9 , f_0(2) -> 1 , f_1(2) -> 4 , a_0() -> 2 , a_1() -> 7 , mark_0(2) -> 2 , mark_1(3) -> 1 , mark_1(3) -> 3 , g_0(2) -> 1 , g_1(2) -> 3 , g_1(6) -> 5 , g_2(7) -> 8 , g_2(10) -> 9 , proper_0(2) -> 1 , proper_1(2) -> 6 , proper_1(3) -> 5 , ok_0(2) -> 1 , ok_0(2) -> 2 , ok_1(3) -> 1 , ok_1(3) -> 3 , ok_1(4) -> 1 , ok_1(4) -> 4 , ok_1(7) -> 6 , ok_2(8) -> 5 , top_0(1) -> 1 , top_0(2) -> 1 , top_1(5) -> 1 , top_2(9) -> 1} Hurray, we answered YES(?,O(n^1))