| author | Christian Urban <urbanc@in.tum.de> | 
| Tue, 25 Sep 2018 21:57:14 +0100 | |
| changeset 562 | 6705725c0f1a | 
| parent 517 | 2ba868eb95cc | 
| child 577 | 1d6043a87a3e | 
| permissions | -rw-r--r-- | 
| 23 | 1 | \documentclass{article}
 | 
| 264 
4deef8ac5d72
uodated hws
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
258diff
changeset | 2 | \usepackage{../style}
 | 
| 
4deef8ac5d72
uodated hws
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
258diff
changeset | 3 | \usepackage{../graphics}
 | 
| 23 | 4 | |
| 5 | \begin{document}
 | |
| 6 | ||
| 7 | \section*{Homework 3}
 | |
| 8 | ||
| 347 
22b5294daa2a
updated hws
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
294diff
changeset | 9 | \HEADER | 
| 
22b5294daa2a
updated hws
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
294diff
changeset | 10 | |
| 23 | 11 | \begin{enumerate}
 | 
| 401 
5d85dc9779b1
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
355diff
changeset | 12 | \item What is a regular language? Are there alternative ways | 
| 
5d85dc9779b1
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
355diff
changeset | 13 | to define this notion? If yes, give an explanation why | 
| 
5d85dc9779b1
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
355diff
changeset | 14 | they define the same notion. | 
| 267 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 15 | |
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 16 | \item Why is every finite set of strings a regular language? | 
| 132 
04264d0c43bb
added
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
102diff
changeset | 17 | |
| 401 
5d85dc9779b1
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
355diff
changeset | 18 | \item Assume you have an alphabet consisting of the letters | 
| 
5d85dc9779b1
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
355diff
changeset | 19 | $a$, $b$ and $c$ only. (1) Find a regular expression | 
| 
5d85dc9779b1
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
355diff
changeset | 20 | that recognises the two strings $ab$ and $ac$. (2) Find | 
| 
5d85dc9779b1
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
355diff
changeset | 21 | a regular expression that matches all strings | 
| 
5d85dc9779b1
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
355diff
changeset | 22 |       \emph{except} these two strings. Note, you can only use
 | 
| 
5d85dc9779b1
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
355diff
changeset | 23 | regular expressions of the form | 
| 258 
1e4da6d2490c
updated programs
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
146diff
changeset | 24 | |
| 267 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 25 |   \begin{center} $r ::=
 | 
| 401 
5d85dc9779b1
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
355diff
changeset | 26 | \ZERO \;|\; \ONE \;|\; c \;|\; r_1 + r_2 \;|\; | 
| 267 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 27 | r_1 \cdot r_2 \;|\; r^*$ | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 28 |   \end{center}
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 29 | |
| 401 
5d85dc9779b1
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
355diff
changeset | 30 | \item Define the function \textit{zeroable} which takes a
 | 
| 
5d85dc9779b1
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
355diff
changeset | 31 | regular expression as argument and returns a boolean. | 
| 
5d85dc9779b1
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
355diff
changeset | 32 | The function should satisfy the following property: | 
| 267 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 33 | |
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 34 |   \begin{center}
 | 
| 401 
5d85dc9779b1
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
355diff
changeset | 35 |     $\textit{zeroable(r)} \;\text{if and only if}\; 
 | 
| 
5d85dc9779b1
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
355diff
changeset | 36 |     L(r) = \{\}$
 | 
| 267 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 37 |   \end{center}
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 38 | |
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 39 | \item Given the alphabet $\{a,b\}$. Draw the automaton that has two
 | 
| 517 | 40 | states, say $Q_0$ and $Q_1$. The starting state is $Q_0$ and the | 
| 41 | final state is $Q_1$. The transition function is given by | |
| 258 
1e4da6d2490c
updated programs
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
146diff
changeset | 42 | |
| 267 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 43 |   \begin{center}
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 44 |     \begin{tabular}{l}
 | 
