1216 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1221 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1217 |
1222 |
1218 |
1223 |
1219 |
1224 |
1220 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1225 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1221 \begin{frame}[c] |
1226 %\begin{frame}[c] |
1222 \begin{center} |
1227 %\begin{center} |
1223 \begin{tabular}{@ {}l@ {\hspace{2mm}}c@ {\hspace{2mm}}l@ {}} |
1228 %\begin{tabular}{@ {}l@ {\hspace{2mm}}c@ {\hspace{2mm}}l@ {}} |
1224 \bl{$zeroable(\ZERO)$} & \bl{$\dn$} & \bl{$true$}\\ |
1229 %\bl{$zeroable(\ZERO)$} & \bl{$\dn$} & \bl{$true$}\\ |
1225 \bl{$zeroable(\ONE)$} & \bl{$\dn$} & \bl{$\textit{false}$}\\ |
1230 %\bl{$zeroable(\ONE)$} & \bl{$\dn$} & \bl{$\textit{false}$}\\ |
1226 \bl{$zeroable(c)$} & \bl{$\dn$} & \bl{$\textit{false}$}\\ |
1231 %\bl{$zeroable(c)$} & \bl{$\dn$} & \bl{$\textit{false}$}\\ |
1227 \bl{$zeroable(r_1 + r_2)$} & \bl{$\dn$} & \bl{$zeroable(r_1) \wedge zeroable(r_2)$}\\ |
1232 %\bl{$zeroable(r_1 + r_2)$} & \bl{$\dn$} & \bl{$zeroable(r_1) \wedge zeroable(r_2)$}\\ |
1228 \bl{$zeroable(r_1 \cdot r_2)$} & \bl{$\dn$} & \bl{$zeroable(r_1) \vee zeroable(r_2)$}\\ |
1233 %\bl{$zeroable(r_1 \cdot r_2)$} & \bl{$\dn$} & \bl{$zeroable(r_1) \vee zeroable(r_2)$}\\ |
1229 \bl{$zeroable(r^*)$} & \bl{$\dn$} & \bl{$\textit{false}$}\\ |
1234 %\bl{$zeroable(r^*)$} & \bl{$\dn$} & \bl{$\textit{false}$}\\ |
1230 \end{tabular} |
1235 %\end{tabular} |
1231 \end{center} |
1236 %\end{center} |
1232 |
1237 % |
1233 \begin{center} |
1238 %\begin{center} |
1234 \bl{$zeroable(r)$} if and only if \bl{$L(r) = \{\}$} |
1239 %\bl{$zeroable(r)$} if and only if \bl{$L(r) = \{\}$} |
1235 \end{center} |
1240 %\end{center} |
1236 |
1241 % |
1237 |
1242 % |
1238 \end{frame} |
1243 %\end{frame} |
1239 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1244 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1240 |
1245 |
1241 |
1246 |
1242 |
1247 |
1243 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1248 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1244 \begin{frame}[c] |
1249 %\begin{frame}[c] |
1245 \frametitle{\begin{tabular}{c}Last Week\\[-2mm] |
1250 %\frametitle{\begin{tabular}{c}Last Week\\[-2mm] |
1246 Regexes and Values\end{tabular}} |
1251 % Regexes and Values\end{tabular}} |
1247 |
1252 % |
1248 Regular expressions and their corresponding values: |
1253 %Regular expressions and their corresponding values: |
1249 |
1254 % |
1250 \begin{center} |
1255 %\begin{center} |
1251 \begin{columns} |
1256 %\begin{columns} |
1252 \begin{column}{3cm} |
1257 %\begin{column}{3cm} |
1253 \begin{tabular}{@{}rrl@{}} |
1258 %\begin{tabular}{@{}rrl@{}} |
1254 \bl{$r$} & \bl{$::=$} & \bl{$\ZERO$}\\ |
1259 % \bl{$r$} & \bl{$::=$} & \bl{$\ZERO$}\\ |
1255 & \bl{$\mid$} & \bl{$\ONE$} \\ |
1260 % & \bl{$\mid$} & \bl{$\ONE$} \\ |
1256 & \bl{$\mid$} & \bl{$c$} \\ |
1261 % & \bl{$\mid$} & \bl{$c$} \\ |
1257 & \bl{$\mid$} & \bl{$r_1 \cdot r_2$}\\ |
1262 % & \bl{$\mid$} & \bl{$r_1 \cdot r_2$}\\ |
1258 & \bl{$\mid$} & \bl{$r_1 + r_2$} \\ |
1263 % & \bl{$\mid$} & \bl{$r_1 + r_2$} \\ |
1259 \\ |
1264 % \\ |
1260 & \bl{$\mid$} & \bl{$r^*$} \\ |
1265 % & \bl{$\mid$} & \bl{$r^*$} \\ |
1261 \end{tabular} |
1266 % \end{tabular} |
1262 \end{column} |
1267 %\end{column} |
1263 \begin{column}{3cm} |
1268 %\begin{column}{3cm} |
1264 \begin{tabular}{@{\hspace{-7mm}}rrl@{}} |
1269 %\begin{tabular}{@{\hspace{-7mm}}rrl@{}} |
1265 \bl{$v$} & \bl{$::=$} & \\ |
1270 % \bl{$v$} & \bl{$::=$} & \\ |
1266 & & \bl{$Empty$} \\ |
1271 % & & \bl{$Empty$} \\ |
1267 & \bl{$\mid$} & \bl{$Char(c)$} \\ |
1272 % & \bl{$\mid$} & \bl{$Char(c)$} \\ |
1268 & \bl{$\mid$} & \bl{$Seq(v_1,v_2)$}\\ |
1273 % & \bl{$\mid$} & \bl{$Seq(v_1,v_2)$}\\ |
1269 & \bl{$\mid$} & \bl{$Left(v)$} \\ |
1274 % & \bl{$\mid$} & \bl{$Left(v)$} \\ |
1270 & \bl{$\mid$} & \bl{$Right(v)$} \\ |
1275 % & \bl{$\mid$} & \bl{$Right(v)$} \\ |
1271 & \bl{$\mid$} & \bl{$Stars [v_1,\ldots\,v_n]$} \\ |
1276 % & \bl{$\mid$} & \bl{$Stars [v_1,\ldots\,v_n]$} \\ |
1272 \end{tabular} |
1277 % \end{tabular} |
1273 \end{column} |
1278 %\end{column} |
1274 \end{columns} |
1279 %\end{columns} |
1275 \end{center} |
1280 %\end{center} |
1276 |
1281 % |
1277 |
1282 %\end{frame} |
1278 \end{frame} |
1283 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1279 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1284 |
1280 |
1285 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1281 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1286 %\begin{frame}[c] |
1282 \begin{frame}[c] |
1287 % |
1283 |
1288 %\begin{textblock}{10}(3,5) |
1284 \begin{textblock}{10}(3,5) |
1289 %\begin{tikzpicture}[scale=2,node distance=1.3cm,every node/.style={minimum size=8mm}] |
1285 \begin{tikzpicture}[scale=2,node distance=1.3cm,every node/.style={minimum size=8mm}] |
1290 %\node (r1) {\bl{$r_1$}}; |
1286 \node (r1) {\bl{$r_1$}}; |
1291 %\node (r2) [right=of r1] {\bl{$r_2$}}; |
1287 \node (r2) [right=of r1] {\bl{$r_2$}}; |
1292 %\draw[->,line width=1mm] (r1) -- (r2) node[above,midway] {\bl{$der\,a$}}; |
1288 \draw[->,line width=1mm] (r1) -- (r2) node[above,midway] {\bl{$der\,a$}}; |
1293 %\node (r3) [right=of r2] {\bl{$r_3$}}; |
1289 \node (r3) [right=of r2] {\bl{$r_3$}}; |
1294 %\draw[->,line width=1mm] (r2) -- (r3) node[above,midway] {\bl{$der\,b$}}; |
1290 \draw[->,line width=1mm] (r2) -- (r3) node[above,midway] {\bl{$der\,b$}}; |
1295 %\node (r4) [right=of r3] {\bl{$r_4$}}; |
1291 \node (r4) [right=of r3] {\bl{$r_4$}}; |
1296 %\draw[->,line width=1mm] (r3) -- (r4) node[above,midway] {\bl{$der\,c$}}; |
1292 \draw[->,line width=1mm] (r3) -- (r4) node[above,midway] {\bl{$der\,c$}}; |
1297 %\draw (r4) node[anchor=west] {\;\raisebox{3mm}{\bl{$nullable$}}}; |
1293 \draw (r4) node[anchor=west] {\;\raisebox{3mm}{\bl{$nullable$}}}; |
1298 %\node (v4) [below=of r4] {\bl{$v_4$}}; |
1294 \node (v4) [below=of r4] {\bl{$v_4$}}; |
1299 %\draw[->,line width=1mm] (r4) -- (v4); |
1295 \draw[->,line width=1mm] (r4) -- (v4); |
1300 %\node (v3) [left=of v4] {\bl{$v_3$}}; |
1296 \node (v3) [left=of v4] {\bl{$v_3$}}; |
1301 %\draw[->,line width=1mm] (v4) -- (v3) node[below,midway] {\bl{$inj\,c$}}; |
1297 \draw[->,line width=1mm] (v4) -- (v3) node[below,midway] {\bl{$inj\,c$}}; |
1302 %\node (v2) [left=of v3] {\bl{$v_2$}}; |
1298 \node (v2) [left=of v3] {\bl{$v_2$}}; |
1303 %\draw[->,line width=1mm] (v3) -- (v2) node[below,midway] {\bl{$inj\,b$}}; |
1299 \draw[->,line width=1mm] (v3) -- (v2) node[below,midway] {\bl{$inj\,b$}}; |
1304 %\node (v1) [left=of v2] {\bl{$v_1$}}; |
1300 \node (v1) [left=of v2] {\bl{$v_1$}}; |
1305 %\draw[->,line width=1mm] (v2) -- (v1) node[below,midway] {\bl{$inj\,a$}}; |
1301 \draw[->,line width=1mm] (v2) -- (v1) node[below,midway] {\bl{$inj\,a$}}; |
1306 %\draw[->,line width=0.5mm] (r3) -- (v3); |
1302 \draw[->,line width=0.5mm] (r3) -- (v3); |
1307 %\draw[->,line width=0.5mm] (r2) -- (v2); |
1303 \draw[->,line width=0.5mm] (r2) -- (v2); |
1308 %\draw[->,line width=0.5mm] (r1) -- (v1); |
1304 \draw[->,line width=0.5mm] (r1) -- (v1); |
1309 %\draw (r4) node[anchor=north west] {\;\raisebox{-8mm}{\bl{$mkeps$}}}; |
1305 \draw (r4) node[anchor=north west] {\;\raisebox{-8mm}{\bl{$mkeps$}}}; |
1310 %\end{tikzpicture} |
1306 \end{tikzpicture} |
1311 %\end{textblock} |
1307 \end{textblock} |
1312 % |
1308 |
1313 %\begin{textblock}{6}(1,0.8) |
1309 \begin{textblock}{6}(1,0.8) |
1314 %\begin{bubble}[6cm] |
1310 \begin{bubble}[6cm] |
1315 %\small |
1311 \small |
1316 %\begin{tabular}{ll} |
1312 \begin{tabular}{ll} |
1317 %\bl{$r_1$}: & \bl{$a \cdot (b \cdot c)$}\\ |
1313 \bl{$r_1$}: & \bl{$a \cdot (b \cdot c)$}\\ |
1318 %\bl{$r_2$}: & \bl{$\ONE \cdot (b \cdot c)$}\\ |
1314 \bl{$r_2$}: & \bl{$\ONE \cdot (b \cdot c)$}\\ |
1319 %\bl{$r_3$}: & \bl{$(\ZERO \cdot (b \cdot c)) + (\ONE \cdot c)$}\\ |
1315 \bl{$r_3$}: & \bl{$(\ZERO \cdot (b \cdot c)) + (\ONE \cdot c)$}\\ |
1320 %\bl{$r_4$}: & \bl{$(\ZERO \cdot (b \cdot c)) + ((\ZERO \cdot c) + \ONE)$}\\ |
1316 \bl{$r_4$}: & \bl{$(\ZERO \cdot (b \cdot c)) + ((\ZERO \cdot c) + \ONE)$}\\ |
1321 %\end{tabular} |
1317 \end{tabular} |
1322 %\end{bubble} |
1318 \end{bubble} |
1323 %\end{textblock} |
1319 \end{textblock} |
1324 % |
1320 |
1325 %\begin{textblock}{6}(1,11.4) |
1321 \begin{textblock}{6}(1,11.4) |
1326 %\begin{bubble}[7.6cm] |
1322 \begin{bubble}[7.6cm] |
1327 %\small |
1323 \small |
1328 %\begin{tabular}{ll} |
1324 \begin{tabular}{ll} |
1329 %\bl{$v_1$}: & \bl{$Seq(Char(a), Seq(Char(b), Char(c)))$}\\ |
1325 \bl{$v_1$}: & \bl{$Seq(Char(a), Seq(Char(b), Char(c)))$}\\ |
1330 %\bl{$v_2$}: & \bl{$Seq(Empty, Seq(Char(b), Char(c)))$}\\ |
1326 \bl{$v_2$}: & \bl{$Seq(Empty, Seq(Char(b), Char(c)))$}\\ |
1331 %\bl{$v_3$}: & \bl{$Right(Seq(Empty, Char(c)))$}\\ |
1327 \bl{$v_3$}: & \bl{$Right(Seq(Empty, Char(c)))$}\\ |
1332 %\bl{$v_4$}: & \bl{$Right(Right(Empty))$}\\ |
1328 \bl{$v_4$}: & \bl{$Right(Right(Empty))$}\\ |
1333 %\end{tabular} |
1329 \end{tabular} |
1334 %\end{bubble} |
1330 \end{bubble} |
1335 %\end{textblock} |
1331 \end{textblock} |
1336 % |
1332 |
1337 %\begin{textblock}{6}(12,11.4) |
1333 \begin{textblock}{6}(12,11.4) |
1338 %\begin{bubble}[2cm] |
1334 \begin{bubble}[2cm] |
1339 %\small |
1335 \small |
1340 %\begin{tabular}{ll} |
1336 \begin{tabular}{ll} |
1341 %\bl{$|v_1|$}: & \bl{$abc$}\\ |
1337 \bl{$|v_1|$}: & \bl{$abc$}\\ |
1342 %\bl{$|v_2|$}: & \bl{$bc$}\\ |
1338 \bl{$|v_2|$}: & \bl{$bc$}\\ |
1343 %\bl{$|v_3|$}: & \bl{$c$}\\ |
1339 \bl{$|v_3|$}: & \bl{$c$}\\ |
1344 %\bl{$|v_4|$}: & \bl{$[]$} |
1340 \bl{$|v_4|$}: & \bl{$[]$} |
1345 %\end{tabular} |
1341 \end{tabular} |
1346 %\end{bubble} |
1342 \end{bubble} |
1347 %\end{textblock} |
1343 \end{textblock} |
1348 % |
1344 |
1349 % |
1345 |
1350 %%\end{frame} |
1346 \end{frame} |
1351 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1347 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1352 % |
1348 |
1353 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1349 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1354 %\begin{frame}[c] |
1350 \begin{frame}[c] |
1355 %\frametitle{Simplification} |
1351 \frametitle{Simplification} |
1356 % |
1352 |
1357 %\begin{itemize} |
1353 \begin{itemize} |
1358 %\item If we simplify after the derivative, then we are builing the |
1354 \item If we simplify after the derivative, then we are builing the |
1359 %value for the simplified regular expression, but \emph{not} for the original |
1355 value for the simplified regular expression, but \emph{not} for the original |
1360 %regular expression. |
1356 regular expression. |
1361 %\end{itemize} |
1357 \end{itemize} |
1362 % |
1358 |
1363 %\begin{center} |
1359 \begin{center} |
1364 %\begin{tikzpicture}[scale=2,node distance=1.3cm,every node/.style={minimum size=8mm}] |
1360 \begin{tikzpicture}[scale=2,node distance=1.3cm,every node/.style={minimum size=8mm}] |
1365 %\node (r1) {\bl{$r_1$}}; |
1361 \node (r1) {\bl{$r_1$}}; |
1366 %\node (r2) [right=of r1] {\bl{$r_2$}}; |
1362 \node (r2) [right=of r1] {\bl{$r_2$}}; |
1367 %\draw[->,line width=1mm] (r1) -- (r2) node[above,midway] {\bl{$der\,a$}}; |
1363 \draw[->,line width=1mm] (r1) -- (r2) node[above,midway] {\bl{$der\,a$}}; |
1368 %\node (r3) [right=of r2] {\bl{$r_3$}}; |
1364 \node (r3) [right=of r2] {\bl{$r_3$}}; |
1369 %\draw[->,line width=1mm] (r2) -- (r3) node[above,midway] {\bl{$der\,b$}}; |
1365 \draw[->,line width=1mm] (r2) -- (r3) node[above,midway] {\bl{$der\,b$}}; |
1370 %\node (r4) [right=of r3] {\bl{$r_4$}}; |
1366 \node (r4) [right=of r3] {\bl{$r_4$}}; |
1371 %\draw[->,line width=1mm] (r3) -- (r4) node[above,midway] {\bl{$der\,c$}}; |
1367 \draw[->,line width=1mm] (r3) -- (r4) node[above,midway] {\bl{$der\,c$}}; |
1372 %\draw (r4) node[anchor=west] {\;\raisebox{3mm}{\bl{$nullable$}}}; |
1368 \draw (r4) node[anchor=west] {\;\raisebox{3mm}{\bl{$nullable$}}}; |
1373 %\node (v4) [below=of r4] {\bl{$v_4$}}; |
1369 \node (v4) [below=of r4] {\bl{$v_4$}}; |
1374 %\draw[->,line width=1mm] (r4) -- (v4); |
1370 \draw[->,line width=1mm] (r4) -- (v4); |
1375 %\node (v3) [left=of v4] {\bl{$v_3$}}; |
1371 \node (v3) [left=of v4] {\bl{$v_3$}}; |
1376 %\draw[->,line width=1mm] (v4) -- (v3) node[below,midway] {\bl{$inj\,c$}}; |
1372 \draw[->,line width=1mm] (v4) -- (v3) node[below,midway] {\bl{$inj\,c$}}; |
1377 %\node (v2) [left=of v3] {\bl{$v_2$}}; |
1373 \node (v2) [left=of v3] {\bl{$v_2$}}; |
1378 %\draw[->,line width=1mm] (v3) -- (v2) node[below,midway] {\bl{$inj\,b$}}; |
1374 \draw[->,line width=1mm] (v3) -- (v2) node[below,midway] {\bl{$inj\,b$}}; |
1379 %\node (v1) [left=of v2] {\bl{$v_1$}}; |
1375 \node (v1) [left=of v2] {\bl{$v_1$}}; |
1380 %\draw[->,line width=1mm] (v2) -- (v1) node[below,midway] {\bl{$inj\,a$}}; |
1376 \draw[->,line width=1mm] (v2) -- (v1) node[below,midway] {\bl{$inj\,a$}}; |
1381 %\draw[->,line width=0.5mm] (r3) -- (v3); |
1377 \draw[->,line width=0.5mm] (r3) -- (v3); |
1382 %\draw[->,line width=0.5mm] (r2) -- (v2); |
1378 \draw[->,line width=0.5mm] (r2) -- (v2); |
1383 %\draw[->,line width=0.5mm] (r1) -- (v1); |
1379 \draw[->,line width=0.5mm] (r1) -- (v1); |
1384 %\draw (r4) node[anchor=north west] {\;\raisebox{-8mm}{\bl{$mkeps$}}}; |
1380 \draw (r4) node[anchor=north west] {\;\raisebox{-8mm}{\bl{$mkeps$}}}; |
1385 %\end{tikzpicture} |
1381 \end{tikzpicture} |
1386 %\end{center} |
1382 \end{center} |
1387 % |
1383 |
1388 %\small |
1384 \small |
1389 %\hspace{4.5cm}\bl{$(b \cdot c) + (\ZERO + \ONE)$} |
1385 \hspace{4.5cm}\bl{$(b \cdot c) + (\ZERO + \ONE)$} |
1390 %$\mapsto$ |
1386 $\mapsto$ |
1391 %\bl{$(b \cdot c) + \ONE$} |
1387 \bl{$(b \cdot c) + \ONE$} |
1392 % |
1388 |
1393 %\end{frame} |
1389 \end{frame} |
1394 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1390 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1395 % |
1391 |
1396 %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1392 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1393 % \begin{frame}[t] |
1397 % \begin{frame}[t] |
1394 |
1398 |
1395 % \begin{center} |
1399 % \begin{center} |
1396 % \bl{$\only<1>{(b \cdot c)}% |
1400 % \bl{$\only<1>{(b \cdot c)}% |
1397 % \only<2-3>{(\underline{b \cdot c})}% |
1401 % \only<2-3>{(\underline{b \cdot c})}% |