Faautomaták. Szegedi Tudományegyetem tavaszi félév

Hasonló dokumentumok
Alap fatranszformátorok I. Oyamaguchi [3], Dauchet és társai [1] és Engelfriet [2] bebizonyították hogy egy tetszőleges alap

Alap fatranszformátorok II

A Formális nyelvek vizsga teljesítése. a) Normál A vizsgán 60 pont szerezhet, amely két 30 pontos részb l áll össze az alábbi módon:

Formális nyelvek - 9.

Diszkrét matematika 2. estis képzés

A Formális nyelvek vizsga teljesítése. a) Normál A vizsgán 60 pont szerezhet, amely két 30 pontos részb l áll össze az alábbi módon:

Chomsky-féle hierarchia

Chomsky-féle hierarchia

Automaták és formális nyelvek

A digitális számítás elmélete

Speciális faautomata osztályok jellemzése

Diszkrét matematika 2. estis képzés

1. előadás: Halmazelmélet, számfogalom, teljes

Diszkrét matematika 2.C szakirány

Diszkrét matematika 2. estis képzés

6. előadás A reguláris nyelvek jellemzése 2.

Diszkrét matematika 2.C szakirány

Halmazelmélet. 1. előadás. Farkas István. DE ATC Gazdaságelemzési és Statisztikai Tanszék. Halmazelmélet p. 1/1

Véges automaták, reguláris nyelvek

Általános algebra. 1. Algebrai struktúra, izomorfizmus. 3. Kongruencia, faktoralgebra március Homomorfizmus, homomorfiatétel

Itt és a továbbiakban a számhalmazokra az alábbi jelöléseket használjuk:

Diszkrét matematika 2. estis képzés

Diszkrét matematika 2. estis képzés

Vizsgatematika Bevezetés a matematikába II tárgyhoz tavasz esti tagozat

Kiterjesztések sek szemantikája

definiálunk. Legyen egy konfiguráció, ahol és. A következő három esetet különböztetjük meg. 1. Ha, akkor 2. Ha, akkor, ahol, ha, és egyébként.

Házi feladatok megoldása. Nyelvtani transzformációk. Házi feladatok megoldása. Házi feladatok megoldása. Formális nyelvek, 6. gyakorlat.

Számításelmélet. Második előadás

Formális nyelvek - 5.

Gy ur uk aprilis 11.

Diszkrét matematika 2.

Diszkrét matematika 2.C szakirány

KOVÁCS BÉLA, MATEMATIKA I.

Diszkrét matematika 2.

Hadamard-mátrixok Előadó: Hajnal Péter február 23.

Logika és számításelmélet. 10. előadás

Halmaz: alapfogalom, bizonyos elemek (matematikai objektumok) Egy halmaz akkor adott, ha minden objektumról eldönthető, hogy

Diszkrét matematika 2.C szakirány

Automaták mint elfogadók (akceptorok)

Vektorterek. Több esetben találkozhattunk olyan struktúrával, ahol az. szabadvektorok esetében, vagy a függvények körében, vagy a. vektortér fogalma.

Relációk Függvények. A diákon megjelenő szövegek és képek csak a szerző (Kocsis Imre, DE MFK) engedélyével használhatók fel!

Diszkrét matematika 1. estis képzés

A Turing-gép. Formális nyelvek III.

4. Fuzzy relációk. Gépi intelligencia I. Fodor János NIMGI1MIEM BMF NIK IMRI

Diszkrét matematika I.

FFT. Második nekifutás. Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék október 2.

Nagy Gábor compalg.inf.elte.hu/ nagy

6. előadás A reguláris nyelvek jellemzése 2.

Diszkrét matematika 2.C szakirány

5. előadás Reguláris kifejezések, a reguláris nyelvek jellemzése 1.

ZH feladatok megoldásai

Logika és informatikai alkalmazásai

Házi feladatok megoldása. Nyelvek felismerése. Házi feladatok megoldása. Házi feladatok megoldása. Formális nyelvek, 5. gyakorlat

Fraktálok. Kontrakciók Affin leképezések. Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék. TARTALOMJEGYZÉK Kontrakciók Affin transzformációk

Fraktálok. Hausdorff távolság. Czirbusz Sándor ELTE IK, Komputeralgebra Tanszék március 14.

ALGEBRAI NYELV- ÉS KÓDELMÉLET. Babcsányi István

Minden x > 0 és y 0 valós számpárhoz létezik olyan n természetes szám, hogy y nx.

Nagy Gábor compalg.inf.elte.hu/ nagy ősz

Csempe átíró nyelvtanok

A SZÁMÍTÁSTUDOMÁNY ALAPJAI

Algoritmuselmélet gyakorlat (MMN111G)

Analízis I. Vizsgatételsor

ALAPFOGALMAK 1. A reláció az program programfüggvénye, ha. Azt mondjuk, hogy az feladat szigorúbb, mint az feladat, ha

Formális nyelvek és automaták vizsgához statisztikailag igazolt várható vizsgakérdések

Miért fontos számunkra az előző gyakorlaton tárgyalt lineáris algebrai ismeretek

Algoritmuselmélet. Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem. 13.

Házi feladatok megoldása. Nyelvek használata adatszerkezetek, képek leírására

MM CSOPORTELMÉLET GYAKORLAT ( )

Klasszikus algebra előadás. Waldhauser Tamás április 28.

17. előadás: Vektorok a térben

Nagy Gábor compalg.inf.elte.hu/ nagy

Diszkrét matematika 2.