| 517 | 45 | $(Q_0, a) \rightarrow Q_0$\\ | 
| 46 | $(Q_0, b) \rightarrow Q_1$\\ | |
| 47 | $(Q_1, b) \rightarrow Q_1$ | |
| 267 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 48 |     \end{tabular}
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 49 |   \end{center}
 | 
| 258 
1e4da6d2490c
updated programs
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
146diff
changeset | 50 | |
| 267 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 51 | What is the language recognised by this automaton? | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 52 | |
| 355 
a259eec25156
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
347diff
changeset | 53 | \item Give a non-deterministic finite automaton that can | 
| 
a259eec25156
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
347diff
changeset | 54 | recognise the language $L(a\cdot (a + b)^* \cdot c)$. | 
| 267 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 55 | |
| 517 | 56 | \item Given a deterministic finite automaton $A(\varSigma, Q, Q_0, F, | 
| 355 
a259eec25156
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
347diff
changeset | 57 | \delta)$, define which language is recognised by this | 
| 
a259eec25156
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
347diff
changeset | 58 | automaton. Can you define also the language defined by a | 
| 
a259eec25156
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
347diff
changeset | 59 | non-deterministic automaton? | 
| 23 | 60 | |
| 355 
a259eec25156
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
347diff
changeset | 61 | \item Given the following deterministic finite automaton over | 
| 
a259eec25156
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
347diff
changeset | 62 |       the alphabet $\{a, b\}$, find an automaton that
 | 
| 
a259eec25156
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
347diff
changeset | 63 | recognises the complement language. (Hint: Recall that | 
| 
a259eec25156
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
347diff
changeset | 64 | for the algorithm from the lectures, the automaton needs | 
| 
a259eec25156
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
347diff
changeset | 65 | to be in completed form, that is have a transition for | 
| 
a259eec25156
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
347diff
changeset | 66 | every letter from the alphabet.) | 
| 264 
4deef8ac5d72
uodated hws
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
258diff
changeset | 67 | |
| 267 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 68 |   \begin{center}
 | 
| 292 
7ed2a25dd115
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
271diff
changeset | 69 |     \begin{tikzpicture}[>=stealth',very thick,auto,
 | 
| 
7ed2a25dd115
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
271diff
changeset | 70 |                         every state/.style={minimum size=0pt,
 | 
| 
7ed2a25dd115
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
271diff
changeset | 71 | inner sep=2pt,draw=blue!50,very thick, | 
| 
7ed2a25dd115
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
271diff
changeset | 72 | fill=blue!20},scale=2] | 
| 517 | 73 |       \node[state, initial]        (q0) at ( 0,1) {$Q_0$};
 | 
| 74 |       \node[state, accepting]  (q1) at ( 1,1) {$Q_1$};
 | |
| 267 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 75 |       \path[->] (q0) edge node[above] {$a$} (q1)
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 76 |                 (q1) edge [loop right] node {$b$} ();
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 77 |     \end{tikzpicture}
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 78 |   \end{center}
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 79 | |
| 264 
4deef8ac5d72
uodated hws
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
258diff
changeset | 80 | |
| 
4deef8ac5d72
uodated hws
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
258diff
changeset | 81 | |
| 267 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 82 | %\item Given the following deterministic finite automaton | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 83 | % | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 84 | %\begin{center}
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 85 | %\begin{tikzpicture}[scale=3, line width=0.7mm]
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 86 | %  \node[state, initial]        (q0) at ( 0,1) {$q_0$};
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 87 | %  \node[state,accepting]  (q1) at ( 1,1) {$q_1$};
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 88 | %  \node[state, accepting] (q2) at ( 2,1) {$q_2$};
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 89 | %  \path[->] (q0) edge node[above] {$b$} (q1)
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 90 | %                  (q1) edge [loop above] node[above] {$a$} ()
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 91 | %                  (q2) edge [loop above] node[above] {$a, b$} ()
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 92 | %                  (q1) edge node[above] {$b$} (q2)
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 93 | %                  (q0) edge[bend right] node[below] {$a$} (q2)
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 94 | % ; | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 95 | %\end{tikzpicture}
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 96 | %\end{center}
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 97 | %find the corresponding minimal automaton. State clearly which nodes | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 98 | %can be merged. | 
| 31 | 99 | |
| 355 
a259eec25156
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
347diff
changeset | 100 | \item Given the following non-deterministic finite automaton | 
| 
a259eec25156
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
347diff
changeset | 101 |       over the alphabet $\{a, b\}$, find a deterministic
 | 
