# why can't sage solve the equation x^n == 2*x ?

```
sage: var('x n')
(x, n)
sage: solve(x^n==2*x,x)
[x == 1/2*x^n]
```

This is not what I expect.

Who can help?

Thanks.

why can't sage solve the equation x^n == 2*x ?

asked
**
2013-07-22 06:50:43 -0500
**

This post is a wiki. Anyone with karma >750 is welcome to improve it.

```
sage: var('x n')
(x, n)
sage: solve(x^n==2*x,x)
[x == 1/2*x^n]
```

This is not what I expect.

Who can help?

Thanks.

0

Since you named one variable n I assume you meant integer. But even this has infinitely many solutions! Sage can give them for specific n:

```
sage: [solve(x^n==2*x,x) for n in range(1,5)]
[[x == 0],
[x == 0, x == 2],
[x == -sqrt(2), x == sqrt(2), x == 0],
[x == 1/2*I*sqrt(3)*2^(1/3) - 1/2*2^(1/3), x == -1/2*I*sqrt(3)*2^(1/3) - 1/2*2^(1/3), x == 2^(1/3), x == 0]]
```

Asked: **
2013-07-22 06:50:43 -0500
**

Seen: **335 times**

Last updated: **Jun 30 '14**

How to get all (numerical) solutions of an equation?

Solve system of equations with additional conditions in sage

determine consistency of nonlinear system of equations

How to make solve to use certain variables on the right side

using sage solve for more than 4 variables

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.

One issue here is that after declaring that x and n are symbolic variables, Sage still does not know anything more than that about x and n. So, Sage does not know whether x and n are reals, integers, etc. Thus, we need to `assume(n,'integer')` and `assume(x,'real')`. Unfortunately, at this point, you still don't get a solution. Sage is calling Maxima to solve this equation, and I cannot get Maxima to solve it either. Ideas?