2017-12-28 23:06:55 +01:00
% Compile twice!
2017-12-29 01:17:04 +01:00
% With the current MiKTeX, you need to install the beamer, and the translator packages directly form the package manager!
2017-12-28 23:06:55 +01:00
\documentclass { beamer}
2017-12-30 23:54:57 +01:00
2018-01-02 02:13:55 +01:00
\geometry { paperwidth=160mm,paperheight=160mm}
2017-12-30 23:54:57 +01:00
2017-12-28 23:06:55 +01:00
\usepackage { tikz}
2017-12-30 00:33:32 +01:00
\usetikzlibrary { shapes,arrows}
2017-12-28 23:06:55 +01:00
\usepackage [T1] { fontenc}
\usepackage { amsfonts}
\usepackage { amsmath}
\usepackage [utf8] { inputenc}
\usetheme { boxes}
2017-12-30 00:33:32 +01:00
% tikz settings for the flowchart(s)
\tikzstyle { decision} = [diamond, minimum width=3cm, minimum height=1cm, text centered, draw=black, fill=green!15]
\tikzstyle { block} = [rectangle, draw, fill=blue!15, text width=20em, text centered, minimum height=1em]
\tikzstyle { line} = [draw, -latex']
\tikzstyle { cloud} = [draw, ellipse,fill=red!20, node distance=3cm,
minimum height=2em]
\tikzstyle { arrow} = [thick,->,>=stealth]
2017-12-28 23:06:55 +01:00
\begin { document}
\begin { frame} [plain]
\begin { tikzpicture} [overlay, remember picture]
\node [anchor=center] at (current page.center) {
\begin { beamercolorbox} [center]{ title}
2017-12-29 01:17:04 +01:00
{ \Huge A Számítástudomány Alapjai I} \\
2017-12-28 23:06:55 +01:00
{ \Large Vizsgatételek}
\end { beamercolorbox} } ;
\end { tikzpicture}
\end { frame}
2017-12-30 00:33:32 +01:00
% -------------------- LOGIKA --------------------
2017-12-28 23:06:55 +01:00
\begin { frame} [plain]
\begin { tikzpicture} [overlay, remember picture]
\node [anchor=center] at (current page.center) {
\begin { beamercolorbox} [center]{ title}
2017-12-29 01:17:04 +01:00
{ \Huge Logika}
2017-12-28 23:06:55 +01:00
\end { beamercolorbox} } ;
\end { tikzpicture}
\end { frame}
2018-01-09 15:44:46 +01:00
\begin { frame}
\begin { block} { (Ítélet) változók, Logikai szimbólumok, Elválasztó szimbólumok, Logikai formula}
\bigskip
\textbf { (Ítélet) változók:} $ p _ 1 , p _ 2 , ... $ \\
\hspace { 1ex} \textbf { Jel: } $ Var = \{ p _ 1 , p _ 2 , ... \} $ \\
\bigskip
\textbf { Logikai szimbólumok:} $ { \neg } , { \land } , { \lor } , { \Rightarrow } , { \iff } . $ \\
\bigskip
\textbf { Elválasztó szimbólumok:} $ ( , ) $ \\
\bigskip
\textbf { Logikai Formula:} Minden változó formula, továbbá ha $ A, B $ formula, akkor:\\
\textbf { $ { \neg } A, ( A \land B ) , ( A \lor B ) , ( A \Rightarrow B ) , ( A \iff B ) $ } is formula.\\
\bigskip
Legyen $ Form $ az összes formula halmaza.
\end { block}
\begin { block} { Megj}
\textbf { Precedencia:} \\
\bigskip
$ 1 . { \neg } , 2 . { \land } , 3 . { \lor } $ \\
\bigskip
$ A \Rightarrow B \equiv { \neg } A \lor B $ \\
$ ( A \iff B ) \equiv ( A \Rightarrow B ) \land ( B \Rightarrow A ) \equiv ( { \neg } A \lor B ) \land ( { \neg } B \lor A ) $ \\
\bigskip
(Az $ \equiv $ jel itt a jobb elválasztást szolgálja, de egyébként alapból használható ugyanarra mint az $ \iff $ jel!)
\end { block}
\end { frame}
2017-12-28 23:06:55 +01:00
\begin { frame}
2017-12-29 01:17:04 +01:00
\begin { block} { Tétel: Minden formula egyértelműen olvasható}
F formulára a következő állítások közül pontosan egy teljesül:
2017-12-28 23:06:55 +01:00
\begin { enumerate}
2017-12-29 01:17:04 +01:00
\item F egy változó.
\item Pontosan egy G formulára $ F = \neg G $
\item Pontosan egy G és pontosan egy H formuláta $ F = ( G \land H ) $
2017-12-30 00:33:32 +01:00
\item Pontosan egy G és pontosan egy H formulára $ F = ( G \lor H ) $
2017-12-28 23:06:55 +01:00
\end { enumerate}
\end { block}
\end { frame}
2018-01-09 15:44:46 +01:00
\begin { frame}
\begin { block} { Részformula, Közvetlen részformula}
Ha $ F $ és formulákra $ f = G _ 1 GG _ 2 $ , alkalmas $ G _ 1 , G _ 2 , E ( G ) $ szavakra, ($ G _ 1 , G _ 2 $ üres szavak is lehetnek!)\\
akkor $ G $ \textbf { részformulája} $ F $ -nek.\\
\bigskip
A tétel 2-4 pontjában szereplő $ G $ és $ H $ \textbf { közvetlen részformulái} $ F $ -nek.
\end { block}
\end { frame}
\begin { frame}
\begin { block} { Hozzárendelés}
Egy $ A : Var \rightarrow \{ 0 , 1 \} $ leképzést \textbf { hozzárendelésnek} nevezünk.\\
\bigskip
$ A : Form \rightarrow \{ 0 , 1 \} $ kiterjesztéshez legyen $ F $ formula.\\
\begin { enumerate}
\item Ha $ F = p $ valamely $ p \in Var $ esetén, akkor $ A ( F ) = A ( p ) $ .
\item Ha $ F = { \neg } G $ akkor $
\begin { cases}
{ \delta } (q, a) & q \in Q $ és $ q \notin F\\
{ \delta } (q, a) & q \in F$ és $ a \neq \epsilon \\
{ \delta } (q, a) \cup \{ q0\} & q \in F$ és $ a = \epsilon \\
\{ q_ 0\} & q = s_ 0$ és $ a = \epsilon \\
\emptyset & q = s_ 0$ és $ a \neq \epsilon \\
\end { cases}
$
\end { enumerate}
\end { block}
\end { frame}
2017-12-28 23:06:55 +01:00
\begin { frame}
2017-12-29 01:17:04 +01:00
\begin { block} { Tétel: Az ítéletkalkulus kompaktsági tétele}
Egy formulahalmaz akkor és csak akkor elégíthető ki, ha minden véges részhalmaza kielégíthető.
2017-12-28 23:06:55 +01:00
\end { block}
2017-12-29 01:17:04 +01:00
\begin { block} { Tétel: Adekvát halmazok}
$ \{ \neg , \lor , \land \} , \{ \neg , \lor \} , \{ \neg , \land \} $ adekvát (azaz bármilyen formula leírható ezekkel), $ \{ \lor , \land \} $ nem adekvát.
2017-12-28 23:06:55 +01:00
\end { block}
\end { frame}
\begin { frame}
2017-12-29 01:17:04 +01:00
\begin { block} { tétel: Equivalens állítások formulákra}
Legyenek $ F, F _ 1 , ... , F _ n $ tetszőleges formulák, ekkor a következő állítások equivalensek:
2017-12-28 23:06:55 +01:00
2017-12-29 01:17:04 +01:00
\begin { enumerate}
\item $ \{ F _ 1 , ... , F _ n \} \models F $
2018-01-09 15:44:46 +01:00
\item $ F _ 1 \land ... \land F _ n \rightarrow F $ tautológia
2017-12-29 01:17:04 +01:00
\item $ F _ 1 \land ... \land F _ n \land \neg F $ kielégíthetetlen.
\end { enumerate}
2017-12-28 23:06:55 +01:00
\end { block}
\end { frame}
\begin { frame}
2017-12-29 01:17:04 +01:00
\begin { block} { Lemma: Helyettesítési Lemma}
2018-01-02 23:06:06 +01:00
Legyenek $ F, G, H $ formulák úgy, hogy $ F \equiv G $ és $ F $ a $ H $ részformulája.\\
2017-12-29 01:17:04 +01:00
Ha $ H [ F / G ] $ azt a formulát jelöli, amelyben $ F $ valamely előfordulását helyettesítettük $ G $ -vel, akkor
$$ H \equiv H [ F / G ] $$
2017-12-28 23:06:55 +01:00
\end { block}
\end { frame}
\begin { frame}
2017-12-29 01:17:04 +01:00
\begin { block} { Tétel: Konjunktív és diszjunktív normálforma létezése}
Minden $ F $ Formulához létezik vele logikailag ekvivalens konjunktív és diszjunktív normálforma.
2017-12-28 23:06:55 +01:00
\end { block}
\begin { block} { Bizonyítás}
2017-12-29 01:17:04 +01:00
Konjunktív:
\begin { enumerate}
\item (Negáció bevitele.) Amíg lehetséges, helyettesítsük $ F $ -ben a
\begin { itemize}
\item $ \neg \neg G $ alakú részformulákat $ G $ -vel,
\item $ \neg ( G \land H ) $ alakú részformulákat $ \neg G \lor \neg H $ -val,
\item $ \neg ( G \lor H ) $ alakú részformulákat $ \neg G \land \neg H $ -val.
\end { itemize}
\item Amíg lehetséges, helyettesítsük $ F $ -ben a
\begin { itemize}
\item $ F \lor ( G \land H ) $ alakú részformulákat $ ( F \lor G ) \land ( F \lor H ) $ -val,
\item $ ( F \land G ) \lor H $ alakú részformulákat $ ( F \lor H ) \land ( G \lor H ) $ -val.
\end { itemize}
\end { enumerate}
2017-12-28 23:06:55 +01:00
2017-12-29 01:17:04 +01:00
Diszjunktív:
\begin { enumerate}
\item Ugyanaz mint a konjunktív normálforma esetén.
\item Amíg lehetséges, helyettesítsük $ F $ -ben a
\begin { itemize}
\item $ F \land ( G \lor H ) $ alakú részformulákat $ ( F \land G ) \lor ( F \land H ) $ -val,
\item $ ( F \lor G ) \land H $ alakú részformulákat $ ( F \land H ) \lor ( G \land H ) $ -val.
\end { itemize}
\end { enumerate}
2017-12-28 23:06:55 +01:00
\end { block}
\end { frame}
2017-12-30 00:33:32 +01:00
\begin { frame}
\begin { block} { Tétel: Dedukció tétel}
Tetszőleges $ \Sigma $ formulahalmaz esetén $ \Sigma \vdash F \rightarrow G $ akkor és csak akkor teljesül, ha $ \Sigma \cup \{ F \} \vdash G $ .
\end { block}
\begin { block} { Tétel: Dichotómia tétel}
Tetszőleges $ \Sigma $ formulahalmaz esetén, ha $ \Sigma \cup \{ F \} \vdash $ (levezethető) $ G $ és $ \Sigma \cup \{ \neg F \} \vdash G $ , akkor $ \Sigma \vdash G $ .\\
("Az $ F $ Formula nem szól bele").
\end { block}
\begin { block} { Tétel: Helyességi tétel}
Tetszőleges $ \Sigma $ és $ F $ esetén, ha $ \Sigma \vdash F $ , akkor $ \Sigma \models F $ .\\
(Helyes, ha csak az elélethez tartozó formulákat lehet bizonyítani.)
\end { block}
\begin { block} { Tétel: Teljességi tétel}
Minden $ \Sigma $ -ra és $ F $ -re, ha $ \Sigma \models F $ , akkor $ \Sigma \vdash F $ .\\
(Teljes, ha minden, az elmélethez tartozó formulát be lehet bizonyítani.)
\end { block}
\begin { block} { Tétel: Konzisztencia tétel}
Tetszőleges formulahalmaz, akkor és csak akkor konzisztens, ha kielégíthető.\\
(Konzisztens, ha nem vezethető le belőle a $ \downarrow $ .)
\end { block}
\end { frame}
% -------------------- GRÁFELMÉLET --------------------
\begin { frame} [plain]
\begin { tikzpicture} [overlay, remember picture]
\node [anchor=center] at (current page.center) {
\begin { beamercolorbox} [center]{ title}
{ \Huge Gráfelmélet}
\end { beamercolorbox} } ;
\end { tikzpicture}
\end { frame}
\begin { frame}
\begin { block} { Tétel: Fokszám-Élszám}
Legyen $ G = ( V, E ) $ (Gráf). Ekkor $ G $ -ben a páratlan fokú csúcsok száma páros.
\end { block}
\begin { block} { Bizonyítás}
2018-01-09 15:44:46 +01:00
$$ \sum _ { a \in V } d ( a ) = \sum _ { d ( a ) \equiv 0 ( mod 2 ) } d ( a ) + \sum _ { d ( a ) \equiv 1 ( mod 2 ) } d ( a ) \equiv 0 ( mod 2 ) $$
2017-12-30 00:33:32 +01:00
amiből kapjuk, hogy $$ \sum _ { d ( a ) \equiv 1 ( mod 2 ) } d ( a ) \equiv 0 ( mod 2 ) $$ .
\end { block}
\end { frame}
\begin { frame}
\begin { block} { Tétel: Equivalens állítások fákra}
Egy $ G $ egyszerű gráfra a következő állítások equivalensek:
\begin { enumerate}
\item $ G $ Fa
\item $ G $ Összefüggő, de bármely él elhagyásával kapott részgráf már nem összefüggő.
\item Ha $ v, v' $ a $ G $ különböző csúcsai, akkor pontosan egy út vezet $ v $ -ből $ v' $ be.
\item $ G $ -ben nincs kör, de bármely új él hozzáadásával kapott gráf már tartalmaz kört.
\end { enumerate}
\end { block}
\begin { block} { Tétel: Elsőfokú pontok}
Ha egy véges gráfban nincs kör, de van él, akkor van benne legalább két elsőfokú pont.
\end { block}
\end { frame}
\begin { frame}
\begin { block} { Tétel: Ekvivalens állítások n-pontú fákra}
Egy $ G $ egyszerű gráfra a következő álítások ekvivalensek:
\begin { enumerate}
\item $ G $ fa.
\item $ G $ -ben nincs kör és $ n - 1 $ éle van.
\item $ G $ összefüggő és $ n - 1 $ éle van.
\end { enumerate}
\end { block}
\begin { block} { Tétel: Feszítőfa létezése}
Minden véges összefüggő $ G $ gráfnak létezik feszítőfája.
\end { block}
\end { frame}
\begin { frame}
\begin { block} { Tétel: Körök száma}
Egy véges összefüggő $ G = ( E, V ) $ gráfban létezik \underline { legalább} $ e ( G ) - v ( G ) + 1 $ különböző kör.
\end { block}
\begin { block} { Bizonyítás}
A feszítőfa létezése téltel miatt ($ \Rightarrow $ ) $ \exists T $ feszítőfa, aminek $ v ( G ) - 1 $ éle van.\\
Legyen $ K _ f $ az a kör, ami $ T \cup \{ f \} $ -ben van, ahol $ f \in E ( G ) \setminus E ( T ) $ \\
$ T _ G $ komplementerben legalább $ e ( G ) - e ( T ) = e ( G ) - ( v ( G ) - 1 ) = e ( G ) - v ( G ) - 1 $ ilyen $ f $ él van.\\
$ \Rightarrow $ legalább $ e ( G ) - v ( G ) + 1 $ különbző kör.
\end { block}
\end { frame}
\begin { frame}
\begin { block} { Tétel: Vágások száma}
Egy véges összefüggő $ G = ( V, E ) $ gráfban létezik legalább $ v ( G ) - 1 $ vágás.
\end { block}
\begin { block} { Bizonyítás}
$ T $ Feszítőfa összefüggő.\\
$ \Rightarrow $ $ T _ G $ komplementer nem vágás.\\
2018-01-09 15:44:46 +01:00
Ha $ T _ G $ komplementerhez hozzáveszünk egy $ e $ élt $ T $ -ből, akkor elvágó élhalmazt kapunk, amely tartalmaz egy vágást.\\
2017-12-30 00:33:32 +01:00
Ez a vágás tartalmazza $ e $ élt, de másikat nem $ T $ ből.\\
Mivel $ T $ -nek $ v ( G ) - 1 $ éle van $ \Rightarrow $ legalább ennyi különböző vágást kapunk.
\end { block}
\end { frame}
\begin { frame}
\begin { block} { Tétel: Euler gráfok}
Ha $ G $ összefüggő véges gráf, akkor a következő állítások ekvivalensek:\\
\begin { enumerate}
\item $ G $ Euler-gráf.
\item $ d ( v ) $ páros minden $ v \in V ( G ) $ -re.
\item $ G $ éldiszjunkt körök egyesítése.
\end { enumerate}
\end { block}
\end { frame}
\begin { frame}
\begin { block} { Tétel: Ore tétel}
Legyen $ G $ egy $ n \geq 3 $ pontú egyszerű véges gráf. Ha $$ d ( v ) + d ( w ) \geq n $$ minden $ v $ , $ w $ nem-szomszédos pontra, akkor $ G $ Hamilton-gráf.
\end { block}
\begin { block} { Tétel: Dirac tétel}
Legyen $ G $ egy $ n \geq 3 $ pontú egyszerű véges gráf. Ha $$ d ( v ) \geq \frac { n } { 2 } $$ minden $ v $ csúcsra, akkor $ G $ Hamilton-gráf.
\end { block}
\end { frame}
\begin { frame}
\begin { block} { Tétel: Kruskal algoritmus}
2018-01-09 15:44:46 +01:00
Legyen $ G = ( V, E, { \phi } , w ) $ egy véges összefüggő gráf. A következő algoritmus megtalál egy minimális súlyú feszítőfát $ G $ -ben.
2017-12-30 00:33:32 +01:00
\end { block}
\begin { tikzpicture} [node distance = 2cm, auto]
% Place nodes
\node [block] (step1) { \tiny { $ V ( F ) = V ( G ) $ és $ E ( F ) = \emptyset $ .} } ;
2018-01-09 15:44:46 +01:00
\node [block, below of=step1] (step2) { \tiny { Bővítsük $ F $ -et egy $ e \in G $ éllel, amely minimális súlyú azon élek közül, amelyek F-hez adva még nem eredményeznek kört.} } ;
2017-12-30 00:33:32 +01:00
\node [decision, below of=step2] (step3) { \tiny { Van még ilyen él?} } ;
\node [block, below of=step3] (step4) { \tiny { STOP} } ;
\draw [arrow] (step1) -- (step2);
\draw [arrow] (step2) -- (step3);
\draw [arrow] (step3) -- node { Nem} (step4);
\draw [arrow] (step3) -- node { Igen} + (5, 0.1) |- (step2);
\end { tikzpicture}
\end { frame}
\begin { frame}
\begin { block} { Tétel: Erős összefüggőség}
2017-12-30 23:54:57 +01:00
Egy összefüggő gráf akkor, és csak akkor irányítható úgy, hogy erősen összefüggő legyen, ha minden \textbf { éléhez} tartozik rajta áthaladó kör.
\end { block}
\end { frame}
\begin { frame}
\begin { block} { Tétel: Minimális fokszáma síkgráfban.}
Ha $ G $ egyszerű, síkba rajzolható gráf, akkor $$ \delta = \min _ { { q \in V ( G ) } } d ( a ) \leq 5 $$
\end { block}
\begin { block} { Bizonyítás (Indirekt)}
TFH $ \delta \geq 6 $ .
Az általánosság megsértése nélkül feltehetjük, hogy $ v ( G ) \geq 3 $ .\\
$ \sum _ { { a \in V ( G ) } } d ( a ) = 2 e ( G ) $ (fokok száma = 2 x az élek száma)\\
Mivel $ \delta \geq 6 \implies 6 v ( G ) \leq 2 e ( G ) $ \\
A síkgráf élszáma tételből következik, hogy:\\
2018-01-09 15:44:46 +01:00
$ 2 e ( G ) \leq 6 v ( G ) - 12 . $ \\
\bigskip
$ 2 e ( G ) \leq 6 v ( G ) - 12 $ \hspace { 1ex} $ / * 2 $ \\
2017-12-30 23:54:57 +01:00
$ 6 v ( G ) \leq 6 v ( G ) - 12 $ $ \rightarrow $ Ellentmondás!
\end { block}
\end { frame}
\begin { frame}
2018-01-09 15:44:46 +01:00
\begin { block} { Tétel: Kuratovski gráfok}
A Kuratovski gráfok ($ K _ 5 $ és $ K _ { 3 , 3 } $ ) Nem rajzolhatók síkba.\\
2017-12-30 23:54:57 +01:00
TODO: kép
\end { block}
\begin { block} { Bizonyítás (Indirekt)}
TFH $ K _ 5 $ és $ K _ { 3 , 3 } $ síkbarajzolható.\\
\smallskip
\textbf { $ K _ { 3 , 3 } $ esetén} :\\
$ v ( G ) = 6 $ , és $ e ( G ) = 9 $ \\
Euler forumlából következik, hogy $ t = 5 $ .\\
Viszont $ K _ { 3 , 3 } $ nem tartalmaz háromszöget, és nincs szeparáló éle. $ \implies $ \\
$ \implies $ $ 4 t \leq 2 e ( G ) \implies 20 \leq 18 $ . $ \rightarrow $ Ellentmondás!\\
\smallskip
\textbf { $ K _ 5 $ esetén} :\\
$ v ( G ) = 5 $ és $ e ( G ) = 10 $ \\
Alkalmazzuk a síkgráf élszáma tételt ($ e ( G ) \leq 3 v ( G ) - 6 $ ), ekkor\\
$ 10 \leq 9 $ $ \rightarrow $ Ellentmondás!
\end { block}
\end { frame}
\begin { frame}
2018-01-09 15:44:46 +01:00
\begin { block} { Tétel: Kuratovski tétel}
Egy egyszerű véges gráf \textbf { akkor, és csak akkor} rajzolható síkba, ha nem tartalmaz a Kuratovski gráfok valamelyikével topologikusan izomorf részgráfot.
\end { block}
\end { frame}
\begin { frame}
\begin { block} { Tétel: Euler formula}
Egy összefüggő síkbeli gráf, amelynek $ t $ tartománya van, (a külső tartományt is beleértve), eleget tesz az Euler-formulának:
$$ v ( G ) - e ( G ) + t = 2 $$
\end { block}
\begin { block} { Bizonyítás (Sematikus)}
Tekintsünk egy $ K $ kört $ G $ -ben és egy $ e \in E ( K ) $ élet.\\
Mivel $ e $ két tartomány határán van $ \implies $ $ e $ törlésével két szomszéd régió eggyé válik.
(kép)
$ \implies $ az élek, és tartományok száma is eggyel csökken.\\
A formula: $ v ( G ) - e ( G ) + t = 2 $ $ \rightarrow $ $ e ( G ) $ Az $ e ( G ) $ nél ha kivonunk 1-et: $ - ( - 1 ) = + 1 $ , A $ t $ -nél pedig -1 $ \implies $ a formula értéke ugyan az marad.\\
Az eltörléseket ismételve előbb-utóbb megkapjuk G egy feszítőfáját. (Tétel, feszítőfa létezése)
Fánál $ t = 1 $ és az élek száma $ v ( G ) - 1 $ . $ \implies $
$$ \implies v ( G ) - e ( G ) + t = v ( G ) - ( v ( G ) - 1 ) + 1 = 2 $$
\end { block}
\end { frame}
\begin { frame}
\begin { block} { Tétel: Síkgráf élszáma}
Ha $ G $ egyszerű, síkba rajzolható gráf, és $ v ( G ) \geq 3 $ , akkor $$ e ( G ) \leq 3 v ( G ) - 6 $$ .
\end { block}
\begin { block} { Bizonyítás}
\textbf { 1. Eset} \\
TFH $ G $ összefüggő.\\
Mivel $ v ( G ) = 3 $ -ra igaz, ezért tfh (legyen) v(G) > 3.\\
Mivel G egyszeű $ \implies $ minden tartományát legalább 3 él határolja. $ \implies $ \\
$ \implies $ legalább 3t élet számoltunk.\\
Mivel az elvágó éleket egyszer számoltuk, a többit kétszer $ \implies $ $ 3 t \leq 2 e ( G ) $ .\\
Az Euler formulából következik, hogy $$ 3 ( e ( G ) - v ( G ) + 2 ) \leq 2 e ( G ) \implies e ( G ) \leq 3 v ( G ) - 6 $$ \\
\smallskip
\textbf { 2. Eset} \\
TFH $ G $ nem összefüggő.\\
Ekkor visszavezetjük az első esetre, élek hozzáadásával.
2017-12-30 23:54:57 +01:00
\end { block}
\end { frame}
2018-01-09 15:44:46 +01:00
2017-12-30 23:54:57 +01:00
% -------------------- FORÁLIS NYELVEK, ÉS AUTOMATÁK --------------------
\begin { frame} [plain]
\begin { tikzpicture} [overlay, remember picture]
\node [anchor=center] at (current page.center) {
\begin { beamercolorbox} [center]{ title}
{ \Huge Formális nyelvek, és Automaták}
\end { beamercolorbox} } ;
\end { tikzpicture}
\end { frame}
\begin { frame}
\begin { block} { Tétel: Kleene tétel}
Egy nyelv akkor, és csak akkor felismerhető, ha reguláris.
\end { block}
\end { frame}
\begin { frame}
\begin { block} { Tétel: Felismerhető nyelvek komplementere}
$ L $ Felismerhető $ \implies $ $ \overline { L } $
\end { block}
\begin { block} { Bizonyítás}
Legyen $ M = ( Q, \Sigma , \delta , q _ 0 , F ) $ véges automata és $ L = L ( M ) $ (M automata felismeri az L nyelvet).\\
Tekintsük a következő konstrukciót:\\
2018-01-09 15:44:46 +01:00
Legyen $ \overline { M } = ( Q, \Sigma , \delta , q _ 0 , \overline { L } ) $ , ahol $ \overline { F } = Q - F $ .\\
2017-12-30 23:54:57 +01:00
Ekkor $ L ( \overline { M } ) = \overline { L } $ . (Azaz az $ \overline { M } $ automata biztosan felismeri az $ \overline { L } $ nyelvet.\\
(Triviális, mert amit $ L $ nem ismer fel, azt ez biztosan, amit $ \overline { L } $ felismer, azt pedig ez nem ismeri fel biztosan.
\end { block}
\end { frame}
\begin { frame}
2018-01-09 15:44:46 +01:00
\begin { block} { Tétel: Felismerhető nyelvek metszete}
2017-12-30 23:54:57 +01:00
$ L _ 1 , L _ 2 $ felismerhető $ \implies $ $ L _ 1 \cap L _ 2 $
\end { block}
\begin { block} { Bizonyítás}
Legyen: $ L _ 1 = L ( M _ 1 ) , L _ 2 = L ( M _ 2 ) $ .\\
Legyen: $ M _ 1 = ( Q _ 1 , \Sigma , { \delta } _ 1 , q _ 1 , F _ 1 ) , M _ 2 = ( Q _ 2 , \Sigma , { \delta } _ 2 , q _ 2 , F _ 2 ) $ .\\
2018-01-09 15:44:46 +01:00
Legyen: $ Q = Q _ 1 x Q _ 2 $ (Párokból áll, ha pl $ Q _ 1 $ 2 elemű, $ Q _ 2 $ 3 elemű, akkor $ Q $ 6 elemből fog állni.)\\
2017-12-30 23:54:57 +01:00
Legyen: $ \delta = Q x \Sigma \rightarrow Q $ (Párok lesznek).\\
2018-01-09 15:44:46 +01:00
Legyen: $ \delta ( s, a ) , s \in Q = \delta ( ( s _ 1 , s _ 2 ) , a ) = ( { \delta } _ 1 ( s _ 1 , a ) , { \delta } _ 2 ( s _ 2 , a ) ) $ , $ s _ 1 \in Q _ 1 , s _ 2 \in Q _ 2 , a \in \Sigma $ \\
\bigskip
2017-12-30 23:54:57 +01:00
Legyen: $ q _ 0 = ( q _ 1 , q _ 2 ) $ \\
2018-01-09 15:44:46 +01:00
Legyen: \underline { \textbf { $ F _ { \cap } = F _ 1 x F _ 2 $ } } (Az összes lehetséges módon párokat képzünk mindkét alap automata végállapot halmazaiból) $ \implies $ csak akkor fog egy nyelvet felismerni, a "nagy" automata, ha mindkét "kis" automata az egyik eredeti végállapotában áll.)\\
2017-12-30 23:54:57 +01:00
\smallskip
Legyen: $ M _ { \cap } = ( Q, \Sigma , \delta , q _ 0 , F _ { \cap } ) $ \\
2018-01-09 15:44:46 +01:00
\bigskip
Ekkor: \underline { $ L ( M _ { \cap } ) = L _ 1 \cap L _ 2 $ } \\
2017-12-30 23:54:57 +01:00
\end { block}
\end { frame}
\begin { frame}
\begin { block} { Tétel: Felismerhető nyelvek egyesítése}
$ L _ 1 , L _ 2 $ felismerhető $ \implies $ $ L _ 1 \cup L _ 2 $
\end { block}
\begin { block} { Bizonyítás}
Legyen: $ L _ 1 = L ( M _ 1 ) , L _ 2 = L ( M _ 2 ) $ .\\
Legyen: $ M _ 1 = ( Q _ 1 , \Sigma , { \delta } _ 1 , q _ 1 , F _ 1 ) , M _ 2 = ( Q _ 2 , \Sigma , { \delta } _ 2 , q _ 2 , F _ 2 ) $ .\\
Legyen: $ Q = Q _ 1 x Q _ 2 $
Legyen: $ \delta = Q x \Sigma \rightarrow Q $ (Párok lesznek).\\
Legyen: $ \delta ( ( s _ 1 , s _ 2 ) , a ) = ( { \delta } _ 1 ( s _ 1 , a ) , { \delta } _ 2 ( s _ 2 , a ) ) $ , $ s _ 1 \in Q _ 1 , s _ 2 \in Q _ 2 , a \in \Sigma $ \\
2018-01-09 15:44:46 +01:00
\bigskip
2017-12-30 23:54:57 +01:00
Legyen: $ q _ 0 = ( q _ 1 , q _ 2 ) $ \\
2018-01-09 15:44:46 +01:00
Legyen: \underline { \textbf { $ F _ { \cup } = F _ 1 x Q _ 2 \cup F _ 2 x Q _ 1 $ } } (Az \textbf { első} "kicsi" automata összes \textbf { végállapotát} párba vesszük a \textbf { második} "kicsi" automata összes \textbf { állapotával} , unió a \textbf { második} "kicsi" automata összes végállapota az első "kicsi" automata \textbf { állapotával} $ \implies $ bármelyik "kicsi" automata végállapotba kerül, az a másiknak is végállapota lesz a pár másik felén. (Mivel pároknál számít az elemek sorrendje))\\
2017-12-30 23:54:57 +01:00
\smallskip
Legyen: $ M _ { \cup } = ( Q, \Sigma , \delta , q _ 0 , F _ { \cup } ) $ \\
2018-01-09 15:44:46 +01:00
\bigskip
Ekkor: \underline { $ L ( M _ { \cup } ) = L _ 1 \cup L _ 2 $ } \\
2017-12-30 23:54:57 +01:00
\end { block}
\end { frame}
\begin { frame}
\begin { block} { Tétel: Nemdeterminisztikus automata}
Minden $ M = ( Q, \Sigma , \delta , q _ 0 , F ) $ véges nemdeterminisztikus automatával felismerhető nyelv, felismerhető véges automatával.
\end { block}
\begin { block} { Bizonyítás}
2018-01-09 15:44:46 +01:00
Tekintsük az $ M' = ( Q', \Sigma , { \delta } ', Q _ 0 , F' ) $ véges automatát ($ Q _ 0 $ halmaz!), ahol\\
$ Q' = p ( Q ) $ ($ p ( Q ) $ $ \rightarrow $ hatványhalmaz)\\
2018-01-02 02:13:55 +01:00
$ { \delta } ' : p ( Q ) x \Sigma \rightarrow p ( Q ) $ (Az állapotok is halmazok!)\\
2018-01-09 15:44:46 +01:00
$ { \delta } ' ( X, a ) = \widehat { Y } $ (Y lezártja!), $ Y = U _ { q \in X } \delta ( q, a ) $ \\
2018-01-02 02:13:55 +01:00
$ Q _ 0 = \widehat { \{ q _ 0 \} } $ \\
2018-01-09 15:44:46 +01:00
$ F' = \{ X \subseteq Q : X \cap F \neq \emptyset \} $ .\\
2018-01-02 02:13:55 +01:00
Ekkor nyilvánvaló, hogy $ L ( M' ) = L ( M ) $ .\\
Megjegyzés: Elég lenne $ p ( Q ) $ azon elemeivel számolni, amelyek elérhetők $ Q _ 0 $ -ból.
\end { block}
\end { frame}
\begin { frame}
\begin { block} { Tétel: Felismerhető nyelvek szorzata}
$ L _ 1 , L _ 2 $ felismerhető $ \implies $ $ L _ 1 * L _ 2 $
\end { block}
\begin { block} { Bizonyítás}
Legyen: $ L _ 1 = L ( M _ 1 ) , L _ 2 = L ( M _ 2 ) $ .\\
Legyen: $ M _ 1 = ( Q _ 1 , \Sigma , { \delta } _ 1 , q _ 1 , F _ 1 ) , M _ 2 = ( Q _ 2 , \Sigma , { \delta } _ 2 , q _ 2 , F _ 2 ) $ .\\
2018-01-09 15:44:46 +01:00
Legyen: $ Q _ 1 \cap Q _ 2 = \emptyset $ \\
Legyen: $ L ( M _ 1 ) = L _ 1 , L ( M _ 2 ) = L _ 2 $ .\\
2018-01-02 02:13:55 +01:00
\bigskip
Legyen: $ { \delta } ( q, a ) = $
$
\begin { cases}
{ \delta } _ 1(q, a) & q \in Q_ 1 - F_ 1\\
2018-01-09 15:44:46 +01:00
{ \delta } _ 1(q, a) & q \in F_ 1, a \neq \epsilon $ ( Végállapot ) $ \\
{ \delta } _ 1(q, a) \cup \{ q_ 2\} & q \in F_ 1, a = \epsilon $ ( Végállapot ) $ \rightarrow \\
& \rightarrow $ Ha üres betű, akkor átugrunk a második automata kezdőállapotába. $ \\
{ \delta } _ 2(q, a) & q \in Q_ 2 $ A második automata $ \\
2018-01-02 02:13:55 +01:00
\end { cases}
$ \\
\bigskip
Legyen: $ M _ 1 * M _ 2 = ( Q _ 1 \cup Q _ 2 , \Sigma , \delta , q _ 1 , F _ 2 ) $ \\
\bigskip
Ekkor: \textbf { $ L ( M _ 1 * M _ 2 ) = L _ 1 * L _ 2 $ } \\
\end { block}
\end { frame}
\begin { frame}
\begin { block} { Tétel: Felismerhető nyelvek iterációja}
2018-01-09 15:44:46 +01:00
$ L $ felismerhető $ \implies $ $ L ^ * $ is felismerhető.
2018-01-02 02:13:55 +01:00
\end { block}
\begin { block} { Bizonyítás}
Legyen: $ M = ( Q, \Sigma , { \delta } , q _ 0 , F ) $ .\\
2018-01-09 15:44:46 +01:00
Legyen: $ M ^ * = ( Q \cup \{ s _ 0 \} , \Sigma , { \delta } _ * , s _ 0 , F \cup \{ s _ 0 \} ) $ .\\
2018-01-02 02:13:55 +01:00
\bigskip
2018-01-09 15:44:46 +01:00
Legyen: $ { \delta } ( q, a ) _ * = $
2018-01-02 02:13:55 +01:00
$
\begin { cases}
{ \delta } (q, a) & q \in Q $ és $ q \notin F\\
{ \delta } (q, a) & q \in F$ és $ a \neq \epsilon \\
{ \delta } (q, a) \cup \{ q0\} & q \in F$ és $ a = \epsilon \\
\{ q_ 0\} & q = s_ 0$ és $ a = \epsilon \\
\emptyset & q = s_ 0$ és $ a \neq \epsilon \\
\end { cases}
$ \\
\bigskip
2018-01-09 15:44:46 +01:00
\textbf { Ekkor: $ L ( M ^ * ) = L ^ * $ } \\
2018-01-02 02:13:55 +01:00
\end { block}
\end { frame}
\begin { frame}
\begin { block} { Tétel: Pumpáló lemma reguláris nyelvre}
2018-01-09 15:44:46 +01:00
Minden $ L \subseteq { \Sigma } ^ * $ reguláris nyelvhez létezik olyan $ p $ természetes szám, amelyre L minden legalább $ p $ hosszúságú $ u $ szava felírható $$ u = xyz $$ \\
2018-01-02 02:13:55 +01:00
alakban úgy, hogy\\
\begin { enumerate}
\item $ |y| > 0 $
\item $ |xy| \leq p $
\item $ xy'z \in L $ minden $ i \geq 0 $ egészre.
\end { enumerate}
\end { block}
\begin { block} { Bizonyítás}
Az L reguláris nyelvhez konstruáljuk meg az $ M = ( Q, { \Sigma } , { \delta } , q _ 0 , F ) $ véges automatát úgy, hogy legyen $ p = |Q| $ .\\
Ha $ u \in L $ és $ |u| \geq p \implies $ a $ q _ 0 , q _ 1 , ...,q _ n ( q _ i \in Q, i = 0 , ..., n ) $ \\
számítási sorozatra az $ u $ szón teljesüljön, hogy\\
\begin { enumerate}
\item $ n = |u| \geq p $
\item $ q _ n \in F $
\item $ { \exists } i, j : 0 \leq i < j \leq p $ és $ q _ i = q _ j $
\end { enumerate}
\bigskip
Legyen továbbá:
\begin { itemize}
\item $ x $ az $ u $ szó $ i $ hosszú kezdőszelete
\item $ y $ az $ x $ -et követő $ j - i $ hosszú rész-szó
2018-01-09 15:44:46 +01:00
\item $ z $ az $ u $ -nak az $ n - j $ hosszú zárószelete
2018-01-02 02:13:55 +01:00
\end { itemize}
\bigskip
\textbf { Ekkor az $ u = xyz $ felbontásra teljesülnek a lemma állításai.}
\end { block}
\end { frame}
\begin { frame}
\begin { block} { Tétel: Példa nemreguláris nyelvre}
Az $ L = \{ 0 ^ n 1 ^ n : n \geq 0 \} \subseteq \{ 0 , 1 \} ^ * $ nyelv nem reguláris.
\end { block}
\begin { block} { Bizonyítás}
2018-01-09 15:44:46 +01:00
Legyen $ p $ tetszőleges, ekkor $ u $ (szó) $ = 0 ^ p 1 ^ p $ .\\
2018-01-02 02:13:55 +01:00
Tfh $ x, y, z $ olyan szavak, amelyekre:\\
$ u = xyz, |xy| \leq p, |y| > 0 $ .\\
2018-01-09 15:44:46 +01:00
\bigskip
2018-01-02 02:13:55 +01:00
Ekkor $ xy $ csupa 0-ból áll és $ y $ tartalmaz legalább egy 0-t. $ \implies $ \\
$ \implies $ $ i \neq 1 $ esetén $ xy'z \notin L $ , mert több 0 lessz benne, mint 1-es! $ \implies $ \\
2018-01-09 15:44:46 +01:00
$ \implies $ Sosem találunk megfelelő $ p $ -t $ \implies $ \textbf { A nyelv nem reguláris.} \\
\bigskip
TODO: Példa értékek
2018-01-02 02:13:55 +01:00
\end { block}
\end { frame}
\begin { frame}
\begin { block} { Tétel: Derivációs fák}
2018-01-09 15:44:46 +01:00
Egy $ X \in ( V \cup { \Sigma } _ { \epsilon } ) $ -ből induló derivációs fa, amelynek határa az $ u \in { \Sigma } ^ * $ szó, ami akkor és csak akkor létezik, ha $ X { \Rightarrow } ^ * u \in { \Sigma } ^ * $ .
2018-01-02 02:13:55 +01:00
\end { block}
\begin { block} { Tétel: Ekvivalens állítások derivációs fákra}
Legyen $ G = ( V, { \Sigma } , R, S ) $ környezetfüggetlen nyelvtan. Ekkor a következők ekvivalensek az $ u \in { \Sigma } ^ * $ szóra:\\
\begin { enumerate}
\item $ u \in L ( G ) $
2018-01-09 15:44:46 +01:00
\item $ S { { \Rightarrow } ^ * } _ l u $
2018-01-02 02:13:55 +01:00
\item Létezik olyan $ S $ -ből induló derivációs fa, amelynek határa $ u $ .
\end { enumerate}
\end { block}
\end { frame}
\begin { frame}
\begin { block} { Tétel: Reguláris nyelv környezetfüggetlen}
Minden reguláris nyelv környezetfüggetlen.
\end { block}
2018-01-09 15:44:46 +01:00
\begin { block} { Bizonyítás (Konstr)}
2018-01-02 21:01:24 +01:00
Legyen $ L \in { \Sigma } ^ * , L = L ( M ) $ , és\\
$ M = ( Q, { \Sigma } , { \delta } , q _ 0 , F ) $ nemdeterminisztikus véges automata.\\
2018-01-09 15:44:46 +01:00
\bigskip
Megkonstruáljuk a $ G = ( Q, { \Sigma } , R, q _ 0 ) $ nyelvtant, ahol,\\
$ R = \{ q \rightarrow aq' : q' \in { \delta } ( q, a ) \} \cup \{ q \rightarrow \epsilon : q \in F \} $ .\\
2018-01-02 21:01:24 +01:00
Ekkor az $ u \in L ( G ) \iff \exists u $ szóra $ q _ 0 $ -ból $ q $ -ba vezető számítási sorozat.\\
2018-01-09 15:44:46 +01:00
(triviális, a vizsgán is lehet mondani).
2018-01-02 21:01:24 +01:00
\end { block}
\end { frame}
\begin { frame}
\begin { block} { Tétel: Környezetfüggetlen nyelvek műveleti zártsága}
A környezetfüggetlen nyelvek zártak a reguláris műveletekre.
\end { block}
\begin { block} { Bizonyítás (Kontrapozíció)}
A módszer: adott $ E $ reguláris kifejezéshez megadjuk a\\
$ G _ E = ( V _ E, { \Sigma } , R _ E, S _ E ) $ \\
nyelvtant, amely az $ E $ által jelölt nyelvet generálja.\\
\bigskip
2018-01-09 15:44:46 +01:00
Legyen először $ E = \emptyset $ :\\
Akkor $ G _ { \emptyset } = ( \{ S \} , { \Sigma } , \emptyset , S ) $ .\\
2018-01-02 21:01:24 +01:00
\bigskip
2018-01-09 15:44:46 +01:00
Ha $ E = a \in { \Sigma } $ :\\
2018-01-02 21:01:24 +01:00
Akkor $ G _ a = ( \{ S \} , { \Sigma } , \{ S \rightarrow a \} , S ) $ .\\
\bigskip
Ha $ E = ( E _ 1 + E _ 2 ) $ :\\
Akkor $ G _ E = ( V _ { E _ 1 } \cup V _ { E _ 2 } \cup \{ S \} , \Sigma , R _ { E _ 1 } \cup R _ { E _ 2 } \cup \{ S \rightarrow S _ { E _ 1 } , S \rightarrow S _ { E _ 2 } \} , S ) $ ,\\
2018-01-09 15:44:46 +01:00
és feltesszük, hogy $ V _ { E _ 1 } \cap V _ { E _ 2 } = { \emptyset } , S \notin V _ { E _ 1 } \cup V _ { E _ 2 } $ .\\
2018-01-02 21:01:24 +01:00
\bigskip
Ha $ E = ( E _ 1 * E _ 2 ) $ :\\
Akkor $ G _ E = ( V _ { E _ 1 } \cup V _ { E _ 2 } \cup \{ S \} , \Sigma , R _ { E _ 1 } \cup R _ { E _ 2 } \cup \{ S \rightarrow S _ { E _ 1 } S _ { E _ 2 } \} , S ) $ ,\\
2018-01-09 15:44:46 +01:00
és feltesszük, hogy $ V _ { E _ 1 } \cap V _ { E _ 2 } = { \emptyset } , S \notin V _ { E _ 1 } \cup V _ { E _ 2 } $ .\\
2018-01-02 21:01:24 +01:00
\bigskip
Ha $ E = ( E _ 1 ) ^ * $ :\\
Akkor $ G _ E = ( V _ { E _ 1 } \cup \{ S \} , \Sigma , R _ { E _ 1 } \cup \{ S \rightarrow SS _ { E _ 1 } , S \rightarrow \epsilon \} , S ) $ ,\\
és feltesszük, hogy $ S \notin V _ { E _ 1 } $ .\\
\end { block}
\end { frame}
\begin { frame}
\begin { block} { Tétel: Környezetfüggetlen nyelv és veremautomata}
Minden környezetfüggetlen nyelv felismerhető veremautomatával és minden veremautomatával felismerhető nyelv környezetfüggetlen.
\end { block}
\begin { block} { Tétel: Pumpáló lemma környezetfüggetlen nyelvre}
2018-01-09 15:44:46 +01:00
Minden $ L \subseteq { \Sigma } ^ * $ környezetfüggetlen nyelvhez létezik olyan $ p > 0 $ természetes szám, amelyre L minden legalább $ p $ hosszúságó $ w $ szava felírható $$ w = uvxyz $$ \\
2018-01-02 21:01:24 +01:00
alakban úgy, hogy\\
\begin { enumerate}
\item $ |vy| > 0 $
2018-01-09 15:44:46 +01:00
\item $ |vxy| < p $
2018-01-02 21:01:24 +01:00
\item $ uv'xy'z \in L $ minden $ i \geq 0 $ egészre.
\end { enumerate}
\end { block}
\end { frame}
\begin { frame}
\begin { block} { Tétel: Példa nem környezetfüggetlen nyelvre 1}
2018-01-09 15:44:46 +01:00
Az $ L = \{ a ^ nb ^ nc ^ n : n \geq 0 \} \subseteq \{ a, b, c \} ^ * $ nyelv nem környezetfüggetlen.
2018-01-02 21:01:24 +01:00
\end { block}
2018-01-02 02:13:55 +01:00
\begin { block} { Bizonyítás}
2018-01-02 21:01:24 +01:00
Belátjuk, hogy $ { \forall } p > 0 $ egészhez $ { \exists } w \in L, |w| \geq p $ úgy, hogy\\
a $ w $ tetszőleges olyan $ w = uvxyz $ felbontására, ahol $ |vy| > 0 , |vxy| < p $ ,\\
létezik olyan i, amelyre $ uv ^ ixy ^ iz \notin L $ .\\
2018-01-09 15:44:46 +01:00
\bigskip
2018-01-02 21:01:24 +01:00
Tetszőleges $ p $ -hez legyen $ w = a ^ pb ^ pc ^ p $ . Ekkor bárhogyan is írjuk fel a $ w $ -t úgy, hogy $ w = uvxyz $ felbontásra $ |vy| > 0 , |vxy| < p $ , mindíg lesz olyan betű, amely nincs benne $ vy $ -ban, viszont ekkor $ uxz \notin L $ .
\end { block}
\end { frame}
2018-01-02 02:13:55 +01:00
2018-01-02 21:01:24 +01:00
\begin { frame}
\begin { block} { Tétel: Példa nem környezetfüggetlen nyelvre 2}
Az $ L = \{ w \# w : w \in \{ 0 , 1 \} ^ * \} $ nyelv nem környezetfüggetlen.
2017-12-30 00:33:32 +01:00
\end { block}
2018-01-02 21:01:24 +01:00
\begin { block} { Bizonyítás}
Tetszőleges $ p $ -hez legyen $ w = 0 ^ p 1 ^ p \# 0 ^ p 1 ^ p $ , és tekintsük $ w $ egy tetszőleges olyan $ w = uvxyz $ felbontását, ahol $ |vy| > 0 , |vxy| < p $ .\\
\bigskip
2018-01-09 15:44:46 +01:00
1. eset: Ha $ \# \notin x $ $ \rightarrow $ $ uv ^ 2 xy ^ 2 z \notin L $ .\\
2018-01-02 21:01:24 +01:00
\bigskip
2018-01-09 15:44:46 +01:00
2. eset: Ha $ \# \in x $ $ \rightarrow $ Ekkor $ u $ -ban csak az $ 1 , y $ -ban csak $ 0 $ szerepelhet. $ \rightarrow $ Mivel $ vy \neq \epsilon \Rightarrow uxz \notin L $ .
2018-01-02 21:01:24 +01:00
\end { block}
2017-12-30 00:33:32 +01:00
\end { frame}
2017-12-28 23:06:55 +01:00
\end { document}