We consider the following Problem: Strict Trs: { gcd(x, 0()) -> x , gcd(0(), y) -> y , gcd(s(x), s(y)) -> if(<(x, y), gcd(s(x), -(y, x)), gcd(-(x, y), s(y)))} StartTerms: basic terms Strategy: innermost Certificate: YES(?,O(n^1)) Proof: We consider the following Problem: Strict Trs: { gcd(x, 0()) -> x , gcd(0(), y) -> y , gcd(s(x), s(y)) -> if(<(x, y), gcd(s(x), -(y, x)), gcd(-(x, y), s(y)))} StartTerms: basic terms Strategy: innermost Certificate: YES(?,O(n^1)) Proof: The weightgap principle applies, where following rules are oriented strictly: TRS Component: {gcd(s(x), s(y)) -> if(<(x, y), gcd(s(x), -(y, x)), gcd(-(x, y), s(y)))} Interpretation of nonconstant growth: ------------------------------------- The following argument positions are usable: Uargs(gcd) = {}, Uargs(s) = {}, Uargs(if) = {}, Uargs(<) = {}, Uargs(-) = {} We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation: Interpretation Functions: gcd(x1, x2) = [1 0] x1 + [1 0] x2 + [1] [0 0] [0 0] [1] 0() = [0] [0] s(x1) = [0 0] x1 + [0] [0 0] [0] if(x1, x2, x3) = [0 0] x1 + [0 0] x2 + [0 0] x3 + [0] [0 0] [0 0] [0 0] [1] <(x1, x2) = [0 0] x1 + [0 0] x2 + [0] [0 0] [0 0] [0] -(x1, x2) = [0 0] x1 + [0 0] x2 + [0] [0 0] [0 0] [0] The strictly oriented rules are moved into the weak component. We consider the following Problem: Strict Trs: { gcd(x, 0()) -> x , gcd(0(), y) -> y} Weak Trs: {gcd(s(x), s(y)) -> if(<(x, y), gcd(s(x), -(y, x)), gcd(-(x, y), s(y)))} StartTerms: basic terms Strategy: innermost Certificate: YES(?,O(n^1)) Proof: The weightgap principle applies, where following rules are oriented strictly: TRS Component: {gcd(0(), y) -> y} Interpretation of nonconstant growth: ------------------------------------- The following argument positions are usable: Uargs(gcd) = {}, Uargs(s) = {}, Uargs(if) = {}, Uargs(<) = {}, Uargs(-) = {} We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation: Interpretation Functions: gcd(x1, x2) = [1 0] x1 + [1 0] x2 + [1] [0 0] [0 1] [1] 0() = [0] [0] s(x1) = [0 0] x1 + [0] [0 0] [0] if(x1, x2, x3) = [0 0] x1 + [0 0] x2 + [0 0] x3 + [1] [0 0] [0 0] [0 1] [0] <(x1, x2) = [0 0] x1 + [0 0] x2 + [0] [0 0] [0 0] [0] -(x1, x2) = [0 0] x1 + [0 0] x2 + [0] [0 0] [0 0] [0] The strictly oriented rules are moved into the weak component. We consider the following Problem: Strict Trs: {gcd(x, 0()) -> x} Weak Trs: { gcd(0(), y) -> y , gcd(s(x), s(y)) -> if(<(x, y), gcd(s(x), -(y, x)), gcd(-(x, y), s(y)))} StartTerms: basic terms Strategy: innermost Certificate: YES(?,O(n^1)) Proof: The weightgap principle applies, where following rules are oriented strictly: TRS Component: {gcd(x, 0()) -> x} Interpretation of nonconstant growth: ------------------------------------- The following argument positions are usable: Uargs(gcd) = {}, Uargs(s) = {}, Uargs(if) = {}, Uargs(<) = {}, Uargs(-) = {} We have the following EDA-non-satisfying and IDA(1)-non-satisfying matrix interpretation: Interpretation Functions: gcd(x1, x2) = [1 0] x1 + [1 0] x2 + [1] [0 1] [0 1] [1] 0() = [0] [0] s(x1) = [0 0] x1 + [0] [0 0] [0] if(x1, x2, x3) = [0 0] x1 + [0 0] x2 + [0 0] x3 + [1] [0 0] [0 0] [0 0] [1] <(x1, x2) = [0 0] x1 + [0 0] x2 + [0] [0 0] [0 0] [0] -(x1, x2) = [0 0] x1 + [0 0] x2 + [0] [0 0] [0 0] [0] The strictly oriented rules are moved into the weak component. We consider the following Problem: Weak Trs: { gcd(x, 0()) -> x , gcd(0(), y) -> y , gcd(s(x), s(y)) -> if(<(x, y), gcd(s(x), -(y, x)), gcd(-(x, y), s(y)))} StartTerms: basic terms Strategy: innermost Certificate: YES(O(1),O(1)) Proof: We consider the following Problem: Weak Trs: { gcd(x, 0()) -> x , gcd(0(), y) -> y , gcd(s(x), s(y)) -> if(<(x, y), gcd(s(x), -(y, x)), gcd(-(x, y), s(y)))} StartTerms: basic terms Strategy: innermost Certificate: YES(O(1),O(1)) Proof: Empty rules are trivially bounded Hurray, we answered YES(?,O(n^1))