Criteria to determine whether a real-coefficient polynomial has real root? Given a polynomial equation $x^n+a_{n-1}x^{n-1}+\cdots+a_1x+a_0=0$, where $n$ is even and all the coefficients $a_i$ are real, what is the best way to determine whether it has a real root or not?
I know Sturm's theorem, but I am wondering if it's possible to determine this by the sign of some form of resolvent (e.g., discriminant works for $n=2$, but not 4 or beyond)?
Please point me to some reference if this has already been studied.  Thanks for your time!

I apologize for not searching hard enough - I just realized there is a similar question discussed here before, and has already got lots of useful comments.  My hope is to find a function of these real coefficients and whether the polynomial has real root or not is determined by its sign.
 A: Let $P$ be the space of all real monic polynomials of degree $n$; it is isomorphic to $\mathbb{R}^n$. There is a hypersurface $\Delta$ in $P$, cut out by the equation of the discriminant. As you cross $\Delta$, the number of real roots goes up or down by $2$. Also, every time you cross $\Delta$, the discriminant switches signs.
When $n$ is $2$ or $3$, then $P \setminus \Delta$ only has two connected components. On one of these components, all roots are real, and on the other two roots are imaginary. So you can tell which component you are in just be looking at the sign of the discriminant. Once $n$ is $4$ or larger, there are more than two connected components to $P \setminus \Delta$. So the sign of the discriminant can't tell you which component you are in. I don't know a formula for the number of connected components of $P \setminus \Delta$, but one could be extracted from the description of the toplogy of $(P, \Delta)$ in Gelfand, Kapranov and Zelevinsky, Discriminants, Resultants and Multidimensional Determinants.
One way to interpret your question is 

Is there a polynomial $F$ on $P$ which is positive on the polynomials with $n$ real roots, and negative otherwise?

The answer is "no". The variety $\Delta$ is irreducible (by the Horn uniformization). By a standard lemma, any nonempty open subset of the real points of $\Delta$ is Zariski dense in $\Delta$. So, if $F$ vanishes on the part of $\Delta$ which forms the boundary of {Polynomials with all roots real}, then $F$ also vanishes on all of $\Delta$. Working a little harder, we can show that if $F$ vanishes to odd order on the boundary of {Polynomials with all roots real}, then it also vanishes to odd order on the other connected components of $\Delta(\mathbb{R})$. 
On the other hand, there are many good ways to determine the number of real roots by polynomial computations, such as Sturm's method.
A: The following may be useful:
Kurtz (1992) proves that if all the $a_i$ are positive, and 
$a_i^2 - 4a_{i-1}a_{i+1} >0$  for $1\leqslant i\leqslant n-1$, then all the roots are real (and thus negative) and distinct.
A: Here is (a sketch of) my own solution to the Sturm problem, answering the question on a number of real roots of a polynomial on a given segment. The notion of the discriminant plays the central role in it. Here is a solution:
We can assume that equation $f=0$ has only simple roots (after the division by the gcd of $f$ and $f'$). Then


*

*Find an a priory estimate from above on an absolute value of a root. Denote this number by $C(f)$.

*Find a discriminant $\Delta(f)$ in terms of coefficients of $f$.

*In terms of $C(f)$ and $\Delta(f)$ one can find explicitly an a priory estimate $\varepsilon(f)>0$ from below on the absolute value of a difference of distinct roots of $f$: $|x_i-x_j|>\varepsilon(f)$ ($x_i$, $x_j$ are roots of $f$).

*For a given segment $[a,b]$ let $a=z_1 < z_2 < ... < z_N(f)=b$ be a sequence satisfying $|z_{i}-z_{i+1}|<\varepsilon(f)$ for any $i$ (in your case $a=-C, b=C$). We can assume without lost of generality that $f(z_i)\ne 0$. In that case the number of roots of $f$ on $[a,b]$ is equal to the number of changes of sign in the sequence $f(z_1), f(z_2), ..., f(z_N)$.
A: There is indeed an easy way to check if a univariate poly with real coefficients has a real root, without computing the roots.
Note that the answer for odd degree polynomials is always yes. For an even degree polynomial $p(x)$ do the following:

*

*Compute the Hermite form of the polynomial. This is a symmetric matrix defined e.g. here: (on page 4, near the bottom denoted by $H_1(p)$). The entries of this matrix can be filled using Newton identities.


*The number of real roots of $p(x)$ is equal to the signature of the Hermite matrix $H_1(p)$, i.e., the number of positive eigenvalues minus the number of negative eigenvalues.


*Since the Hermite form is symmetric, its characteristic poly has
only real roots. Therefore, we can apply Descartes' rule of signs to its char.
polynomial, which would give us exactly the number of positive and negative
eigenvalues of the Hermite form.
This process gives you the exact number of real roots of $p(x)$ without computing the roots, and in particular you can see if the polynomial has a real root.
Hope this helps.
-Amirali Ahmadi
A: Please refer to "L. Yang, X. Hou, and Z. Zeng. A complete discriminant system for polynomials. Science in China, Ser.E, 39(6):628–646, 1996." Your answer may find in the paper. It is very intricate.
