Discrete Math logically equivalent? Show that 
$$(p \land q) \lor (\lnot p \land \lnot q) \equiv p\leftrightarrow q$$
How would I go about doing this?
Do I use a truth table or a more "algebraic" process?
 A: $$(p \land q) \lor (\lnot p \land \lnot q)$$
$$\equiv(p \lor (\lnot p \land \lnot q)) \land (q\lor(\lnot p \land \lnot q))$$
$$\equiv(p \lor \lnot p) \land(p\lor \lnot q)\land (q\lor\lnot p)\land (q\lor\lnot q)$$
$$\equiv(p\lor \lnot q)\land (q\lor\lnot p)$$
$$\equiv(\lnot q\lor p)\land (\lnot p\lor q)$$
$$\equiv (p\to q)\land(q\to p)$$
$$\equiv p\leftrightarrow q$$
A: Well, a more reasoning process is acceptable. Here is how I would prove it:
Suppose $p\equiv q$ then $p\leftrightarrow  q \equiv \mathbb T$ not matter what the value of $q$ and $p$ is. Now if $q \equiv \neg p$ or vice versa, then $p \leftrightarrow q \equiv \mathbb F$. So if the value is the same, the statement is true. Otherwise it's false. This english interpretation is clearly the same as $(p\wedge q) \vee (\neg p \wedge \neg q)$.
$\square $
BTW, this is a squashed version of the cases proof, where you take the case $p\equiv q$ and show that the statements are equivalent and then take the case $p \equiv \neg q$ and repeat the process.
A: You can either use a truth table or the below, and rather lengthy, series of logical equivalences:

$$(p↔q)≡[(p∧q)∨(¬p∧¬q)]$$

$$(p∧q)∨(¬p∧¬q)$$
$$≡[(p∧q)∨¬p]∧[(p∧q)∨¬q]$$
$$≡[(p∨¬p)∧(q∨¬p)]∧[(p∧q)∨¬q]$$        
$$≡[(p∨¬p)∧(q∨¬p)]∧[(p∨¬q)∧(q∨¬q)]$$    
$$≡[TRUE∧(q∨¬p)]∧[(p∨¬q)∧(q∨¬q)]$$    
$$≡(q∨¬p)∧[(p∨¬q)∧(q∨¬q)]$$            
$$≡(q∨¬p)∧[(p∨¬q)∧TRUE]$$            
$$≡(q∨¬p)∧(p∨¬q)$$                    
$$≡(¬p∨q)∧(p∨¬q)$$                    
$$≡(p→q)∧(p∨¬q)$$                    
$$≡(p→q)∧(¬q∨p)$$                    
$$≡(p→q)∧(q→p)$$                    
$$≡(p↔q)$$                        
$$□$$
Or
$$(p↔q)$$
$$≡(p→q)∧(q→p)$$    
$$≡(¬p∨q)∧(q→p)$$ 
$$≡(¬p∨q)∧(¬q∨p)$$
$$≡[(¬p∨q)∧¬q]∨[(¬p∨q)∧p]$$        
$$≡[(¬p∧¬q)∨(q∧¬q)]∨[(¬p∨q)∧p]$$    
$$≡[(¬p∧¬q)∨FALSE]∨[(¬p∨q)∧p]$$
$$≡(¬p∧¬q)∨[(¬p∨q)∧p]$$    
$$≡(¬p∧¬q)∨[(¬p∧p)∨(q∧p)]$$    
$$≡(¬p∧¬q)∨[FALSE∨(q∧p)]$$
$$≡(¬p∧¬q)∨(q∧p)$$
$$≡(q∧p)∨(¬p∧¬q)$$ 
$$≡(p∧q)∨(¬p∧¬q)$$
$$□$$        
