diff -r 432d027aa6f7 -r ae9ffbf979ff slides/slides03.tex --- a/slides/slides03.tex Sun Oct 12 12:50:16 2025 +0100 +++ b/slides/slides03.tex Fri Oct 17 11:20:49 2025 +0100 @@ -65,20 +65,42 @@ \end{frame} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -{ -\setbeamercolor{background canvas}{bg=cream} + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \begin{frame}[c] -\frametitle{For Installation Problems} + +\begin{mybox3}{From Mentimeter}\it +Is there a specific reason Python and the other programming +languages have not implemented their regex matcher like the much +faster algorithms described in the videos? +\end{mybox3} + +\begin{mybox3}{From the Survey}\it +If worst case for regex with derivatives is same as a +normal regex engine, why is there a heavy focus on regex +for lexer given most languages don't use it. +\end{mybox3} -\begin{itemize} -\item Harry Dilnot (harry.dilnot@kcl.ac.uk) \\ - \;\;Windows expert -\item Oliver Iliffe (oliver.iliffe@kcl.ac.uk) -\end{itemize} - \end{frame} -} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%{ +%\setbeamercolor{background canvas}{bg=cream} +%\begin{frame}[c] +%\frametitle{For Installation Problems} +% +%\begin{itemize} +%\item Harry Dilnot (harry.dilnot@kcl.ac.uk) \\ +% \;\;Windows expert +%\item Oliver Iliffe (oliver.iliffe@kcl.ac.uk) +%\end{itemize} +% +%\end{frame} +%} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -193,16 +215,16 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\begin{frame}[c] - -\begin{mybox3}{From Pollev last week}\it - For a regular expression $r = r_1 \cdot r_2$, to prove that - $der\;c\;r = (der\;c\;r) \cdot r^{\{n-1\}}$, is there a - way to prove it in the general case instead - of how you do the calculations for each $n$ in the videos? -\end{mybox3} - -\end{frame} +%\begin{frame}[c] +% +%\begin{mybox3}{From Pollev last week}\it +% For a regular expression $r = r_1 \cdot r_2$, to prove that +% $der\;c\;r = (der\;c\;r) \cdot r^{\{n-1\}}$, is there a +% way to prove it in the general case instead +% of how you do the calculations for each $n$ in the videos? +%\end{mybox3} +% +%\end{frame} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -1621,6 +1643,8 @@ \end{frame} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %\begin{frame}[c] @@ -1842,6 +1866,31 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \begin{frame}[c] +\frametitle{Hierarchy of Languages} + +\begin{center} +\begin{tikzpicture} +[rect/.style={draw=black!50, + top color=white, + bottom color=black!20, + rectangle, + very thick, + rounded corners}, scale=1.2] + +\draw (0,0) node [rect, text depth=39mm, text width=68mm] {all languages}; +\draw (0,-0.4) node [rect, text depth=28.5mm, text width=64mm] {decidable languages}; +\draw (0,-0.85) node [rect, text depth=17mm] {context sensitive languages}; +\draw (0,-1.14) node [rect, text depth=9mm, text width=50mm] {context-free languages}; +\draw (0,-1.4) node [rect] {regular languages}; +\end{tikzpicture} + +\end{center} + +\end{frame} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\begin{frame}[c] \frametitle{Negation} Regular languages are closed under negation:\bigskip