Diszkrét Matematika. zöld könyv ): XIII. fejezet: 1583, 1587, 1588, 1590, Matematikai feladatgyűjtemény II. (

RE 1. Relációk Függvények. A diákon megjelenő szövegek és képek csak a szerző (Kocsis Imre, DE MFK) engedélyével használhatók fel!

Diszkrét matematika 2.C szakirány

Matematika alapjai; Feladatok

Logika es sz am ıt aselm elet I. r esz Logika 1/36

3. előadás. Programozás-elmélet. A változó fogalma Kiterjesztések A feladat kiterjesztése A program kiterjesztése Kiterjesztési tételek Példa

ELTE IK Esti képzés tavaszi félév. Tartalom

1. Interpoláció. Egyértelműség Ha f és g ilyen polinomok, akkor n helyen megegyeznek, így a polinomok azonossági tétele miatt egyenlők.

f(x) vagy f(x) a (x x 0 )-t használjuk. lim melyekre Mivel itt ɛ > 0 tetszőlegesen kicsi, így a a = 0, a = a, ami ellentmondás, bizonyítva

1. tétel Halmazok és halmazok számossága. Halmazműveletek és logikai műveletek kapcsolata.

Az R halmazt a valós számok halmazának nevezzük, ha teljesíti az alábbi 3 axiómacsoport axiómáit.

Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé.

Nagy Gábor compalg.inf.elte.hu/ nagy ősz

Deníciók és tételek a beugró vizsgára

VEKTORTEREK I. VEKTORTÉR, ALTÉR, GENERÁTORRENDSZER október 15. Irodalom. További ajánlott feladatok

2014. szeptember 24. és 26. Dr. Vincze Szilvia

Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. (Albert Einstein) Halmazok 1

1. Részcsoportok (1) C + R + Q + Z +. (2) C R Q. (3) Q nem részcsoportja C + -nak, mert más a művelet!

Klasszikus algebra előadás. Waldhauser Tamás április 14.

3. Fuzzy aritmetika. Gépi intelligencia I. Fodor János NIMGI1MIEM BMF NIK IMRI

KOVÁCS BÉLA, MATEMATIKA I.

Matematika (mesterképzés)

Nagy Gábor compalg.inf.elte.hu/ nagy

A 2015/2016. tanévi Országos Középiskolai Tanulmányi Verseny döntő forduló MATEMATIKA III. KATEGÓRIA (a speciális tanterv szerint haladó gimnazisták)

Sorozatok, sorok, függvények határértéke és folytonossága Leindler Schipp - Analízis I. könyve + jegyzetek, kidolgozások alapján

Bevezetés. 1. fejezet. Algebrai feladatok. Feladatok

Időzített átmeneti rendszerek

Algoritmusok bonyolultsága

Átírás:

Faautomaták Fülöp Zoltán Szegedi Tudományegyetem Számítástudomány Alapjai Tanszék fulop@inf.u-szeged.hu 2018. tavaszi félév 1

IRODALOM Gécseg Ferenc, Automaták és formális nyelvek, Polygon, Szeged, 2005. H. Comon, M. Dauchet, R. Gilleron, F. Jacquemard, D. Lugiez, S. Tison, and M. Tommasi, Tree automata techniques and applications, http://www.grappa.univ-lille3.ft/tata, 1997. Fülöp Zoltán, Heiko Vogler, Weighted Tree Automata and Tree Transducers, in: Handbook of Weighted Automata (Szerk.: M. Droste, W. Kuich és H. Vogler), Springer-Verlag, 2009, Chapter 9, 313-403. 2

ALGEBRAI ALAPFOGALMAK A egy halmaz,m 0 egy egész szám esetén f : A m A leképezést A-n értelmezettm-változós műveletnek nevezzük Mivel A 0 = {()}, egy 0-változós művelet egy f : {()} A típusú leképezés, vagyis kijelöli A valamely elemét (ti. ()-nak af melletti képét). Ezt az elemet általában azonosítjuk magával a 0-változós f művelettel. Univerzális algebra (vagy röviden algebra) egya = (A,F) rendszer, ahol A halmaz, az algebra tartóhalmaza, F az A-n értelmezett műveletek egy (nem üres) halmaza. 3

ALGEBRAI ALAPFOGALMAK Általában nem egyetlen algebrával dolgozunk, hanem algebrák egy olyan osztályával, amelyben az egyes algebrák műveleteit ugyanúgy jelöljük. Műveleti szimbólumok halmaza: Σ halmaz,r : Σ {0,1,...} HaΣvéges, akkor rangolt ábécé Har(σ) = m (σ Σ), akkor σ m-változós műveleti szimbólum, σ rangja vagy aritása m. Jelölés: Σ m = {σ Σ r(σ) = m} Ekkor Σ = Σ 0 Σ1..., ahol Σk Σl =, ha k l 4

ALGEBRAI ALAPFOGALMAK LegyenΣműveleti szimbólumok egy halmaza. Σ-algebra: egya = (A,Σ A ) algebra, ahol Σ A = {σ A σ Σ} és ha σ Σ m, akkor σ A egym-változós művelet A-n. σ A -t aσ szimbólum A-beli realizáltjának nevezzük. Példa. LegyenΣ = Σ 0 Σ2, ahol Σ 2 = {, } ésσ 0 = {o,e}. Tekintsük az A = (N { },Σ A ) ésb = (N { },Σ B )Σ-algebrákat, ahol N = {0,1,2,...} A az összeadás, A a szorzás, o A = 0 ése A = 1, továbbá B a minimum képzés, B az összeadás, o B = ése B = 0. Ezen esetben mindkét algebrában ugyanazok az azonosságok teljesülnek, pl (a,b,c N { }) : a b = b a, a o = o a = a, a e = e a = a, a o = o a = o, a (b c) = (a b) (a c) és(b c) a = (b a) (c a). (Általában nem biztos.) 5

ALGEBRAI ALAPFOGALMAK Ha nem okoz félreértéset, akkor Σ A -ból ésσ A -ból elhagyjuk A-t: az algebrát A = (A,Σ)-val jelöljük ésσ A (a 1,...,a m ) helyett σ(a 1,...,a m )-et írunk. AΣ-algebrákat kaligrafikus nagybetűkkel, tartóhalmazukat pedig a megfelelő latin nagybetűkkel jelöljük: A = (A, Σ), B = (B, Σ), stb. A véges, ha A ésσvéges (A véges ésσrangolt ábécé) B = (B,Σ) aza = (A,Σ) algebra részalgebrája, ha B A és σ B (b 1,...,b m ) = σ A (b 1,...,b m ) (b 1,...,b m B, σ Σ m ) 6

ALGEBRAI ALAPFOGALMAK B azazárt részhalmaza, ha σ A (b 1,...,b m ) B minden b 1,...,b m B-re AzAzárt részhalmazai azarészalgebráinak tartóhalmazai. Jelölje S(A) azazárt részhalmazainak a halmazát. Nyilvánvaló, hogy S(A) zárt a metszetképzésre nézve. LegyenH A és [H] = (B B S(A), H B). Ha[H], akkor [H] azarészalgebrája, amit az A algebrah által generált részalgebrájának nevezünk. Amennyiben Σ 0, akkor [H] sohasem üres, még akkor sem, ha H az üres halmaz. 7

ALGEBRAI ALAPFOGALMAK LegyenekAésB Σ-algebrák. Homomorfizmus A-ból B-be: olyan ϕ : A B leképezés, melyre tetszőleges σ Σ m ésa 1,...,a m A esetén ϕ(σ A (a 1,...,a m )) = σ B (ϕ(a 1 ),...,ϕ(a m )). Ha van A-ból B-be olyan ϕ homomorfizmus, amely ráképezés is, akkor B aza algebra homomorf képe. Amennyiben ϕ kölcsönösen egyértelmű is, akkor ϕ izomorfizmus, és azt mondjuk, hogy az A ésb algebrák izomorfak. Jelölése: A = B. Jelölések: A halmaz, ρ A A ekvivalencia reláció esetén: (a, b) ρ: a b(ρ) (lehetne még aρb, de most nem ezt használjuk) a A: a/ρ = {b a b(ρ); b A}, B A: B/ρ = {b/ρ b B} (ahol b/ρ-nak lehetnek elemei B-n kívül is). 8

ALGEBRAI ALAPFOGALMAK A algebra egy kongruenciája: olyan ρ A A ekvivalencia reláció, melyre mindenσ Σ m ésa 1,...,a m,b 1,...,b m A esetén a i b i (ρ)(i = 1,...,m) σ A (a 1,...,a m ) σ A (b 1,...,b m )(ρ). LegyenAegyΣ-algebra,ρazAegy kongruenciája. Értelmezzük az A/ρ = (A/ρ,Σ) algebrát a σ A/ρ (a 1 /ρ,...,a m /ρ) = σ A (a 1,...,a m )/ρ (a 1,...,a m A, σ Σ m ) egyenlőséggel. Ekkor σ A/ρ jólértelmezett, mivelρkongruencia reláció. A/ρ-t az A algebraρ-szerinti faktor algebrájának nevezzük. 9

ALGEBRAI ALAPFOGALMAK Homomorfia tétel: a homomorfizmus és a kongruencia fogalmának összekapcsolása. Tétel Ha ρ az A algebra kongruenciája, akkor A/ρ az A homomorf képe. Fordítva, ha B az A homorf képe, akkor A-nak van olyan ρ kongruenciája, hogy A/ρ = B. Bizonyítás A/ρ az A homomorf képe a ϕ(a) = a/ρ (a A) természetes homomorfizmus mellett. Fordítva, legyen ϕ : A B aza-nakb-re való homomorf leképezése. ÉrtelmezzükA-n a ρ relációt az a b(ρ) ϕ(a) = ϕ(b) (a,b A) ekvivalenciával. Ekkor ρ kongruencia relácó lesz. ψ : A/ρ B a ψ(a/ρ) = ϕ(a) (a A) A/ρ-nak B-re való izomorf leképezése. 10

ALGEBRAI ALAPFOGALMAK A = (A,Σ) ésb = (B,Σ) Σ-algebrák direktszorzata: A B = (A B,Σ A B ) algebra, ahol σ A B ((a 1,b 1 ),...,(a m,b m )) = (σ A (a 1,...,a m ),σ B (b 1,...,b m )) (σ Σ m, (a 1,b 1 ),...,(a m,b m ) A B. A direktszorzat fogalma természetes módon terjeszthető ki kettőnél több tényezőre is. Később szükségünk lesz összetett műveletekre, ahol műveletek másik műveletekbe beágyazva szerepelnek. Pl. egy S = (S,{ }) félcsoportot az (s 1 s 2 ) s 3 = s 1 (s 2 s 3 ) (s 1,s 2,s 3 S) azonossággal értelmezünk, amit ( (x 1,x 2 ),x 3 ) = (x 1, (x 2,x 3 )) alakban is írhatunk. 11

ALGEBRAI ALAPFOGALMAK Definíció LegyenΣműveleti szimbólumok halmaza,z pedig tetszőleges halmaz, melyrez Σ =. A ΣZ-termek (polinom szimbólumok) F Σ (Z) halmaza a (Z Σ 0 {,} {(,)}) halmaz legszűkebb olyan F részhalmaza, melyre: Z Σ 0 F, mindenm 1,σ Σ m ésp 1,...,p m F eseténσ(p 1,...,p m ) F. Példa. LegyenΣ = Σ 2 Σ 1 Σ 0, ahol Σ 2 = {σ},σ 1 = {γ} ésσ 0 = {α} és legyenz = {a,b}. Akkor a következő termekf Σ (Z) elemei: a, b,α, γ(b), γ(α), σ(b,α), σ(γ(a),α), σ(γ(a),σ(α,b)),... 12

ALGEBRAI ALAPFOGALMAK Összetett műveletek LegyenΣműveleti szimbólumok egy halmaza. Minden n 0 esetén értelmezzük azx n = {x 1,...,x n } halmazt, melynek elemeit változóknak nevezzük. Feltesszük, hogy X n Σ =. Tekintsük azf Σ (X n ) halmazt. Han = 0 ésσ 0 =, akkor F Σ (X n ) üres. Ezért a következőkben mindig feltesszük, hogy n 0 vagy Σ 0, tehát F Σ (X n ) nem üres. Ha ráadásul van olyan m > 0, hogy Σ m, akkor F Σ (X n ) végtelen. Nyilvánvaló, hogy F Σ (X k ) F Σ (X l ) ha Σ Σ ésk l. Azn = 0 (ésσ 0 ) eset: ekkor X n =, ezért a termekben nem szerepelnek változók. F Σ (X 0 )-t röviden csakf Σ -val jelöljük. F Σ aσfeletti alap termek halmaza. 13

ALGEBRAI ALAPFOGALMAK LegyenA = (A,Σ) egy algebra ésp F Σ (X n ) egy term. A p általa-ban indukált polinom függvény alatt azt a p A : A n A leképezést értjük, melyre tetszőleges a = (a 1,...,a n ) A n esetén: - ha p = x i (1 i n), akkor p A (a) = a i, - ha p = σ Σ 0, akkor p A (a) = σ A, - ha p = σ(p 1,...,p m ) (σ Σ m, m > 0, p 1,...,p m F Σ (X n )), akkor p A (a) = σ A (p A 1 (a),...,p A m(a)). Megjegyzések: 1) Han = 0, akkor p A () helyett p A -t írunk. 2) HaH = {h 1,...,h n } A, akkor [H] = {p(h 1,...,h n ) p F Σ (X n )}. Jelölés: ha p F Σ (X n ) ésp 1,...,p n F Σ (X m ), akkor p(p 1,...,p n ) = p(x 1 p 1,...,x n p n ) F Σ (X m ), ahol ez utóbbi azt a fát jelenti, amelyet úgy kapunk p-ből, hogy abban egyidejűleg x 1 helyére p 1 -et,...,x n helyére p n -et helyettesítünk. 14

ALGEBRAI ALAPFOGALMAK Megjegyzés: homomorfizmus és a kongruencia feltételei polinomokra is teljesülnek. 1) Haϕ : A B leképezés homomorfizmus A-ból B-be, akkor tetszőleges p F Σ (X n ) ésa 1,...,a m A esetén ϕ(p A (a 1,...,a m )) = p B (ϕ(a 1 ),...,ϕ(a m )). 2) Haρkongruencia azaalgebrán, akkor mindenp F Σ (X n ) term és a 1,...,a m,b 1,...,b m A esetén az a i b i (ρ)(i = 1,...,m) összefüggésekből következik, hogy p A (a 1,...,a m ) p A (b 1,...,b m )(ρ). Bizonyítás mindkét esetben a p felépítése szerinti indukcióval. 15

ALGEBRAI ALAPFOGALMAK LegyenA = (A,Σ) tetszőleges algebra. Minden p F Σ (A X n ) term meghatároz egyp A : A n A leképezést, amelyet a következőképpen definiálunk. Tetszőlegesa = (a 1,...,a n ) A n -re: - ha p = a valamelya A-ra, akkor p A (a) = a, - ha p = x i, p = σ Σ 0 vagy p = σ(p 1,...,p m ), akkor p A (a)-t ugyanúgy definiáljuk, mint a polinom függvény esetében tettük. Hap F Σ (A X 1 ), akkor a p A : A A leképezést egyváltozós algebrai függvénynek nevezzük. Megjegyezzük, hogy ez esetben x 1 egynél többször is előfordulhat p-ben. A egyváltozós algebrai függvényeinek halmazát Alg 1 (A)-val jelöljük. 16

ALGEBRAI ALAPFOGALMAK Hap = σ(c 1,...,c i 1,x 1,c i+1,...,c m ) alakú valamelym > 0,σ Σ m, 1 i m ésc 1,...,c i 1,c i+1,...,c m A-ra, akkor p-t azaalgebra elemi transzlációjának nevezzük. Ez esetben x 1 pontosan egyszer fordul előp-ben. A elemi transzlációinak halmazát ET(A)-val jelöljük. Nyilvánvaló, hogy ET(A) Alg 1 (A). 17

