• Nem Talált Eredményt

AUTOMATÁKÉSFORMÁLISNYELVEKPÉLDATÁR ÉSIKZOLTÁNGOMBÁSÉVAIVÁNSZABOLCS

N/A
N/A
Protected

Academic year: 2022

Ossza meg "AUTOMATÁKÉSFORMÁLISNYELVEKPÉLDATÁR ÉSIKZOLTÁNGOMBÁSÉVAIVÁNSZABOLCS"

Copied!
146
0
0

Teljes szövegt

(1)

Írta :

ÉSIK ZOLTÁN GOMBÁS ÉVA IVÁN SZABOLCS

AUTOMATÁK ÉS

FORMÁLIS NYELVEK PÉLDATÁR

Egyetemi tananyag

2011

(2)

Alapjai Tanszék

LEKTORÁLTA : Dr. Gazdag Zsolt, Eötvös Loránd Tudományegyetem Informatikai Kar Algoritmusok és Alkalmazásaik Tanszék

Creative Commons NonCommercial-NoDerivs 3.0 (CC BY-NC-ND 3.0)

A szerző nevének feltüntetése mellett nem kereskedelmi céllal szabadon másolható, terjeszthető, megjelentethető és előadható, de nem módosítható.

TÁMOGATÁS :

Készült a TÁMOP-4.1.2-08/1/A-2009-0008 számú, „Tananyagfejlesztés mérnök

informatikus, programtervező informatikus és gazdaságinformatikus képzésekhez” című projekt keretében.

ISBN 978-963-279-495-2

KÉSZÜLT : aTypotex Kiadógondozásában FELELÁS VEZETÁ : Votisky Zsuzsa

AZ ELEKTRONIKUS KIADÁST ELÁKÉSZÍTETTE : Juhász Lehel

KULCSSZAVAK :

Szavak, nyelvek, véges automaták, reguláris kifejezések és nyelvek, környezetfüggetlen nyelvtanok és nyelvek, eldönthetetlen problémák.

ÖSSZEFOGLALÁS :

Jelen példatár a programtervező informatikus, mérnök informatikus és gazdaságinformatikus képzési tantervekben szereplő Számítástudomány alapjai és Formális nyelvek kurzusok gyakorlatán előforduló feladattípusokhoz gyűjt össze feladatokat. A példatár arányaiban tükrözi, hogy az érintett területek általában milyen részletességgel kerülnek elő ezen kurzusokon, így legnagyobbrészt a reguláris nyelvekkel (véges automaták, variánsaik és rajtuk végzett műveletek, reguláris kifejezések, szintaktikus félcsoportok, monadikus másodrendű logikai formulák) és a környezetfüggetlen nyelvekkel (környezetfüggetlen nyelvtanok, veremautomaták) kapcsolatos feladatok kaptak benne helyet.

(3)

Tartalomjegyzék

1. Általános jelölések 5

1.1. Elméleti összefoglaló . . . 5

2. Nyelvek és nyelvtanok 6 2.1. Elméleti összefoglaló . . . 6

2.2. Feladatok . . . 8

Megoldások . . . 12

3. Reguláris nyelvek 17 3.1. Elméleti összefoglaló . . . 17

3.2. Véges automaták . . . 28

3.3. Műveletek automatákon. . . 30

3.4. Automaták minimalizálása . . . 31

3.5. Reguláris kifejezések . . . 33

3.6. Ekvivalens átalakítások automaták, reguláris nyelvtanok és reguláris kifeje- zések között . . . 34

3.7. Pumpáló lemma reguláris nyelvekre . . . 35

3.8. Reguláris nyelvek zártsági tulajdonságai . . . 35

3.9. Szintaktikus félcsoport, átmenetmonoid, reguláris nyelvek felismerése mono- idokkal . . . 38

3.10. Reguláris nyelvek megadása logikai formulákkal . . . 39

3.11. Automaták végtelen szavakon . . . 39

3.12. Mealy és Moore gépek . . . 40

Megoldások . . . 40

4. Környezetfüggetlen nyelvek 60 4.1. Elméleti összefoglaló . . . 60

4.2. Környezetfüggetlen nyelvtanok. . . 67

4.3. Környezetfüggetlen nyelvtanok ekvivalens átalakításai, normálformák . . . . 72

4.4. Veremautomaták . . . 78

4.5. Ekvivalens átalakítások veremautomaták és környezetfüggetlen nyelvtanok között . . . 81

4.6. Pumpáló lemma környezetfüggetlen nyelvekre. . . 84

4.7. Környezetfüggetlen nyelvek zártsági tulajdonságai . . . 85

(4)

Megoldások . . . 88

5. Szintaktikus elemzési módszerek 130

5.1. Elméleti összefoglaló . . . 130 5.2. Általános elemzés, backtrack és táblázatos módszerek . . . 134 Megoldások . . . 135

6. Környezetfüggő nyelvek és általános nyelvek 136

6.1. Elméleti összefoglaló . . . 136 6.2. Környezetfüggő és általános nyelvtanok . . . 136 Megoldások . . . 137

7. Eldönthetetlen problémák 140

7.1. Elméleti összefoglaló . . . 140 7.2. Feladatok . . . 141 Megoldások . . . 143

(5)

1. fejezet

Általános jelölések

1.1. Elméleti összefoglaló

