However, when abs(w) <=1 it is more complicated, e.g. while ((0.1)**(-I))**I is 0.1, the same is not true for 0.01. powsimp simplifies them to .1 and .01, respectively, so in that case it is wrong.