ALGEBRAI ALAPFOGALMAK Tétel Legyen A egy Σ-algebra, ρ A A pedig ekvivalencia reláció. Úgy ρ akkor és csakis akkor kongruencia A-n, ha tetszőleges m > 0 egész szám,σ Σ m műveleti szimbólum, 1 i m egész szám,a,b A és σ(c 1,...,c i 1,x 1,c i+1,...,c m ) ET(A) esetén az feltételből következik, hogy a b(ρ) σ(c 1,...,c i 1,a,c i+1,...,c m ) σ(c 1,...,c i 1,b,c i+1,...,c m )(ρ). Bizonyítás Ha ρ kongruencia, akkor nyilvánvalóan következnek a feltételek, mert ekvivalencia reláció és így a reflexívitás miatt c 1 c 1 (ρ),...,c i 1 c i 1 (ρ),c i+1 c i+1 (ρ),...,c n c n (ρ) is teljesül. 18

ALGEBRAI ALAPFOGALMAK A fordított irány bizonyításához legyen σ Σ m (m > 0) tetszőleges és tegyük fel, hogy a i b i (ρ),(a i,b i A, i = 1,...,m). Ekkor a feltételt alkalmazva a σ(x 1,a 2,...,a m ) elemi transzlációra és az a 1 b 1 (ρ) párra, kapjuk, hogy σ(a 1,a 2,...,a m ) σ(b 1,a 2,...,a m )(ρ). Tfh, hogy i-re(1 i < m) igazoltuk, hogy σ(a 1,...,a i 1,a i,a i+1,...,a m ) σ(b 1,...,b i 1,b i,a i+1,...,a m )(ρ) A feltételt alkalmazva a σ(b 1,...,b i,x 1,a i+2,...,a m ) transzlációra és az a i+1 b i+1 (ρ) párra, kapjuk, hogy σ(b 1,...,b i 1,b i,a i+1,a i+2,...,a m ) σ(b 1,...,b i 1,b i,b i+1,a i+2,...,a m )(ρ). 19

ALGEBRAI ALAPFOGALMAK Végül, a tranzitivitás miatt σ(a 1,...,a i 1,a i,a i+1,a i+2,...,a m ) σ(b 1,...,b i 1,b i,b i+1,a i+2,...,a m )(ρ). Azi = m esetben kapjuk, hogy σ(a 1,...,a m ) σ(b 1,...,b m )(ρ), vagyis ρ aza algebra kongruenciája. 20

ALGEBRAI ALAPFOGALMAK LegynΣműveleti szimbólumok halmaza,nnemnegatív egész szám. ΣX n -term algebra: az F Σ (X n ) = (F Σ (X n ),Σ F Σ(X n ) ) algebra, ahol minden m 0,(σ Σ m, p 1,...,p m F Σ (X n )) esetén σ F Σ(X n ) (p 1,...,p m ) = σ(p 1,...,p m ). F Σ (X n ): azx n által szabadon generált szabad Σ-algebra Tétel LegyenAtetszőleges Σ-algebra,ϕ : X n A pedig tetszőleges leképezés. Akkor ϕ egyértelműen kiterjeszthetőf Σ (X n )-neka-ba való homomorfizmusává. Bizonyítás Mivel a homorf leképezés és a polinomok alkalmazása felcserélhető, F Σ (X n ) elemei pedig előállnak p F Σ(X n ) (x 1,...,x n ) (p F Σ (X n )) alakban, ezért a kiterjesztés csak ϕ(p F Σ(X n ) (x 1,...,x n )) = p A (ϕ(x 1 ),...,ϕ(x n )) lehet. Könnyű megmutatni, hogy ilyen módon valóban homomorfizmushoz jutunk. 21

TERMEK, FÁK Ap F Σ (Z) termet reprezentáló véges, irányított, címkézett és rendezett fa: p = z Z: egy csúcspontú fa, melynek címkéje z, p = σ Σ 0 : egy csúcspontú fa, melynek címkéjeσ, p = σ(p 1,...,p m ) (σ Σ m, m > 0): p 1... σ p m 22

TERMEK, FÁK PéldaΣ 0 = {0,1},Σ 1 = { },Σ 2 = {, }, ésσ m =, ha m 3,Z = X 2 : p = ( (x 2,x 1 ), (1)) x 2 x 1 1 23

TERMEK, FÁK Legyenp( F Σ (Z)) egy ΣZ-fa. A p fa részfáinak sub(p) halmaza: (i) ha p Z Σ 0, akkor sub(p) = {p}, (ii) ha p = σ(p 1,...,p m ) (σ Σ m, m > 0), akkor sub(p) = (sub(p i ) i = 1,...,m) {p}. Tehát sub(p) F Σ (Z). Apfa root(p) gyökere: (i) ha p Z Σ 0, akkor root(p) = p, (ii) ha p = σ(p 1,...,p m ) (σ Σ m, m > 0), akkor root(p) = σ. Tehát root(p) Z Σ. 24

TERMEK, FÁK Apfa h(p) magassága: (i) ha p Z Σ 0, akkor h(p) = 0, (ii) ha p = σ(p 1,...,p m ) (σ Σ m, m > 0), akkor Tehát h(p) egy nemnegatív egész szám. Apfa size(p) mérete: (i) ha p Z Σ 0, akkor size(p) = 1, h(p) = 1+max(h(p i ) i = 1,...,m). (ii) ha p = σ(p 1,...,p m ) (σ Σ m, m > 0), akkor Tehát size(p) egy pozitív egész szám. size(p) = 1+ m i=1 size(p i). 25

TERMEK, FÁK Apfa fr(p) határa: (ia) ha p = z Z, akkor fr(p) = z, (ib) ha p = σ Σ 0, akkor fr(p) = ε, ahol ε az üres szó, (ii) ha p = σ(p 1,...,p m ) (σ Σ m, m > 0), akkor fr(p) = fr(p 1 )... fr(p m ). Tehát fr(p) Z. 26

TERMEK, FÁK Észrevételek. Apfa 0 magasságú részfáit gyakran p leveleinek nevezzük. Világos, hogy h(p) nem más, mint ap-t reprezentáló gráfban a gyökértől a levelekig vezető utak hosszainak a maximuma, míg size(p) egyszerűen ezen gráf csúcsainak a száma. Egy részfának több előfordulása is lehet p-ben. Egys sub(p) fa apvalódi részfája, ha s Z Σ 0 éss p, vagyis s ap-nek nem levele és nem maga p. Példa A már ismertp = ( (x 2,x 1 ), (1)) fa esetében sub(p) = {p, (x 2,x 1 ),x 2,x 1, (1),1}, root(p) =, h(p) = 2, size(p) = 6 és fr(p) = x 2 x 1. 27

FANYELVEK (ERDŐK) AzF Σ (X n ) tetszőlegest részhalmazátσx n -fanyelvnek (vagy erdőnek) nevezzük Példa. Legyenn = 2, Σ = Σ 2 Σ1 Σ0, ahol Σ 2 = {σ} ésσ 1 = {γ}, andσ 0 = {α}. Ekkor T = {σ(γ k (x 1 ),γ k (x 1 )) k 0} ésu = {σ(γ k (x 1 ),γ l (x 1 )) k,l 0} valamint T = {σ(γ k (α),γ k (α)) k 0} ésu = {σ(γ k (α),γ l (α)) k,l 0} fanyelvek (T,U F Σ (X 1 ) ést,u F Σ ), ahol γ k (x 1 ) jelöli azt a γ(γ(...γ(x 1 )...)) fát, melyben γ k-szor fordul elő. 28

FAAUTOMATA ΣX n -faautomata: egya = (A,a,A ) rendszer, ahol A = (A,Σ) véges Σ-algebra, amely elemei állapotok, a = (a (1),...,a (n) ) A n kezdő-vektor, A A végállapotok halmaza. AzAfaautomta által felismert T(A) fanyelv: T(A) = {p F Σ (X n ) p(a) A } EgyT F Σ (X n ) fanyelv felismerhető, ha van olyan A ΣX n -faautomata, melyre T = T(A) AΣX n -faautomatákkal felismerhető fanyelvek osztályát Rec(Σ,X n )-nel jelöljük. 29

FAAUTOMATA Tehát egya = (A,a,A ) faautomata estén azakezdő-vektor dimenziója (komponenseinek száma) adja azt azn-et, melyret(a) F Σ (X n ). A jelölésről: alaphalmaz: A Σ-algebra: A = (A,Σ) faautomata: A = (A,a,A ), ahol A A ésa = (a (1),...,a (n) ) A n hasonlóan B,B = (B,Σ),B = (B,b,B ), stb 30

FAAUTOMATA ΣX n faautomata azn = 0 esetben. Ekkor a = (), tehát a faautomata csak A = (A,A ) alakú, ahol A = (A,Σ) egy végesσ-algebra ésa A. Ebben az esetben a faautomata alap termeket ismer fel: T(A) = {p F Σ p A A }. Azn = 0 eset is elég általános ahhoz, hogy tanulmányozhassuk a faautomaták legfontosabb tulajdonságait. Kivéve, a faautomata által felismert fák határai által meghatározott nyelveket. Erre az n > 0 eset lesz alkalmas. 31

VÉGES AUTOMATA Automata felismerő: egym = (Q,Z,δ,q 0,Q ) rendszer, ahol Q véges halmaz állapotok halmaza, Z véges halmaz bemenő jelek halmaza, δ : Q Z Q átmenet-függvény, q 0 Q kezdőállapot, Q Q végállapotok halmaza. 32

VÉGES AUTOMATA Z-feletti véges szavak halmaza: Z u = z 1 z 2...z k 1 z k Z egy (input) szó, ahol z 1,...,z k Z q 0 z 1 z 2... z k 1 q 1 q k 1 z k q k q 1 = δ(q 0,z 1 ),...,q k = δ(q k 1,z k ), jelölés: q k = q 0 u M vagy csakq k = q 0 u AzMáltal felismert L(M) Z nyelv: L(M) = {u Z q 0 u Q }. 33

VÉGES AUTOMATA, MINT FAAUTOMATA M = (Q,Z,δ,q 0,Q ) automata esetén z Z felfogható, mint egyσ z egyváltozós műveleti szimbólum, továbbá legyen Σ Z = (Σ Z ) 1 = {σ z z Z} Konstruáljuk meg aza = (A,Σ Z ) univerzális algebrát, ahol A = Q σ A z (q) = δ(q,z), (q A, z Z). Azu = z 1...z k Z szónak megfeleltetjük a p u = σ zk (...(σ z1 (x 1 ))...) fát (Ugyanannak az adatnak egy másik reprezentációja.) 34

VÉGES AUTOMATA, MINT FAAUTOMATA Tetszőlegesq 0 Q ésu = z 1...z k Z esetén azmautomatában: q 1 = δ(q 0,z 1 ),...,q k = δ(q k 1,z k ), vagyis q 0 z 1 z 2... z k 1 q 1 q k 1 z k q k 35

