\begin{frame} \frametitle{Finding a Minimal Key} \begin{exampleblock}{} \begin{center} {\ttfamily\footnotesize \colorbox{rellight}{% \begin{tabular}{|r|r|r|r|} \multicolumn{4}{c}{Results} \\ \hline \hd{sid} & \hd{exercise} & \hd{points} & \hd{maxPoints} \\ \hline 100 & 1 & 9 & 10 \\ 101 & 1 & 8 & 10 \\ 101 & 2 & 11 & 12 \\ \hline \end{tabular}% }}\\[1ex] $ \mathcal{F} = \left\{ \begin{array}{rcl} \sql{sid}, \sql{exercise} & \to & \sql{points} \\ \sql{exercise} & \to & \sql{maxPoints} \end{array} \right\} $ \end{center} \pause We determine a minimal key for the relation $\sql{Results}$: \begin{enumerate} \pause \item $x = \{\;\sql{sid},\; \sql{exercise},\; \sql{points},\; \sql{maxPoints}\;\}$ \pause \item We remove \sql{points} since $\{\;\sql{sid},\; \sql{exercise}\;\} \subseteq x$: \\ $x = \{\;\sql{sid},\; \sql{exercise},\; \sql{maxPoints}\;\}$ \pause \item We remove \sql{maxPoints} since $\{\;\sql{exercise}\;\} \subseteq x$: \\ $x = \{\;\sql{sid},\; \sql{exercise} \;\}$ \pause \end{enumerate} Nothing else can be removed. We have a minimal key: \begin{malign} \{\;\sql{sid},\; \sql{exercise}\;\} \end{malign} \end{exampleblock} \end{frame}