(VAR x y z) (THEORY (AC xor and)) (RULES or(x,y) -> xor(x,xor(y,and(x,y))) not(x) -> xor(x,1) xor(x,x) -> 0 xor(0,x) -> x and(xor(x,y),z) -> xor(and(x,z),and(y,z)) and(x,x) -> x )