| 
a259eec25156
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
347diff
changeset | 102 | finite automaton that recognises the same language: | 
| 267 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 103 | |
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 104 |   \begin{center}
 | 
| 292 
7ed2a25dd115
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
271diff
changeset | 105 |     \begin{tikzpicture}[>=stealth',very thick,auto,
 | 
| 
7ed2a25dd115
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
271diff
changeset | 106 |                         every state/.style={minimum size=0pt,
 | 
| 
7ed2a25dd115
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
271diff
changeset | 107 | inner sep=2pt,draw=blue!50,very thick, | 
| 
7ed2a25dd115
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
271diff
changeset | 108 | fill=blue!20},scale=2] | 
| 517 | 109 |       \node[state, initial]        (q0) at ( 0,1) {$Q_0$};
 | 
| 110 |       \node[state]                    (q1) at ( 1,1) {$Q_1$};
 | |
| 111 |       \node[state, accepting] (q2) at ( 2,1) {$Q_2$};
 | |
| 267 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 112 |       \path[->] (q0) edge node[above] {$a$} (q1)
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 113 |                 (q0) edge [loop above] node[above] {$b$} ()
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 114 |                 (q0) edge [loop below] node[below] {$a$} ()
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 115 |                 (q1) edge node[above] {$a$} (q2);
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 116 |     \end{tikzpicture}
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 117 |   \end{center}
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 118 | |
| 517 | 119 | \item \textbf{(Deleted for 2017)}
 | 
| 120 | Given the following deterministic finite automaton over the | |
| 271 
b9b54574ee41
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
267diff
changeset | 121 |   alphabet $\{0, 1\}$, find the corresponding minimal automaton. In
 | 
| 
b9b54574ee41
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
267diff
changeset | 122 | case states can be merged, state clearly which states can be merged. | 
| 
b9b54574ee41
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
267diff
changeset | 123 | |
| 
b9b54574ee41
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
267diff
changeset | 124 |   \begin{center}
 | 
| 292 
7ed2a25dd115
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
271diff
changeset | 125 |     \begin{tikzpicture}[>=stealth',very thick,auto,
 | 
| 
7ed2a25dd115
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
271diff
changeset | 126 |                         every state/.style={minimum size=0pt,
 | 
| 
7ed2a25dd115
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
271diff
changeset | 127 | inner sep=2pt,draw=blue!50,very thick, | 
| 
7ed2a25dd115
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
271diff
changeset | 128 | fill=blue!20},scale=2] | 
| 517 | 129 |       \node[state, initial]        (q0) at ( 0,1) {$Q_0$};
 | 
| 130 |       \node[state]                    (q1) at ( 1,1) {$Q_1$};
 | |
| 131 |       \node[state, accepting] (q4) at ( 2,1) {$Q_4$};
 | |
| 132 |       \node[state]                    (q2) at (0.5,0) {$Q_2$};
 | |
| 133 |       \node[state]                    (q3) at (1.5,0) {$Q_3$};
 | |
| 271 
b9b54574ee41
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
267diff
changeset | 134 |       \path[->] (q0) edge node[above] {$0$} (q1)
 | 
| 
b9b54574ee41
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
267diff
changeset | 135 |                 (q0) edge node[right] {$1$} (q2)
 | 
| 
b9b54574ee41
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
267diff
changeset | 136 |                 (q1) edge node[above] {$0$} (q4)
 | 
| 
b9b54574ee41
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
267diff
changeset | 137 |                 (q1) edge node[right] {$1$} (q2)
 | 
| 
b9b54574ee41
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
267diff
changeset | 138 |                 (q2) edge node[above] {$0$} (q3)
 | 
