Solving polynomial expressions