Strange behaviour of Solve without VerifySolutions
- To: mathgroup at smc.vnet.net
- Subject: [mg85146] Strange behaviour of Solve without VerifySolutions
- From: "Jaccard Florian" <Florian.Jaccard at he-arc.ch>
- Date: Wed, 30 Jan 2008 06:06:49 -0500 (EST)
Dear Mathematica-specialists, One of my students needed to solve a simple system: equations = {(2 + 1.6*a + 8*b)^2/ (8*a*(3 + 8*c + 1.6*b)) - 1.7 == 0, (3 + 8*c + 1.6*b)^2/ ((8*b + 2 + 1.6*a)* (3 + 1.6*c)) - 1.7 == 0, (3 + 1.6*c)^2/(3 + 8*c + 1.6*b) - 1.7 == 0}; res = Solve[equations, {a, b, c}] My student saw that there is a problem because he compared with the answers he obtained using another system, which were completely different! Just type : Chop[equations /. (expr_) == (n_) -> expr /. res] As you easily can see, all solutions are wrong! Looking in the Solve options, I saw that you can add the option : VerifySolutions->True: res2 = Solve[equations, {a, b, c}, VerifySolutions -> True] And here, you can see that the solutions are all OK: Chop[equations /. (expr_) == (n_) -> expr /. res2] My question: Why did Wolfram make such a, I believe, stupid thing? Is there a good reason? I'm not sure students (ore engineers and so on) will take the time to verify all solutions (usually, Mathematica tells when there may be a problem!) ore to Rationalize all the numbers of the equations... and I'm afraid they won't think about VerifySolutions. And as Mathematica is used to make a good job, students usually believe in the Mathematica-responses... I'm also afraid the other system does in this case a better job... In a future release, I would appreciate more trustworthiness! Best Regards Florian Jaccard
- Follow-Ups:
- Re: Strange behaviour of Solve without VerifySolutions
- From: Daniel Lichtblau <danl@wolfram.com>
- Re: Strange behaviour of Solve without VerifySolutions
- From: Andrzej Kozlowski <akoz@mimuw.edu.pl>
- Re: Strange behaviour of Solve without VerifySolutions