YES exiting with thread! (VAR x y z ) (RULES add(multiply(y,x),multiply(z,x)) -> multiply(x,add(y,z)) add(x,inverse(x)) -> one add(multiply(x,inverse(y)),multiply(y,add(x,inverse(y)))) -> x add(multiply(x,inverse(y)),multiply(x,add(x,inverse(y)))) -> x add(multiply(x,inverse(x)),multiply(y,one)) -> y )