\begin{frame} \frametitle{Boyce-Codd Normal Form} \vspace{-.5ex} \begin{block}{} A relation $R$ is in \emph{Boyce-Codd Normal Form (BCNF)} \\ if all its functional dependencies are implied by its keys. \smallskip That is, for every FD $A_1, \dots, A_n \to B_1, \dots, B_m$ of $R$ we have: \begin{itemize} \item $\{\, A_1, \dots, A_n \,\}$ contains a key of $R$, or \item the FD is trivial (that is, $\{\,B_1,\dots,B_m\,\} \subseteq \{\,A_1, \dots, A_n\,\}$) \end{itemize} \end{block} \pause \begin{exampleblock}{} \raggedright The relation \begin{tcenter} \sql{Courses(\underline{courseNr}, title, instructor, phone)} \end{tcenter} with the FDs \begin{tcenter} $ \begin{array}{rcl} \sql{courseNr} & \to & \sql{title}, \sql{instructor}, \sql{phone} \\ \sql{instructor} & \to & \sql{phone} \end{array} $ \end{tcenter} \pause is \emph{not in BCNF} because of the FD $\sql{instructor} \to \sql{phone}$: \begin{itemize} \item $\{\, \sql{instructor} \,\}$ contains no key, and \item the functional dependency is not trivial. \end{itemize} \pause However, the relation \sql{Courses(\underline{courseNr}, title, instructor)} without \sql{phone} is in BCNF. \end{exampleblock} \end{frame}