Hi Damiano,
For number 1 and 3, you can get the correct answer by using "to_poly_solve=True".
sage: solve(abs(x-4)==x,x, to_poly_solve=True)
[x == 2]
sage: solve(x^2+abs(x+1)==4,x, to_poly_solve=True)
[x == -1/2*sqrt(21) + 1/2, x == 1/2*sqrt(13) - 1/2]
For number 2, the answer is correct, all values of R are present (x = 0, x < 0 and x > 0 gives you all real numbers).
Alternatively, you can use the sympy algorithm, which in your case seems to give "nicer" solutions (note that you might need to force the domain to be real numbers as solve assumes the domain to be complex numbers usually):
sage: solve(abs(x-4)==x,x, algorithm='sympy', domain='real')
[x == 2]
sage: solve(abs(x+1)>=x,x, algorithm='sympy')
[x < +Infinity]
sage: solve(x^2+abs(x+1)==4,x, algorithm='sympy', domain='real')
[x == 1/2*sqrt(13) - 1/2, x == -1/2*sqrt(21) + 1/2]
sage: solve(abs(5*x-1)>=x,x, algorithm='sympy')
[[x <= (1/6)], [x >= (1/4)]]
Note that you can get more information on any function using a question mark after the function: "solve?" which will show the documentation for that function allowing you to see optional parameters and examples on how to use the function.
-Aram