Hello Volker:
Thanks for your response. Unfortunately, I don't usually know a priori when solve will fail so I was looking for a solution that I use directly with the result of solve and does not involve going back to the original equation. In this case, the brackets get in the way of map:
(%i2) solve(log(x) + log(x+9) = 2*log(6));
(%o2) [log(x) = 2*log(6)-log(x+9)]
(%i3) map(exp, %);
(%o3) [%e^(log(x) = 2*log(6)-log(x+9))]
(%i4) solve(%);
(%o4) []
I suppose that I can use indexes to get rid of the brackets:
(%i5) solve(log(x) + log(x+9) = 2*log(6));
(%o5) [log(x) = 2*log(6)-log(x+9)]
(%i6) map(exp, %[1]);
(%o6) x = 36/(x+9)
(%i7) solve(%);
(%o7) [x = -12,x = 3]
but that still more cumbersome than the comparable use of log. So I am still wondering whether there are any good reasons why the behavior for exp should not be changed to:
exp(A=B) --> e^A = e^B
Many thanks!
Jorge
On Dec 19, 2012, at 11:47 AM, Volker van Nek wrote:
> Alternatively you can map exp and log over the equations:
>
> (%i2) eq : log(x) + log(x+9) = 2*log(6)$
> (%i3) map(exp, eq);
> (%o3) x*(x+9) = 36
> (%i4) solve(%);
> (%o4) [x = -12,x = 3]
>
> (%i5) eq : 3^(2*x) = 3^(x^2)$
> (%i6) map(log, eq);
> (%o6) 2*log(3)*x = log(3)*x^2
> (%i7) solve(%);
> (%o7) [x = 0,x = 2]
>
> Volker van Nek
>