[2] | 1 | %
|
---|
| 2 | % $Id: report.tex 571 2008-04-20 17:31:04Z rick $
|
---|
| 3 | %
|
---|
| 4 |
|
---|
| 5 | \documentclass[12pt,a4paper]{article}
|
---|
| 6 |
|
---|
| 7 | \frenchspacing
|
---|
| 8 | \usepackage[english,dutch]{babel}
|
---|
| 9 | \selectlanguage{dutch}
|
---|
[224] | 10 | \usepackage[pdftex]{graphicx}
|
---|
[2] | 11 | \usepackage{url}
|
---|
| 12 | \usepackage{amssymb,amsmath}
|
---|
[224] | 13 | \usepackage{float}
|
---|
[226] | 14 | \usepackage{tikz}
|
---|
[227] | 15 | \usepackage{fixltx2e}
|
---|
[2] | 16 |
|
---|
[226] | 17 | \usetikzlibrary{arrows,decorations.pathmorphing,backgrounds,positioning,fit,petri}
|
---|
| 18 |
|
---|
| 19 |
|
---|
| 20 |
|
---|
| 21 | \setlength\parindent{0pt}
|
---|
| 22 | \setlength\parskip{\baselineskip}
|
---|
[224] | 23 | \floatstyle{ruled}
|
---|
| 24 | \newfloat{algoritm}{thp}{lop}
|
---|
| 25 | \floatname{algoritm}{Algoritme}
|
---|
| 26 |
|
---|
[238] | 27 | \title{Opdracht 2 \\
|
---|
[224] | 28 | \large{Topics on Parsing and Formal Languages - fall 2010}}
|
---|
[2] | 29 | \author{Rick van der Zwet\\
|
---|
[224] | 30 | \texttt{<hvdzwet@liacs.nl>}}
|
---|
[2] | 31 | \date{\today}
|
---|
| 32 |
|
---|
[224] | 33 |
|
---|
[2] | 34 | \begin{document}
|
---|
[224] | 35 | \newcommand{\DFA}{\emph{DFA}~}
|
---|
| 36 | \newcommand{\qed}{\hfill \ensuremath{\Box}}
|
---|
[238] | 37 | \newcommand{\all}{\Sigma^*}
|
---|
[2] | 38 | \maketitle
|
---|
[224] | 39 | \begin{abstract}
|
---|
| 40 | Dit schrijven zal uitwerkingen van opgaven behandelen uit het boek
|
---|
| 41 | \cite{JS2009} gebruikt bij het college. In deze opdracht zullen zeven opgaven
|
---|
[239] | 42 | (9, 18, 24, 26, 32, 37, 41) van hoofdstuk 4 behandeld worden. De opgaven zijn
|
---|
[238] | 43 | willekeurig gekozen met behulp van een kans generator, het kan dus zijn dat
|
---|
| 44 | niet alle onderwerpen van hoofdstuk 4 behandeld worden.
|
---|
[224] | 45 | \end{abstract}
|
---|
[2] | 46 |
|
---|
[238] | 47 | \section{Opgave 4.9}
|
---|
| 48 | Laat $L \subseteq \all$ de taal zijn en defineer $\sigma(L) = \{x \in \all : xy
|
---|
| 49 | \in voor~alle~y \in \all\}$. Als $L$ context-vrij is $\sigma(L)$ ook
|
---|
| 50 | context-vrij. Omdat $y = \all$ is dit een reguliere taal. $xy$ zal dan een
|
---|
| 51 | context-vrije taal zijn (gesloten onder concatenatie). $xy \in L$ is vereniging
|
---|
| 52 | van $xy$ met $L$, welke onder context-vrije talen gesloten is. Hierdoor zal
|
---|
| 53 | $\sigma(L)$ (een subset) ook weer context-vrij zijn.
|
---|
[224] | 54 |
|
---|
| 55 |
|
---|
[238] | 56 | \section{Opgave 4.18}
|
---|
| 57 | Als $L$ een context-vrije taal is en $R$ een reguliere taal dan de rechter
|
---|
| 58 | quotient $L/R = \{x \in \all: \exists y \in R~zodat~xy \in L \}$ is ook een
|
---|
| 59 | context-vrije taal. $xy$ zijn de woorden in $L$ waarbij geldt dat de suffix
|
---|
| 60 | $y$ regulier is. Stel dat $x$ geen context-vrije taal was. Dan zou $xy$ ook
|
---|
| 61 | geen context-vrije taal zijn. Wat niet kan welke $L$ context-vrij is en in die
|
---|
| 62 | hoedanigheid ook de subsets van $L$.
|
---|
[224] | 63 |
|
---|
[238] | 64 | \section{Opgave 4.24}
|
---|
| 65 | Als $s^{[-1]}(L) := \{x : s(x) \cap L \neq \emptyset\}$ en $s$ verbind letters
|
---|
| 66 | met reguliere talen en $L$ is context-vrij. Dan is $s^{[-1]}(L)$ niet altijd
|
---|
| 67 | CFL, L een een verzameling kan zijn van alle talen van de letters waarbij geldt
|
---|
| 68 | dat de lengte van de letters even moet zijn, welke geen context-vrije
|
---|
| 69 | verzameling is.
|
---|
[226] | 70 |
|
---|
[238] | 71 | Hetzelfde probleem doet voor als $s$ letters aan context-vrije talen verbindt.
|
---|
[226] | 72 |
|
---|
[238] | 73 | \section{Opgave 4.26}
|
---|
| 74 | Gegeven een PDA $M$ kan je altijd een $M^{'}$ maken welke de eigenschap heeft dat
|
---|
| 75 | geen enkele stap het huidige symbool op de stapel vervangt (geen transities van
|
---|
| 76 | de vorm $(p,\gamma Y) \in \delta(q,a,X)~waarbij~X \neq Y$). Dus dat alle
|
---|
| 77 | stappen, of een symbool van de stapel afhalen, of een string van symbolen op
|
---|
| 78 | de stapel zetten. Dit is te doen door de hudige 'subsitutie' transities te
|
---|
| 79 | vervangen door een tweetal (gekoppelde) transities. Waarbij de eerste het
|
---|
| 80 | symbool eraf haalt en de tweede de gewenste symbolen er weer op zet.
|
---|
[226] | 81 |
|
---|
[238] | 82 | De bovengenoemde methode zorgt voor maar \'e\'en mogelijk pad. Er zal de de
|
---|
| 83 | DPDA structuur (indien present) dus niet aantasten.
|
---|
[226] | 84 |
|
---|
| 85 |
|
---|
[238] | 86 | \section{Opgave 4.32}
|
---|
| 87 | Als $\psi$ een Parikh map is, dan zijn er lange Engelse woorden over een bepaald
|
---|
| 88 | alfabet voor specifieke eigenschappen. Voorbeelden zijn te vinden in de onderstaande tabel.
|
---|
[226] | 89 |
|
---|
[238] | 90 | \begin{tabular}{l | l | l }
|
---|
| 91 | eigenschap & woorden & alfabet \\
|
---|
| 92 | \hline \hline
|
---|
| 93 | $\psi(w)$ alle items gelijk aan 1 & dutchwomen & $\{d,u,t,c,h,w,o,m,e,n\}$\\
|
---|
| 94 | $\psi(w)$ alle items gelijk aan 2 & tomtom & $\{t,o,m\}$\\
|
---|
| 95 | $\psi(w)$ alle items gelijk aan 3 & sestettes & $\{s,e,t\}$\\
|
---|
| 96 | $\psi(w)$ alle items $\ge$ 2 & unprosperousness & $\{e,n,o,p,r,s,u\}$\\
|
---|
| 97 | $\psi(w)$ $(1,2,2,3,3,3)$ & chincherinchee & $\{r,i,n,c,h,e\}$\\
|
---|
| 98 | \end{tabular}
|
---|
[226] | 99 |
|
---|
| 100 |
|
---|
[239] | 101 | \section{Opgave 4.37}
|
---|
| 102 | perm($x$) is de set van alle permutaties van de letters van $x$. Voor talen is
|
---|
| 103 | perm($L$) := $\bigcup_{x\in L}$ perm($x$). perm($L$) is niet context-vrij als
|
---|
| 104 | $L$ de reguliere taal is \{$x \in a^*b^*c^*$ : $|x|_a,|x|_b,|x|_c$ even zijn\}.
|
---|
[226] | 105 |
|
---|
[239] | 106 | [Dit is handen wapperen, ik zou graag wel willen weten hoe dit bewezen
|
---|
| 107 | kan worden] Als $L$ echter een reguliere taal over een alfabet van twee
|
---|
| 108 | symbolen is, dan zal perm($L$) context-vrij zijn. Welke de reguliere taal,
|
---|
| 109 | maximaal \'e\'en complexe relatie kan aangaan en wel namelijk tussen de twee
|
---|
| 110 | symbolen in. Alle andere gevallen (enkel relatie \'e\'en symbool) is er maar
|
---|
| 111 | een enkelvoudige afhankelijk gecodeerd. Pak bijvoorbeeld de ingewikkende
|
---|
| 112 | \{$x \in a^*b^*$ : $|x|_a,|x|_b$ even zijn\}. De permutatie van bijvoorbeeld
|
---|
| 113 | $aabb$ zullen zijn ${aabb,abba,abab,baba,baab,bbaa}$, waarbij in het
|
---|
| 114 | context-vrije domain een analoge taal ontstaan, waarbij het aantal a `even'
|
---|
| 115 | moet zijn om te accepteren en het aantal b gelijk aan het aantal `a'.
|
---|
[226] | 116 |
|
---|
[238] | 117 | \section{Opgave 4.41}
|
---|
[239] | 118 | Om te bewijzen dat, de taal van alle woorden over de $\{0,1\}$ welke geen
|
---|
| 119 | prefixen zijn van een Thue-Morse woord context-vrij is, moet er gekeken worden
|
---|
| 120 | naar het meer generieke geval. Thue-Morse woorden zijn overlap-vrij, een
|
---|
| 121 | context-vrije taal alle woorden opsomt welke een overlap bevatten is dus
|
---|
| 122 | voldoende. Woorden met een overlap bevatten de serie $cxcxc$ waarbij $c$ een
|
---|
| 123 | letter is en $x$ een woord, de overlap is dan $cxc$. De taal van de woorden
|
---|
| 124 | ziet er dus als volgt uit: $\{0,1\}^*1x1x\{0,1\}^*$ of $\{0,1\}^*0x0x\{0,1\}^*$
|
---|
| 125 | waarbij $x := \{0,1\}\{0,1\}^*$. Beiden delen zijn met een (niet
|
---|
| 126 | determistische) gramatica te maken, door expansitie te doen vanuit `het
|
---|
| 127 | midden'. Waarbij te denken is aan een soortgelijke setup (a,b ipv 0,1):
|
---|
| 128 | \begin{verbatim}
|
---|
| 129 | S -> JMJ
|
---|
| 130 | J -> aJ|bJ|a|b
|
---|
| 131 | M -> aOa|bPb
|
---|
| 132 | O -> aOa|bOb|a
|
---|
| 133 | P -> aPa|bPb|b
|
---|
| 134 | \end{verbatim}
|
---|
[227] | 135 |
|
---|
| 136 |
|
---|
[224] | 137 | \begin{thebibliography}{1}
|
---|
| 138 | \bibitem[JS2009]{JS2009}Jeffrey Shallit, \emph{A second course in formal
|
---|
| 139 | languages and automata theory }, \emph{Cambridge University Press}, 2009.
|
---|
[2] | 140 | \end{thebibliography}
|
---|
| 141 | \newpage
|
---|
| 142 | \end{document}
|
---|