You could be more generic here, I guess.  Please, take look on AskImaginaryHandler.Pow method in the sympy/assumptions/handlers/sets.py