# wrong answer from solve?

```
var('t')
test3 = -4*cos(t)^4 + 4*cos(t)^2 - 1
sage: solve(test3==0,t)
[]
```

When actually the equation is equivalent to (cos(t))^2 = 1/2 and it does have solutions.

wrong answer from solve?

```
var('t')
test3 = -4*cos(t)^4 + 4*cos(t)^2 - 1
sage: solve(test3==0,t)
[]
```

When actually the equation is equivalent to (cos(t))^2 = 1/2 and it does have solutions.

add a comment

1

```
sage: solve(test3==0,t,to_poly_solve=True)
[t == 1/4*pi + 1/2*pi*z35]
```

You do have to read the documentation of `solve?`

to see this option. It's not default because sometimes it will not return exact solutions.

So then, if solve returns [], that does not mean "there are no solutions". It means, "I didn't find any solutions". Similarly, if it does return a list of solutions, I guess that means "Here are the solutions I found", rather than, "Here are all the solutions." If this is the case, the documentation should say so up front. It says, "if there are no solutions it returns an empty list" but says nothing about the converse.

Asked: **
2016-01-22 10:03:04 -0500
**

Seen: **137 times**

Last updated: **Jan 22 '16**

How to properly declare indeterminates so that they exist in the coefficient ring.

Using numerical solution from system of equations

how to solve: exp(x)+exp(1/2*x) == 2?

variables get deleted after calulation, overflow?

Solving for an unknown function in a logarithmic expression

multivariate polynomial root-finding

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.