47/296
\begin{frame}
  \frametitle{Functional Dependencies are Keys}
  
  
  \begin{block}{}
    Functional dependencies are a \emph{generalisation of keys}.
    \begin{talign}
    \begin{array}{c}
      A_1, \dots, A_n \text{\ \ is a key of relation\ \ } R(A_1,\dots,A_n,B_1,\dots,B_m)  \\
     \iff \\
     \text{the functional dependency } A_1, \dots, A_n \to B_1, \dots B_m \text{ \ holds.}
    \end{array}
    \end{talign}
  \end{block}
  \pause
  
  \begin{exampleblock}{}
    \begin{center}
    {\ttfamily\footnotesize\centering
    \colorbox{rellight}{%
      \begin{tabular}[t]{|r|r|r|c|}
        \multicolumn{4}{c}{COURSES} \\ \hline
        \hd{\underline{CRN}} & \hd{TITLE} & \hd{INAME} & \hd{PHONE} \\
        22268 & Databases I            & Grust & 7111 \\
        42232 & Functional Programming & Grust & 7111 \\
        31822 & Graph Theory           & Klotz & 2418 \\
        \hline
      \end{tabular}%
    }}      
    \end{center}
    Here $\sql{CRN} \to \sql{TITLE},\;\sql{INAME},\;\sql{PHONE}$.
  \end{exampleblock}
  %   \begin{itemize}
  %   \item Given the FDs for a relation $R$, one can \emph{derive a key
  %       for $R$,} \emph{i.e.}, a set of attributes $A_1, \dots, A_n$ that
  %       functionally determines the other attributes of $R$ (see below).
  %   \end{itemize}
\end{frame}