hws/hw01.tex
changeset 876 771396fa6cc4
parent 841 564840440523
child 878 6722cd24c784
--- a/hws/hw01.tex	Fri Sep 16 12:52:21 2022 +0100
+++ b/hws/hw01.tex	Thu Sep 29 20:54:02 2022 +0100
@@ -2,6 +2,11 @@
 \documentclass{article}
 \usepackage{../style}
 
+\newcommand{\solution}[1]{%
+  \begin{quote}\sf%
+    #1%
+  \end{quote}}
+
 \begin{document}
 
 \section*{Homework 1}
@@ -47,11 +52,21 @@
       strings and languages. In the context of the CFL-course,
       what is meant by the term \emph{language}?
 
+      \solution{A language - in this context - is just a set of
+        strings. Some of these sets can actually not be described by
+        regular expressions. Only regular​ languages can. This is
+        something for lecture 3.}
+      
 \item Give the definition for regular expressions---this is an
       inductive datatype. What is the
       meaning of a regular expression? (Hint: The meaning is
       defined recursively.)
 
+      \solution{Here I would also expect the grammar for basic regular
+        expressions and the definition of the recursive L-function. Discuss
+        differences between $r_1 + r_2$ and $r^+$. Discuss differences between
+      ``real-life regexes'' and regexes in this module.}
+
 \item Assume the concatenation operation of two strings is
       written as $s_1 @ s_2$. Define the operation of
       \emph{concatenating} two sets of strings. This operation
@@ -59,24 +74,38 @@
       this definition, what is $A \,@\, \{\}$ equal to?
       Is in general $A\,@\,B$ equal to $B\,@\,A$?
 
+      \solution{ What is $A @ {[]}$? Are there special cases
+      where $A @ B = B @ A$? }
+
 \item Assume a set $A$ contains 4 strings and a set $B$
       contains 7 strings. None of the strings is the empty
       string. How many strings are in $A \,@\, B$?
 
+      \solution{28, but there are corner cases where there are fewer
+        than 28 elements. Can students think of such corner cases?
+      For example $A = \{a, ab, \ldots\}$, $B = \{bc, c,\ldots\}$ }
+
 \item How is the power of a language defined? (Hint: There are two
   rules, one for $\_^0$ and one for $\_^{n+1}$.)
 
+     \solution{Two rules: 0-case and n+1 case.}
+
 \item Let $A = \{[a], [b], [c], [d]\}$. (1) How many strings
       are in $A^4$? (2) Consider also the case of $A^4$ where one of
       the strings in $A$ is the empty string, for example $A =
       \{[a], [b], [c], []\}$.
 
+      \solution{121 is correct. But make sure you understand why it is 121
+        in cases you do not have a computer at your fingertips.}
+
 \item (1) How many basic regular expressions are there to match
       \textbf{only} the string $abcd$? (2) How many if they cannot include
       $\ONE$ and $\ZERO$? (3) How many if they are also not
       allowed to contain stars? (4) How many if they are also
       not allowed to contain $\_ + \_$?
 
+      \solution{1-3 are infinite (tell the idea why - examples); 4 is five - remember regexes are trees.}
+      
 \item When are two regular expressions equivalent? Can you
       think of instances where two regular expressions match
       the same strings, but it is not so obvious that they do?
@@ -84,9 +113,14 @@
       obviously match the same strings, namely $[a]$ and
       $[b]$.
 
+      \solution{for example $r^* = 1 + r \cdot r^*$ for any regular expression $r$.
+        Can students think about why this is the case?}
+
 \item What is meant by the notions \emph{evil regular expressions}
   and by \emph{catastrophic backtracking}?
 
+  \solution{catastrophic backtracking also applies to other regexes, not just $(a^*)^*b$}
+
 \item Given the regular expression $(a + b)^* \cdot b \cdot (a + b)^*$,
   which of the following regular expressions are equivalent
 
@@ -97,6 +131,8 @@
   3) & $(a + b)^* \cdot (a + b) \cdot (a + b)^*$           % no
 \end{tabular}
 \end{center}
+
+  \solution{no, yes (why?), no.}
   
 
 \item \POSTSCRIPT