In mathematics, logic and technical fields that depend on it,

**iff**is used as an abbreviation for "if and only if". It is often, not always, written italicized:

*iff*. The phrase "'P' is necessary and sufficient for 'Q'" is also sometimes used for "P iff Q".

A sentence that is composed of two other sentences joined by "*iff*" is called a **biconditional**. *Iff* joins two sentences to form a new sentence. It should not be confused with logical equivalence which is a description of a relation between two sentences. The biconditional "A *iff* B" *uses* the sentences A and B, describing a relation between the states of affairs A and B describe. By contrast "'A' is logically equivalent to 'B'" mentions the two sentences: it describes a relation between those two sentences, and not between whatever matters they describe.

The distinction is a very confusing one, and has led many a philosopher astray. Certainly it is the case that when 'A' is logically equivalent to 'B', "A *iff* B" is true. But the converse does not hold. For example, consider the sentence:

- Mary will eat pudding today if and only if it's custard.

*Mathematical Logic*, Section 5.

The corresponding logical symbols are "↔" and "⇔".

When proving the statement "P iff Q", it is equivalent to prove both the two statements "if P, then Q" and "if Q, then P".

The abbreviation appeared in print for the first time in John Kelley's 1955 book General Topology. Its invention is often credited to the mathematician Paul Halmos, but in his autobiography he states that he borrowed it from puzzlers.

In philosophy and logic, for example, "iff" is used to indicate definitions, since definitions are supposed to be universally quantified biconditionals. In mathematics, however, the word "if" is often used in definitions, rather than "iff". Here are some examples of true statements that use "iff" - true biconditionals (the first is an example of a definition):

- A person is a bachelor
*iff*that person is an unmarried but marriagable man. - "Snow is white" (in English) is true
*iff*"*Schnee ist weiss*" (in German) is true. - For any
`p`,`q`, and`r`: (`p`&`q`) &`r`iff`p`& (`q`&`r`). (Since this is written using variables and "&", the statement would usually be written using "↔", or one of the other symbols used to write biconditionals, in place of "iff").

Sometimes other words are also emphasied in the same way by repeating the last letter; for example *orr* for "Or and only Or" (the exclusive disjunction).