I agree with your assumption and not with Dictionary.com. Like XOR, iff should only be used in a mathematical or philosophical context. In normal English prose, "iff" is not a word, it's a typo.
You cannot use the abbreviation "iff" in the body of a business letter, or a newspaper article, or a history textbook. iff is not really a contraction. Unlike can't, which you'd pronounce kant, when reading iff aloud, you would not pronounce it if (or iffff), you would say, "if and only if." This makes it a special kind of abbreviation, which can't be pronounced in its abbreviated form.
OK, so what does it mean in mathematics, or philosophy?
This Wikipedia article is pretty good: "If and only if"
Here's how they've contrasted if and only if from if and from only if:
"Madison will eat the fruit if it is an apple."
This states that Madison will eat fruits that are apples. It does not, however, exclude the possibility that Madison might also eat bananas or other types of fruit. All that is known for certain is that she will eat any and all apples that she happens upon. That the fruit is an apple is a sufficient condition for Madison to eat the fruit.
In other words, any time Madison encounters an apple, she will eat it. If she encounters a pear or a banana, we don't know what she will do.
"Madison will eat the fruit only if it is an apple."
This states that the only fruit Madison will eat is an apple. It does not, however, exclude the possibility that Madison will refuse an apple if it is made available, in contrast with (1), which requires Madison to eat any available apple. In this case, that a given fruit is an apple is a necessary condition for Madison to be eating it. It is not a sufficient condition since Madison might not eat all the apples she is given.
In other words, if Madison encounters a pear or a banana, she will definitely not eat it. If she encounters an apple, she may eat it, but she may not.
"Madison will eat the fruit if and only if it is an apple"
This statement makes it clear that Madison will eat all and only those fruits that are apples. She will not leave any apple uneaten, and she will not eat any other type of fruit. That a given fruit is an apple is both a necessary and a sufficient condition for Madison to eat the fruit.
In other words, if Madison encounters an apple, she will definitely eat it. If she encounters a pear or a banana, she definitely will not eat it.
x = y iff A ~ B
outside of this I think if should be used. In my case "Returns true iff key is in s" this is english and iff reads as a typo. You'd be better off with=> true iff s[key