hw04.tex
author Christian Urban <urbanc@in.tum.de>
Fri, 12 Oct 2012 05:45:48 +0100
changeset 33 92b3e287d87e
parent 32 d085fe0c086f
child 34 eeff9953a1c1
permissions -rw-r--r--
slides 4

\documentclass{article}
\usepackage{charter}
\usepackage{hyperref}
\usepackage{amssymb}
\usepackage{amsmath}

\newcommand{\dn}{\stackrel{\mbox{\scriptsize def}}{=}}% for definitions

\begin{document}

\section*{Homework 4}

\begin{enumerate}
\item Give an automaton that can recognise the language 
$L(a^*\cdot b\cdot b^*\cdot(a\cdot a^*\cdot b\cdot b^*)^*)$.

\item Assume that $s^{-1}$ stands for the operation of reversing a
string $s$. Given the following \emph{reversing} function on regular 
expressions

and the set

\begin{center}
$Rev\,A \dn \{s^{-1} \;|\; s \in A\}$
\end{center}

prove that

\begin{center}
$L(rev(r)) = Rev (L(r))$
\end{center}

holds.

\item Palindromes

\item (Optional) The tokenizer in \texttt{regexp3.scala} takes as
argument a string and a list of rules. The result is a list of tokens. Improve this tokenizer so 
that it filters out all comments and whitespace from the result.

\item (Optional) Modify the tokenizer in \texttt{regexp2.scala} so that it
implements the \texttt{findAll} function. This function takes a regular
expressions and a string, and returns all substrings in this string that 
match the regular expression.
\end{enumerate}



\end{document}

%%% Local Variables: 
%%% mode: latex
%%% TeX-master: t
%%% End: