The difference between the statement -p ^ -q and the statement -(p ^ q) is seen by comparing the two statements using a truth table.
The figure below depicts the equivalence of the statements -p ^ -q and -(p v q), using the <=> symbol for equivalence.
The truth table depicted below evaluates the given expression.
Consider the statement in the figure below. We wish to evaluate the truth of this statement for different truth values of 'work hard' (W) and 'pass' (P).
The conditional p -> q, read 'if p then q', is false only when the p statement is true and the q statement is false. In any other situation the statement is true, as indicated in the truth table below.
The biconditional p <-> q means (p -> q) and (q -> p), as indicated below.
The statements A and B in the figure below are not logically equivalent, since if you are not nice but still get to eat it follows that statement A is true while statement B is false.
We can thus see that 'if p then q' has the same meaning as 'p only if q', but is not logically equivalent to 'q only if p'.