1092 \bl{$L(\ZERO)$} & \bl{$\dn$} & \bl{$\{\}$}\\ |
1148 \bl{$L(\ZERO)$} & \bl{$\dn$} & \bl{$\{\}$}\\ |
1093 \bl{$L(\ONE)$} & \bl{$\dn$} & \bl{$\{[]\}$}\\ |
1149 \bl{$L(\ONE)$} & \bl{$\dn$} & \bl{$\{[]\}$}\\ |
1094 \bl{$L(c)$} & \bl{$\dn$} & \bl{$\{[c]\}$}\\ |
1150 \bl{$L(c)$} & \bl{$\dn$} & \bl{$\{[c]\}$}\\ |
1095 \bl{$L(r_1 + r_2)$} & \bl{$\dn$} & \bl{$L(r_1) \cup L(r_2)$}\\ |
1151 \bl{$L(r_1 + r_2)$} & \bl{$\dn$} & \bl{$L(r_1) \cup L(r_2)$}\\ |
1096 \bl{$L(r_1 \cdot r_2)$} & \bl{$\dn$} & \bl{$\{ s_1 \,@\, s_2 \;|\; s_1 \in L(r_1) \wedge s_2 \in L(r_2) \}$}\\ |
1152 \bl{$L(r_1 \cdot r_2)$} & \bl{$\dn$} & \bl{$\{ s_1 \,@\, s_2 \;|\; s_1 \in L(r_1) \wedge s_2 \in L(r_2) \}$}\\ |
1097 \bl{$L(r^*)$} & \bl{$\dn$} & \onslide<4->{\bl{$\bigcup_{0 \le n} L(r)^n$}}\\ |
1153 \bl{$L(r^*)$} & \bl{$\dn$} & \onslide<2->{\bl{$\bigcup_{0 \le n} L(r)^n$}}\\ |
1098 \end{tabular}\bigskip |
1154 \end{tabular}\bigskip |
1099 |
1155 |
1100 \onslide<2->{ |
1156 %\onslide<2->{ |
1101 \hspace{5mm}\bl{$L(r)^0 \;\dn\; \{[]\}$}\\ |
1157 %\hspace{5mm}\bl{$L(r)^0 \;\dn\; \{[]\}$}\\ |
1102 \bl{$L(r)^{n+1} \;\dn\; L(r) \,@\, L(r)^n$}\hspace{9mm}\onslide<3->{\small\textcolor{gray}{(append on sets)}\\ |
1158 %\bl{$L(r)^{n+1} \;\dn\; L(r) \,@\, L(r)^n$}\hspace{9mm}\onslide<3->{\small\textcolor{gray}{(append on sets)}\\ |
1103 \small\hspace{5cm}\textcolor{gray}{$\{ s_1 @ s_2 \;|\; s_1\in L(r) \wedge s_2 \in L(r)^n \}$}} |
1159 %\small\hspace{5cm}\textcolor{gray}{$\{ s_1 @ s_2 \;|\; s_1\in L(r) \wedge s_2 \in L(r)^n \}$}} |
1104 } |
1160 %} |
1105 \end{textblock} |
1161 \end{textblock} |
1106 |
1162 |
1107 \end{frame} |
1163 \end{frame} |
1108 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1164 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1109 |
1165 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1110 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1166 \begin{frame}[c] |
1111 \begin{frame}[c] |
1167 \frametitle{The Star Operation} |
1112 \frametitle{The Meaning of Matching} |
|
1113 |
|
1114 \begin{bubble}[10cm] |
|
1115 \large\bf |
|
1116 A regular expression \bl{$r$} matches a string~\bl{$s$} |
|
1117 provided |
|
1118 |
|
1119 \begin{center} |
|
1120 \bl{$s \in L(r)$}\\ |
|
1121 \end{center} |
|
1122 \end{bubble}\bigskip\bigskip |
|
1123 |
|
1124 \ldots and the point of the next lecture is |
|
1125 to decide this problem as fast as possible (unlike Python, |
|
1126 Ruby, Java) |
|
1127 |
|
1128 \end{frame} |
|
1129 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1130 |
|
1131 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1132 \begin{frame}[c] |
|
1133 \frametitle{The Power Operation} |
|
1134 |
1168 |
1135 \begin{itemize} |
1169 \begin{itemize} |
1136 \item The \alert{\textbf{\boldmath$n$th Power}} of a language: |
1170 \item The \alert{\bf Kleene Star} of a \underline{language}: |
|
1171 \bigskip |
1137 |
1172 |
1138 \begin{center} |
1173 \begin{center} |
1139 \begin{tabular}{lcl} |
1174 \begin{tabular}{c} |
1140 \bl{$A^0$} & \bl{$\dn$} & \bl{$\{[]\}$}\\ |
1175 \bl{$A\star \dn \bigcup_{0\le n} A^n$} |
1141 \bl{$A^{n+1}$} & \bl{$\dn$} & \bl{$A \,@\, A^n$} |
|
1142 \end{tabular} |
1176 \end{tabular} |
1143 \end{center}\bigskip |
1177 \end{center}\bigskip |
1144 |
1178 |
1145 \item[] For example |
1179 \item[] This expands to |
1146 |
1180 |
1147 \begin{center} |
1181 \[ |
1148 \begin{tabular}{lcl@{\hspace{10mm}}l} |
1182 \bl{A^0 \cup A^1 \cup A^2 \cup A^3 \cup A^4 \cup \ldots} |
1149 \bl{$A^4$} & \bl{$=$} & \bl{$A \,@\, A \,@\, A \,@\, A$} & \bl{$(@\,\{[]\})$}\\ |
1183 \] |
1150 \bl{$A^1$} & \bl{$=$} & \bl{$A$} & \bl{$(@\,\{[]\})$}\\ |
1184 |
1151 \bl{$A^0$} & \bl{$=$} & \bl{$\{[]\}$}\\ |
1185 or |
1152 \end{tabular} |
1186 |
1153 \end{center} |
1187 \small |
|
1188 \[ |
|
1189 \bl{\{[]\} \;\cup\; A \;\cup\; A\,@\,A \;\cup\; |
|
1190 A\,@\,A\,@\,A \;\cup\; A\,@\,A\,@\,A\,@\,A \cup \ldots} |
|
1191 \] |
1154 |
1192 |
1155 \end{itemize} |
1193 \end{itemize} |
1156 |
1194 |
1157 \end{frame} |
1195 \end{frame} |
1158 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1196 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1159 |
|
1160 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1161 \begin{frame}[c] |
|
1162 \frametitle{Questions} |
|
1163 |
|
1164 \begin{itemize} |
|
1165 \item Say \bl{$A = \{[a],[b],[c],[d]\}$}.\bigskip |
|
1166 |
|
1167 \item[] |
|
1168 How many strings are in \bl{$A^4$}\,? |
|
1169 \bigskip\medskip\pause |
|
1170 |
|
1171 |
|
1172 \item[] |
|
1173 What if \bl{$A = \{[a],[b],[c],[]\}$};\\ |
|
1174 how many strings are then in \bl{$A^4$}\,? |
|
1175 \end{itemize} |
|
1176 |
|
1177 \end{frame} |
|
1178 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1179 |
|
1180 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1181 \begin{frame}[c] |
|
1182 \frametitle{Languages (Sets of Strings)} |
|
1183 |
|
1184 \begin{itemize} |
|
1185 |
|
1186 \item A \alert{\bf Language} is a set of strings, for example\medskip |
|
1187 \begin{center} |
|
1188 \bl{$\{[], hello, foobar, a, abc\}$} |
|
1189 \end{center}\bigskip |
|
1190 |
|
1191 \item \alert{\bf Concatenation} for strings and languages |
|
1192 |
|
1193 \begin{center} |
|
1194 \begin{tabular}{rcl} |
|
1195 \bl{$foo\;@\;bar$} & \bl{$=$} & \bl{$foobar$}\medskip\\ |
|
1196 \bl{$A\;@\;B$} & \bl{$\dn$} & \bl{$\{ s_1\,@\,s_2 \;\mid\; s_1 \in A \wedge s_2 \in B\}$} |
|
1197 \end{tabular} |
|
1198 \end{center} |
|
1199 \bigskip |
|
1200 |
|
1201 \small |
|
1202 \item [] For example \bl{$A = \{foo, bar\}$}, \bl{$B = \{a, b\}$} |
|
1203 |
|
1204 \[ |
|
1205 \bl{A \,@\, B = \{fooa, foob, bara, barb\}} |
|
1206 \] |
|
1207 |
|
1208 \end{itemize} |
|
1209 \end{frame} |
|
1210 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1211 |
|
1212 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1213 \begin{frame}[c] |
|
1214 \frametitle{Two Corner Cases} |
|
1215 |
|
1216 \Large |
|
1217 \begin{center} |
|
1218 \bl{$A \,@\, \{[]\} = \;?$}\bigskip\bigskip\pause\\ |
|
1219 \bl{$A \,@\, \{\} = \;?$} |
|
1220 \end{center} |
|
1221 |
|
1222 \end{frame} |
|
1223 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1224 |
|
1225 |
|
1226 |
1197 |
1227 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1198 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1228 \begin{frame}[c] |
1199 \begin{frame}[c] |
1229 \frametitle{The Meaning of a Regex} |
1200 \frametitle{The Meaning of a Regex} |
1230 |
1201 |
1231 ...all the strings a regular expression can match. |
1202 \begin{textblock}{15}(1,4) |
1232 |
|
1233 \begin{center} |
|
1234 \begin{tabular}{rcl} |
1203 \begin{tabular}{rcl} |
1235 \bl{$L(\ZERO)$} & \bl{$\dn$} & \bl{$\{\}$}\\ |
1204 \bl{$L(\ZERO)$} & \bl{$\dn$} & \bl{$\{\}$}\\ |
1236 \bl{$L(\ONE)$} & \bl{$\dn$} & \bl{$\{[]\}$}\\ |
1205 \bl{$L(\ONE)$} & \bl{$\dn$} & \bl{$\{[]\}$}\\ |
1237 \bl{$L(c)$} & \bl{$\dn$} & \bl{$\{[c]\}$}\\ |
1206 \bl{$L(c)$} & \bl{$\dn$} & \bl{$\{[c]\}$}\\ |
1238 \bl{$L(r_1 + r_2)$} & \bl{$\dn$} & \bl{$L(r_1) \cup L(r_2)$}\\ |
1207 \bl{$L(r_1 + r_2)$} & \bl{$\dn$} & \bl{$L(r_1) \cup L(r_2)$}\\ |
1239 \bl{$L(r_1 \cdot r_2)$} & \bl{$\dn$} & \bl{$L(r_1) \,@\, L(r_2)$}\\ |
1208 \bl{$L(r_1 \cdot r_2)$} & \bl{$\dn$} & \bl{$\{ s_1 \,@\, s_2 \;|\; s_1 \in L(r_1) \wedge s_2 \in L(r_2) \}$}\\ |
1240 \bl{$L(r^*)$} & \bl{$\dn$} & \\ |
1209 \bl{$L(r^*)$} & \bl{$\dn$} & \bl{$(L(r))\star$}\\ |
1241 \end{tabular} |
1210 \end{tabular} |
|
1211 |
|
1212 \end{textblock} |
|
1213 |
|
1214 \end{frame} |
|
1215 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1216 |
|
1217 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1218 \begin{frame}[c] |
|
1219 \frametitle{The Meaning of Matching} |
|
1220 |
|
1221 \begin{bubble}[10cm] |
|
1222 \large\bf |
|
1223 A regular expression \bl{$r$} matches a string~\bl{$s$} |
|
1224 provided |
|
1225 |
|
1226 \begin{center} |
|
1227 \bl{$s \in L(r)$}\\ |
1242 \end{center} |
1228 \end{center} |
1243 |
1229 \end{bubble}\bigskip\bigskip |
1244 \begin{textblock}{14}(1.5,13.5)\small |
1230 |
1245 \bl{$L$} is a function from regular expressions to |
1231 \ldots and the point of the next lecture is |
1246 sets of strings (languages):\smallskip\\ |
1232 to decide this problem as fast as possible (unlike Python, |
1247 \bl{\quad$L$ : Rexp $\Rightarrow$ Set$[$String$]$} |
1233 Ruby, Java) |
1248 \end{textblock} |
1234 |
1249 |
1235 \end{frame} |
1250 \end{frame} |
1236 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1251 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1237 |
1252 |
1238 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1253 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1239 \begin{frame}[c] |
1254 \begin{frame}[c] |
1240 \frametitle{Questions} |
1255 \frametitle{The Power Operation} |
1241 |
1256 |
1242 \begin{itemize} |
1257 \begin{itemize} |
1243 \item Say \bl{$A = \{[a],[b],[c],[d]\}$}.\bigskip |
1258 \item The \alert{\textbf{\boldmath$n$th Power}} of a language: |
1244 |
1259 |
1245 \item[] |
1260 \begin{center} |
1246 How many strings are in \bl{$A^4$}\,? |
1261 \begin{tabular}{lcl} |
1247 \bigskip\medskip\pause |
1262 \bl{$A^0$} & \bl{$\dn$} & \bl{$\{[]\}$}\\ |
1248 |
1263 \bl{$A^{n+1}$} & \bl{$\dn$} & \bl{$A \,@\, A^n$} |
1249 |
1264 \end{tabular} |
1250 \item[] |
1265 \end{center}\bigskip |
1251 What if \bl{$A = \{[a],[b],[c],[]\}$};\\ |
1266 |
1252 how many strings are then in \bl{$A^4$}\,? |
1267 \item[] For example |
1253 \end{itemize} |
1268 |
1254 |
1269 \begin{center} |
1255 \end{frame} |
1270 \begin{tabular}{lcl@{\hspace{10mm}}l} |
1256 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1271 \bl{$A^4$} & \bl{$=$} & \bl{$A \,@\, A \,@\, A \,@\, A$} & \bl{$(@\,\{[]\})$}\\ |
1257 |
1272 \bl{$A^1$} & \bl{$=$} & \bl{$A$} & \bl{$(@\,\{[]\})$}\\ |
1258 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1273 \bl{$A^0$} & \bl{$=$} & \bl{$\{[]\}$}\\ |
1259 % \begin{frame}[c] |
1274 \end{tabular} |
1260 % \frametitle{Languages (Sets of Strings)} |
1275 \end{center} |
1261 |
1276 |
1262 % \begin{itemize} |
1277 \end{itemize} |
1263 |
1278 |
1264 % \item A \alert{\bf Language} is a set of strings, for example\medskip |
1279 \end{frame} |
1265 % \begin{center} |
|
1266 % \bl{$\{[], hello, foobar, a, abc\}$} |
|
1267 % \end{center}\bigskip |
|
1268 |
|
1269 % \item \alert{\bf Concatenation} for strings and languages |
|
1270 |
|
1271 % \begin{center} |
|
1272 % \begin{tabular}{rcl} |
|
1273 % \bl{$foo\;@\;bar$} & \bl{$=$} & \bl{$foobar$}\medskip\\ |
|
1274 % \bl{$A\;@\;B$} & \bl{$\dn$} & \bl{$\{ s_1\,@\,s_2 \;\mid\; s_1 \in A \wedge s_2 \in B\}$} |
|
1275 % \end{tabular} |
|
1276 % \end{center} |
|
1277 % \bigskip |
|
1278 |
|
1279 % \small |
|
1280 % \item [] For example \bl{$A = \{foo, bar\}$}, \bl{$B = \{a, b\}$} |
|
1281 |
|
1282 % \[ |
|
1283 % \bl{A \,@\, B = \{fooa, foob, bara, barb\}} |
|
1284 % \] |
|
1285 |
|
1286 |
|
1287 |
|
1288 |
|
1289 % \end{itemize} |
|
1290 % \end{frame} |
|
1291 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1292 |
|
1293 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1294 % \begin{frame}[c] |
|
1295 % \frametitle{Two Corner Cases} |
|
1296 |
|
1297 % \Large |
|
1298 % \begin{center} |
|
1299 % \bl{$A \,@\, \{[]\} = \;?$}\bigskip\bigskip\pause\\ |
|
1300 % \bl{$A \,@\, \{\} = \;?$} |
|
1301 % \end{center} |
|
1302 |
|
1303 % \end{frame} |
|
1304 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1305 |
|
1306 |
|
1307 |
|
1308 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1309 % \begin{frame}[c] |
|
1310 % \frametitle{The Meaning of a Regex} |
|
1311 |
|
1312 % ...all the strings a regular expression can match. |
|
1313 |
|
1314 % \begin{center} |
|
1315 % \begin{tabular}{rcl} |
|
1316 % \bl{$L(\ZERO)$} & \bl{$\dn$} & \bl{$\{\}$}\\ |
|
1317 % \bl{$L(\ONE)$} & \bl{$\dn$} & \bl{$\{[]\}$}\\ |
|
1318 % \bl{$L(c)$} & \bl{$\dn$} & \bl{$\{[c]\}$}\\ |
|
1319 % \bl{$L(r_1 + r_2)$} & \bl{$\dn$} & \bl{$L(r_1) \cup L(r_2)$}\\ |
|
1320 % \bl{$L(r_1 \cdot r_2)$} & \bl{$\dn$} & \bl{$L(r_1) \,@\, L(r_2)$}\\ |
|
1321 % \bl{$L(r^*)$} & \bl{$\dn$} & \\ |
|
1322 % \end{tabular} |
|
1323 % \end{center} |
|
1324 |
|
1325 % \begin{textblock}{14}(1.5,13.5)\small |
|
1326 % \bl{$L$} is a function from regular expressions to |
|
1327 % sets of strings (languages):\smallskip\\ |
|
1328 % \bl{\quad$L$ : Rexp $\Rightarrow$ Set$[$String$]$} |
|
1329 % \end{textblock} |
|
1330 |
|
1331 % \end{frame} |
|
1332 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1333 |
|
1334 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1335 % \begin{frame}[c] |
|
1336 % \frametitle{The Power Operation} |
|
1337 |
|
1338 % \begin{itemize} |
|
1339 % \item The \alert{\textbf{\boldmath$n$th Power}} of a language: |
|
1340 |
|
1341 % \begin{center} |
|
1342 % \begin{tabular}{lcl} |
|
1343 % \bl{$A^0$} & \bl{$\dn$} & \bl{$\{[]\}$}\\ |
|
1344 % \bl{$A^{n+1}$} & \bl{$\dn$} & \bl{$A \,@\, A^n$} |
|
1345 % \end{tabular} |
|
1346 % \end{center}\bigskip |
|
1347 |
|
1348 % \item[] For example |
|
1349 |
|
1350 % \begin{center} |
|
1351 % \begin{tabular}{lcl@{\hspace{10mm}}l} |
|
1352 % \bl{$A^4$} & \bl{$=$} & \bl{$A \,@\, A \,@\, A \,@\, A$} & \bl{$(@\,\{[]\})$}\\ |
|
1353 % \bl{$A^1$} & \bl{$=$} & \bl{$A$} & \bl{$(@\,\{[]\})$}\\ |
|
1354 % \bl{$A^0$} & \bl{$=$} & \bl{$\{[]\}$}\\ |
|
1355 % \end{tabular} |
|
1356 % \end{center} |
|
1357 |
|
1358 % \end{itemize} |
|
1359 |
|
1360 % \end{frame} |
1280 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1361 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1281 |
1362 |
1282 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1363 |
1283 \begin{frame}[c] |
|
1284 \frametitle{The Star Operation} |
|
1285 |
|
1286 \begin{itemize} |
|
1287 \item The \alert{\bf Kleene Star} of a \underline{language}: |
|
1288 \bigskip |
|
1289 |
|
1290 \begin{center} |
|
1291 \begin{tabular}{c} |
|
1292 \bl{$A\star \dn \bigcup_{0\le n} A^n$} |
|
1293 \end{tabular} |
|
1294 \end{center}\bigskip |
|
1295 |
|
1296 \item[] This expands to |
|
1297 |
|
1298 \[ |
|
1299 \bl{A^0 \cup A^1 \cup A^2 \cup A^3 \cup A^4 \cup \ldots} |
|
1300 \] |
|
1301 |
|
1302 or |
|
1303 |
|
1304 \small |
|
1305 \[ |
|
1306 \bl{\{[]\} \;\cup\; A \;\cup\; A\,@\,A \;\cup\; |
|
1307 A\,@\,A\,@\,A \;\cup\; A\,@\,A\,@\,A\,@\,A \cup \ldots} |
|
1308 \] |
|
1309 |
|
1310 \end{itemize} |
|
1311 |
|
1312 \end{frame} |
|
1313 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
1314 |
|
1315 |
1364 |
1316 |
1365 |
1317 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1366 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1318 \begin{frame}[c] |
1367 % \begin{frame}[c] |
1319 \frametitle{Written Exam} |
1368 % \frametitle{Written Exam} |
1320 |
1369 |
1321 \begin{itemize} |
1370 % \begin{itemize} |
1322 \item Accounts for 80\%.\bigskip |
1371 % \item Accounts for 80\%.\bigskip |
1323 |
1372 |
1324 \item The question ``\textit{Is this relevant for |
1373 % \item The question ``\textit{Is this relevant for |
1325 the exam?}'' is very demotivating for the lecturer!\bigskip\\ |
1374 % the exam?}'' is very demotivating for the lecturer!\bigskip\\ |
1326 |
1375 |
1327 \item Deal: Whatever is in the homework (and is not marked |
1376 % \item Deal: Whatever is in the homework (and is not marked |
1328 ``\textit{optional}'') is relevant for the exam.\bigskip |
1377 % ``\textit{optional}'') is relevant for the exam.\bigskip |
1329 |
1378 |
1330 \item Each lecture has also a handout. There are also handouts about |
1379 % \item Each lecture has also a handout. There are also handouts about |
1331 notation and Scala. |
1380 % notation and Scala. |
1332 \end{itemize} |
1381 % \end{itemize} |
1333 |
1382 |
1334 \end{frame} |
1383 % \end{frame} |
1335 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1384 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1336 |
1385 |
1337 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1386 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1338 \begin{frame}[t] |
1387 % \begin{frame}[t] |
1339 \frametitle{Coursework} |
1388 % \frametitle{Coursework} |
1340 |
1389 |
1341 \begin{itemize} |
1390 % \begin{itemize} |
1342 \item Accounts for 20\%. Two strands. Choose \alert{\bf one}!\bigskip |
1391 % \item Accounts for 20\%. Two strands. Choose \alert{\bf one}!\bigskip |
1343 \end{itemize} |
1392 % \end{itemize} |
1344 |
1393 |
1345 \begin{columns}[t] |
1394 % \begin{columns}[t] |
1346 \begin{column}{.5\textwidth} |
1395 % \begin{column}{.5\textwidth} |
1347 \underline{\bf Strand 1}\medskip |
1396 % \underline{\bf Strand 1}\medskip |
1348 \begin{itemize} |
1397 % \begin{itemize} |
1349 \item 4 programming tasks: |
1398 % \item 4 programming tasks: |
1350 \begin{itemize} |
1399 % \begin{itemize} |
1351 \item matcher (4\%, 11.10.) |
1400 % \item matcher (4\%, 11.10.) |
1352 \item lexer (5\%, 04.11.) |
1401 % \item lexer (5\%, 04.11.) |
1353 \item parser (5\%, 22.11.) |
1402 % \item parser (5\%, 22.11.) |
1354 \item compiler (6\%, 13.12.) |
1403 % \item compiler (6\%, 13.12.) |
1355 \end{itemize} |
1404 % \end{itemize} |
1356 \item in any lang.~you like,\\ but I want to see the\\ code |
1405 % \item in any lang.~you like,\\ but I want to see the\\ code |
1357 \end{itemize} |
1406 % \end{itemize} |
1358 \end{column} |
1407 % \end{column} |
1359 |
1408 |
1360 \hspace{-45pt}\vrule{}\hspace{10pt} |
1409 % \hspace{-45pt}\vrule{}\hspace{10pt} |
1361 \begin{column}{.5\textwidth} |
1410 % \begin{column}{.5\textwidth} |
1362 \underline{\bf Strand 2}\smallskip\begin{itemize} |
1411 % \underline{\bf Strand 2}\smallskip\begin{itemize} |
1363 \item one task: prove the correctness of a regular expression matcher in |
1412 % \item one task: prove the correctness of a regular expression matcher in |
1364 the \underline{Isabelle} theorem prover |
1413 % the \underline{Isabelle} theorem prover |
1365 \item 20\%, submission on~13.12.\hspace{-5mm}\mbox{} |
1414 % \item 20\%, submission on~13.12.\hspace{-5mm}\mbox{} |
1366 \end{itemize} |
1415 % \end{itemize} |
1367 \end{column} |
1416 % \end{column} |
1368 \end{columns}\medskip |
1417 % \end{columns}\medskip |
1369 |
1418 |
1370 \small |
1419 % \small |
1371 \begin{itemize} |
1420 % \begin{itemize} |
1372 \item Solving more than one strand will {\bf not} give you more |
1421 % \item Solving more than one strand will {\bf not} give you more |
1373 marks. |
1422 % marks. |
1374 |
1423 |
1375 \end{itemize} |
1424 % \end{itemize} |
1376 |
1425 |
1377 \end{frame} |
1426 % \end{frame} |
1378 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1427 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1379 |
1428 |
1380 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1429 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
1381 %\begin{frame}[c] |
1430 %\begin{frame}[c] |
1382 %\frametitle{Lecture Capture} |
1431 %\frametitle{Lecture Capture} |