1 | initial version |

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
```

Copyright Sage, 2010. Some rights reserved under creative commons license. Content on this site is licensed under a Creative Commons Attribution Share Alike 3.0 license.