45/296
\begin{frame}
  \frametitle{Functional Dependencies are Keys}

  \begin{goal}{}
    Functional dependencies are \emph{constraints} (like keys).
  \end{goal}
  \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}
    In this example state, the functional dependency
    \begin{salign}
      \sql{TITLE} \to \sql{CRN}
    \end{salign}
    holds. \pause But this is probably \emph{not true in general}!\\
    \remark{It is a task of DB design to verify if this is mere coincidence.}
  \end{exampleblock}
  \pause 

  \begin{alertblock}{}
    For the database design process, the only interesting 
    functional dependencies are those
    that \emph{hold for all possible states}.
  \end{alertblock}
  %   \pause
  %   
  %   \begin{goal}{}
  %     Database design based on normal forms requires 
  %     to \emph{collect all functional dependencies that generally hold}.
  %   \end{goal}
  %   \begin{itemize}
  %     \item Actually, it is sufficient to collect a representative subset of
  %     FDs which \emph{implies} all valid FDs.
  %   \end{itemize}
\end{frame}