I can't get Solve
to solve the following two equations under the appropriate assumptions.
When I enter
fs = I Cos[(s + t)/2] Sin[beta/2] - 1/2 Cos[beta/2] Sin[(s - t)/2]
ft = I Cos[(s + t)/2] Sin[beta/2] + 1/2 Cos[beta/2] Sin[(s - t)/2]
Solve[
{fs == 0, ft == 0}, {s, t},
Assumptions ->
Element[beta, Reals] && (beta > 0) && (beta < Pi/2) &&
(s >= 0) && (s <= 2*Pi) && (t >= 0) && (t <= 2*Pi)
]
I get the following result:
{{s -> ConditionalExpression[π/2, Cos[beta/2] > 0 || Cos[beta/2] < 0],
t -> ConditionalExpression[π/2, Cos[beta/2] > 0 || Cos[beta/2] < 0]},
{s -> ConditionalExpression[(3 π)/2, Cos[beta/2] > 0 || Cos[beta/2] < 0],
t -> ConditionalExpression[(3 π)/2, Cos[beta/2] > 0 || Cos[beta/2] < 0]}}
But I have told it that beta is real, that beta > 0 and beta < Pi/2. So why is it still putting a ConditionalExpression
on the value of Cos[beta]
being positive or negative?
Solve
eliminates assumptions from the conditions that are unnecessary but retains those that are necessary. It's not clear to me that in every use-case, one would want the necessary condition eliminated. When they can be, I useSimplify
as @MarcoB shows below. (Another way to look at is that there is a difference between hypothesisImplies[A, B]
and constraintsA && B
. Hypotheses may be ignored ifB
can be solved, though that is not what Mma usually does.) $\endgroup$