Binary file slides/slides05.pdf has changed
--- a/slides/slides05.tex Wed Oct 23 00:09:41 2013 +0100
+++ b/slides/slides05.tex Wed Oct 23 01:05:22 2013 +0100
@@ -452,6 +452,23 @@
\mode<presentation>{
\begin{frame}[c]
+\begin{tikzpicture}[scale=1]
+
+ \draw[line width=1mm] (-.3, 0) rectangle (1.5,2);
+ \draw (4.2,1) node {Code Gen};
+ \draw (0.6,1.7) node {\footnotesize Parser};
+ \draw (-2.7,1.7) node {\footnotesize Lexer};
+
+ \draw[line width=1mm] (-1.8, 0) rectangle (-3.6,2);
+
+ \draw[white] (1.7,1) node (X) {};
+ \draw[white] (3.2,1) node (Y) {};
+ \draw[red, ->, line width = 2mm] (X) -- (Y);
+
+ \draw[red, <-, line width = 2mm] (-0.6,1) -- (-1.6,1);
+ \draw[red, <-, line width = 2mm] (-3.8,1) -- (-4.8,1);
+\end{tikzpicture}
+
\end{frame}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -482,7 +499,48 @@
\end{frame}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\mode<presentation>{
+\begin{frame}[t]
+\frametitle{\begin{tabular}{c}Nullable\end{tabular}}
+\small
+\ldots{}whether a regular expression can match the empty string:
+\begin{center}
+\begin{tabular}{@ {}l@ {\hspace{2mm}}c@ {\hspace{2mm}}l@ {}}
+\bl{$nullable(\varnothing)$} & \bl{$\dn$} & \bl{$f\!\/alse$}\\
+\bl{$nullable(\epsilon)$} & \bl{$\dn$} & \bl{$true$}\\
+\bl{$nullable (c)$} & \bl{$\dn$} & \bl{$f\!alse$}\\
+\bl{$nullable (r_1 + r_2)$} & \bl{$\dn$} & \bl{$nullable(r_1) \vee nullable(r_2)$} \\
+\bl{$nullable (r_1 \cdot r_2)$} & \bl{$\dn$} & \bl{$nullable(r_1) \wedge nullable(r_2)$} \\
+\bl{$nullable (r^*)$} & \bl{$\dn$} & \bl{$true$} \\
+\end{tabular}
+\end{center}
+
+\end{frame}}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\mode<presentation>{
+\begin{frame}[c]
+\frametitle{\begin{tabular}{c}Zeroable\end{tabular}}
+
+\small
+\ldots{}whether a regular expression can match nothing:
+\begin{center}
+\begin{tabular}{@ {}l@ {\hspace{2mm}}c@ {\hspace{2mm}}l@ {}}
+\bl{$zeroable(\varnothing)$} & \bl{$\dn$} & \bl{$true$}\\
+\bl{$zeroable(\epsilon)$} & \bl{$\dn$} & \bl{$f\!alse$}\\
+\bl{$zeroable (c)$} & \bl{$\dn$} & \bl{$f\!alse$}\\
+\bl{$zeroable (r_1 + r_2)$} & \bl{$\dn$} & \bl{$zeroable(r_1) \wedge zeroable(r_2)$} \\
+\bl{$zeroable (r_1 \cdot r_2)$} & \bl{$\dn$} & \bl{$zeroable(r_1) \vee zeroable(r_2)$} \\
+\bl{$zeroable (r^*)$} & \bl{$\dn$} & \bl{$f\!alse$} \\
+\end{tabular}
+\end{center}
+
+
+\end{frame}}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newcommand{\qq}{\mbox{\texttt{"}}}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%