| 
b9b54574ee41
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
267diff
changeset | 139 |                 (q2) edge [loop below] node {$1$} ()
 | 
| 
b9b54574ee41
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
267diff
changeset | 140 |                 (q3) edge node[left] {$0$} (q4)
 | 
| 
b9b54574ee41
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
267diff
changeset | 141 |                 (q3) edge [bend left=95, looseness = 2.2] node [left=2mm] {$1$} (q0)
 | 
| 
b9b54574ee41
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
267diff
changeset | 142 |                 (q4) edge [loop right] node {$0, 1$} ();
 | 
| 
b9b54574ee41
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
267diff
changeset | 143 |     \end{tikzpicture}
 | 
| 
b9b54574ee41
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
267diff
changeset | 144 |   \end{center}
 | 
| 
b9b54574ee41
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
267diff
changeset | 145 | |
| 267 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 146 | \item Given the following finite deterministic automaton over the alphabet $\{a, b\}$:
 | 
| 264 
4deef8ac5d72
uodated hws
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
258diff
changeset | 147 | |
| 267 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 148 |   \begin{center}
 | 
| 292 
7ed2a25dd115
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
271diff
changeset | 149 |     \begin{tikzpicture}[scale=2,>=stealth',very thick,auto,
 | 
| 
7ed2a25dd115
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
271diff
changeset | 150 |                         every state/.style={minimum size=0pt,
 | 
| 
7ed2a25dd115
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
271diff
changeset | 151 | inner sep=2pt,draw=blue!50,very thick, | 
| 
7ed2a25dd115
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
271diff
changeset | 152 | fill=blue!20}] | 
| 517 | 153 |       \node[state, initial, accepting]        (q0) at ( 0,1) {$Q_0$};
 | 
| 154 |       \node[state, accepting]                    (q1) at ( 1,1) {$Q_1$};
 | |
| 155 |       \node[state] (q2) at ( 2,1) {$Q_2$};
 | |
| 267 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 156 |       \path[->] (q0) edge[bend left] node[above] {$a$} (q1)
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 157 |                 (q1) edge[bend left] node[above] {$b$} (q0)
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 158 |                 (q2) edge[bend left=50] node[below] {$b$} (q0)
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 159 |                 (q1) edge node[above] {$a$} (q2)
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 160 |                 (q2) edge [loop right] node {$a$} ()
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 161 |                 (q0) edge [loop below] node {$b$} ()
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 162 | ; | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 163 |     \end{tikzpicture}
 | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 164 |   \end{center}
 | 
| 31 | 165 | |
| 267 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 166 | Give a regular expression that can recognise the same language as | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 167 | this automaton. (Hint: If you use Brzozwski's method, you can assume | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 168 | Arden's lemma which states that an equation of the form $q = q\cdot r + s$ | 
| 
a1544b804d1e
updated homeworks
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
264diff
changeset | 169 | has the unique solution $q = s \cdot r^*$.) | 
| 294 
c29853b672fb
updated hws
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
292diff
changeset | 170 | |
| 
c29853b672fb
updated hws
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
292diff
changeset | 171 | \item If a non-deterministic finite automaton (NFA) has | 
| 
c29853b672fb
updated hws
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
292diff
changeset | 172 | $n$ states. How many states does a deterministic | 
| 
c29853b672fb
updated hws
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
292diff
changeset | 173 | automaton (DFA) that can recognise the same language | 
| 
c29853b672fb
updated hws
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
292diff
changeset | 174 | as the NFA maximal need? | 
| 
c29853b672fb
updated hws
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
292diff
changeset | 175 | |
| 444 
3056a4c071b0
updated
 Christian Urban <christian dot urban at kcl dot ac dot uk> parents: 
401diff
changeset | 176 | \item \POSTSCRIPT | 
| 23 | 177 | \end{enumerate}
 | 
| 178 | ||
| 179 | \end{document}
 | |
| 180 | ||
| 181 | %%% Local Variables: | |
| 182 | %%% mode: latex | |
| 183 | %%% TeX-master: t | |
| 184 | %%% End: |