YES 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())) linear polynomial interpretations on N: not_A(x1) = 2 not#_A(x1) = x1 + 1 xor_A(x1,x2) = x2 + 1 xor#_A(x1,x2) = 0 true_A = 1 true#_A = 0 implies_A(x1,x2) = x2 + 3 implies#_A(x1,x2) = x1 + x2 + 1 and_A(x1,x2) = 1 and#_A(x1,x2) = 0 or_A(x1,x2) = x1 + x2 + 2 or#_A(x1,x2) = x1 + x2 + 1 =_A(x1,x2) = x1 + x2 + 3 =#_A(x1,x2) = x1 + x2 + 1 precedence: not = implies = or = = > xor = true = and