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