VÉGES AUTOMATA, MINT FAAUTOMATA Azuszónak megfelelőp u = σ zk (...σ z1 (x 1 )...) fa kiértékelése azaalgebrában a q 0 helyen : σ zk 1 x 1 q 0 σ z1 q 1 σ z2 a 2. qk 1 σ zk q k azazq 0 u M = p A u(q 0 ) 36

VÉGES AUTOMATA, MINT FAAUTOMATA AzM = (Q,Z,δ,q 0,Q ) véges automatához hozzárendeljük aza = (A,a,A ) Σ Z X 1 -faautomatát, ahol a = (q 0 ),A = Q ésa = (A,Σ Z ) az előbb megkonstruált algebra. Ekkor tetszőleges u Z input szóra q 0 u M Q p A u(a) A. Tehát természetes bijekció van azmáltal felismert L(M) = {u Z q 0 u Q } nyelv és az A által felismert T(A) = {p F ΣZ (X 1 ) p(a) A } fanyelv között. Ily módon minden véges automata tekinthető faautomatának. 37

VÉGES AUTOMATA, MINT FAAUTOMATA AzM = (Q,Z,δ,q 0,Q ) véges automata szimulálható 0-változós faautomatával is. Ekkor Σ Z = (Σ Z ) 1 (Σ Z ) 0 = {σ z z Z} {#}, az u = z 1...z k Z szónak ap u = σ zk (...σ z1 (#)...) F ΣZ fát feleltetjük meg. AzA = (A,Σ Z ) univerzális algebrában (lásd előző diák) továbbra is σ A z (q) = δ(q,z),(q A, z Z), továbbá # A = q 0 Végül az M véges automatához hozzárendeljük aza = (A,A ) Σ Z X 0 -faautomatát, ahol ismét A = Q. 38

FELISMERTHETŐ FANYELVEK BOOLE MŰVELETEKRE VALÓ ZÁRTSÁGA S, T F Σ (X n ) fanyelvek esetén azs T,S T és S \T = {p p S ésp T} műveleteket Boole-féle műveleteknek nevezzük. Tétel TetszőlegesΣ-rangolt ábécére ésntermészetes számra, Rec(Σ,X n ) zárt a Boole-féle műveletekre nézve. Bizonyítás Legyenek S ést felismerhetőσx n -fanyelvek, azazs = T(A), T = T(B), ahol A = (A,a,A ), A = (A,Σ), a = (a (1),...,a (n) ) és B = (B,b,B ), B = (B,Σ),b = (b (1),...,b (n) ) ΣX n -faautomaták. 39

FELISMERTHETŐ FANYELVEK BOOLE MŰVELETEKRE VALÓ ZÁRTSÁGA Konstruáljuk meg ac = (A B,c,C ) ΣX n -faautomatát, ahol c = ((a (1),b (1) ),...,(a (n),b (n) )), továbbá A B azaésb algebrák direktszozata, C -t pedig később adjuk meg. Azonnal látható, hogy p A B (c) = (p A (a),p B (b)). Könnyű számolással igazolható, hogy C = (A B) (A B ) esetén: T(C) = S T C = A B esetén: T(C) = S T és C = A (B B ) esetén: T(C) = S \T. 40

PUMPÁLÓ LEMMA FELISMERHETŐ FANYELVEKRE Jelölések: Legyenξ egy új segédszimbólum. Ekkor F Σ (X n {ξ})-vel jelöljük az összes olyan F Σ (X n {ξ}) fák halmazát, amelyekben ξ pontosan egyszer fordul elő. Tetszőlegesp F Σ (X n ) FΣ (X n {ξ}) ésq FΣ (X n {ξ}) esetén p q = q(ξ p), továbbá aq k k-adik hatványát az alábbi módon értelmezzük: (i)q 0 = ξ, és (ii)q k = q q k 1, ha k > 0. 41

PUMPÁLÓ LEMMA FELISMERHETŐ FANYELVEKRE Tétel (Pumpáló lemma) LegyenAegyk-állapotúΣX n -automata. Ha p T(A) legalábbk magasságú fa, akkor vannak olyan q F Σ (X n ) ésr,s F Σ (X n {ξ}) fák, hogy 1) p = q r s, 2) h(r) 1, 3) q r l s T(A) (l = 0,1,...). Bizonyítás Legyen p T(A), h(p) k és tegyük fel, hogy p = σ(p 1,...,p m ) (σ Σ m, m > 0). Legyen1 i m egy olyan index, melyre h(p i ) = h(p) 1és írjuk felp-t p = p i σ(p 1,...,p i 1,ξ,p i+1,...,p m ) alakban. Legyen s 1 := σ(p 1,...,p i 1,ξ,p i+1,...,p m ). 42

PUMPÁLÓ LEMMA FELISMERHETŐ FANYELVEKRE Ezen eljárást folytatva, p felírhatóp = s k+1 s k... s 2 s 1, alakban, ahol -s k+1 F Σ (X n ), -s 1,...,s k F Σ (X n {ξ}), - h(s i ) 1 minden i = 1,...,k-ra. Mivel A állapotainak a számak, vannak olyan 1 i < j k +1 : indexek, hogy (s k+1... s i )(a) = (s k+1... s j )(a). Legyen q = s k+1... s j, r = s j 1... s i, s = s i 1... s 1. Azonnal látható, hogy (q r l s)(a) = p(a) mindenl = 0,1,...-re. 43

A PUMPÁLÓ LEMMA ALKALMAZÁSAI A pumpáló lemma segítségével megmutathatjuk, hogy egy fanyelv nem felismerhető. Nem felismerhető fanyelvek: 1) A nem felismerhető (közönséges) nyelvek kódolásaként kapott fenyelvek. Pl. az {a n b n n 0} nem felismerhető nyelvnek megfelelő {σ a (...σ a (σ b (...(σ b (x 1 ))...)) n 0} }{{}}{{} n-szer n-szer fanyelv, ahol σ a ésσ b egyváltozós szimbólumok.) 2) A fanyelvekre adott példák közül T ést nem felismerhető. 44

A PUMPÁLÓ LEMMA ALKALMAZÁSAI A pumpáló lemma segítségével megmutathatjuk, hogy egy fanyelv nem felismerhető. Nem felismerhető fanyelvek: 3) A teljesen kiegyensúlyozott bináris fákból álló fanyelv nem felismerhető. Legyen Σ = Σ 2, ahol Σ 2 = {σ}. Ekkor a {a,σ(a,a),σ(σ(a,a),σ(a,a)),...} fanyelv nem felismerhető. 45

A PUMPÁLÓ LEMMA ALKALMAZÁSAI Eldönthetőségi kérdések felismerhető fanyelvekre. Tétel LegyenAegy k-állapotúσx n -automata. Úgy T(A) akkor és csakis akkor nem üres, ha van egyk-nál kisebb magasságú fa T(A)-ban. Bizonyítás Az állítás egyik fele nyilvánvaló A másik irányra indirekt bizonyítást adunk. Evégett tfht(a) és minden T(A)-beli fa magassága legalább k. Legyenp T(A) egy minimális méretű T(A)-beli fa. A pumpáló lemma szerint létezikp-nek olyan p = q r s felbontása, amely kielégíti ezen lemma feltételeit. Így q s T(A) is teljesül. Ugyanakkor a q s fa mérete kisebb p méreténél, ami ellentmondás. Tétel TetszőlegesAΣX n -faautomata esetén eldönthető, hogy T(A) üres-e. 46

A PUMPÁLÓ LEMMA ALKALMAZÁSAI Eldönthetőségi kérdések felismerhető fanyelvekre. Tétel TetszőlegesAésBΣX n -faautomaták esetén eldönthető, hogy T(A) T(B) teljesül-e. Bizonyítás Tudjuk, hogy T(A) T(B) T(A)\T(B) =. Konstruáljuk meg azt a C faautomatát, melyre T(C) = T(A)\ T(B) (Boole művetekre való zártság), majd döntsük el, hogy T(C) üres-e. Tétel TetszőlegesAésBΣX n -faautomaták esetén eldönthető, hogy T(A) = T(B) teljesül-e. 47

A PUMPÁLÓ LEMMA ALKALMAZÁSAI Eldönthetőségi kérdések felismerhető fanyelvekre. Tétel Legyen A egyk-állapotúσx n -automata. ÚgyT(A) akkor és csakis akkor végtelen, ha tetszőleges l 0 egész számra létezik az l+k h(p) < l+2k összefüggéseket kielégítő p T(A) fa. Bizonyítás p : l+k h(p) < l+2k = (a pumpáló lemma szerint)t(a) végtelen. Megfordítva, tfh T(A) végtelen. Akkor van olyan t T(A), hogy h(t) l + 2k és föltehető, hogy size(t) minimális. Továbbá, t felbontható t = s k+1 s k... s 2 s 1, alakban, ahol s 1,s 2,...,s k+1 a pumpáló lemma bizonyításában szereplő fák. 48

A PUMPÁLÓ LEMMA ALKALMAZÁSAI Legyen1 i < j k +1 úgy, hogy (s k+1... s j ) A (a) = (s k+1... s i ) A (a) ésj i minimális. Tekintsük ap = s k+1... s j s i 1... s 1 fát. Teljesül, hogy -p T(A) és - size(p) < size(t). Mivel t a minimális méretű olyan fa volt, melyre h(t) l+2k, kapjuk, hogy h(p) < l+2k. Továbbá, azs 1,s 2,...,s k+1 fák definíciójából, valamint abból, hogy j i minimális, következik, hogy h(t) h(p) k. Ez utóbbiból viszont következik, hogy l+k h(p). Tehát ez a p fa megfelelő. 49

A PUMPÁLÓ LEMMA ALKALMAZÁSAI Eldönthetőségi kérdések felismerhető fanyelvekre. Következmény Legyen A egyk-állapotúσx n -automata. Úgy T(A) akkor és csakis akkor végtelen, ha létezik a k h(p) < 2k összefüggéseket kielégítő p T(A) fa. Bizonyítás Az előző tételből kapjuk azl = 0 esetben. Tétel TetszőlegesAΣX n -faautomata esetén eldönthető, hogy hogy T(A) végtelen-e. Bizonyítás A k h(p) < 2k összefüggéseket kielégítő p fák száma véges. 50

FAAUTOMATÁK VÁLTOZATAI Jelölés: AzAhalmaz részhalmazainak a halmazátp(a)-val jelöljük. A halmaz feletti m-változós (m 0) nemdeterminisztikus művelet: f : A m P(A) leképezés. (Ham = 0, akkor f A.) Nemdeterminisztikus (nd) Σ-algebra: A = (A,Σ A ), ahol Σ A = {σ A σ Σ} és mindenm 0-ra ésσ Σ m eseténσ A egy A felettim-változós nemdeterminisztikus művelet. A nd Σ-algebra,σ Σ m ésa 1,...,A m P(A) esetén definiáljuk: σ A (A 1,...,A m ) = (σ A (a 1,...,a m ) a 1 A 1,...,a m A m ). 51

