QEPCAD uses cylindrical algebraic decomposition to eliminate quantifiers in
statements. QEPCAD takes the statement
there exists an x such that a*x2 + b*x + c = 0 and a /= 0 (i.e., a!=0)
and eliminates the quantifier and answers that:
a /= 0 and 4 a c - b^2 <= 0
(i.e., a!=0 and 4ac-b^2<=0)
In other words, it gives you the conditions of a solution satisfying
your original statement. See more examples at http://www.cs.usna.edu/~qepcad/B/examples/Examples.html
QEPCAD is not currently GPL and depends on the saclib library, which currently is not GPL. However, both of those could change if there was interest.
David Joyner talked with Chris Brown, and reported that:
I spoke with Chris Brown, who is essentially now the maintainer of
qepcad. Here is his response:
"Saclib's actual status is probably a bit up in the air. What I might
call the saclib "stakeholders" had agreed to GPL it, but everybody
was, I guess, too busy to do anything about it. Qepcad's status is
similar ... except that my contributions are necessarily public
domain."
In a second email, he added:
"If you're interested, we can talk about this. Ultimately I can ask the
saclib/qepcad folks for permission and move forward."
(see http://groups.google.com/group/sage-devel/msg/4f63c0636720ed51)
References:
QEPCAD: http://www.cs.usna.edu/~qepcad/B/QEPCAD.html
Mathematica implementation (Resolve, Reduce, FindInstance?,
CylindricalDecomposition?, etc.):
http://reference.wolfram.com/mathematica/tutorial/Quantifiers.html
http://reference.wolfram.com/mathematica/tutorial/TheRepresentationOfSolutionSets.html
http://reference.wolfram.com/mathematica/tutorial/Inequalities-ManipulatingEquationsAndInequalities.html
http://reference.wolfram.com/mathematica/tutorial/EquationsAndInequalitiesOverDomains.html