comparison notes/tex/grammars.tex @ 16:a08f6e33cfb0

fourth sheet and notes
author Markus Kaiser <markus.kaiser@in.tum.de>
date Sat, 10 May 2014 19:39:01 +0200
parents de844d67518b
children 0f7daeda8363
comparison
equal deleted inserted replaced
15:60757c0ba1f0 16:a08f6e33cfb0
158 \begin{frame} 158 \begin{frame}
159 \frametitle{CNF} 159 \frametitle{CNF}
160 \setbeamercovered{dynamic} 160 \setbeamercovered{dynamic}
161 161
162 \begin{definition}[Chomsky-Normalform] 162 \begin{definition}[Chomsky-Normalform]
163 Eine kontextfreie Grammatik ist in \alert{Chomsky-Normalform} (CNF) genau dann wenn alle Produktionen die Form 163 Eine kontextfreie Grammatik ist in \structure{Chomsky-Normalform} (CNF) genau dann wenn alle Produktionen die Form
164 \[ 164 \[
165 A \rightarrow \alert{a} \quad \text{oder} \quad A \rightarrow \alert{BC} 165 A \rightarrow \alert{a} \quad \text{oder} \quad A \rightarrow \alert{BC}
166 \] 166 \]
167 haben. 167 haben.
168 \end{definition} 168 \end{definition}
181 \defineUnit{cnfkonstruktion}{% 181 \defineUnit{cnfkonstruktion}{%
182 \begin{frame} 182 \begin{frame}
183 \frametitle{CNF Konstruktion} 183 \frametitle{CNF Konstruktion}
184 \setbeamercovered{dynamic} 184 \setbeamercovered{dynamic}
185 185
186 \begin{block}{Idee} 186 \begin{block}{CNF Konstruktion}
187 Sei $G = (V, \Sigma, P, S)$ eine CFG. 187 Sei $G = (V, \Sigma, P, S)$ eine CFG.
188 \begin{enumerate} 188 \begin{enumerate}
189 \item<1,2-> Eliminiere \alert{$\epsilon$-Produktionen} 189 \item<1,2-> Eliminiere \alert{$\epsilon$-Produktionen}
190 \item<1,3-> Eliminiere \alert{Kettenproduktionen} 190 \item<1,3-> Eliminiere \alert{Kettenproduktionen}
191 \item<1,4-> \alert{Ersetze Terminale} durch Nichtterminale 191 \item<1,4-> \alert{Ersetze Terminale} durch Nichtterminale
267 \begin{frame} 267 \begin{frame}
268 \frametitle{Pumping Lemma für CFLs} 268 \frametitle{Pumping Lemma für CFLs}
269 \setbeamercovered{dynamic} 269 \setbeamercovered{dynamic}
270 270
271 \begin{theorem}[Pumping Lemma für kontextfreie Sprachen] 271 \begin{theorem}[Pumping Lemma für kontextfreie Sprachen]
272 Sei $L \subseteq \Sigma^*$ kontextfrei. Dann gibt es ein $n > 0$, so dass sich \alert{jedes} $z \in L$ mit $|z| \geq n$ so in \alert{$z = uvwxy$} zerlegen lässt, dass 272 Sei $L \subseteq \Sigma^*$ kontextfrei.\\
273 Dann gibt es ein $n > 0$, so dass sich \alert{jedes} $z \in L$ mit $|z| \geq n$ so in \alert{$z = uvwxy$} zerlegen lässt, dass
273 \begin{itemize} 274 \begin{itemize}
274 \item $vx \alert{\neq \epsilon}$ 275 \item $vx \alert{\neq \epsilon}$
275 \item $|vwx| \alert{\leq n}$ 276 \item $|vwx| \alert{\leq n}$
276 \item $\forall i \alert{\geq 0}. uv^iwx^iy \in L$ 277 \item $\forall i \alert{\geq 0}. uv^iwx^iy \in L$
277 \end{itemize} 278 \end{itemize}
337 \begin{frame} 338 \begin{frame}
338 \frametitle{CYK} 339 \frametitle{CYK}
339 \setbeamercovered{dynamic} 340 \setbeamercovered{dynamic}
340 341
341 \begin{definition}[Cocke-Younger-Kasami-Algorithmus] 342 \begin{definition}[Cocke-Younger-Kasami-Algorithmus]
342 Der \alert{CYK-Algorithmus} entscheidet das Wortproblem für kontextfreie Grammatiken in Chomsky-Normalform in $\Oh(n^3)$. \\ 343 Der \structure{CYK-Algorithmus} entscheidet das Wortproblem für kontextfreie Grammatiken in Chomsky-Normalform in $\Oh(n^3)$. \\
343 Gegeben eine \alert{Grammatik} $G = (V, \Sigma, P, S)$ in CNF und ein \alert{Wort} $w = a_1 \ldots a_n \in \Sigma^*$. 344 Gegeben eine \alert{Grammatik} $G = (V, \Sigma, P, S)$ in CNF und ein \alert{Wort} $w = a_1 \ldots a_n \in \Sigma^*$.
344 Mit \[ V_{ij} := \left\{ A \in V \mid A \rightarrow_G^* \alert{a_i \ldots a_j} \right\}\] 345 Mit \[ V_{ij} := \left\{ A \in V \mid A \rightarrow_G^* \alert{a_i \ldots a_j} \right\}\]
345 ist \[ w \in L(G) \Leftrightarrow S \in V_{\alert{1n}} \] 346 ist \[ w \in L(G) \Leftrightarrow S \in V_{\alert{1n}} \]
346 \end{definition} 347 \end{definition}
347 348
355 \defineUnit{cykbeispiel}{% 356 \defineUnit{cykbeispiel}{%
356 \begin{frame} 357 \begin{frame}
357 \frametitle{CYK} 358 \frametitle{CYK}
358 \setbeamercovered{dynamic} 359 \setbeamercovered{dynamic}
359 360
360 \begin{block}{Idee} 361 \begin{block}{CYK-Algorithmus}
361 Kombiniere \alert{Teilwörter} zum ganzen Wort, wenn möglich. 362 Kombiniere \alert{Teilwörter} zum ganzen Wort, wenn möglich.
362 \begin{enumerate} 363 \begin{enumerate}
363 \item Initialisiere mit den \alert{$V_{ii}$}. 364 \item Initialisiere mit den \alert{$V_{ii}$}.
364 \item<3-5> Befülle die Tabelle von unten nach oben. 365 \item<3-5> Befülle die Tabelle von unten nach oben.
365 \end{enumerate} 366 \end{enumerate}
366 \end{block} 367 \end{block}
367 368
368 \[ S \rightarrow AB \mid BC, \quad A \rightarrow BA \mid a, \quad B \rightarrow CC \mid b, \quad C \rightarrow AB \mid a \] 369 \[ S \rightarrow AB \mid BC, \quad A \rightarrow BA \mid a, \quad B \rightarrow CC \mid b, \quad C \rightarrow AB \mid a \]
370 \vspace{2em}
369 \begin{center} 371 \begin{center}
370 \extrarowsep=5pt 372 \extrarowsep=5pt
371 \begin{tabu}to .8\textwidth{r|X[c]|X[c]|X[c]|X[c]|} 373 \begin{tabu}to .8\textwidth{r|X[c]|X[c]|X[c]|X[c]|}
372 \tabucline{2-2} 374 \tabucline{2-2}
373 4 & \alt<-4>{}{$S,\ldots$} \\ \tabucline{2-3} 375 4 & \alt<-4>{}{$S,\ldots$} \\ \tabucline{2-3}