Using `Solve` you should include this option `InverseFunctions -> True` : s = Solve[(3 - Cos[4*x])*(Sin[x] - Cos[x]) == 2, x, InverseFunctions -> True] ![enter image description here][1] nevertheless you won't get all solutions, only three of them are real numbers : Select[ s[[All, 1, 2]], Element[#, Reals] &] > {-Pi, Pi/2, Pi} with `Reduce` you needn't use any options and you'll get all solutions, i.e. those eight complex roots which one gets with `Solve` and infinitely many real solutions, evaluate e.g. : Reduce[(3 - Cos[4*x])*(Sin[x] - Cos[x]) == 2, x] as well as : Reduce[(3 - Cos[4*x])*(Sin[x] - Cos[x]) == 2, x, Reals] ![enter image description here][2] Real solutions are integer multiples of `Pi/2` and for the other ones `Mathematica` cannot decide whether they are transcendental or algebraic numbers, to check it try e.g. : Element[#, Algebraics] & /@ s[[All, 1, 2]] That's why `Root` objects are really useful, they include a pure function and a number of root (here) or numerical approximation where they can be found. However they can be determined with arbitrary accuracy, whatever one needs : N[s, 10] > {{x -> -3.141592654}, {x -> 1.570796327}, {x -> 3.141592654}, {x -> -2.850459014 - 0.252846503 I}, {x -> -2.850459014 + 0.252846503 I}, {x -> -1.533830564 - 0.542327853 I}, {x -> -1.533830564 + 0.542327853 I}, {x -> 1.2796626869 + 0.2528465031 I}, {x -> 1.2796626869 - 0.2528465031 I}, {x -> -0.0369657631 - 0.5423278534 I}, {x -> -0.0369657631 + 0.5423278534 I}} For more information I recommend reading carefully e.g. an interesting post by Roger Germundsson on Wolfram Blog : [Mathematica 7, Johannes Kepler, and Transcendental Roots][3]. [1]: https://i.sstatic.net/owDz3.gif [2]: https://i.sstatic.net/UbDzJ.gif [3]: http://blog.wolfram.com/2008/12/18/mathematica-7-johannes-kepler-and-transcendental-roots/