In Wolfram Mathematica 12, when I enter:
Solve[ x == y , x]
I get:
{{x -> y}}
as expected.
But when I add an equation that contains only constants and parameters:
Solve[ x == y z && z == 1, x]
I get no results:
{}
when I want to get {{x -> y}} as before.
Solve[x == y z && z == 1, {x, z}]I think I saw question on this before on this site but can't be sure now. – Nasser Apr 27 '20 at 10:26Solve[x == y z && z == 1, {x, z}]gives{{x -> y, z -> 1}}. This is (arguably more important) half of the answer. I would like to know why Mathematica behaves in this way. – mcruffy Apr 27 '20 at 10:34Solve[ x == y z && z == 1, x,MaxExtraConditions->All]. Your problem is a special case of a general issue which can be found in What is the difference between Reduce and Solve? – Artes Apr 27 '20 at 10:38Solve[x == 1 && a == 2, x]gives{}– Nasser Apr 27 '20 at 10:39Solve[x == y z && z == 1, x, {z}]orSolve[Eliminate[x == y z && z == 1, z], x]– Bob Hanlon Apr 27 '20 at 14:38