Ahalmazfogalmát alapfogalomként használjuk, nem kerül definiálásra. EgyAhalmazszá- mosságát|A|-val jelöljük ; jelen feladatgyűjteményben minden előforduló halmazvéges,meg- számlálhatóan végtelenvagykontinuumszámosságú lesz, ezeket szintén alapfogalomként ke- zeljük. Azüres halmazt∅jelöli. AzAhalmazhatványhalmazaaP(A)={B:BA}halmaz.

Jól ismert, hogy tetszőlegesAhalmazra|A|<|P(A)|. AzAésBhalmazokdirekt szorzataaz A×B={(a,b):aA,bB}halmaz, melyben tehát azon rendezett elempárok szerepelnek, melyeknek első elemükA-beli, második elemükB-beli. AzAésBhalmazok közti (vagyA- bólB-be menő) relációazA×Bdirekt szorzatnak egy tetszőleges részhalmaza, vagyis egy ϱA×Bhalmaz. Kényelmi okokból az(a,b)ϱtényt gyakran egyszerűenaϱbjelöli. Tet- szőlegesAhalmazra az{(a,a):aA}identikus relációt1Ajelöli. HaϱA×Begy reláció ésaA, akkor jelöli mindazonB-beli elemek halmazát, melyekkelaa ϱrelációban áll, vagyis a{bB: aϱb} ⊆Bhalmazt. AmennyibenA,BésChalmazok,ϱA×BésρB×C relációk, úgy aϱésρrelációkkompozíciójaaϱ◦ρ={(a,c)∈A×C:∃bB aϱbbρc}⊆A×C reláció.

AmennyibenAegy halmaz ésϱA×Aegy relációA-bólA-ba, úgy definiáljuk tetszőleges n≥0 egész számra ϱhatványait induktív módon a következőképp : ϱ0=1A és tetszőleges n>0-ra legyenϱn=ϱn−1ϱ. Továbbá ekkorϱjelöli a ∪

n0

ϱnrelációt. AϱA×Breláció inverzeaϱ−1={(b,a): aϱb} ⊆B×Areláció.

AϱA2 relációreflexív, ha1Aϱ;irreflexív, ha1Aϱ=∅;szimmetrikus, haϱ=ϱ1; antiszimmetrikus, ha ϱϱ−11A; tranzitív, ha ϱ2ϱ; ekvivalenciareláció, ha reflexív, szimmetrikus és tranzitív. AmennyibenϱA2ekvivalenciareláció ésaA, úgy a/ϱjelöli az a elem ϱ szerinti osztályát, vagyis a {bA :aϱb} halmazt. Továbbá ha BA, akkor B/ϱ={a/ϱ:aB}.

Könnyű látni, hogyϱa legszűkebb olyan reflexív és tranzitív reláció, mely tartalmazzaϱ-t, ezért nevezzükϱ-ot aϱreflexív-tranzitív lezártjának.

(6)

Nyelvek és nyelvtanok

2.1. Elméleti összefoglaló

Ábécénegy tetszőleges6véges, nemüres halmazt értünk, elemeitbetűknekis nevezzük. Egy 6ábécé feletti szó 6betűinek egy tetszőleges véges (esetleg üres)w=a1a2. . .ansorozata.

Ennek a szónak ahossza|w|=n, a szót alkotó betűk száma. Speciálisan han=0, a szó azüres szó, melynek jeleε. Hau=a1a2. . .ana6ábécé feletti szó ésa6egy betű, akkor|u|ajelenti azu-ban előfordulóabetűk számát, vagyis az{i∈{1, . . . ,n}:ai=a}halmaz méretét. A6feletti összes szó halmazát 6 jelöli. Világos, hogy 6 egy (megszámlálhatóan) végtelen halmaz.

Amennyibenu=a1a2. . .anésv=b1b2. . .bkazonos6ábécé fölötti szavak, úgykonkatenáci- ójukvagyszorzatukazu·v=a1a2. . .anb1b2. . .bk, szintén6fölötti szó. Világos, hogy6a konkatenálás műveletével egy kancellatív monoidot alkot, melynek egységeleme az üres szó (tulajdonképpen(6,·)a6fölött szabadon generált szabad monoid). A konkatenáció·jelét gyakran elhagyjuk.

A6ábécé fölöttinyelven6fölötti szavak tetszőleges (véges, végtelen, esetleg üres) halma- zát értjük, vagyis nyelv egyL6 halmaz. Azonos6 ábécé fölötti L1, L2 nyelvek esetén értelmezzük a szokásos halmazelméleti műveleteket : a két nyelvmetszetét:L1L2={u6: :uL1uL2},egyesítését:L1L2={u6:uL1uL2}és azL1komplementerét: L1 ={u6 :u/ L1}. Ezen felül haL1,L26, akkor konkatenáltjuk az L1·L2 ={uv: :uL1,vL2} nyelv. Nyelvek konkatenálásának segítségével definiáljuk egyL nyelv n.

hatványát is tetszőlegesn≥0 egészre : legyenL0={ε}és tetszőlegesn>0-raLn=Ln−1·L.

AzLnyelv(Kleene-)iteráltjaazL=∪

n0

Lnnyelv. Világos, hogy(P(6),·)szintén monoidot alkot, melynek egységeleme az üres szót tartalmazó egyelemű{ε}nyelv. Az∅ üres nyelv a monoid zéruseleme. Az is igaz továbbá, hogy a Kleene-iterált egylezárási operátor, vagyis tetszőlegesL6 eseténLL,(L)=Lés haL1L2, akkorL1L2 is teljesül.

