Is the solution set returned by NSolve usually complete? Can I assume that there are no more solutions than what it returns? Consider systems of equations e.g. like this one.
I expect that the answer is either generally "no" or that it depends on the type of equations (polynomial? exact coefficients?), on the method being used, and on other settings (such as VerifySolutions). So the better question is: in which cases (if any) can I assume that NSolve found all solutions?
It is clear that the solution values are approximate but it is not clear that the number of solutions is also approximate. Multiple roots are generally returned with the correct multiplicity.
NSolve[Product[1.1^n x - 1., {n, 20}] == 0 && 0 < x < 1, x] // Length. I don't know how to predict that it would fail.... – Michael E2 Oct 26 '16 at 10:48NSolve, but alsoSolvefails for this. It's strange that after removing the constraint of0 < x < 1it works. With exact coefficients it also works. – Szabolcs Oct 26 '16 at 11:12NRootsalso works with all three documented methods. Maybe the constraint triggers a switch to a different method? Somehow this really feels like a bug but then I am not familiar with the numerical intricacies of finding polynomial roots and the coefficients do span 10 orders of magnitude. – Szabolcs Oct 26 '16 at 11:15Sqrt[x] == 2which is not exactly polynomial but clearly related as its solutions are a subset of the solutions ofx == 2^2. (Not sure what these are called). With a single polynomial equation the number of roots is clear. I don't know about a system or cases like the $\sqrt{x} = 2$ above. – Szabolcs Oct 26 '16 at 11:36SetSystemOptions["ReduceOptions" -> {"IntervalRootsOptions" -> {"MaxIncomplete" -> 35000, "MaxSteps" -> 150000}}]; NSolve[Sin[1/(x + 10^(-5))] == 0 && x > 0 && x < 1, x] // Length. – Michael E2 Oct 26 '16 at 12:33NSolvewould be reliable on polynomials up to precision constraints. Perhaps it is on unbounded problems. I would also have thoughtNSolvewould be reliable on the roots of transcendental functions over a compact domain, provided the function is analytic in a sufficiently large complex neighborhood of the domain and working precision is sufficiently high. My example, which is similar to Wilkinson's second polynomial, rather undermines my assumptions. – Michael E2 Oct 26 '16 at 12:45NSolveto tell you when it's run into such a limit, which is too bad. -- A site tip: if you don't put a space between the @ and my name, I'll get notified of your reply. – Michael E2 Oct 26 '16 at 12:59NSolvefound all answers in an interval in v10.0 but not in v10.4. Now, granted,NSolveis not designed to solve transcendental equations, but the version-dependence is still a little strange. – march Oct 26 '16 at 18:24