FAAUTOMATÁK VÁLTOZATAI LegyenA = (A,Σ) nd algebra. Minden p F Σ (X n ) indukál A-ban egy p A : P(A) n P(A) polinom függvényt, amelyet a következőképpen definiálunk. Tetszőlegesa = (A (1),...,A (n) ) P(A) n esetén: 1) ha p = x i (1 i n), akkor p A (a) = A (i), 2) ha p = σ Σ 0, akkor p A (a) = σ A ( A), 3) ha p = σ(p 1,...,p m )(σ Σ m, m > 0), akkor p A (a) = σ A (p A 1 (a),...,p A m(a)). 52

FAAUTOMATÁK VÁLTOZATAI Nemdeterminisztikus (nd) ΣX n -faautomata: egya = (A,a,A ) rendszer, ahol A = (A,Σ) véges nd Σ-algebra, amely elemei az állapotok, a = (A (1),...,A (n) ) P(A) n, a kezdő-vektor A A, a végállapotok halmaza. AzAáltal felismert T(A) fanyelv: T(A) = {p F Σ (X n ) p A (a) A }. 53

FAAUTOMATÁK VÁLTOZATAI A determinisztikus faautomata az nd faautomata speciális esete. A nd faautomata determinisztikus faautomatával való szimulálásához: Legyen A = (A, Σ) egy nd Σ-algebra AzArészhalmaz algebrája a P(A) = (P(A),Σ P(A) ) algebra, ahol tetszőleges σ Σ m ésa 1,...,A m P(A) m esetén σ P(A) (A 1,...,A m ) = σ A (A 1,...,A m ). P(A) determinisztikus, továbbá minden p F Σ (X n ) és a = (A (1),...,A (n) ) P(A) n esetén p A (a) = p P(A) (a). 54

FAAUTOMATÁK VÁLTOZATAI Tétel Az ndσx n -faautomatákkal felismerhető erdők osztálya megegyezik Rec(Σ,X n )-nel. Bizonyítás Legyen A = (A,a,A ) egy nd ΣX n -faautomata. Konstruáljuk meg a B = (P(A), a,b ) (determinisztikus) ΣX n -faautomatát, ahol B = {b P(A) b A }. Mivelp A (a) = p P(A) (a), kapjuk, hogy p T(A) p A (a) A p P(A) (a) A p P(A) (a) B p T(B) Tehát T(A) = T(B) 55

FAAUTOMATÁK VÁLTOZATAI Nemdeterminisztikus (nd) felszálló Σ-algebra: egya = (A,Σ A ) pár, ahol A halmaz, azaelemeinek a halmaza, továbbá Σ A = {σ A σ Σ}, ahol - ha σ Σ 0, akkor σ A A, - ha σ Σ m ésm > 0, akkor σ A : A P(A m ). Nemdeterminisztikus (nd) felszálló ΣX n -automata: egya = (A,A, a) rendszer, ahol A véges nd felszállóσ-algebra, amely elemei az állapotok, A ( A) a kezdő-állapotok halmaza, a = (A (1),...,A (n) )( P(A) n ) a végállapot-vektor. 56

FAAUTOMATÁK VÁLTOZATAI a 1 p 1... a σ p m a m (a 1,...,a m ) σ A (a) 57

FAAUTOMATÁK VÁLTOZATAI LegyenA = (A,A, a) egy nd felszállóσx n -automata. Definiáljuk az α A : F Σ (X n ) P(A) leképezést: minden p F Σ (X n ) esetén ha p = x i (1 i n), akkor α A (p) = A (i), ha p = σ (σ Σ 0 ), akkor α A (p) = σ A, ha p = σ(p 1,...,p m ) (σ Σ m, m > 0), akkor α A (p) = {a A σ A (a) (α A (p 1 )... α A (p m )) } Néha α A (p) helyett csakα(p)-t írunk. AzAáltal felismert fanyelv: T(A) = {p F Σ (X n ) α A (p) A }. 58

FAAUTOMATÁK VÁLTOZATAI Példa LegyenΣ = Σ 2 = {σ}. Tekintsük aa = (A,Σ) nd felszálló algebrát, ahol A = {a 0,a 1 }, továbbá σ(a 0 ) = {(a 0,a 0 )} σ(a 1 ) = {(a 0,a 1 ),(a 1,a 0 )} Végül legyen A = (A,A, a) nd felszállóσx 2 -automata, ahol A = {a 1 } és a = ({a 1 },{a 0 }). Ekkor T(A) = {p F Σ (X 2 ) p-ben pontosan egyx 1 van}. Jelöljük ezt az erdőt T x1 -gyel. 59

FAAUTOMATÁK VÁLTOZATAI Példa LegyenΣ = Σ 2 = {σ}. Tekintsük aa = (A,Σ) nd felszálló algebrát, ahol A = {a 0,a 1 }, továbbá σ(a 0 ) = {(a 0,a 0 ),(a 1,a 1 )} σ(a 1 ) = {(a 0,a 1 ),(a 1,a 0 )} Végül legyen A = (A,A, a) nd felszállóσx 2 -automata, ahol A = {a 1 } és a = ({a 1 },{a 0 }). Ekkor T(A) = {p F Σ (X 2 ) p-ben páratlan számúx 1 van}. HaA = {a 0 }, akkor T(A) = {p F Σ (X 2 ) p-ben páros számúx 1 van}. 60

FAAUTOMATÁK VÁLTOZATAI Tétel A nd felszállóσx n -faautomaták által felismert erdők osztálya megegyezik az nd ΣX n -faautomaták által felismert erdők osztályával (vagyis Rec(Σ,X n )-nel). Bizonyítás Legyen A = (A,A, a) nd felszállóσx n -faautomata, ahol A = (A,Σ),a = (A (1),...,A (n) ) Definiáljuk ab = (A,Σ) ndσ-algebrát a következőképpen: a σ B a σ A (a A, σ Σ 0 ) a σ B (a 1,...,a m ) (a 1,...,a m ) σ A (a) minden (a,a 1,...,a m A, σ Σ m, m > 0) esetén. Definiáljuk ab = (B, a,a ) ndσx n -faautomatát. Megmutatjuk, hogy T(A) = T(B) 61

FAAUTOMATÁK VÁLTOZATAI Előtt egy példa: LegyenΣ = Σ 2 = {σ}. Tekintsük a A = (A,Σ) nd felszálló algebrát, ahol A = {a 0,a 1 }, továbbá σ A (a 0 ) = {(a 0,a 0 )},σ A (a 1 ) = {(a 0,a 1 ),(a 1,a 0 )} és aza = (A,A, a) nd felszállóσx 2 -automatát, ahol A = {a 1 } és a = ({a 1 },{a 0 }). Ekkor B = (A,Σ) az az ndσ-algebra, melyben σ B (a 0,a 0 ) = {a 0 },σ B (a 1,a 1 ) =, σ B (a 0,a 1 ) = σ B (a 1,a 0 ) = {a 1 }, ésb = (B, a,a ) pedig a ráépített nd ΣX 2 -faautomata. 62

FAAUTOMATÁK VÁLTOZATAI Megmutatjuk, hogy T(A) = T(B) Először azt igazoljuk, hogy tetszőlegesp F Σ (X n ) fáraα A (p) = p B (a). h(p) szerinti indukció (i) h(p) = 0: (ia) ha p = x i (1 i n), akkor α A (p) = A (i) = p B (a). (ib) ha p = σ Σ 0, akkor α A (p) = σ A = σ B = p B (a), 63

