biconditional
If and only if, often abbreviated iff or XNOR, is the truth-functional operator of the biconditional. Its logical connective is represented
Boolean iff is an operation which takes as input two logical truth values; it returns a value of true if and only if both its antecedent and consequent are equivalent, and false otherwise.
Visually,
\documentclass{standalone}
\usepackage{tikz}
%
\definecolor{fillcolor}{HTML}{8A5CF5}
%
\tikzset{truthy/.style n args={1}{%
fill=#1,draw,%
inner sep=0,minimum size=1cm}}
%
\begin{document}
\begin{tikzpicture}
\path (-2,-2) rectangle (2,2);
\node at (0,0.5) {Biconditional};
\node at (0,-0.5) {$P\Leftrightarrow Q$};
\end{tikzpicture}
\begin{tikzpicture}
\node at (-1.5,0.5) {$P$};
\node at (0.5,2.5) {$Q$};
\node at (-1,0) {\small$1$};
\node at (-1,1) {\small$0$};
\node at (0,2) {\small$0$};
\node at (1,2) {\small$1$};
\node[truthy={none}] at (0,0) {$0$}; % bottom left
\node[truthy={fillcolor}] at (1,0) {$1$}; % bottom right
\node[truthy={fillcolor}] at (0,1) {$1$}; % top left
\node[truthy={none}] at (1,1) {$0$}; % top right
\end{tikzpicture}
\hspace{1cm}
\begin{tikzpicture}
\path (-3,-2) rectangle (3,2);
% P and Q
\begin{scope}[even odd rule]
\clip (1,0) circle (1.5);
\fill[fillcolor] (-1,0) circle (1.5);
\end{scope}
% not P and not Q
\begin{scope}[even odd rule]
\clip (-3,-2) rectangle (3,2) (-1,0) circle (1.5);
\clip (-3,-2) rectangle (3,2) (1,0) circle (1.5);
\fill[fillcolor] (-3,-2) rectangle (3,2);
\end{scope}
%
\draw (-1,0) circle (1.5);
\draw (1,0) circle (1.5);
\node at (-1.25,0) {$P$};
\node at (1.25,0) {$Q$};
\end{tikzpicture}
\end{document}
Notation
The biconditional of propositions
In a logic circuit, the XNOR gate looks like
\documentclass[tikz]{standalone}
\usetikzlibrary{shapes.gates.logic.US}
%
\begin{document}
\begin{tikzpicture}
\node[draw,xnor gate US,logic gate inputs=nn] (gate) at (0,0) {};
%
\foreach \i in {1,2} {
\draw (gate.input \i) --++ (-0.25,0);
}
\draw (gate.output) --++ (0.25,0);
\end{tikzpicture}
\end{document}