Solving Logical Combinations of Equations
When you give a list of equations to Solve
, it assumes that you want all the equations to be satisfied simultaneously. It is also possible to give Solve
more complicated logical combinations of equations.
assumes that the equations
are simultaneously valid.
Here is an alternative form, using the logical connective
This specifies that either or
gives two solutions for
, corresponding to these two possibilities.
gives three solutions to this equation.
If you explicitly include the assertion that
, one of the previous solutions is suppressed.
Here is a slightly more complicated example. Note that the precedence of
is lower than the precedence of
, so the equation is interpreted as
When you use Solve
, the final results you get are in the form of transformation rules. If you use Reduce
, on the other hand, then your results are logical statements, which you can manipulate further.
This gives a logical statement representing the solutions of the equation
This finds values of
but do not satisfy the statement representing the solutions of
The logical statements produced by Reduce
can be thought of as representations of the solution set for your equations. The logical connectives
and so on then correspond to operations on these sets.
|eqns1||eqns2||union of solution sets|
|eqns1&&eqns2||intersection of solution sets|
|!eqns||complement of a solution set|
|Implies[eqns1,eqns2]||the part of that contains |
Operations on solution sets.
You may often find it convenient to use special notations for logical connectives, as discussed in "Operators"
The input uses special notations for Implies