The applications of solving systems of polynomial equations are legion: The real case permeates all of non-linear optimization as well as numerous problems in engineering. The p -adic case leads to many classical questions in number theory, and is close to many applications in cryptography, coding theory, and computational number theory. As such, it is important to understand the complexity of solving systems of polynomial equations over local fields. Furthermore, the complexity of solving structured systems --- such as those with a fixed number of monomial terms or invariance with respect to a group action --- arises naturally in many computational geometric applications and is closely related to a deeper understanding of circuit complexity (see, e.g., ). Clearly, if we are to fully understand the complexity of solving sparse polynomial systems, then we should at least be able to settle the univariate case, e.g., classify when it is possible to separate and approximate roots in deterministic time polynomial in the input size.