\begin{frame}
\frametitle{For All}
% \begin{goal}{}
\emph{Existential quantifier:} $\exists\,X(\varphi)$
\begin{itemize}
\item Meaning: There is an $X$ that satisfies formula $\varphi$.
\end{itemize}
\emph{Universal quantifier:} $\forall\,X(\varphi)$
\begin{itemize}
\item Meaning: For all $X$, formula $\varphi$ is satisfied (true).
\end{itemize}
% \end{goal}
\smallskip
\pause
\begin{alertblock}{}
SQL does \emph{not} offer a universal quantifier ($\forall$, ``for all'').
\medskip
SQL offers only the existential quantifier \sql{exists}.\\
\remark{%
However, there is a restricted form: \sql{>= all}.
}
\end{alertblock}
\pause
\begin{goal}{}
This is no problem because
\begin{talign}
\forall\,X\,(\varphi) \;\;\iff\;\; \neg\exists\,X\,(\neg\varphi)
\end{talign}
\end{goal}
\begin{exampleblock}{}
The following two statements are equivalent:
\begin{itemize}
\item All cars are red.
\item There exists no car that is not red.
\end{itemize}
\end{exampleblock}
%% forall X (p1 => p2)
%% <=> not exists X (not (p1 => p2))
%% <=> not exists X (not (not p1 \/ p2))
%% <=> not exists X (p1 /\ not p2)
\end{frame}