FAAUTOMATÁK VÁLTOZATAI (ii) h(p) > 0, vagyis p = σ(p 1,...,p m ) (σ Σ m, m > 0) a 1 p 1... a σ p m a m a α A (p) ( a 1,...,a m A): ((a 1,...,a m ) σ A (a)) (a i α A (p i ) i = 1,...,m) (definíció + ind. feltevés)(a σ B (a 1,...,a m ) (a i p B i (a) i = 1,...m) a p B (a) Fordítva a megfordításával. Kapjuk, hogy α A (p) = p B (a). 64

FAAUTOMATÁK VÁLTOZATAI Igy p T(A) α A (p) A αa (p)=p B (a) p B (a) A p T(B) Vagyis a nd felszálló faautomatákkal felismerhető erdők felismerhetők nd faautomatával (és így faautomatával) is. 65

FAAUTOMATÁK VÁLTOZATAI Fordítva, legyen B = (B, a,a ) nd ΣX n -faautomata, ahol B = (A,Σ) és a = (A (1),...,A (n) ) Vegyük aza = (A,Σ) nd felszálló algebrát, ahol - a σ B a σ A (a A, σ Σ 0 ) -a σ B (a 1,...,a m ) (a 1,...,a m ) σ A (a) (a,a 1,...,a m A, σ Σ m, m > 0) és tekintsük aza = (A,A, a) nd felszálló faautomatát. Végezzük el A-ra a bizonyítás első felében látott konstrukciót. Akkor visszakapjuk B = (B, a,a )-t. Másrészt a konstrukció megőrzi a felismert erdőt. Így a nd faautomatákkal felismerhető erdők felismerhetők nd felszálló faautomatákkal is. 66

FAAUTOMATÁK VÁLTOZATAI Az A = (A, Σ) nd felszálló algebra determinisztikus, ha - σ A 1, ha σ Σ 0 és - σ A (a) 1, minden σ( Σ m, m > 0) műveleti szimbólumra ésa( A) állapotra. EgyA = (A,A, a) nd felszálló faautomata determinisztikus, ha A determinisztikus, A egy egyelemű{a 0 } halmaz. Ekkor A helyett egyszerűena 0 -t írunk, vagyis A = (A,a 0, a). (Figyelem: az a vektor elemei a determinisztikus esetben is halmazok!) A determinisztikus felszállóσx n -faautomatával felismerhető fanyelvek osztályát Det(Σ,X n )-nel jelöljük. A determinisztikus felszálló faautomatával felismerhető fanyelveket determinisztikus fanyelveknek hívjuk. 67

FAAUTOMATÁK VÁLTOZATAI Példa LegyenΣ = Σ 2 Σ 1, ahol Σ 2 = {σ} ésσ 1 = {γ}. Tekintsük az A = (A,Σ) determinisztikus felszálló algebrát, ahol A = {a 0,a 1,a 2 }, továbbá σ(a 0 ) = (a 1,a 2 ),σ(a 1 ) = σ(a 2 ) =, γ(a 1 ) = a 1, γ(a 2 ) = a 2. Végül legyen A = (A,A, a) az a determinisztikus felszálló faautomata, ahol A = {a 0 } és a = ({a 1 },{a 2 }). Ekkor T(A) = {σ(γ m (x 1 ),γ n (x 2 )) m,n 0}. Jelöljük ezt az erdőt T m,n -nel. Tehát T m,n Det(Σ,X 2 ). 68

FAAUTOMATÁK VÁLTOZATAI Tétel A determinisztikus erdők osztálya a felismerhető erdők osztályának valódi részosztálya. Bizonyítás Legyen Σ = Σ 2 = {σ},n = 2 ést 2 = {σ(x 1,x 2 ),σ(x 2,x 1 )}. Megmutatjuk, hogy T 2 Rec(Σ,X 2 )\Det(Σ,X 2 ). Egyrészt T 2 felismerhető a következő A = (A,(a 1,a 2 ),{a 0 })ΣX 2 -automatával, ahol A = ({a 0,a 1,a 2,c},Σ), továbbá σ(a 1,a 2 ) = σ(a 2,a 1 ) = a 0 és minden más a, b kombináció esetén σ(a, b) = c (= csapda állapot). 69

FAAUTOMATÁK VÁLTOZATAI MásrésztT 2 nem ismerhető fel determinisztikus felszálló faautomatával, amit indirekt bizonyítással mutathatunk meg. Tfh. T felismerhető ab = (B,b 0,(B (1),B (2) )) determinisztikus felszálló ΣX 2 -automatával. Legyenσ(b 0 ) = (b 1,b 2 ). Mivel σ(x 1,x 2 ) T(B), kapjuk, hogy b 1 B (1) ésb 2 B (2) Mivel σ(x 2,x 1 ) T(B), kapjuk, hogy b 1 B (2) ésb 2 B (1) Tehát {b 1,b 2 } B (1) és{b 1,b 2 } B (2). Ekkor viszont B felismeri aσ(x 1,x 1 ) ésσ(x 2,x 2 ) fákat is, tehát T 2 T(B). 70

FAAUTOMATÁK VÁLTOZATAI Ugyanez rajzban: x 1 x 2 σ(x 1,x 2 ) T(B) = b 1 B (1) b 2 B (2) b 1 b 2 x 2 x 1 σ(x 2,x 1 ) T(B) = b 1 B (2) b 2 B (1) b0 σ }{{} σ(x 1,x 1 ),σ(x 2,x 2 ) T(B) 71

FAAUTOMATÁK VÁLTOZATAI A következő részbenσolyan rangolt ábécé, melyben Σ 0 =. EgyA = (A,A,a) felszálló faautomatának egya A állapota 0-állapot, ha T((A,{a},a)) =. Tétel Létezik algoritmus annak eldöntésére, hogy a 0-állapot-e. A normalizált, ha minden σ Σ m,a A, (a 1,...,a m ) σ(a) eseténa i -k egyike sem 0-állapot. Tétel BármelyA = (A,A,a) nd felszálló faautomatához van vele ekvivalens A = (A,A,a) normalizált nd felszálló faautomata. Bizonyítás Ha (a 1,...,a m ) σ(a) tartalmaz egy olyan komponenst, amely 0-állapot, akkor töröljük σ(a)-ból. 72

DETERMINISZTIKUS FELSZÁLLÓ FAAUTOMATÁK Minden σ Σ m (m 0) esetén bevezetjük a σ = {σ 1,...,σ m } (rangolatlan) ábécét. Haσ τ. σ τ =. Legyen = ( σ σ Σ). Tetszőlegesp F Σ (X n ) ésx X n a p-beli x-utak g x (p) halmaza: (i) g x (x) = {ε} és g x (y) =, ha y x (y X n ) (ii) ha p = σ(p 1,...,p m ), akkor g x (p) = σ 1 g x (p 1 )... σ m g x (p m ) Szemléletesen: Apfaσ-val címkézett csúcsából kiinduló i-ik élhez írjuk a σ i címkét. Akkor ap-beli x-utakat úgy kapjuk, hogy p-ben a gyökértől azx-szel címkézett levelekhez vezető utak mentén az élek címkéit a gyökértől a levelek felé haladva összeolvassuk. 73

DETERMINISZTIKUS FELSZÁLLÓ FAAUTOMATÁK Példap = σ(τ(x 2,x 1 ),ρ(x 2 )) x 2 x 1 ρ 1 ρ τ σ 1 σ 2 τ 1 τ 2 σ x 2 σ = {σ 1,σ 2 }, τ = {τ 1,τ 2 }, ρ = {ρ 1 }, = {σ 1,σ 2,τ 1,τ 2,ρ 1 } g x1 (p) = {σ 1 τ 2 }, g x2 (p) = {σ 1 τ 1,σ 2 ρ 1 } 74

DETERMINISZTIKUS FELSZÁLLÓ FAAUTOMATÁK Kiterjesztés: tetszőlegest F Σ (X n )-re ésx X n -re g x (T) = (g x (p) p T). EgyT F Σ (X n ) fanyelv c(t) lezártja: c(t) = {p F Σ (X n ) ( x X n ) : g x (p) g x (T)}. Nyilvánvaló, hogy T c(t), mert ha p T, akkor ( x X n ) : g x (p) g x (T). Azt mondjuk, hogy T zárt, ha T = c(t). HaT = {p}, akkor T zárt. 75

DETERMINISZTIKUS FELSZÁLLÓ FAAUTOMATÁK Példa. A T 2 = {σ(x 1,x 2 ),σ(x 2,x 1 )} erdő nem zárt. σ 1 σ 2 x 1 x 2 σ σ 1 σ 2 x 2 x 1 σ Látható, hogy g x1 (T 2 ) = {σ 1,σ 2 } = g x2 (T 2 ). Továbbá, g x1 (σ(x 1,x 1 )) = {σ 1,σ 2 }, g x2 (σ(x 1,x 1 )) =, g x1 (σ(x 2,x 2 )) =, g x2 (σ(x 2,x 2 )) = {σ 1,σ 2 }. Ezért c(t 2 ) = {σ(x 1,x 2 ),σ(x 2,x 1 ),σ(x 1,x 1 ),σ(x 2,x 2 )}. Példa. A T x1 erdő sem zárt. 76

DETERMINISZTIKUS FELSZÁLLÓ FAAUTOMATÁK TetszőlegesA = (A,A,a) nd felszálló faautomata esetén (ahol a = (A (1),...,A (n) )) bevezetjük a P(A) = (P(A),A,b) felszálló faautomatát, ahol 1) P(A) = (P(A), Σ) det. felszálló algebra, melynek műveletei: σ P(A) (H) = ( (π 1 (σ A (a)) a H),..., (π m (σ A (a)) a H)). (σ Σ m, H P(A) ésπ i azi-edik projekció: π i (c 1,...,c n ) = c i )), 2) b = (B (1),...,B (n) ) ésb (i) = {H P(A) H A (i) }. Nyilvánvaló, hogy P(A) determinisztikus, mert σ P(A) : P(A) P(A) m, tehát az érték egy vektor, melynek elemei halmazok P(A)-nak egy kezdőállapota van: A P(A). 77

DETERMINISZTIKUS FELSZÁLLÓ FAAUTOMATÁK Ugyanakkor, általábant(p(a)) T(A), mert mint láttuk az nd felszálló faautomaták nem determinizálhatók : van olyan nd felszálló faautomata, amelyhez nincsen vele ekvivalens determinisztikus felszálló faautomata Ha viszont A determinisztikus, akkor T(P(A)) = T(A), mert a P(A) kezdőállapota egyelemű halmaz (A = {a 0 }) ésσ P(A) (a) = σ A (a) minden a A-ra. 78

DETERMINISZTIKUS FELSZÁLLÓ FAAUTOMATÁK Példa. LegyenA = {a 0,a 1,a 2 },Σ = Σ 2 = {σ} és tekintsük az A = (A,Σ) nd felszálló algebrát, ahol σ(a 0 ) = {(a 1,a 2 ),(a 2,a 1 )} ésσ(a 1 ) = σ(a 2 ) =. Tekintsük továbbá aza = (A,A,a) nd felszálló faautomatát, ahol A = {a 0 } és a = ({a 1 },{a 2 }). Nyilvánvalóan T(A) = {σ(x 1,x 2 ),σ(x 2,x 1 )}. A P(A) = (P(A), Σ) determinisztikus felszálló algebrában σ({a 0 }) = ({a 1,a 2 },{a 1,a 2 }), stb Ekkor ap(a) = (P(A),A,b) determinisztikus felszálló faautomatában b = ({{a 1 },{a 1,a 2 },...},{{a 2 },{a 1,a 2 },...}) és T(P(A)) = {σ(x 1,x 1 ),σ(x 1,x 2 ),σ(x 2,x 1 ),σ(x 2,x 2 )}. 79

DETERMINISZTIKUS FELSZÁLLÓ FAAUTOMATÁK Tétel LegyenA = (A,A,a) nd felszálló faautomata. HaAnormalizált, akkor T(P(A)) = c(t(a)). Bizonyítás T(P(A)) c(t(a)): Tfhp T(P(A)) ésu g xj (p) (x j X n ) Legyenu = (δ 1 ) i1...(δ k ) ik (k 0) ésδ 1,...,δ k Σ. AP(A) def. alapján nyilvánvaló, hogy a 0,...,a k A: 1) a 0 A ésa k A (j), 2) δ A 1 (a 0 ) i 1 -edik komponense a 1,...,δ A k (a k 1 )i k -adik komponense a k Aza 0,...,a k egyike sem 0-állapot, mivel A normalizált Így azuutat ki tudjuk egészíteni olyan q T(A) fává, melyreu g xj (q). Következésképpen p c(t(a)) c(t(a)) T(P(A)): nyilvánvalóan teljesül, mert P(A) a különböző fákban lévő utakat egyszerre látja. 80

DETERMINISZTIKUS FELSZÁLLÓ FAAUTOMATÁK Tétel Egy felismerhető erdő akkor és csakis akkor determinisztikus, ha zárt. Bizonyitás Tekintsünk egyand felszálló faautomata által felismert fanyelvet és tegyük fel, hogy A normalizált. HaAdeterminisztikus, akkor T(P(A)) = T(A). Az előző tétel szerint viszont T(P(A)) = c(t(a)). Tehát T(A) = c(t(a)), vagyis T(A) zárt fanyelv. HaT(A) zárt vagyis T(A) = c(t(a)), akkor ugyancsak az előző tétel szerint T(P(A)) = T(A), tehát T(A) determinisztikus. Következmény T 2,T x1 Det(Σ,X 2 ) (mivel egyik sem zárt). Ugyanakkor T m,n Det(Σ,X 2 ), tehát zárt. 81

REGULÁRIS FANYELVTANOK Egy reguláris ΣX n -fanyelvtan egyg = (A,Σ,X n,p,a 0 ) rendszer, ahol A véges halmaz, a nemterminális szimbólumok halmaza, Σ rangolt ábécé, A (Σ X n ) =, P átírási szabályok véges halmaza, melyek alakja a r, ahol a A és r F Σ (A X n ), a 0 A, a kezdőszimbólum. HaGértelmezésébenΣvagy X n nem nyer specifikálást, akkor reguláris fanyelvtanról beszélünk. 82

REGULÁRIS FANYELVTANOK p G q (p,q F Σ (A X n )) közvetlen deriváció: p = a a r P r = q p G q deriváció 83

