> I'd like to know if maxima can solve equations with absolute values or
> irrational equations.
> 1) solve(abs(x)=2,x);
> 2) solve(sqrt(x+1)=2*x,x);
Maxima cannot currently solve equations involving abs of the main
variable: that is, it can solve abs(q)*x=3 for x but not for q.
Maxima also cannot solve equations involving roots of the main
variable. This is actually a subtler problem than you might think.
Part of the problem is the ambiguity of the root notation. For
Maxima, x^(1/2)=sqrt(x) is single-valued function: 1^(1/2)=1. But if
you define y=x^(1/2) to mean the same thing as y^2=x, then sqrt has
two values: 1^(1/2) = both 1 and -1. Moreover, if you have more than
one root in an equation, it is not clear whether they are the same
root or not. Presumably sqrt(x)+sqrt(x)=2*sqrt(x), but if they are
*independent* multivalued functions, then sqrt(x)+sqrt(x) could equal
0 as well.
Fortunately, there *is* a way to handle the multivalued case in
Maxima. Convert roots into equations, and solve the equations.
In your example, rewrite sqrt(x+1)=2*x as
eq1: [ sx1^2 = x+1, sx1=2*x ]
by using subst(sx1,sqrt(x+1),...).
You can now solve those equations for x and sx1:
solve(eq1, [x,sx1]) =>
[[x = -(SQRT(17)-1)/8,y = -(SQRT(17)-1)/4],
[x = (SQRT(17)+1)/8,y = (SQRT(17)+1)/4]]
Note that this will sometimes repeat roots. And remember that these
solutions assume that sqrt is multi-valued, not single-valued, which
may or may not be what you intend.
-s