Take the 2-minute tour ×
Mathematica Stack Exchange is a question and answer site for users of Mathematica. It's 100% free, no registration required.

How to solve the system

{b - a*Sqrt[a^2 + b^2 + 1] - a^2*(a*b - Sqrt[a^2 + b^2 + 1]) == 0,  
 a - b*Sqrt[a^2 + b^2 + 1] - b^2*(a*b - Sqrt[a^2 + b^2 + 1]) == 0}

The command

Solve[{b - a*Sqrt[a^2 + b^2 + 1] - a^2*(a*b - Sqrt[a^2 + b^2 + 1]) == 0, 
       a - b*Sqrt[a^2 + b^2 + 1] - b^2*(a*b - Sqrt[a^2 + b^2 + 1]) == 0}
      , 
      {a, b}, Complexes]

produces, in particular,

{b -> -(a/(1 + a))}   

which gives the wrong answer if $a=1.$ The answer obtained by the command

Reduce[{b - a*Sqrt[a^2 + b^2 + 1] - a^2*(a*b - Sqrt[a^2 + b^2 + 1]) == 0,
        a - b*Sqrt[a^2 + b^2 + 1] - b^2*(a*b - Sqrt[a^2 + b^2 + 1]) == 0}
       ,
       {a, b}, Complexes]

also seems untrue in the last term

(a (1 + a) (-1 + a - a^2 + a^3) != 0 && 
0 == (1/(1 + a))(-1 - a - a^2 - Sqrt[(1 + a + a^2)^2/(1 + a)^2] - 
 a Sqrt[(1 + a + a^2)^2/(1 + a)^2]) && b == -(a/(1 + a))).
share|improve this question
1  
Seems to be similar issue like here take a look at comments. Please post Mathematica code in code blocks instead od LaTeX form. –  Kuba Sep 14 '13 at 13:29
    
@ Kuba: Thank you for your interest to the question. A new moment consists in the partially untrue answer (at least, in my opinion) obtained by the Reduce command. I am a newcomer and I don't know how to insert a Mathematica code. Where is this written? –  user64494 Sep 14 '13 at 13:40
    
@ Kuba: It is very kind of you! –  user64494 Sep 14 '13 at 14:29
    
You are welcome. I like when posts are transparent :) Now you know how to do this in the future. –  Kuba Sep 14 '13 at 14:30
    
@ Kuba: Could you briefly explain how to insert a Mathematica code or give a reference concerning it? –  user64494 Sep 14 '13 at 14:36
show 1 more comment

3 Answers 3

I suspect this will be marked as duplicate, but to let the OP carry on with his/her work, @Kuba's comment is warranted, and Verifysolutions is needed in this case

sys = {a - b Sqrt[a^2 + b^2 + 1] - b^2 (a b - Sqrt[a^2 + b^2 + 1]) == 0,
 b - a Sqrt[a^2 + b^2 + 1] - a^2 (a b - Sqrt[a^2 + b^2 + 1]) == 0}
soln = Solve[sys, {a, b}, VerifySolutions -> True]
sys /. soln
(*{{True, True}, {True, True}, {True, True}, {True, True}, {True, 
  True}, {True, True}, {True, True}} *)

With respect to the first solution you obtained, b=-a/(1+a), here is the comment from the similar question

If you set b=−2, then a=−b(b+1)=2−1=−2 and not +2. This holds for any pair of real numbers given b<−1. Use Reduce in place of Solve and the a=−b(b+1) solution will come with a constraint that, in the real domain, translates to b<−1.

I assume, although haven't confirmed, that your problem falls into a similar category.

share|improve this answer
    
Are you serious? Pay attention to the Complexes domain in Solve and Reduce. –  user64494 Sep 14 '13 at 14:10
    
Adding Complexes to Solve doesn't change the solution generated: Solve[sys, {a, b}, VerifySolutions -> True] === Solve[sys, {a, b}, Complexes, VerifySolutions -> True] so if I'm missing something here, perhaps you could clarify your question. –  bobthechemist Sep 14 '13 at 14:51
    
Do you pay attention to the "Solve::svars: Equations may not give solutions for all "solve" variables." warning. Also how about the Reduce command? –  user64494 Sep 14 '13 at 15:30
add comment

The solution returned by Reduce seems to be correct:

sys = {a - b Sqrt[a^2 + b^2 + 1] - b^2 (a b - Sqrt[a^2 + b^2 + 1]) == 
    0, b - a Sqrt[a^2 + b^2 + 1] - a^2 (a b - Sqrt[a^2 + b^2 + 1]) == 
    0};
soln = Reduce[sys, {a, b}, Complexes];
List @@ soln[[-1]] /. a -> 1 // Simplify

{False, False, b == -(1/2)}

Both conditions give False for your problematic case, so this solution does not apply.

share|improve this answer
add comment

Just to facilitate:

Solve yields:

{{y -> -(x/(1 + x))}, {x -> 1, y -> -I}, {x -> 1, y -> I}, {x -> 1, 
  y -> 1}, {x -> 0, y -> 0}, {x -> I, y -> I}, {x -> -I, 
  y -> 1}, {x -> I, y -> 1}}

(with warning).

Just concentrating on the real solutions, it is evident the real solutions can be seen in the following)

f[x_, y_] := 
 x - y Sqrt[x^2 + y^2 + 1] - y^2 (x y - Sqrt[x^2 + y^2 + 1])
Plot3D[{f[x, y], f[y, x]}, {x, -5, 5}, {y, -5, 5}, 
 MeshFunctions -> {f[#1, #2] &, f[#2, #1] &}, Mesh -> {{0.}}, 
 MeshStyle -> {{Thick, Red}, {Thick, Green}}]
ContourPlot[{x - y Sqrt[x^2 + y^2 + 1] - 
   y^2 (x y - Sqrt[x^2 + y^2 + 1]), 
  y - x Sqrt[x^2 + y^2 + 1] - 
   x^2 (x y - Sqrt[x^2 + y^2 + 1])}, {x, -3, 3}, {y, -3, 3}, 
 Contours -> {{0.}}, ContourShading -> False]

In the second plot I truncated the range to avoid the plotting of point related to asymptotics.

enter image description here

enter image description here

share|improve this answer
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.