I'm learning mathematical logic now and do not understand how to solve boolean equations.
For example, I have an equation like
$$(\bar{z}\implies y)\iff(\bar{z}\lor x )=x\oplus y$$
I'm able to translate it to simple form like:
$$[(\bar{z}\land \bar{y})\land(z\land \bar{x})]\lor[(z\lor y)\land(\bar{z}\lor x )]=(\bar{x}\land y) \lor (x\land\bar{y})$$
and simplify it further. But what should I do next? What is the point of 'solving a boolean equation'? Should I find all possible values of $x,y$ and $z$ that make this equation true? Or should I express $x$ in terms of $y$ and $z$? Or may be something else?
Best Answer
To solve an equation, whether it is a logical equivalence or not, you find the values of the variables which will make the two sides have the same value. Your proposed alternatives,
are both reasonable approaches. For your problem, you can discover, perhaps by using truth tables, that the solutions $(x, y, z)$ are $(T, F, T), (F, T, F), (F, F, T), (F, F, F)$. In many situations, that would be sufficient. You could continue, though, by finding a logical expression which is true if and only if the values of the variables are those I listed above. The usual disjunctive normal form decomposition in your case would give you $$ (x\land\bar{y}\land z)\lor(\bar{x}\land y\land\bar{z})\lor(\bar{x}\land\bar{y}\land z)\lor(\bar{x}\land\bar{y}\land\bar{z}) $$ which you could either leave in this form or simplify further to something like $$ (\bar{x}\land\bar{y})\lor(\bar{x}\land\bar{z})\lor(x\land\bar{y}\land z) $$