YES exiting with thread! (VAR x y z ) (RULES i(one) -> one i(i(y)) -> y *(i(x),x) -> one d(x,y) -> *(x,i(y)) *(one,x) -> x *(x,i(x)) -> one i(*(z,x)) -> *(i(x),i(z)) *(x,one) -> x *(i(y),*(y,x)) -> x *(y,*(i(y),x)) -> x *(*(x,y),z) -> *(x,*(y,z)) )