Real Solution of x^3+8 == 0?
I do not understand the following:
sage: assume(x,'real')
sage: solve(x^3+8==0,x)
[]
Why does this equation have no solution? But -2 is a solution!
Thanks for help!
I do not understand the following:
sage: assume(x,'real')
sage: solve(x^3+8==0,x)
[]
Why does this equation have no solution? But -2 is a solution!
Thanks for help!
I think this is because (-1)^(1/3)
is not considered to be real.
sage: solve(x^3+1==0,x)
[x == 1/2*I*(-1)^(1/3)*sqrt(3) - 1/2*(-1)^(1/3), x == -1/2*I*(-1)^(1/3)*sqrt(3) - 1/2*(-1)^(1/3), x == (-1)^(1/3)]
sage: assume(x,'real')
sage: solve(x^3+1==0,x)
[]
Note that Maxima (which does our solving) doesn't actually care about x
being real, since it's a dummy variable.
(%i1) declare(x,real);
(%o1) done
(%i2) solve(x^3+1=0,x);
sqrt(3) %i - 1 sqrt(3) %i + 1
(%o2) [x = - --------------, x = --------------, x = - 1]
2 2
But when it's returned to Sage, somehow it doesn't keeps the x=-1
syntax and gets the cube root again, and it falls prey to
sage: (-1)^(1/3).n()
0.500000000000000 + 0.866025403784439*I
This is now http://trac.sagemath.org/sage_trac/ticket/11941.
An alternative approach is not to use the symbolic ring but a polynomial ring:
sage: x = polygen(RR)
sage: (x^3+8).roots()
[(-2.00000000000000, 1)]
This returns a list of roots in RR with multiplcities.
Asked: 13 years ago
Seen: 2,892 times
Last updated: Dec 11 '13