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