We consider the following Problem: Strict Trs: { a__zeros() -> cons(0(), zeros()) , a__tail(cons(X, XS)) -> mark(XS) , mark(zeros()) -> a__zeros() , mark(tail(X)) -> a__tail(mark(X)) , mark(cons(X1, X2)) -> cons(mark(X1), X2) , mark(0()) -> 0() , a__zeros() -> zeros() , a__tail(X) -> tail(X)} StartTerms: basic terms Strategy: innermost Certificate: YES(?,O(n^1)) Proof: We consider the following Problem: Strict Trs: { a__zeros() -> cons(0(), zeros()) , a__tail(cons(X, XS)) -> mark(XS) , mark(zeros()) -> a__zeros() , mark(tail(X)) -> a__tail(mark(X)) , mark(cons(X1, X2)) -> cons(mark(X1), X2) , mark(0()) -> 0() , a__zeros() -> zeros() , a__tail(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: { a__zeros() -> cons(0(), zeros()) , mark(0()) -> 0() , a__zeros() -> zeros()} Interpretation of nonconstant growth: ------------------------------------- The following argument positions are usable: Uargs(cons) = {1}, Uargs(a__tail) = {1}, Uargs(mark) = {}, Uargs(tail) = {} We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation: Interpretation Functions: a__zeros() = [2] [2] cons(x1, x2) = [1 0] x1 + [0 0] x2 + [1] [0 0] [0 0] [1] 0() = [0] [0] zeros() = [0] [0] a__tail(x1) = [1 0] x1 + [0] [0 0] [1] mark(x1) = [0 0] x1 + [1] [0 0] [1] tail(x1) = [0 0] x1 + [0] [0 0] [0] The strictly oriented rules are moved into the weak component. We consider the following Problem: Strict Trs: { a__tail(cons(X, XS)) -> mark(XS) , mark(zeros()) -> a__zeros() , mark(tail(X)) -> a__tail(mark(X)) , mark(cons(X1, X2)) -> cons(mark(X1), X2) , a__tail(X) -> tail(X)} Weak Trs: { a__zeros() -> cons(0(), zeros()) , mark(0()) -> 0() , a__zeros() -> zeros()} 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()) -> a__zeros() , a__tail(X) -> tail(X)} Interpretation of nonconstant growth: ------------------------------------- The following argument positions are usable: Uargs(cons) = {1}, Uargs(a__tail) = {1}, Uargs(mark) = {}, Uargs(tail) = {} We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation: Interpretation Functions: a__zeros() = [0] [1] cons(x1, x2) = [1 0] x1 + [0 0] x2 + [0] [0 0] [0 0] [1] 0() = [0] [0] zeros() = [0] [0] a__tail(x1) = [1 0] x1 + [1] [0 0] [1] mark(x1) = [0 0] x1 + [1] [0 0] [1] tail(x1) = [0 0] x1 + [0] [0 0] [0] The strictly oriented rules are moved into the weak component. We consider the following Problem: Strict Trs: { a__tail(cons(X, XS)) -> mark(XS) , mark(tail(X)) -> a__tail(mark(X)) , mark(cons(X1, X2)) -> cons(mark(X1), X2)} Weak Trs: { mark(zeros()) -> a__zeros() , a__tail(X) -> tail(X) , a__zeros() -> cons(0(), zeros()) , mark(0()) -> 0() , a__zeros() -> zeros()} StartTerms: basic terms Strategy: innermost Certificate: YES(?,O(n^1)) Proof: The weightgap principle applies, where following rules are oriented strictly: TRS Component: {a__tail(cons(X, XS)) -> mark(XS)} Interpretation of nonconstant growth: ------------------------------------- The following argument positions are usable: Uargs(cons) = {1}, Uargs(a__tail) = {1}, Uargs(mark) = {}, Uargs(tail) = {} We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation: Interpretation Functions: a__zeros() = [0] [0] cons(x1, x2) = [1 0] x1 + [0 0] x2 + [0] [0 0] [0 0] [0] 0() = [0] [0] zeros() = [0] [0] a__tail(x1) = [1 2] x1 + [1] [0 0] [3] mark(x1) = [0 0] x1 + [0] [0 0] [2] tail(x1) = [0 0] x1 + [0] [0 0] [0] The strictly oriented rules are moved into the weak component. We consider the following Problem: Strict Trs: { mark(tail(X)) -> a__tail(mark(X)) , mark(cons(X1, X2)) -> cons(mark(X1), X2)} Weak Trs: { a__tail(cons(X, XS)) -> mark(XS) , mark(zeros()) -> a__zeros() , a__tail(X) -> tail(X) , a__zeros() -> cons(0(), zeros()) , mark(0()) -> 0() , a__zeros() -> zeros()} StartTerms: basic terms Strategy: innermost Certificate: YES(?,O(n^1)) Proof: The weightgap principle applies, where following rules are oriented strictly: TRS Component: {mark(cons(X1, X2)) -> cons(mark(X1), X2)} Interpretation of nonconstant growth: ------------------------------------- The following argument positions are usable: Uargs(cons) = {1}, Uargs(a__tail) = {1}, Uargs(mark) = {}, Uargs(tail) = {} We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation: Interpretation Functions: a__zeros() = [0] [1] cons(x1, x2) = [1 0] x1 + [0 1] x2 + [0] [0 1] [0 1] [1] 0() = [0] [0] zeros() = [0] [0] a__tail(x1) = [1 0] x1 + [1] [0 1] [2] mark(x1) = [0 1] x1 + [0] [0 1] [2] tail(x1) = [0 0] x1 + [0] [0 1] [0] The strictly oriented rules are moved into the weak component. We consider the following Problem: Strict Trs: {mark(tail(X)) -> a__tail(mark(X))} Weak Trs: { mark(cons(X1, X2)) -> cons(mark(X1), X2) , a__tail(cons(X, XS)) -> mark(XS) , mark(zeros()) -> a__zeros() , a__tail(X) -> tail(X) , a__zeros() -> cons(0(), zeros()) , mark(0()) -> 0() , a__zeros() -> zeros()} StartTerms: basic terms Strategy: innermost Certificate: YES(?,O(n^1)) Proof: The weightgap principle applies, where following rules are oriented strictly: TRS Component: {mark(tail(X)) -> a__tail(mark(X))} Interpretation of nonconstant growth: ------------------------------------- The following argument positions are usable: Uargs(cons) = {1}, Uargs(a__tail) = {1}, Uargs(mark) = {}, Uargs(tail) = {} We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation: Interpretation Functions: a__zeros() = [0] [0] cons(x1, x2) = [1 0] x1 + [0 2] x2 + [0] [0 1] [0 1] [0] 0() = [0] [0] zeros() = [0] [0] a__tail(x1) = [1 0] x1 + [3] [0 1] [2] mark(x1) = [0 2] x1 + [1] [0 1] [0] tail(x1) = [0 0] x1 + [0] [0 1] [2] The strictly oriented rules are moved into the weak component. We consider the following Problem: Weak Trs: { mark(tail(X)) -> a__tail(mark(X)) , mark(cons(X1, X2)) -> cons(mark(X1), X2) , a__tail(cons(X, XS)) -> mark(XS) , mark(zeros()) -> a__zeros() , a__tail(X) -> tail(X) , a__zeros() -> cons(0(), zeros()) , mark(0()) -> 0() , a__zeros() -> zeros()} StartTerms: basic terms Strategy: innermost Certificate: YES(O(1),O(1)) Proof: We consider the following Problem: Weak Trs: { mark(tail(X)) -> a__tail(mark(X)) , mark(cons(X1, X2)) -> cons(mark(X1), X2) , a__tail(cons(X, XS)) -> mark(XS) , mark(zeros()) -> a__zeros() , a__tail(X) -> tail(X) , a__zeros() -> cons(0(), zeros()) , mark(0()) -> 0() , a__zeros() -> zeros()} StartTerms: basic terms Strategy: innermost Certificate: YES(O(1),O(1)) Proof: Empty rules are trivially bounded Hurray, we answered YES(?,O(n^1))