# 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: **331 times**

Last updated: **Jun 30 '14**

solve an equation in terms of an expression?

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

Sage says equation isn't true while Mathematica says it is

Extended Euclid with polynomials

Solve system of equations with additional conditions in sage

solving systems of equations returns [] Redux

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?