Ha6és1 ábécék,f:6P(1)pedig egy olyan leképezés, mely mindena6betűhöz egyLa nyelvet feleltet meg, akkorfkiterjesztése szavakra : f(ε)={ε};f(xa)=f(x)f(a), ahol a6, x6. Az f művelet kiterjesztése nyelvekre : f(L)= ∪

x∈Lf(x), ezt behelyettesítésnek nevezzük. Azf:61 behelyettesítéseket homomorfizmusnak nevezzük, vagyis minden a6-hoz1valamely szavát rendeli. AzLnyelv (fszerinti)inverzhomomorf képe :f−1(L)=

={x6 |f(x)L}.)

(7)

2.1. ELMÉLETI ÖSSZEFOGLALÓ 7

Ha6 egy ábécé és 26×6 egy ekvivalenciareláció szavak közt, akkor 2jobbkong- ruencia, ha tetszőlegesu2vszavakra éswszórauw2vw.2 balkongruencia, ha tetszőleges u2vszavakra éswszórawu2wv.2 kongruencia, ha jobb- és balkongruencia egyben, vagy ezzel ekvivalensen, ha tetszőlegesu12u2,v12v2szavakrau1v12u2v2.

AzL6nyelv meghatároz egyνL jobbkongruenciát és egyµL kongruenciát6-on a kö- vetkezőképpen : tetszőlegesu,v6 szavakra

1. Lvpontosan akkor, ha tetszőlegesw6 szórauwLvwL;

2. Lvpontosan akkor, ha tetszőlegesw1,w26szóraw1uw2Lw1vw2L.

AνL relációtL szintaktikus jobbkongruenciájának, µL-t pedig azL szintaktikus kongruenci- ájánaknevezzük.

Általában, haM=(M,·,1)egy monoid az 1 egységelemmel és2 azMegy kongruenciája (vagyis olyan ekvivalenciareláció M-en, melyrea12a2, b12b2 teljesülése maga után vonja a1b12a2b2 teljesülését), akkor azM2 szerintifaktormonoidja azM/2=(M/2,·,1/2) monoid, melyrea/2·b/2=(ab)/2. Speciálisan tehát mivel(6,·, ε)monoid és tetszőleges L6 nyelvreνL egy kongruencia6-on, így6L is egy monoid, melyet L szintaktikus monoidjánaknevezünk.

Véges nyelveket egyszerűen megadhatunk elemeik felsorolásával, végtelen nyelvek leírására azonban valamilyen generáló eszközre van szükségünk. Egy ilyen eszköz ageneratív nyelv- tan, mely egyG=(V, 6,R,S)négyes, ahol6 aterminálisábécé,Va6-tól diszjunktnem- terminálisábécé,SVakezdőszimbólum,Rpediguvalakúátírási szabályok egy véges halmaza, ahol u,v(V6), u pedig tartalmaz legalább egy nemterminális jelet (vagyis u(V6)V(V6)). Tetszőleges G = (V, 6,R,S) generatív nyelvtan meghatároz egy

Gátírási relációt a(V6) halmaz elemein a következőképpen : azu,v(V6) sza- vakra pontosan akkor áll fenn uGv, ha léteznek olyan w1, α, β és w2 szavak, melyekre u=w1αw2,v=w1βw2ésαβR. Ekkor azt is mondjuk, hogyvegy lépésben levezethető u-ból (Gszerint). A⇒Grelációnak a szokásos módon definiáljuk a⇒nGn. hatványát, illetve

G reflexív-tranzitív lezártját ; ha unG v, azt is mondjuk, hogy v n lépésben levezethető u-ból (Gszerint),uGvesetén pedig, hogyvlevezethetőu-ból (Gszerint). Ha a környezet- ből egyértelmű, aGindexet az olvashatóság kedvéért elhagyjuk. AGnyelvtan általgenerált nyelvazL(G)={u6:SGu}nyelv.

A generatív nyelvtanokat négy osztályba soroljuk attól függően, milyen átírási szabályokat engedünk meg bennük : aG=(V, 6,R,S)nyelvtan

0. típusú(vagyáltalános) mindenképpen, erre a típusra nem teszünk megszorítást.

1. típusú (vagy környezetfüggő), ha benne minden szabály αAβαγβ alakú, ahol α, β(V6) tetszőleges jelsorozatok, AV egy nemterminális és γ(V6)+ nemüresjelsorozat. Ezen felül megengedett azSε szabály (melyben tehátα =β =

=γ =ε és A=S, a kezdőszimbólum), de csak abban az esetben, haS nem fordul elő egyetlen szabály jobb oldalán sem.

2. típusú(vagykörnyezetfüggetlen), ha benne minden szabályAγ alakú, aholAV nemterminális ésγ(V6)tetszőleges jelsorozat.

(8)

3. típusú(vagyjobblineáris), ha benne minden szabályAuB, vagyAualakú, ahol A,BVnemterminálisok,u6pedig terminális szó.

EgyLnyelvet i típusúnak mondunk (i=0,1,2,3), ha generálható itípusú nyelvtannal. Azi típusú nyelvek osztályáti=0,1,2,3 eseténLijelöli. Ismert, hogy bár nem minden környezet- független nyelvtan környezetfüggő, mégis minden környezetfüggetlen nyelv környezetfüggő is. AChomsky-hierarchiát ez a négy nyelvosztály alkotja, a tartalmazkodási reláció szerint rendezve :L3(L2(L1(L0. Ismert, hogy mindhárom tartalmazkodás valódi.

Feladatainkban bizonyos speciális nyelvosztályok tulajdonságait is vizsgáljuk, ezeket a tulaj- donságokat az alábbiakban foglaljuk össze :

EgyL6nyelvk-definitak≥0 egész számra, ha tetszőlegesu,v6,|v|=kszavak esetén uvLvL. AzLnyelvdefinit, hak-definit valamilyenk-ra.

AzL6 nyelvprefixmentes, ha tetszőlegesu,v6 szavakra, melyekreu,uvL, igaz, hogyv=ε.

AzL6nyelvaperiodikus, ha van olyann≥0 egész, melyre tetszőlegesx6szó esetén xnµLxn+1.

A6 ábécé feletti csillagmentesnyelvek a legszűkebb olyan nyelvosztályt alkotják, melyre igazak a következők :

1. minden véges nyelv csillagmentes ;

2. haL1ésL2csillagmentesek, akkorL1L2,L1L2ésL1is csillagmentes.

2.2. Feladatok

2.2.1. Feladat. Legyen6={a,b},L1={a,b},L2={aa,b}. Határozza meg azL1L2,L1L2, L1L2,L2L1,L1L2,L1,L1L2,(L1L2),L1ésLR1 nyelveket1!

2.2.2. Feladat. Legyen6={a,b},L1={aba,b},L2={aab,ab,b}. Határozza meg azL1L2, L1L2,L1L2,L2L1,L1L2,L1ésLR1 nyelveket !

2.2.3. Feladat. Legyen6={a,b},L1={anbm:n,m≥0},L2={anbn:n≥0}. Határozza meg azL1L2,L1L2,L1L2,L2L1,L1L2,L1,L1L2,(L1L2),L1ésLR1 nyelveket !

2.2.4. Feladat. Legyen6={a,b},L1={w6:|w|a=|w|b},L2={anbm:n,m≥0}. Határozza meg azL1L2,L1L2,L1L2,L2L1,L1L2,L1,L1L2,(L1L2),L1ésLR1 nyelveket !

1Jelölés : haw=a1a2. . .an,ai6,i=1, . . . ,n, akkorwR=an. . .a2a1(tehátwRawszó „visszafelé olvasva”

ésLR={wR:wL}.

(9)

2.2. FELADATOK 9

2.2.5. Feladat. Legyen6={a,b}. Milyenx(,y)6esetében állnak fenn az alábbi egyen- lőségek ?

1. ax=xa;

2. ax=xb;

3. axb=abx;

4. xabb=abbx;

5. xy=yx.

2.2.6. Feladat. Legyenekx,y,u,v6szavak, melyekrexy=uvés|x| ≤ |u|. Mutassa meg, hogy valamilyenz6szórau=xzésy=zv!

2.2.7. Feladat. Legyenekx,y,z6szavak, melyekrexy=yz. Mutassa meg, hogy valamely u,v6-ra ésn≥0-rax=uv,y=(uv)nuész=vu!

2.2.8. Feladat. Legyenekx,y6szavak ésm,n>0 úgy, hogyxm=yn. Mutassa meg, hogy akkorx=zkésy=zvalamilyenz6-ra ésk, ℓ≥0-ra !

2.2.9. Feladat. Egyx6+szóprimitív, hax=yn-ből következik, hogyy=xésn=1. Mutassa meg, hogy mindenx6+szóra létezikpontosan egyprimitívyszó és egyk>0 szám, amire x=yk!

2.2.10. Feladat. Igazolja, hogy(6,·)mint grupoid…

1. … asszociatív !

2. … rendelkezik egységelemmel !

3. … kancellatív !

4. … nem rendelkezik zéruselemmel ! 2.2.11. Feladat. Igazolja, hogy a nyelvek közti konkatenáció monoton, vagyis haK1K2és L1L2, akkorK1L1K2L2!

2.2.12. Feladat. Igazolja, hogy a Kleene-iteráció monoton, vagyis haKL, akkorKL! 2.2.13. Feladat. Igazolja, hogy tetszőlegesLnyelvreLL=L!

2.2.14. Feladat. Mikor üres…

1. …L? 2. …L1L2? 3. …L1·L2?

2.2.15. Feladat. Mikor véges…

1. …L? 2. …L1L2? 3. …L1·L2?

(10)

2.2.16. Feladat. LegyenekL1, L2és L3azonos6 ábécé feletti nyelvek. Igazak-e az alábbi egyenlőségek ? Ha igen, igazolja, ha nem, adjon ellenpéldát !

1. (L1L2)L3=L1(L2L3); 2. (L1L2)L3=L1L3L2L3; 3. L1(L2L3)=L1L2L1L3; 4. (L1L2)L3=L1L3L2L3; 5. L1(L2L3)=L1L2L1L3; 6. (L)=L;

7. (L1L2)=L1L2; 8. (L1L2)=L1L2;

9. (L1)=L1;

10. (L1L2)=(L1L2); 11. (L1L2)=(L1L2)L1; 12. (L1L2)L1=(L1L2); 13. (L∪{ε})=(L−{ε}); 14. (L6)=6, haL6; 15. (L1L2)=L2, haL1L2; 16. (L1L2)=L1L2.

2.2.17. Feladat. Igazolja, hogy(P(6),∪,·)idempotens félgyűrű2!

2.2.18. Feladat. Igazolja, hogy(6,·, ε)a6által szabadon generált szabad monoid ! 2.2.19. Feladat. Legyen6={a,b}. Fejezze ki{ab}-ot a véges nyelvekből a metszet, unió, konkatenáció és komplementálás műveletekkel (vagyis : iteráció nélkül) !

2.2.20. Feladat. Mutassa meg, hogy mindenLnyelvreL=L+∪{ε}! Mikor igaz, hogyL+=

=L−{ε}?

2.2.21. Feladat. Mutassa meg, hogy a Kleene-iteráció lezárási operátor (vagyis : tetszőleges LnyelvreLL,(L)Lés haL1L2, akkorL1L2) !

2.2.22. Feladat. Mutassa meg, hogy a pozitív Kleene-iteráció lezárási operátor (vagyis : tet- szőlegesLnyelvreLL+,(L+)+L+és haL1L2, akkorL+1L+2) !

2.2.23. Feladat. Igazolja a következőket : 1. ∅={ε};

2. {ε}={ε}; 3. ∅+=∅; 4. {ε}+={ε};

5. (L)+=L; 6. (L+)=L; 7. (LR)=(L)R; 8. (LR)+=(L+)R.

2Vagyis :(P(6),∪)kommutatív és idempotens monoid (tehát egységelemes félháló),(P(6),·)monoid, amiben(P(6),∪)egységeleme zéruselem, továbbá·disztributívfölött.

(11)

2.2. FELADATOK 11

2.2.24. Feladat. Igazolja, hogy a6ábécé fölötti 0-definit nyelvek6és∅!

2.2.25. Feladat. Igazolja, hogy ha egy nyelvk-definit valamilyenk-ra, akkork-definit minden k>k-ra.

2.2.26. Feladat. Igazolja, hogy minden véges nyelv definit !

2.2.27. Feladat. Igazolja, hogy egyL6nyelv pontosan akkor definit, haL=L16·L2 valamelyL1,L2végesnyelvekre !

2.2.28. Feladat. Legyen6egy ábécé. Definiáljuk a nyelvek közötti2relációt a következő- képpen :L12L2pontosan akkor, ha szimmetrikus differenciájuk,L11L2=(L1L2)∪(L2L1) véges. Mutassa meg, hogy2ekvivalenciareláció ! Kongruencia-e2?

2.2.29. Feladat. Igazolja, hogy haL1ésL2aperiodikus nyelvek, akkorL1L2,L1L2ésL1is aperiodikusak !

2.2.30. Feladat. Mutassa meg, hogy a következő nyelvek csillagmentesek :

1. 6; 2. {ab}.

2.2.31. Feladat. Mutassa meg, hogy minden csillagmentes nyelv aperiodikus !

2.2.32. Feladat. Adjunk példát olyanKésLvéges nyelvekre, melyekre|KL|<|K|·|L|! 2.2.33. Feladat. Mikor igaz egyL6 nyelvre, hogyL+=L?

2.2.34. Feladat. (Arden lemmája.)

Mutassuk meg, hogy haK,L,X6nyelvek,ε /KésX=KXL, akkorX=KL!

2.2.35. Feladat. Legyen L6 tetszőleges nyelv. Igazolja, hogyL a legszűkebb olyan X6 nyelv, melyreLX∪{ε} ⊆X, vagy amelyreLX∪{ε}=X!

2.2.36. Feladat. LegyenekL,L6tetszőleges nyelvek. Igazolja, hogyLLa legszűkebb olyanX6nyelv, melyreLXLX(ill.LXL=X) !

2.2.37. Feladat. LegyenekL,L6tetszőleges nyelvek. Igazolja, hogy haε̸∈L, akkor az X=LXLegyenlet egyetlen megoldásaLL!

2.2.38. Feladat. Igazolja, hogy az

X=aXbY∪{ε}

Y=bXaY

egyenletrendszernek pontosan egy megoldasa van az{a,b}feletti nyelvek közt ! Adja meg a megoldást.

(12)

2.2.39. Feladat. Igazolja, hogy az

X=aXaY∪{ε}

Y=bXbY

egyenletrendszernek pontosan egy megoldása van ! Adja meg a megoldást.

2.2.40. Feladat. Igazolja, hogy az

X=XXaXbbXa∪{ε}

egyenlet legszűkebb megoldása az{a,b}abc felett azL={w:|w|a=|w|b}nyelv ! 2.2.41. Feladat. Igazolja, hogy az

X=aXbXbXaX∪{ε}

egyenlet legszűkebb megoldása az{a,b}abc felett azL={w:|w|a=|w|b}nyelv ! Van-e más megoldás ?

2.2.42. Feladat. LegyenL,L⊆6,εL. Adja meg azX=LXLegyenlet összes megoldását a6felett !

Megoldások

2.2.1. Feladat.Ha6={a,b},L1={a,b},L2={aa,b}, akkor L1L2={a,aa,b}

L1L2={b} L1L2={a} L2L1={aa}

L1L2={aaa,ab,baa,bb}

L1=6(minden{a,b}fölötti szó) L1L2=6

(L1L2)=6

L1={u6:|u| ≥2 vagyu=ε}

LR1={a,b}(=L1).

(13)

2.2. MEGOLDÁSOK 13

2.2.2. Feladat.Ha6={a,b},L1={aba,b},L2={aab,ab,b}, akkor L1L2={aab,ab,aba,b}

L1L2={b} L1L2={aba} L2L1={aab,ab}

L1L2={abaaab,abaab,abab,baab,bab,bb} L1={ε,aba,b,abaaba,abab,baba,bb, . . .}

(azok a szavak, melyekben a páratlanadika-k utánbjön, majda) LR1 ={aba,b}(=L1).

2.2.5. Feladat.

1. ax=xax=anvalamilyenn≥0-ra (x∈ {a}) ;

2. ax=xbsosem teljesül (a bal oldalon aza-k száma mindenképp eggyel több) ; 3. axb=abxx=bnvalamilyenn≥0-ra ;

4. xabb=abbxx=(abb)nvalamilyenn≥0-ra ;

5. xy=yx ⇔ha valamilyenz6-ra ésn,k≥0 egészrex=znésy=zk.

2.2.14. Feladat.Lε, tehát sosem üres.L1L2pontosan akkor üres, haL1=L2=∅. Végül, L1·L2pontosan akkor üres, haL1=∅vagyL2=∅.

2.2.15. Feladat.Lpontosan akkor véges, haL=∅vagyL={ε}.L1L2pontosan akkor véges, haL1ésL2is véges. Végül,L1·L2pontosan akkor véges, haL1ésL2is véges, vagy haL1=∅, vagy haL2=∅.

2.2.16. Feladat.

1. Igaz. Tegyük fel, hogyu(L1L2)L3. Ekkorufelírhatóu=uu3alakban úgy, hogyu

L1L2ésu3L3. Emiattu felírhatóu=u1u2alakban úgy, hogyu1L1 ésu2L2. Ekkoru=u1u2u3, így választva azu′′=u2u3szót,u′′L2L3ésu=u1u′′,u1L1,u′′L2L3 miatt kapjuk, hogyuL1(L2L3). A másik irány hasonló.

2. Igaz. EgyrésztL1,L2L1L2 és a konkatenáció monotonitását alkalmazva kapjuk, hogy L1L3,L2L3(L1L2)L3, emiatt L1L3L2L3(L1L2)L3. A másik irányú tartalmazkodáshoz legyenu(L1L2)L3. Ekkoru=u1u3 úgy, hogyu1L1L2 és u3L3. Mivelu1L1L2, ezért vagyu1L1(ekkoruL1L3), vagyu1L2(ekkor uL2L3). Tehát mindkét esetbenuL1L3L2L3.

3. Igaz, az előzővel analóg módon bizonyítható.

(14)

4. Nem igaz. Ellenpélda :L1 ={a}, L2 ={aa}, L3 ={a,aa}. Ekkor (L1L2)L3 =∅, míg L1L3L2L3={aa,aaa}∩{aaa,aaaa}={aaa}.

5. Nem igaz. Ellenpélda :L1 ={a,aa}, L2 ={aa}, L3= {a}. Ekkor L1(L2L3)=∅, míg L1L2L1L3={aaa}.

6. Igaz.LLmiatt a monotonitást alkalmazvaLL∗∗, a másik irányú tartalmazkodás- hoz elég belátni, hogy tetszőlegesn-re(L)nL. Ezn=0-ra világos,{ε} ⊆L; tegyük fel, hogy igazn-re és belátjukn+1-re :(L)n+1=(L)nLLLL.

7. Nem igaz. Ellenpélda :L1={a},L2={b}. Ekkor(L1L2)={a,b}ab∈ {/ a}∪{b}=

=L1L2.

8. Nem igaz. Ellenpélda :L1={a},L2={aa}. Ekkor(L1L2)=({a}∩{aa})=∅={ε}

{aa}={a}∩{aa}=L1L2.

9. Nem igaz. Ellenpélda :L1=∅a6={a}ábécé fölött. Ekkor(L1)=(a)=a, miközben L1={ε}=a+.

10. Igaz. Egyrészt L1L1L1L2 (mert εL2), hasonlóképpen L2L1L2, így L1

L2L1L2, ezért (L1L2)(L1L2). A másik irányú tartalmazkodáshoz : mivel L1,L2L1L2, ígyL1,L2(L1L2), ezértL1L2((L1L2))2(L1L2), végül (L1L2)(L1L2)∗∗=(L1L2).

11. Igaz. Egyrészt mivelL1,L2L1L2, így L1(L1L2), ezért L1L2(Lamikre1

L2)L2(L1L2)(L1L2)(L1L2), emiatt(L1L2)(L1L2)∗∗=(L1L2), végül pedig(L1L2)L1(L1L2)L1(L1L2)(L1L2)(L1L2).

A másik irányú tartalmazkodáshoz : megmutatjuk, hogy tetszőlegesn≥0-ra(L1L2)n

(L1L2)L1. Ezn=0 esetén világos,{ε} ⊆(L1L2)L1, hiszenε(L1L2)ésεL1. Tegyük fel, hogy az állítás igazn-re és tekintsükn+1-et : mivel (L1L2)n+1=(L1

L2)nL1(L1L2)nL2, elég megmutatnunk, hogy mindkét nyelv részhalmaza a jobb oldalnak. Ez pedig teljesül, hiszen (L1L2)nL1(L1L2)L1L1 (indukciós fel- tevés és monotonitás szerint), ami pedig része(L1L2)L1-nak, továbbá(L1L2)nL2

(L1L2)L1L2(L1L2), ezzel az állítást beláttuk.

12. Igaz, mindkettőről láttuk már, hogy(L1L2)-gal esik egybe.

13. Igaz. Ehhez elég látnunk, hogyL=(L∪{ε})tetszőlegesLnyelvre. Ez pedig fennáll, hiszen(L∪{ε})=(L{ε})L=L∗∗L=LL=L.

14. Igaz :(6L)=(6L)6=6, mertε(6L).

15. Igaz. HaL1L2, akkor L1L2L2 és így (L1L2)L2 =L2, a másik irányú tartalmazkodás pedigL2L1L2-bólmonotonitását alkalmazva következik.

16. Nem igaz. Ellenpélda :L1={a},L2=∅esetén(L1L2)=({a}∅)=∅={ε}, mígL1L2=

={a}={a}{ε}={a}.

(15)

2.2. MEGOLDÁSOK 15

2.2.17. Feladat.(P(6),∪)kommutatív idempotens monoid, hiszen tetszőlegesK,L,Mnyel- vekreKL=LK,KK=K,K(LM)=(KL)∪Més∅egységelem.

Továbbá,(P(6),·)monoid, mert(KL)M=K(LM)tetszőlegesK, L, Mnyelvekre, ebben a monoidban∅zéruselem és{ε}egységelem.

Továbbá az is igaz, hogyK(LM)=KLKMés(KL)M=KMLM, ezzel a teljes állítást beláttuk.

2.2.18. Feladat.LegyenM=(M,◦,1)tetszőleges monoid ésh:6Mleképezés. Azt kell csak belátnunk, hogy h azon h (egyértelmű) kiterjesztése 6-ra, melyre h(a1a2. . .an)=

=h(a1)h(a2)◦. . .h(an), egy monoidhomomorfizmus.

Valóban, hiszen tetszőlegesu=a1. . .an,v=b1. . .bm szavakrah(uv)=h(a1). . .h(an)

h(b1). . .◦h(bm)=h(u)h(v)ésh(ε)=1.

2.2.19. Feladat.{ab}=∅({aa,bb})∅∩{b}∅∩∅{a}, hiszen ebben a nyelvben pontosan azok a szavak vannak benne, amikben nem fordul elő részszóként semaa, sembb(emiattautánb, butánajön bennük), nem kezdődnekb-vel és nem végződneka-val.

2.2.24. Feladat. Az világos, hogy ∅ és6 mindketten 0-definit nyelvek. Tegyük fel, hogy L6 nemüres 0-definit nyelv és legyenuL. Akkoru=u·ε, |ε|=0 miattεL, és így tetszőlegesw6-ra mivelw=w·ε,|ε|=0 ésεL, kapjuk, hogywL, ekkor tehátL=6. 2.2.25. Feladat.Legyenk<késL6k-definit nyelv. Belátjuk, hogyLegybenk-definit is. Ehhez legyenu,v6,|v|=k. Meg kell mutassuk, hogyuvLvL. Mivelk>k, vfelírhatóv=v1v2,|v2|=kalakban. MivelL k-definit, kapjuk, hogy

uvLuv1v2L

v2L

v1v2L

vL, tehátLvalóbank-definit is egyben.

2.2.26. Feladat.LegyenL6 véges nyelv ésk=1+ max{|w|:wL}. AkkorL k-definit, hiszen tetszőlegesu,v6,|v|=kszavak eseténuv/Lésv/Lis fennáll.

2.2.27. Feladat.LegyenL6k-definit ak≥0 számra. AkkorL=L16L2, aholL1={w

L:|w|<k}ésL2={wL:|w|=k}. Nyilván mindL1, mindL2végesek, hiszenkfelső korlát a bennük levő szavak hosszára.

A másik irány igazolásához legyenL=L1∪6·L2azL1,L2véges,6fölötti nyelvekre. Legyen k=1+max{|w|:wL1L2}. EkkorL k-definit, hiszen tetszőlegesu,v6,|v|=kszó esetén

uvLuv6·L2(mert|uv| ≥kmiattuv/L1)

⇔ ∃v1,v2: v=v1v2,v2L2

vL, tehátLvalóbank-definit.

(16)

2.2.35. Feladat.Tudjuk, hogyL=LL∪{ε}. Most tegyük fel, hogyLX∪{ε} ⊆X. Belátjuk, hogyLnXmindenn-re.

Han=0, akkorLn={ε} ⊆X. Tegyük fel, hogy az állítás igazn-re. EkkorLn+1=LLnLXX.

2.2.37. Feladat.Azt már tudjuk, hogyLL megoldás. Tegyük fel, hogy azX6 nyelvre LXL=X. Ekkor mindenn≥0-ra

Ln+1XLnL. . .L=X.

Az Ln+1X nyelv minden szava legalábbn+1 hosszú. Tehát tetszőleges n-re X legfeljebb n hosszú szavainak halmaza megegyezikLLlegfeljebbnhosszú szavainak halmazával. Ezért X=LL.

2.2.38. Feladat.Tegyük fel, hogyX,Ymegoldást alkotnak. Ekkor a második egyenletbőlY=

=abX. Ezt az első egyenletbe helyettesítve kapjuk, hogy

X=aXbabX∪{ε}=(abab)X∪{ε}, ahonnan

X=(abab), Y=ab(abab).

TehátXa páros sokb-t,Y pedig a páratlan sokb-t tartalmazó nyelv. Könnyen látható, hogy ezek a nyelvek megoldást adnak.

2.2.40. Feladat.Azt is belátjuk, hogyLa legszűkebb olyanXnyelv, amelyreXXaXbbXa

∪{ε} ⊆X.

Hau,vL, akkoruv,aub,buaL. MivelεL, így azt kapjuk, hogyLLaLbbLa∪{ε}⊆L.

Most tegyük fel, hogy azX⊆ {a,b}nyelvreXXaXbbXa∪{ε} ⊆X. Belátjuk, hogyLX.

LegyenuL. Hau=ε, akkor világos, hogyuX. Teljes indukciót alkalmazva tegyük most fel, hogy|u|>0, és az állítást igazoltuk azL|u|-nál rövidebb szavaira. Hauazabetűvel kezdődik, akkor felírhatóaxbyalakban úgy, hogyx,yL. Az indukciós feltevés szerintx,yX, és így axb,axbyX. TehátuX.

Végül legyenL=LLaLbbLa∪{ε}. Belátjuk, hogyLL. Ehhez vegyük észre, hogyLL miattLLaLbbLa∪{ε} ⊆LLaLbbLa∪{ε} ⊆L, és így a fentiek szerintLL. 2.2.42. Feladat.A megoldások azL(LL′′)alakú nyelvek, aholL′′6tetszőleges nyelv.

(17)

3. fejezet

Reguláris nyelvek

3.1. Elméleti összefoglaló

AzM=(Q, 6, δ,q0,F)ötös egy (6ábécé feletti)(véges) automata, ahol 1. Qaz állapotok véges, nemüres halmaza ;

2. 6az input ábécé ;

3. δ:Q×6Qaz átmenetfüggvény ; 4. q0Qa kezdőállapot ;

5. FQa végállapotok halmaza.

Az Mautomata δ függvénye kiterjeszthető egy δ :Q×6Q függvénnyé a következő módon : tetszőlegesqQ-raδ(q, ε)=qés tetszőlegesu=av,a6,v6szóraδ(q,av)=

=δ(δ(q,a),v). Haδa szövegkörnyezetből egyértelmű,δ(q,u)helyettδ(q,u)-t,q·u-t vagy egyszerűenqu-t írunk. A fenti M automata egy konfigurációja egy(q,u)Q×6 pár. A konfigurációk közti⊢Mközvetlen rákövetkezési relációta következőképp definiáljuk : legyen (p,u)⊢M(q,v)akkor és csak akkor, ha valamelya∈6betűreδ(p,a)=qésu=av. Amennyiben Megyértelmű a szövegkörnyezetből, azMindexet elhagyjuk.

A fentiMautomataelfogadjaazuszót, haq0uF, különbenelvetiazt. (Ezzel ekvivalensen, ha(q0,u)(qf, ε)valamelyqfFállapotra.)

AzM által felismert nyelv L(M)={u6:q0uF}.

AzLnyelv(automatával) felismerhető, haL=L(M)valamelyMvéges automatára.

3.1.1. Állítás.Ha M =(Q, 6, δ,q0,F) az L6 nyelvet felismerő automata, akkor M =

=(Q, 6, δ,q0,Q\F)azLkomplementerét felismerő automata.

EgyM=(Q, 6, δ,q0,F)automatak-definitak≥0 egész számra, ha tetszőlegesu6,|u|≥k szóra ésp,qQállapotokrap·u=q·u. AzMautomatadefinit, hak-definit valamelyk-ra.

AzMautomataegyvégű, ha pontosan egy végállapota van.

HaM1=(Q1, 6, δ1,q10,F1)ésM2=(Q2, 6, δ2,q20,F2)véges automaták ugyanazon6ábécé felett, akkordirekt szorzatuk bármely olyanM=(Q, 6, δ,q0,F)automata, melyre

Hivatkozások

KAPCSOLÓDÓ DOKUMENTUMOK

Carduus acanthoides L.; Carex acutiformis Ehrh.; Carex cespitosa L.; Carex caryophyllea Latour.; Carex digitata L.; Carex distans L.; Carex hirta L.; Carex humilis

Conformément au contexte, les termes druerie et amisté remplacent en général le mot amor et malgré leur sens lexical légérement distinct l ’un de l ’autre

Annak viszont, hogy m´egis megeml´ıtettem l´et´et az az oka, hogy ennek az algoritmusnak a kib˝ ov´ıt´es´evel tal´ an ´epp ´ ugy el lehet jutni a sta- bil b-part´ıci´

3. Azt l|tjuk, amit ő, a sz|zados l|t; azt halljuk, amit ő mond, vagy amit a narr|tor kierősít gondolataiból. És l|t- juk őt mag|t is a gyufa fekete lángján|l, M|ni

On the other hand, optimization of electrode and insulator shapes is performed to reduce the maximum electric field strength or to obtain the desired

Je tiens à souligner qu’à l ’occasion de toute nouvelle crise, les novateurs — et c’est ce qui fa it l ’européanité de notre continent— ne manquent pas de reprendre

[1] Mason, M., Walker, L., Wine, L., et al.: Child and adolescent to- bacco and substance use within the context of ADHD: implica- tions for prevention and treatment. A., Barkley,

L., Federici, M., et al.: Insulin receptor substrate (IRS) transduction system: distinct and over- lapping signaling potential. M., et al.: Free fatty acid- induced muscle