If and only if (shortened to iff) is a logical connective between statements which means that the truth of either one of the statements requires the truth of the other. Thus, either both statements are true, or both are false. To put it another way, the first statement will always be true when the second statement is, and will only be true under those conditions.
The output of iff is equivalent to the logical negation of the output of an exclusive or operation.
An if and only if between statements p and q is written as p ↔ q.
The truth table of iff is:
|p||q||p ↔ q|