REGULÁRIS FANYELVTANOK AG = (A,Σ,X n,p,a 0 ) reguláris fanyelvtan által generált fanyelv: T(G) = {p F Σ (X n ) a 0 p}. Példa LegyenG = (A,Σ,X 2,P,a 1 ) egy regulárisσx 2 -fanyelvtan, ahol A = {a 0,a 1 },Σ = Σ 2 = {σ}, ésp a következő szabályokból áll: a 1 σ(a 0,a 1 ) σ(a 1,a 0 ) x 1, a 0 σ(a 0,a 0 ) x 2. Könnyű látni, hogy T(G) = T x1. 84

REGULÁRIS FANYELVTANOK Példa LegyenG = (A,Σ,X 2,P,a 0 ) egy regulárisσx 2 -fanyelvtan, ahol A = {a 0,a 1,a 2 },Σ = Σ 2 Σ 1, ahol Σ 2 = {σ},σ 1 = {γ} ésp a következő szabályokból áll: a 0 σ(a 1,a 2 ), a 1 γ(a 1 ) x 1, a 2 γ(a 2 ) x 2. Könnyű látni, hogy T(G) = T m,n. 85

REGULÁRIS FANYELVTANOK EgyG = (A,Σ,X n,p,a ) rendszer kiterjesztett reguláris ΣX n -nyelvtan, ahol A, Σ, X n, P ugyanaz, mint a regulárisσx n -nyelvtan definíciójában, A A pedig a kezdőszimbólumok halmaza. AG = (A,Σ,X n,p,a ) kiterjesztett reguláris fanyelvtan által generált fenyelv: T(G) = {p F Σ (X n ) a p, a A }. Tétel Bármely kiterjesztett reguláris fanyelvtanhoz van vele ekvivalens reguláris fanyelvtan. Bizonyítás G = (A,Σ,X n,p,a ) tetszőleges kiterjesztett reguláris fanyelvtanhoz megkonstruáljuk a Ḡ = (Ā,Σ,X n, P,a 0 ) reguláris fenyelvtant, ahol Ā = A {a 0 } (a 0 A új nemterminális) és P = {a 0 a a A } P. 86

REGULÁRIS FANYELVTANOK AG = (A,Σ,X n,p,a ) kiterjesztett reguláris fanyelvtan normálalakban adott, ha átírási szabályai a következő alakúak: a x i (a A, x i X n ), vagy a σ (a A, σ Σ 0 ), vagy a σ(a 1,...,a m )(a,a 1,...,a m A, σ Σ m, m > 0). 87

REGULÁRIS FANYELVTANOK Ábrap = σ(p 1,...,p m ), a σ(a 1,...,a m ) P,a i = p i (i = 1,...,m), a = σ(a 1,...,a m ) = σ(p 1,...,p m ) a = a 1... a m σ p 1... = σ p m 88

REGULÁRIS FANYELVTANOK Tétel BármelyG(kiterjesztett) reguláris fanyelvtanhoz van vele ekvivalens normálalakban adott (kiterjesztett) reguláris fanyelvtan. Bizonyítás Legyen G = (A,Σ,X n,p,a ) kiterjesztett reguláris fanyelvtan és egyena p P olyan szabály amelyik nem felel meg a normálalak követelményinek. 1) h(p) = 0, vagyis a szabály a b (b A) alakú. Ha van olyan c r P szabály, melyrer A ésb c, akkor helyettesítsük P -ben aza b szabályt az összes a r szabállyal. Különben az a b szabályt elhagyjuk P -ből. (Láncszabály mentesítés.) 89

REGULÁRIS FANYELVTANOK 2) h(p) > 0,p = σ(p 1,...,p m )(σ Σ m, m > 0). Hap i A, akkor vegyünk fel egy új a i nemterminális szimbólumot ésa i p i szabályt. Az a p szabályt helyettesítsük az a i p i (1 i m) szabályokkal és aza σ(b 1,...,b m ) szabállyal, ahol tetszőlegesi(1 i m) indexre a i, ha p i A, b i = p i, különben. A fenti módosítás ekvivalens fanyelvtant eredményez. Másrészt mivel h(p i ) < h(p), ezért véges számú lépésben egy normál alakban adott kiterjesztett reguláris fanyelvtanhoz jutunk. Az is nyilvánvaló, hogy hagnem kiterjesztett, akkor az eredményül kapott reguláris fanyelvtan sem kiterjesztett. 90

REGULÁRIS FANYELVTANOK Tétel A regulárisσx n fanyelvtanok által generált erdők osztálya megegyezik a felismerhető erdők osztályával (vagyis Rec(Σ,X n )-nel). Bizonyítás Legyen G = (A,Σ,X n,p,a ) normál alakban adott, kiterjesztett reguláris fanyelvtan. Értelmezzük aza = (A,Σ) nd felszálló algebrát a következőképpen: 1) σ Σ 0 : a σ A a σ P, 2) σ Σ m, m > 0 : (a 1,...,a m ) σ A (a) a σ(a 1,...,a m ) P. Majd definiáljuk az A = (A,A,a) (a = (A (1),...,A (n) )) nd felszálló faautomatát, ahol a A (i) a x i P (1 i n). 91

REGULÁRIS FANYELVTANOK Megmutatjuk, hogy tetszőlegesa A ésp F Σ (X n ) esetén a G p a α A (p). h(p) szerinti indukció (i) h(p) = 0: (ia)p = x i (1 i n): a G x i a x i P a A (i) a α A (x i ), ahol a második ekvivalenciáknál A (i) definícióját, a harmadiknál pedig az A (i) = α A (x i ) egyenlőséget használtuk ki. (ib)p = σ Σ 0 : a G σ a σ P a σ A a α A (σ), ahol a második ekvivalenciáknál σ A definícióját, a harmadiknál pedig az σ A = α A (σ) egyenlőséget használtuk ki. 92

REGULÁRIS FANYELVTANOK (ii) h(p) > 0,p = σ(p 1,...,p m )(σ Σ m, m > 0): Ekkor a levezetésa G σ(a 1,...,a m ) G σ(p 1,...,p m ) alakban írható. Az első lépés szerint a σ(a 1,...,a m ) P, ami ekvivalens azzal, hogy (a 1,...,a m ) σ A (a). Továbbá, minden1 i n-re,a i G p i, tehát az indukció feltevés szerint a i α A (p i ). Kapjuk, hogy a α A (σ(p 1,...,p m )). Fordítva : fordítva. Igy: p T(G) ( a A )a p α A (p) A p T(A), ahol a második ekvivalencia az előbb bizonyított a p a α A (p) ekvivalenciából következik. Következésképpen, a reguláris fanyelvtanokkal generálható erdők felismerhetők. 93

REGULÁRIS FANYELVTANOK Fordítva, legyen A = (A,A,a) (a = (A (1),...,A (n) ) nd felszálló faautomata, A = (A, Σ) nd felszálló algebra. Konstruáljuk meg ag = (A,Σ,X n,p,a ) kiterjesztett reguláris fanyelvtant, ahol a P szabályhalmazt a következőképpen definiáljuk: - Minden σ Σ 0 ésa A esetén : a σ A a σ P, - Minden σ Σ m, m > 0 ésa,a 1,...,a m A esetén: (a 1,...,a m ) σ A (a) a σ(a 1,...,a m ) P, - Minden 1 i n ésa A esetén: a A (i) a x i P (1 i n) A kapott G normál alakban adott. Konstruáljuk megg-hez a bizonyítás első felében látott nd felszálló faautomatát. VisszakapjukA-t. Másrészt a konstrukció megőrzi a generált erdőt: T(A) = T(G). 94

REGULÁRIS FANYELVTANOK Megjegyzés. Az előzőek értelmében Rec(Σ,X n ) bármely eleme reprezentálható az alábbi eszközök bármelyikével: ΣX n -faautomata, ndσx n -faautomata, nd felszállóσx n -faautomata, bármilyen típusú regulárisσx n -fanyelvtan. Továbbá, Det(Σ,X n ) valódi részosztálya Rec(Σ,X n )-nek és Det(Σ,X n ) a Rec(Σ,X n ) zárt elemeiből áll. 95

REGULÁRIS FANYELVTANOK Következmény. Minden véges erdő felismerhető. Bizonyítás Legyen T = {p 1,...,p k } F Σ (X n ) egy véges erdő. Tekintsük ag = (A,Σ,X n,p,a ) fanyelvtant, ahol A = A = {a 0 } P = {a 0 p 1,...,a 0 p k }. Nyilvánvaló, hogy L(G) = T. 96

MŰVELETEK FANYELVEKEN Először bevezetünk egy jelölést: tetszőleges σ Σ m ést 1,...,T m F Σ (X n ) esetén: σ(t 1,...,T m ) = {σ(p 1,...,p m ) p i T i, i = 1,...,m}. OI-helyettesítés (outside in): tetszőleges T,T 1,...,T n F Σ (X n ) estén definiáljuk at(x 1 T 1,...,x n T n ) fanyelvet. (T -beli fákban x i helyébe T i -beli fákat helyettesítünk oly módon, hogy x i különböző előfordulásai helyébe különböző T i -beli fák helyettesíthetők.) 97

MŰVELETEK FANYELVEKEN OI-helyettesítés (outside in): 1) Először tetszőlegesp F Σ (X n )-re definiáljuk a p(x 1 T 1,...,x n T n ) fanyelvet: - Ha p = x i (1 i n), akkor p(x 1 T 1,...,x n T n ) = T i. - Ha p = σ (σ Σ 0 ), akkor p(x 1 T 1,...,x n T n ) = {σ}. - Ha p = σ(p 1,...,p m )(σ Σ m, m > 0), akkor p(x 1 T 1,...,x n T n ) = σ(p 1 (x 1 T 1,...,x n T n ),...,p m (x 1 T 1,...,x n T n )). 2) Ezek után tetszőlegest -re: T(x 1 T 1,...,x n T n ) = p T p(x 1 T 1,...,x n T n ). 98

MŰVELETEK FANYELVEKEN Tétel Ha T,T 1,...,T n F Σ (X n ) tetszőleges felismerhető erdő, akkor T(x 1 T 1,...,x n T n ) is az. Bizonyítás LegyenT = T(G) ést i = T(G i ) (i = 1,...,n), ahol G = (A,Σ,X n,p,a 0 ) ésg i = (A i,σ,x n,p i,a i ) na-ban adott reguláris fanyelvtanok. TfhA,A 1,...,A n páronként diszjunktak Konstruáljuk meg aḡ = (Ā,Σ,X n, P,a 0 ) reguláris fanyelvtant, ahol Ā = A A 1... An és P =P {a x i a A, 1 i n} {a ai a x i P, 1 i n} P1... Pn Azonnal látható, hogy T(Ḡ) = T(x 1 T 1,...,x n T n ). 99

MŰVELETEK FANYELVEKEN x i -szorzat: LegyenS,T F Σ (X n ) és1 i n. AzS ést x i -szorzatát a következőképpen definiáljuk: S xi T = T(x 1 {x 1 },...,x i 1 {x i 1 },x i S,x i+1 {x i+1 },...,x n {x n }). Tétel A felismerhető fanyelvek osztálya zárt az x i -szorzásra nézve. Bizonyítás Következik az OI-helyettesítésre való zártságból és abból, hogy az{x j } egyelemű fanyelvek felismerhetők. 100

MŰVELETEK FANYELVEKEN x i -iteráció: TetszőlegesT F Σ (X n ) és(1 i n) esetén: T 0,x i = {x i }, T j+1,x i = (T j,xi xi T) T j,x i (j = 0,1...) Továbbá, at erdőx i -iteráltját a következőképpen értelmezzük: ÁllításT xi xi T T x i. T x i = (T j,x i j = 0,1,...). Bizonyítás Legyen q T xi xi T. Akkor: p T, p 1,...,p k T x i : q {p 1,...,p k } xi {p}, továbbá, j : p 1,...,p k T j,x i. Ezértq T j,xi xi T T j+1,x i T x i. 101

MŰVELETEK FANYELVEKEN Tétel A felismerhető erdők osztálya zárt az x i -iterációra nézve. Bizonyítás LegyenT F Σ (X n ) felismerhető erdő,1 i n természetes szám és tegyük fel, hogy T = T(G), ahol G = (A,Σ,X n,p,a 0 ) egy na-ban adott reguláris fanyelvtan. Tekintsük aḡ = (Ā,Σ,X n, P,Ā ) kiterjesztett reguláris fanyelvtant, ahol -Ā = A {d}(d A), - P = {d x i } P {a a 0 a x i P} -Ā = {d,a 0 } Nyilvánvalóan T(Ḡ) = T x i. Az egyesítés, azx i -szorzat és azx i -iteráció műveleteket reguláris műveleteknek hívjuk. Tétel A felismerhető erdők osztálya zárt a reguláris műveletekre nézve. 102

KLEENE TÉTELE REGULÁRIS FANYELVEKRE Reguláris ΣX n -kifejezések halmaza a legszűkebb olyan R halmaz, amelyre teljesülnek az alábbi feltételek: 1) R. 2) Σ 0 Xn R. 3) Haξ,ζ R, akkor - (ξ +ζ) R, - (ξ xi ζ) R (1 i n), - (ξ x i ) R (1 i n). 4) Haσ Σ m (m > 0) ésξ 1,...,ξ m R, akkor σ(ξ 1,...,ξ m ) R. A regulárisσx n -kifejezések halmazát RE(Σ,X n )-nel jelöljük. 103

KLEENE TÉTELE REGULÁRIS FANYELVEKRE Minden η RE(Σ,X n ) reguláris kifejezés meghatároz η F Σ (X n ) fanyelvet, amelyet a következőképpen értelmezünk: 1) Haη =, akkor η az üres erdő. 2) Haη Σ 0 Xn, akkor η = {η}. - Haη = (ξ +ζ), akkor η = ξ ζ, - ha η = (ξ xi ζ) (1 i n), akkor η = ξ xi ζ, - ha η = (ξ x i ) (1 i n), akkor η = ξ x i. 4) Haη = σ(ξ 1,...,ξ m ), akkor η = σ( ξ 1,..., ξ m ). Egy fanyelv reguláris, ha meghatározható reguláris kifejezéssel. 104

KLEENE TÉTELE REGULÁRIS FANYELVEKRE Példák ( 1) Haη = β x2 α x1 (σ(x 1,x 2 ) x 1 ) ), akkor η = {α,σ(α,β),σ(σ(α,β),β),...}. 2) Haη = (γ(x 2 )) x2 x2 ( γ(x1 )) x1 x1 (σ(x 1,x 2 ) ), akkor η = {σ(γ m (x 1 ),γ n (x 2 )) n,m 0}. 3) Mindenp F Σ (X n ) eseténp RE(Σ,X n ) és p = {p}. (Bizonyítás: p felépítése szerinti indukció.) Minden véges erdő reguláris: ha L = {p 1,...,p m }, akkor η = p 1 +...+p m. Tétel (Kleene) Egy erdő akkor és csak akkor reguláris, ha felismerhető. Bizonyítás Következik két részben. 105

KLEENE TÉTELE REGULÁRIS FANYELVEKRE Tétel A reguláris erdők felismerhetők. Bizonyítás: Azη regulárisσx n -kifejezés felépítése szerinti indukcióval. 1) Haη =, akkor η felismerhető bármely olyan ΣX n -automatával, amely végállapotainak a halmaza üres. 2) Haη Σ 0 Xn, akkor ag = ({a 0 },Σ,X n,p,a 0 ) reguláris fanyelvtan, ahol P = {a 0 η}, az η erdőt generálja. 3) η = (ξ +ζ), η = (ξ xi ζ) ésη = (ξ x i ): az indukció feltevés és a felismerhető erdők egyesítésre, x i -szorzásra ésx i -iterációra való zártsága miatt. 4) η = σ(ξ 1,...,ξ m ): tfh az ξ 1,..., ξ m erdők felismerhetők. Ekkor σ( ξ 1,..., ξ m ) = {σ(x 1,...,x m )}(x 1 ξ 1,...,x m ξ m ), tehát σ( ξ 1,..., ξ m ) is felismerhető az IO-helyettesítésre való zártság miatt. 106

KLEENE TÉTELE REGULÁRIS FANYELVEKRE Tétel A felismerhető erdők regulárisak. Bizonyítás Legyen A = (A,a,A ) egyσx n -automata, ahol A = {1,...,k}. TetszőlegesK A, 0 h k és1 i k esetént (h) K,i p F Σ (K X n ) fák halmaza, melyekre: az összes olyan p(a) = i éspmindensvalódi részfája esetén1 s(a) h. (Ap(a) egy állapot, melyet az algebrai alapfogalmak részben definiáltuk.) 107

KLEENE TÉTELE REGULÁRIS FANYELVEKRE PéldaA = {1,2,3,4},a = (1,3),A = {4} ésk = {2,4} p = σ(ρ(x 1,τ(x 2 ),x 1 ),τ(2)) x 2 x 2 3 x 1 τ x 1 2 ρ p T (4) K,3,p / T(0) K,3 p / T (1) K,3,p T(2) K,3 τ σ x 1 1 τ 2 x 1 1 2 2 ρ 1 σ 3 τ 1 108

KLEENE TÉTELE REGULÁRIS FANYELVEKRE Nyilvánvaló, hogy T(A) = (T (k),i i A ). Ezért elegendő igazolni, hogy mindenk A, 0 h k és1 i k esetént (h) K,i reguláris. h szerinti indukció: (i)h = 0: Ekkor nincs közbülső állapot, ezért T (0) K,i Σ 0 Xn {i} véges fanyelv, tehát reguláris. {σ(y 1,...,y m ) σ Σ m, y 1,...,y m Σ 0 Xn K}, 109

KLEENE TÉTELE REGULÁRIS FANYELVEKRE (ii)h h+1: Tfh. egy rögzített 0 h < k mellettt (h) K,i reguláris. Megmutatjuk: T (h+1) K,i = T (h) K,i T (h) K,h+1 h+1 (T (h) K {h+1},h+1 ) h+1 h+1 T (h) K {h+1},i. (1) Jelölje (1) jobb oldalát S. AzS T (h+1) K,i tartalmazás nyilvánvaló. Fordítva, tfh. p T (h+1) K,i tetszőleges. Irjuk apfa s részfájának a gyökeréhez második cimkeként azs(a) állapotot. A p gyökerétől a leveleihez vezető utakon h+1 belső előfordulásainak maximálislszáma szerinti indukcióval igazoljuk, hogy p S. 1) l = 0: p T (h) K,i, így állításunk igaz. 110

KLEENE TÉTELE REGULÁRIS FANYELVEKRE 2) Tfh. l > 0: p p 1... p d n d h+1 n 1 h+1 i n 1,...,n d csúcsokhoz vezető úton nincs h+1belső címke a p 1,...,p d részfákat helyettesítsük a h+1állapottal, jelölje q a kapott fát. Akkor q T (h) K {h+1},i 111

KLEENE TÉTELE REGULÁRIS FANYELVEKRE p 1,...,p d T (h+1) K,h+1 és ap 1,...,p d fák mindegyikében a h+1állapot l-nél kevesebbszer fordul elő. Tehát az indukciós feltevés szerint p 1,...,p d T (h) (h) K,h+1 T K,h+1 h+1 (T (h) K {h+1},h+1 ) h+1 h+1 T (h) K {h+1},h+1 T (h) (h) K,h+1 T K,h+1 h+1 (T (h) K {h+1},h+1 ) h+1 = T (h) K,h+1 h+1 (T (h) K {h+1},h+1 ) h+1 Tehát p {p 1,...,p d } h+1 q T (h) K,h+1 h+1 (T (h) K {h+1},i ) h+1 h+1 T (h) K {h+1},i S 112

KLEENE TÉTELE REGULÁRIS FANYELVEKRE Kleene tételének egy másik alakja. Tétel Egy fanyelv akkor és csak akkor felismerhető, ha megkapható véges fanyelvekből a reguláris műveletek véges sokszori alkalmazásával. Bizonyítás A egyik irány abból következik, hogy a véges fanyelvek felismerhetők és a felismerhető fanyelvek zártak a reguláris műveletekre. Fordítva, legyen T felismerhető fanyelv. A Kleene tétel miatt van olyan η reguláris kifejezés, melyret = η. Azη felépítése szerinti indukcióval fejezhetjük be a bizonyítást. (i) Haη = vagy η Σ 0 Xn, akkor maga a T fanyelv is véges. (ii) Haη = ξ +ζ, akkor T = T 1 T2, ahol T 1 = ξ ést 2 = ζ. Továbbá az indukciós feltevés miatt a T 1 ést 2 fanyelvek megkaphatók véges fanyelvekből a reguláris műveletek véges sokszori alkalmazásával. EzértT is megkapható ugyanígy. Stb, stb... 113

FAAUTOMATÁK MINIMALIZÁLÁSA LegyenekAésBΣX n -faautomaták. Egyϕ : A B leképezésa-nak B-be való homomorfizmusa, ha 1) ϕ(a (i) ) = b (i) (i = 1,...,n). 2) ϕ az A algebrának a B algebrába való homomorf leképezése 3) ϕ 1 (B ) = A. Ha van A-nakB-be olyan ϕ homomorf leképezése, amely ráképezés, akkor B-t az A faautomata homomorf képének mondjuk. Amennyiben ϕ kölcsönösen egyértelmű is, akkor ϕ-t izomorfizmusnak nevezzük, és azt mondjuk, hogy azaésb faautomaták izomorfak, jelben A = B. 114