6. előadás Környezetfüggetlen nyelvtanok/1.

Méret: px
Mutatás kezdődik a ... oldaltól:

Download "6. előadás Környezetfüggetlen nyelvtanok/1."

Átírás

1 6. előadás Környezetfüggetlen nyelvtanok/1. Dr. Kallós Gábor Tartalom Bevezetés CF nyelv példák Nyelvek és nyelvtanok egy- és többértelműsége Bal- és jobboldali levezetések Levezetési fák A fák magassága és határa A derivációk és a levezetési fák kapcsolata Felépítés, konfigurációk és átmenetek Szavak felismerése, felismert nyelv Az elfogadó állapottal és az üres veremmel felismerő automaták ekvivalenciája Feladatok 2

2 Bevezetés, példa Eml.: környezetfüggetlen (CF) nyelvtan: 2-típusú, csak A α alakú levezetési szabályai lehetnek A helyettesítési szabály a környezettől függetlenül bárhol alkalmazható Itt nagyobb a szabadság a helyettesítési szabályoknál, mint a reguláris nyelveket generáló nyelvtanoknál Ez viszont több olyan problémát is felvet, amivel eddig még nem találkoztunk Példa Legyen G ar = (N, T, P, S), ahol N = {E, T, F} T = {+, *, (, ), a} S = E P = {E E + T T, T T *F F, F (E) a} Megj.: Itt megszegtük a korábbi konvenciót a nemterminális és terminális jelek használatáról, de ez szándékos, a szimbólumoknak itt fontos szerepük van, ezek kellenek (E expression, T term, F factor; az a pedig egy azonosító) A nyelvtan egy additív és egy multiplikatív operátort tartalmazó, és a zárójelezést megengedő aritmetikai kifejezéseket generálja (van precedencia) Be lehetne vezetni hasonlóan a, / és ^ műveleteket, ill. előjeleket is, egy igazi számítástechnikai nyelv aritmetikai kifejezéseket generáló CF nyelvtana tartalmazza ezeket is (de a mi céljainkra most ez kissé szegényes nyelv is elég) 3 CF nyelv példa Példa (folyt.) (Eml.: P = {E E + T T, T T *F F, F (E) a}) A nyelvnek eleme az a + a*a jelsorozat, hiszen egy levezetése E E+ T T+ T F+ T a + T a + T*F a + F*F a + a*f a + a*a De a kifejezést másként is le lehet vezetni E E+ T E + T*F E + T*a E + F*a E + a*a T + a*a F + a*a a + a*a Okoz-e a több levezetés megléte zavart? A levezetéseket egy rendezett, irányított gráffal (fával) ábrázoljuk A fa gyökere a mondatszimbólum Minden csomópontból annyi él (olyan sorrendben) fut ki, amennyi a szabály jobboldalán található szimbólumok száma, és a kifutó élek végén a jobboldal megfelelő szimbólumai találhatók Az egy csomópontból kiinduló élek sorrendje kötött, nem változtatható meg Minden levezetésnek egy levezetési fa felel meg, de egy levezetési fához több levezetés is tartozhat (!) Ha egy kifejezéshez pontosan egy levezetési fa tartozik, akkor a nyelvtant egyértelműnek mondjuk Nevezetes levezetések: mindig a legbaloldalibb nemterminális szimbólumot helyettesítjük (bal (oldali) levezetés); hasonlóan jobb (oldali) levezetés (lásd fent) 4

3 CF nyelv példa, elemzés Megjegyzések Vigyázat, a levezetési fa nem a nyelvtanhoz tartozik egyértelműen, hanem a levezetéshez! (Egy nyelvtannak sok levezetési fája van/lehet) Az egyes csomópontokhoz tartozó részfákat (a leveleket is) szintaktikai egységeknek nevezzük Példa (folyt.) (Eml.: P = {E E + T T, T T *F F, F (E) a}) Most módosítjuk a nyelvtant, legyen P = {E E + E E *E (E) a} Ez a nyelvtan (G ar2 ) ugyanazt a nyelvet generálja, mint fenti párja Két különböző levezetés az a + a*a jelsorozatra E E+ E E + E*E a + E*E a + a*e a + a*a E E*E E*a E + E*a E + a*a a + a*a Itt azonban két különböző levezetési fa adható meg! A két levezetés tehát lényegesen eltérő 5 Egy- és többértelműség A természetes nyelvekre nagyon jellemző a többértelműség/többalakúság Például: Láttam Zsókát egy távcsővel, lehet Zsóka vitt egy távcsövet, és én láttam Én néztem Zsókát távcsővel messziről Itt a szövegkörnyezet vagy a beszédhelyzet segít eldönteni a helyes jelentést A fordítóprogramoktól ilyet nem nagyon várhatunk Egyszerű példák, amikor a Word helyesírás-ellenőrzője nem jelez: Be nem fejezet, fejezett Jelenjen megy, meg Nem sok szó eset, esett Feladatok Mutassuk meg, hogy a G 2 = ({S}, {2, +, *}, {S S + S, S S*S, S 2}, S) nyelvtanban a 2 + 2*2 szónak két lényegesen különböző levezetése és két levezetési fája van! Milyen eredményt ad a kifejezésre ezekben az esetekben a fordító? A csellengő else probléma (nem egyértelmű, hogy az else melyik feltételehez tartozik): if a then if b then do else print Milyen megoldásokat kínálnak erre a problémára az általunk használt programozási nyelvek? 6

4 Egy- és többértelműség Ha pusztán csak azt vizsgálnánk, hogy generálható-e valamely jelsorozat egy adott nyelvtannal, akkor az eredeti és a módosított nyelvtan egyenértékű (lenne) De a számítástechnikai nyelvészet szempontjából nem közömbös, hogy milyen szintaktikai egységeken keresztül jutottunk el a levezetés során a mondathoz (!) Utolsó példáinkban (G ar2 és G 2 ) nagyon fontos lenne tudni, hogy melyik műveletet kell előbb elvégezni, az összeadást vagy a szorzást! A számítástechnikai nyelvészetben (automatizált működés) a nem egyértelmű nyelvtanok lényegében használhatatlanok G ar2 -nél az egy- és többértelműséget nyelvtanhoz, és nem a nyelvhez kapcsoltuk Vajon mindig ez a helyzet, vagy lehet a többértelműség nyelvi tulajdonság? Vá.: Léteznek olyan nyelvek, amelyekről bizonyítható, hogy nem lehet egyértelmű nyelvtannal generálni Ekkor a többértelműség nyelvi tulajdonság (azaz: nincs minden CF nyelvnek egyértelmű nyelvtana) Tehát: az egy- és többértelműség tartozhat nyelvhez és nyelvtanhoz is Példa (nem egyértelmű nyelv; csak a helyettesítési szabályokat soroljuk): S aabx YbCc A aab ab C bcc bc X cx c Y ay a Ez a nyelvtan az L = a i b i c j a j b i c i nyelvet generálja Ezzel a nyelvtannal az a i b i c i alakú kifejezések két lényegesen különböző levezetéssel állíthatók elő Igazolható, hogy nincs olyan egyértelmű CF nyelvtan, ami ezt a nyelvet generálja 7 Egy- és többértelműség Az egyértelműség eldöntése: Sajnos nincs olyan módszer, amelynek segítségével általánosan, minden esetre alkalmazhatóan meg lehetne mondani, hogy egy CF nyelvtan vagy nyelv egyértelmű-e Persze ettől még sok konkrét esetben a probléma megoldható (egyedi tulajdonságok vagy szerencsés ötletek felhasználásával) Például a G ar nyelvtan egyértelműsége igazolható Visszatekintés: Felmerül-e egyáltalán az egyértelműség/többértelműség kérdése a reguláris nyelveknél? Itt a levezetési fa nagyon egyszerű, csupán egy szárból áll, amelynek jobb- ill. baloldalán vannak levelek attól függően, hogy bal- vagy jobbreguláris nyelvtanról van-e szó Egy levezetési fához itt csak egy levezetés tartozik, ami abból nyilvánvaló, hogy minden mondatszerű formában csak egyetlen nemterminális szimbólum szerepel (Nemdeterminisztikus automaták mintájára lehet: nemdet. nyelvtan, ekkor egy kifejezésnek több, lényegesen eltérő levezetése van; de: minden reguláris, nemdet. nyelvtanhoz szerkeszthető vele egyenértékű, determinisztikus nyelvtan automatákkal) Tehát: Minden reguláris nyelv egyértelmű, és szerkeszthető hozzá egyértelmű nyelvtan 8

5 Bal- és jobboldali levezetések Legyen G = (N, T, P, S) egy tetszőleges környezetfüggetlen nyelvtan Definíciók Az α 0 α 1 α 2 α n alakú kifejezéseket levezetéseknek (derivációknak) hívjuk Ha a deriváció során minden i = 1, 2,, n esetén α i -t úgy kapjuk, hogy α i 1 -ben a bal oldalról nézve legelső nemterminálist helyettesítjük egy rá vonatkozó szabály jobb oldalával, akkor a derivációt bal (oldali) derivációnak hívjuk, és rá az α 0 l α 1 l α 2 l l α n jelölést használjuk. Ha egy deriváció minden lépésében a jobbról nézve legelső nemterminálist helyettesítjük, akkor jobb (oldali) derivációról beszélünk, ennek jelölése α 0 r α 1 r α 2 r r α n. Továbbá, ha α olyan, hogy S * α, akkor α-t mondatformának nevezzük Hasonlóan, ha S l * α (ill. S r * α) áll fent, akkor α-t bal (ill. jobb) mondatformának nevezzük Megj.: Minden mondatforma egy speciális (N T)*-beli szó (lásd még: 1. slidesor.) Feladat: Nézzük meg az előző fóliákon, hogy melyik levezetés milyen típusú, ill. milyen mondatformát állít elő! Vigyázzunk arra, hogy a bal oldalról első, második, szabály következetes alkalmazása általában nem eredményez bal (oldali) levezetést A CF nyelvek (nyelvtanok) fontos tulajdonsága, hogy a levezetések fa alakban ábrázolhatók Ez népszerűségükben is központi szerepet játszik 9 Levezetési fák Definíció Legyen X (N T). Az X gyökerű derivációs fák halmazán címkézett, rendezett fák legszűkebb olyan D X halmazát értjük, amelyre teljesülnek az alábbi feltételek: Az a fa, amelynek egyetlen szögpontja (csak gyökere) van, és annak címkéje X, eleme D X - nek (ezt a fát X-szel jelöljük) Ha X λ P, akkor az a fa, amelynek gyökere X-szel van címkézve, és gyökerének egyetlen leszármazottja van, aminek címkéje λ, eleme D X -nek (ezt a fát X[λ]-val jelöljük) Ha X X 1 X 2 X n P és t 1 D X1, t 2 D X2,, t n D Xn (gyermek fák), akkor az a fa, amelynek gyökere X-szel van címkézve, és a gyökérből n él indul rendre a t 1, t 2,, t n fák gyökeréhez, eleme D X -nek (ezt a fát X[t 1, t 2,, t n ]-nel jelöljük) Ha X T, akkor a 2. és 3. feltételek soha nem teljesülnek, ekkor tehát D X = {X} Megjegyzések A derivációs fa levélelemeihez terminális vagy nemterminális szimbólumokat, közbülső csúcsaihoz pedig nemterminális jeleket rendelünk Ha minden levélelem terminális, akkor befejezett levezetésről beszélünk A levezetési fákat szintaxisfának is nevezzük (szintaktikai elemzés) Feladatok Rajzoljuk le a definícióban szereplő levezetési fákat! Rajzoljuk le a következő módon adott levezetési fákat (a G ar nyelvtanhoz): t 1 = E[T[T[F], *, F[(, E, )]]] t 2 = F[(, E[E[T[F[a]]], +, T[F[a]]], )] Rajzoljuk le ugyanezen nyelvtanhoz az a*(a + a) + a levélelemeket tartalmazó levezetési fát! (Cs. Z. 32. old.) 10

6 Levezetési fák Definíció Legyen t egy X gyökerű levezetési fa. A t fa magasságát h(t)-vel, határát pedig fr(t)-vel jelöljük és az alábbi módon definiáljuk: Ha t = X, akkor h(t) = 0 és fr(t) = X Ha t = X[λ], akkor h(t) = 1 és fr(t) = λ Ha t = X[t 1, t 2,, t n ], akkor h(t) = 1 + max{ h(t i ) 1 i n} és fr(t) = fr(t 1 ) fr(t 2 ) fr(t n ). Azaz: Egy t levezetési fa esetén h(t) a t-ben levő olyan utak hosszának a maximuma, amelyek t gyökerétől annak valamely leveléig vezetnek, fr(t) pedig az az (N T)*- beli szó, amelyet t leveleinek balról jobbra történő leolvasásával kapunk Megj.: h(t)-t a levezetési gráf mélységének is nevezzük Példa Az előző feladatban szereplő t 1 és t 2 fákra h(t 1 ) = 3, fr(t 1 ) = F*(E), h(t 2 ) = 5 és fr(t 2 ) = (a + a) Feladatok Határozzuk meg az előző oldalakon szereplő további levezetési fák határát és magasságát! Térjünk vissza az 1. slidesor levezetési fáira (41. old.), és ott is végezzük el ugyanezt a feladatot (2-es, 2.5-es, 3-as típusú nyelvtanok) Adjunk meg az előző példák alapján 0, 1 és 2 magasságú levezetési fákat! A levezetések és a levezetési fák közötti szoros kapcsolatot mutatja a következő tétel 11 Levezetési fák Tétel: Tetszőleges X (N T) és α (N T)* esetén X * α akkor és csak akkor áll fent, ha van olyan t D X levezetési fa, amelyre fr(t) = α Bizonyítás a) A feltétel szerint ekkor X n α teljesül valamely n 0-ra. A jobb oldal igazolása: n szerinti indukcióval. Az n = 0 esetben X = α. Itt az egyetlen szögpontú t = X fa megfelelő, mert erre t D X és fr(t) = X (= α). Legyen most n 1, és tfh. az állítás minden n-nél nem nagyobb számra teljesül. Tegyük fel továbbá, hogy X n + 1 α. Ekkor X X 1 X 2 X k n α 1 α 2 α k = α, ahol teljesülnek a következők: X X 1 X 2 X k egy P-beli szabály, és minden 1 i k esetén X i n i α i, ahol n i n (ezen felül n = n 1 + n n k is teljesül). Mivel n i n, az indukciós feltevés miatt minden 1 i k-ra van olyan t i D X, hogy fr(t i ) = α i. Legyen t = X[t 1, t 2,, t k ]. A levezetési fa definíciója miatt t D X, a magasság és a határ definíciója miatt pedig fr(t) = fr(t 1 ) fr(t 2 ) fr(t k ) = α 1 α 2 α k = α. b) Tfh. az X gyökerű t derivációs fára teljesül, hogy fr(t) = α. A bal oldal igazolása: t magassága szerinti indukcióval. Legyen h(t) = 0. Ekkor t = X, tehát fr(t) = α = X. Így X * α (= X) teljesül. Legyen most h(t) = n + 1, és tfh. az állítás minden n-nél nem magasabb derivációs fára teljesül. A magasság és a határ definíciója miatt ekkor t = X[t 1, t 2,, t n ], valamilyen k 1-re és t 1 D X1, t 2 D X2,, t n D Xn levezetési fák esetén, és a derivációs fa definíciója miatt X X 1 X 2 X k P is teljesül. Vezessük be az α i = fr(t i ) jelölést minden 1 i k-ra. Ekkor egyrészt α = α 1 α 2 α k, másrészt az indukciós feltevés szerint minden 1 i k-ra X i * α i. Így X X 1 X 2 X k * α 1 α 2 α k = α. 12

7 Levezetési fák Megjegyzések Az előző tételben szereplő X * α levezetéshez általában nem csak egy olyan X gyökerű levezetési fa létezik, amelynek határa α. Példa: Legyenek az A ab Ab A a B b szabályok egy CF nyelvtan szabályai. Ekkor A * ab. Ugyanakkor a t 1 = A[a, B[b]] és t 2 = A[A[a], b] fákra fr(t 1 ) = ab és fr(t 2 ) = ab. Feladat: Rajzoljuk le ezeket a fákat! A tételben szereplő t fából az persze következik, hogy X * α fennáll, de az nem, hogy a levezetés lépései egyértelműen meghatározottak Példa: A t 1 = E[T[T[F], *, F[(, E, )]]] fa határa F*(E); ez kétféle módon is megkapható E T T*F F*F F*(E) E T T*F T*(E) F*(E) Egy derivációs fa által reprezentált levezetések egy ekvivalencia-osztályt alkotnak Mindegyikben ugyanaz a mondatforma (szó) van levezetve Az ugyanott megjelenő ugyanolyan nemterminálisra ugyanazt a szabályt alkalmazzák Ez a példákban jól látható A szabályalkalmazások sorrendje lehet különböző 13 Levezetési fák Célunk a továbbiakban: minden ekvivalencia-osztályból kiemelni egy reprezentánst, legyen ez például a legbaloldalibb levezetés (ez jó, és mindig létezik) Készen vagyunk? Ha X l * α, akkor X * α is fennáll, mivel minden bal (oldali) levezetés egyúttal levezetés is Ugyanaz érvényes a jobb (oldali) levezetésekre is De fordítva ez már nem igaz, X * α-ból nem következik, hogy X l * α is fenáll Egy legbaloldalibb levezetés persze mindig kijelölhető a fában Gond: A legbaloldalibb levezetés nem biztos, hogy tényleg bal (oldali) levezetés! (És ugyanaz persze a legjobboldalibbra is érvényes) Példa: A G ar nyelvtan esetén E * E + F + T teljesül, de E l * E + F + T és E r * E + F + T nem áll fent Feladat: Ellenőrizzük a példát! Ha csak terminális szavakat engedünk meg a levezetési fa leveleiben, akkor a kijelentés már megfordítható Azaz: teljes, befejezett fa kell! 14

8 Levezetési fák Állítás: Tetszőleges X (N T) és w T* esetén a következő három állítás ekvivalens: X * w X l * w X r * w Bizonyítás A bal és a jobb (oldali) levezetések között fennálló szimmetria miatt elegendő az első és a második állítás ekvivalenciáját igazolni. (Tudjuk: Ha X l * w, akkor X * w is fennáll, mivel minden bal (oldali) levezetés egyúttal levezetés is.) Fordítva, tfh. X * w. Ekkor X n w teljesül valamely n 0-ra. A másik oldal igazolása: n szerinti indukcióval. Az n = 0 esetben X = w, ami csak úgy lehet, hogy X T. Így nyilvánvaló, hogy X l * w. Tegyük fel most, hogy a következtetés teljesül minden n-nél nem nagyobb számra, és legyen X n + 1 w. Ekkor ez a deriváció felírható X X 1 X 2 X k n w 1 w 2 w k = w alakban, ahol k 1, X X 1 X 2 X k P és minden 1 i k-ra teljesül X i n i w i, ahol n i n. Így az indukciós feltevés miatt X i n l i w i is fennáll. Ekkor viszont X l X 1 X 2 X 3 X k l w 1 X 2 X 3 X k l w 1 w 2 X 3 X k l l l w 1 w 2 w 3 w k = w. A G nyelvtan által generált nyelv fogalma a jelen részben definiált fogalmak segítségével is megadható L(G) = {w T* S * w} = {w T* S l * w} = {w T* S r * w} L(G) = {fr(t) t D S, fr(t) T*} 15 Célunk a CF nyelveket felismerő automaták bevezetése Ha a véges automata definíciójában elhagyjuk az állapothalmaz végességére vonatkozó feltételt, akkor a (véges ábécéjű) végtelen automata fogalmához jutunk Így ez túl általános, ezért speciális fajtájú végtelen automatákat vezettek be Verem használata az automatáknál Veremautomata eredetileg: aritmetikai kifejezések számítógéppel történő kiértékelése (1960-as évek) (Az implementáló szoftvert levédték szabadalommal, ez volt az első védett szoftvertermék az USA-ban) Máshol is használjuk: verem, mint programozási adatszerkezet Tipikusan rekurzív programozási feladatoknál Példa: Hanoi tornyai (C-szerű pszeudokód) A forráspálcáról (source) a célpálcára (target) kell pakolni Megoldás: Segédpálcát (help) vetünk be Az egyes rudakhoz mint veremhez tudunk hozzáférni A rekurzív hívások szintén egy verem segítségével hajtódnak végre 16

9 Logikai felépítés Veremmemória: pozíciókra felosztott, egyirányban végtelen szalag Minden pozícióba egy-egy jel írható A kiolvasás (amely egyúttal törlés is) a bevitelhez képest fordított sorrendben történik (LIFO: Last In First Out) A belső tartalomhoz közvetlenül nem férünk hozzá, mindig csak a verem tetején levő elemet tudjuk kiolvasni Szintén a verem tetejére helyezhetünk el újabb elemet A verem alján kezdetben csak egy speciális szimbólum van (kezdőszimbólum) A vermet legtöbbször függőleges elrendezésűnek képzeljük Vízszintes elrendezésnél a legelső betű a legfelső, a szalag egyik irányba végtelen Input szalag: ezen kapja meg az automata a véges bemenő szót Ezt betűnként tudja leolvasni Az input szalag lehet üres is (λ szó) Véges, iniciális nemdeterminisztikus (kimenő jel nélküli) automata Ez a veremautomata véges vezérlője Diszkrét időskála mentén haladva történik a működés 17 A működés kezdetén A veremben csak a kezdő veremszimbólum van Az input szalag olvasófeje a szalag első betűjére mutat Ha a szalagon csak az üres szó van, akkor ezt érzékeli A (veremautomatához tartozó) véges automata a kezdő állapotában van A mozgás során Új állapotba kerülünk (ez a régivel megegyező is lehet), Az olvasófej egy szimbólummal továbblép (kivéve λ szó), A verem tetejére új jelsorozat íródik be A verem tetején eddig levő szimbólum megsemmisül (ha meg akarjuk tartani: vissza kell írni a verembe) Ha a véges automata a teljes input elolvasásával eljut egy végállapotba, akkor a veremautomata megáll Ekkor a veremautomata az input szót elfogadta (ugyanez az üresszóra is lehet) (Lehetséges elfogadás üres veremmel is, lásd később) A veremautomata akkor is megáll, ha a véges automata olyan állapotban van, amelyhez nem tartozik egyetlen alkalmas átmenet sem Nincs lehetséges átmenet a verem tetején levő jel figyelembe vételével és az input olvasásával a véges automatában 18

10 A nemdeterminisztikus veremautomata egy input szót elfogad, ha van olyan futása, hogy a bemenő szót elfogadja (emellett lehet persze olyan is, amellyel nem) Egy veremautomata kétféleképpen ismerhet fel egy nyelvet: végállapotokkal vagy üres veremmel Elfogadó állapotok kellenek ill. nem kellenek (lásd később) Veremautomata belső állapota: egy pár, ami a verem tartalmát és a véges automata belső állapotát tartalmazza (a veremautomata végtelen) Az elvileg végtelen (pontosan: véges, de nem korlátos) befogadóképességű veremmemória összes lehetséges tartalma eredményez végtelen sok állapotot CF nyelvet nem lehet korlátos befogadóképességű veremmemóriával elemezni (a mondat első fele nagyon hosszú lehet, lásd példák lent) A veremautomata kifejező ereje nagyobb a véges automatákénál Megj.: A veremautomatának több definíciója is ismert Push-down automaton: az új infót a régi tetejére írjuk, a régi lenyomódik, csak a legfelső adatot lehet kiolvasni ekkor ki is vesszük (Ezt az automatát tanuljuk) Stack automaton: az új infót itt is a régi tetejére írjuk, de kivétel nélkül lehet olvasni belőle, és nemcsak a verem tetejéről (Nem ezt az automatát tanuljuk; ennek jelentősége kisebb) De: a stack memory a veremmemória angol neve 19 Definíció: Veremautomatának (push-down automatának) nevezzük a P = (Q, Ʃ, Γ, δ, q 0, Z 0, F) rendszert, ahol Q egy nem üres, véges halmaz, az állapotok halmaza, Ʃ az input ábécé (szalag ábécé), Γ a veremábécé, q 0 Q a kezdőállapot, Z 0 Γ a verem kezdőszimbólum (kezdőjel), F Q a végállapotok halmaza, δ : Q (Ʃ {λ}) Γ P(Q Γ*) az átmenetfüggvény (mozgási szabályok halmaza) Megjegyzések Valamennyi fenti halmaz véges, hiszen egyébként nem lehetne véges módon leírni a nyelvet Ʃ helyett T, Γ helyett Z, δ helyett d jelölés is használatos; a P = (Q, T, Z, q 0, Z 0, δ, F) megadás is szokásos A végállapot halmaz az üres vermes felismerő automatánál kiesik (!) A P név a push-down automatából rövidült A δ : definíciójában szereplő P szimbólum a hatványhalmaz jelölése; (Q Γ*) részhalmazaiba képezünk A veremautomata alapvetően (további korlátozások nélkül) nemdeterminisztikus Az átmenet folyamata (a δ függvény működése) Tetszőleges q Q állapot, a (Ʃ {λ}) input és a verem tetején lévő Z Γ szimbólum esetén legyen δ (q, a, Z) = {(q 1, α 1 ), (q 2, α 2 ),, (q n, α n )}, valamilyen n 0-ra, q 1, q 2,, q n Q állapotokkal és α 1, α 2,, α n Γ* veremszimbólumokkal. (n = 0 eset: a képhalmaz üres.) Az automata a q állapotból az a input hatására (ez lehet λ is) átmegy valamelyik q i állapotba, a verem tetején levő Z-t törli, és beírja a verembe α i -t (ha ez λ, akkor nem ír be semmit, ekkor a veremben eggyel kevesebb szimbólum marad). 20

11 Definíció: A C = Q Ʃ* Γ* halmazt a P konfigurációi halmazának nevezzük Megj.: Ʃ* Q Γ* megadás is használatos Egy (q, w, γ) C konfiguráció jelentése az, hogy P a q állapotban van, a w Ʃ* input szót kapja (még nem fel nem dolgozott input rész), és vermének tartalma γ Az input szó feldolgozása: egy lépésben egy betűt, vagy λ-t olvas be (ekkor nincs az input szóban továbblépés) Ha γ = Z 1 Z 2 Z n, akkor a veremnek n cellája van (mindegyik cellában csak egy szimbólum lehet), és Z 1 áll a verem tetején A konfigurációnál a következő input szimbólum és a verem tetején álló szimbólum is feltüntethető, ekkor (q, aw, Zγ) írandó Átmeneti reláció: a konfigurációk közti átmenetet írja le Ezek Descartes-szorzatán értelmezett Egy konfigurációból az automata a δ függvény definíciója szerint egy vagy több másik konfigurációba léphet tovább Definíció: A 1 P C C átmeneti relációt a következőképpen definiáljuk tetszőleges p, q Q, a (Ʃ {λ}), w Ʃ*, Z Γ és α, γ Γ*-ra (q, aw, Zγ) 1 P (p, w, αγ) akkor és csak akkor áll fent, ha (p, α) δ (q, a, Z) Az a = λ esetben az inputban nincs előrehaladás, ekkor az automata λ-mozgást végez (Ábrák: F. Z. 44.) Megjegyzések Ha nem akarjuk kihangsúlyozni az automata nevét, akkor 1 is használható A 1 operátor (reláció) helyett használható a w jelölés is 21 Konfigurációk sorozata Mint korábban: bevezetjük 1*-ot Értelmezhető 1 n is: k 0 1 k 1 1 k k n Példa (determinisztikus veremautomata; végállapottal fogad el, B. I. 106.) (Eml.: δ : Q (Ʃ {λ}) Γ P(Q Γ*) az átmenetfüggvény C = Q Ʃ* Γ* a konfigurációs halmaz) Leírása és működése δ(q 0, a, Z 0 ) = (q 1, az 0 ) δ(q 0, b, Z 0 ) = (q 1, bz 0 ) δ(q 1, a, a) = (q 1, aa) δ(q 1, b, a) = (q 1, ba) δ(q 1, a, b) = (q 1, ab) δ(q 1, b, b) = (q 1, bb) δ(q 1, c, a) = (q 2, a) δ(q 1, c, b) = (q 2, b) δ(q 2, a, a) = (q 2,λ) δ(q 2, b, b) = (q 2,λ) δ(q 2, λ, Z 0 ) = (q 3, Z 0 ) F = {q 3 } Elemzendő mondat: aabacabaa Induló konfiguráció: (q 0, aabacabaa, Z 0 ) A konfigurációk sorozata: (q 0, aabacabaa, Z 0 ) 1 (q, abacabaa, az 0 ) 1 (q, bacabaa, aaz 0 ) 1 1 (q 1, acabaa, baaz 0 ) 1 (q 1, cabaa, abaaz 0 ) 1 (q 2, abaa, abaaz 0 ) 1 1 (q 2, baa, baaz 0 ) 1 (q 2, aa, aaz 0 ) 1 (q 2, a, az 0 ) 1 (q 2, λ, Z 0 ) 1 1 (q 3, λ, Z 0 ) Így az automata a jelsorozatot elfogadta, hiszen minden input szimbólumot feldolgozott, és elfogadó állapotba került Megj: Az automata a wcw 1 alakú szavakat fogadja el 22

12 Példa (nemdeterminisztikus veremautomata; végállapottal fogad el) Leírása és működése δ(q 0, a, Z 0 ) = (q 1, az 0 ) δ(q 0, b, Z 0 ) = (q 1, bz 0 ) δ(q 1, a, a) = (q 1, aa) (q 2,λ) δ(q 1, b, a) = (q 1, ba) δ(q 1, a, b) = (q 1, ab) δ(q 1, b, b) = (q 1, bb) (q 2,λ) δ(q 2, a, a) = (q 2,λ) δ(q 2, b, b) = (q 2,λ) δ(q 2, λ, Z 0 ) = (q 3, Z 0 ) F = {q 3 } Eltérés az előző automatától: a c szimbólum kiesik (nem látjuk, hol a szó közepe) Elemzendő mondat: abbaabba A konfigurációk sorozata (első kör): (q 0, abbaabba, Z 0 ) 1 (q 1, bbaabba, az 0 ) 1 (q 1, baabba, baz 0 ) 1 (? két választási leh.) A (q 2,λ) ágon megyünk tovább: (q 1, baabba, baz 0 ) 1 (q 2, aabba, az 0 ) 1 (q 2, abba, Z 0 ) 1 (? nincs tovább) Lehetőségek: vagy nem a nyelv mondatával dolgozunk, vagy rossz irányba indultunk el Visszatérés, és a (q, bb) ágon megyünk tovább: (q 1, baabba, baz 0 ) 1 (q 1, aabba, bbaz 0 ) 1 (q 1, abba, abbaz 0 ) 1 (? két választási leh.) A (q 1,λ) ágon megyünk tovább: (q, abba, abbaz 0 ) 1 (q 2, bba, bbaz 0 ) 1 (q 2, ba, baz 0 ) 1 (q 2, a, az 0 ) 1 1 (q 2, λ, Z 0 ) 1 (q 3, λ, Z 0 ) Az automata a jelsorozatot elfogadta, tehát ez a szó az automata nyelvének egy mondata Nemdeterminisztikus automatánál (a döntéshez) minden lehetséges mozgássorozatot meg kell nézni Megj: Az automata a ww 1 alakú szavakat fogadja el 23 Definíció: A P veremautomata által végállapotokkal felismert nyelven az L f (P) = {w Ʃ* (q 0, w, Z 0 ) 1* (q, λ, γ), ahol q F és γ Γ*} nyelvet értjük Tehát: végállapotokkal P azon w input szavakat ismeri fel, amelyek hatására a q 0 kezdőállapotból a verem kezdeti Z 0 tartalma mellett az automata valamely q végállapotba kerül. A veremben végül maradhat valamilyen γ tartalom. Másként (B. I.): Azok a w jelsorozatok a nyelv mondatai, amelyek a kezdőállapottal és a verem kezdeti tartalmával olyan konfigurációt alkotnak, amelyből tetsz. számú lépésben elérhető egy olyan konfiguráció, ahol már nincs olvasásra váró jelsorozat (ez az üres jelsorozat), és az állapot elfogadó. A verem tartalma érdektelen. Az elfogadás feltételét köthetjük a verem üres voltához is Definíció: A P veremautomata által üres veremmel felismert nyelven az L e (P) = {w Ʃ* (q 0, w, Z 0 ) 1* (q, λ, λ), ahol q Q} nyelvet értjük Tehát: üres veremmel P azon w input szavakat ismeri fel, amelyek hatására a q 0 kezdőállapotból a verem kezdeti Z 0 tartalma mellett P verme kiürül. F-nek ilyenkor nincs szerepe közömbös, hogy a folyamat végén elfogadó állapotban vagyunk-e F akár a definiáló rendezett hetesből is elhagyható De: az üres veremmel elfogadó automatának is végig kell olvasnia a jelsorozatot! (Ábrák: F. Z ) Egy konkrét veremautomata esetén a végállapottal, ill. az üres veremmel elfogadott nyelvek (nagyon) különbözhetnek egymástól fontos rögzíteni, hogy milyen módon akarjuk használni az automatát (!) 24

13 Az automata működésének rajzos bemutatása Ábrázolnunk kell az állapotokat (átmenetekkel); az inputot, ill. a verem tartalmát Lehetőségek Mint a véges elfogadó automatáknál, csak az állapotok mellett feltüntetjük az inputot és a verem tartalmát; valamilyen időrend vagy több ábra kell Az egyes állapotokat kiragadva ábrázoljuk, mellettük bemutatva az inputot és a verem tartalmát Lásd még: D. P Példa (determinisztikus veremautomata; végállapottal fogad el) Leírása és működése P = (Q, Ʃ, Γ, δ, q 0, Z 0, F), ahol Q = {q 0, q 1, q 2 }, Ʃ = (a, b), Γ = (a, Z 0 ), F = {q 0 } δ(q 0, a, Z 0 ) = (q 1, az 0 ) (első a) δ(q 1, a, a) = (q 1, aa) (többi a) δ(q 1, b, a) = (q 2,λ) (első b) δ(q 2, b, a) = (q 2,λ) (többi b) δ(q 2, λ, Z 0 ) = (q 0,λ) (vége) (Az automata parciálisan definiált; rajz: D. P. 170.) Elemzendő mondat: aabb A konfigurációk sorozata (a működés egyszerűen követhető): (q 0, aabb, Z 0 ) 1 (q 1, abb, az 0 ) 1 (q 1, bb, aaz 0 ) 1 (q 2, b, az 0 ) 1 1(q 2, λ, Z 0 ) 1 (q 0, λ, λ) Elemzendő mondat: abb Feladat: Mutassuk meg, hogy abb L f (P) A (q 0, b, λ) konfigurációból nem lehet továbbmenni (Konstruáljunk hasonló kis feladatokat az előző oldalakon szereplő automatákhoz is) Igazolható az is (pl. indukcióval), hogy L f (P) = {a n b n n 0} Itt: L f (P) L e (P), hiszen L e (P) = {a n b n n 1}, azaz L e (P) = L f (P) {λ} Ennek ellenére a két nyelvosztály közötti kapcsolat általánosan is nagyon szoros Tétel: A veremautomatákkal végállapotokkal felismerhető nyelvek osztálya megegyezik a veremautomatákkal üres veremmel felismerhető nyelvek osztályával 26

9. előadás Környezetfüggetlen nyelvek

9. előadás Környezetfüggetlen nyelvek 9. előadás Környezetfüggetlen nyelvek Dr. Kallós Gábor 2015 2016 1 Tartalom Bevezetés CF nyelv példák Nyelvek és nyelvtanok egy- és többértelműsége Bal- és jobboldali levezetések A fák magassága és határa

Részletesebben

Automaták mint elfogadók (akceptorok)

Automaták mint elfogadók (akceptorok) Automaták mint elfogadók (akceptorok) Ha egy iniciális Moore-automatában a kimenőjelek halmaza csupán kételemű: {elfogadom, nem fogadom el}, és az utolsó kimenőjel dönti el azt a kérdést, hogy elfogadható-e

Részletesebben

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:

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: 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: 1. Öt kis kérdés megválaszolása egyenként 6 pontért, melyet minimum 12

Részletesebben

Chomsky-féle hierarchia

Chomsky-féle hierarchia http://www.ms.sapientia.ro/ kasa/formalis.htm Chomsky-féle hierarchia G = (N, T, P, S) nyelvtan: 0-s típusú (általános vagy mondatszerkezetű), ha semmilyen megkötést nem teszünk a helyettesítési szabályaira.

Részletesebben

ZH feladatok megoldásai

ZH feladatok megoldásai ZH feladatok megoldásai A CSOPORT 5. Írja le, hogy milyen szabályokat tartalmazhatnak az egyes Chomskynyelvosztályok (03 típusú nyelvek)! (4 pont) 3. típusú, vagy reguláris nyelvek szabályai A ab, A a

Részletesebben

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

6. előadás A reguláris nyelvek jellemzése 2. 6. előadás A reguláris nyelvek jellemzése 2. Dr. Kallós Gábor 2015 2016 1 Tartalom A reguláris nyelvek osztályának jellemzése a körbebizonyítás Láncszabályok A 2. állítás és igazolása Ekvivalens 3-típusú

Részletesebben

Automaták és formális nyelvek

Automaták és formális nyelvek Automaták és formális nyelvek Bevezetés a számítástudomány alapjaiba 1. Formális nyelvek 2006.11.13. 1 Automaták és formális nyelvek - bevezetés Automaták elmélete: információs gépek általános absztrakt

Részletesebben

Atomataelmélet: A Rabin Scott-automata

Atomataelmélet: A Rabin Scott-automata A 19. óra vázlata: Atomataelmélet: A Rabin Scott-automata Az eddigieken a formális nyelveket generatív szempontból vizsgáltuk, vagyis a nyelvtan (generatív grammatika) szemszögéből. A generatív grammatika

Részletesebben

Emlékeztető: LR(0) elemzés. LR elemzések (SLR(1) és LR(1) elemzések)

Emlékeztető: LR(0) elemzés. LR elemzések (SLR(1) és LR(1) elemzések) Emlékeztető Emlékeztető: LR(0) elemzés A lexikális által előállított szimbólumsorozatot balról jobbra olvassuk, a szimbólumokat az vermébe tesszük. LR elemzések (SLR() és LR() elemzések) Fordítóprogramok

Részletesebben

Környezetfüggetlen nyelvtan. Formális nyelvek II. Környezetfüggetlen nyelvek és veremautomaták. Backus-Naur forma

Környezetfüggetlen nyelvtan. Formális nyelvek II. Környezetfüggetlen nyelvek és veremautomaták. Backus-Naur forma Formális nyelvek II. Környezetfüggetlen nyelvek és veremautomaták Környezetfüggetlen nyelvtan Egy G = (N,Σ,P,S) nyelvtan környezetfüggetlen, ha minden szabálya A α alakú. Példák: 1) Az S asb ε nyelvtan,

Részletesebben

A számítógépes nyelvészet elmélete és gyakorlata. Formális nyelvek elmélete

A számítógépes nyelvészet elmélete és gyakorlata. Formális nyelvek elmélete A számítógépes nyelvészet elmélete és gyakorlata Formális nyelvek elmélete Nyelv Nyelvnek tekintem a mondatok valamely (véges vagy végtelen) halmazát; minden egyes mondat véges hosszúságú, és elemek véges

Részletesebben

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

Házi feladatok megoldása. Nyelvtani transzformációk. Házi feladatok megoldása. Házi feladatok megoldása. Formális nyelvek, 6. gyakorlat. Nyelvtani transzformációk Formális nyelvek, 6. gyakorlat a. S (S) SS ε b. S XS ε és X (S) c. S (SS ) Megoldás: Célja: A nyelvtani transzformációk bemutatása Fogalmak: Megszorított típusok, normálformák,

Részletesebben

Formális nyelvek és gépek (definíciós és tétel lista - 09/10/2)

Formális nyelvek és gépek (definíciós és tétel lista - 09/10/2) Formális nyelvek és gépek (definíciós és tétel lista - 09/10/2) ábécé: Ábécének nevezünk egy tetszőleges véges szimbólumhalmazt. Jelölése: X, Y betű: Az ábécé elemeit betűknek hívjuk. szó: Az X ábécé elemeinek

Részletesebben

A SZÁMÍTÁSTUDOMÁNY ALAPJAI

A SZÁMÍTÁSTUDOMÁNY ALAPJAI Írta: ÉSIK ZOLTÁN A SZÁMÍTÁSTUDOMÁNY ALAPJAI Egyetemi tananyag 2011 COPYRIGHT: 2011 2016, Dr. Ésik Zoltán, Szegedi Tudományegyetem Természettudományi és Informatikai Kar Számítástudomány Alapjai Tanszék

Részletesebben

Formális nyelvek és automaták előadások

Formális nyelvek és automaták előadások VÁRTERÉSZ MAGDA Formális nyelvek és automaták előadások 2005/06-os tanév 1. félév Tartalomjegyzék 1. Előzetes tudnivalók 4 2. Bevezetés 15 3. Ábécé, szó, formális nyelv 17 4. Műveletek nyelvekkel 24 4.1.

Részletesebben

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

Az R halmazt a valós számok halmazának nevezzük, ha teljesíti az alábbi 3 axiómacsoport axiómáit. 2. A VALÓS SZÁMOK 2.1 A valós számok aximómarendszere Az R halmazt a valós számok halmazának nevezzük, ha teljesíti az alábbi 3 axiómacsoport axiómáit. 1.Testaxiómák R-ben két művelet van értelmezve, az

Részletesebben

Turing-gépek. Számításelmélet (7. gyakorlat) Turing-gépek 2009/10 II. félév 1 / 1

Turing-gépek. Számításelmélet (7. gyakorlat) Turing-gépek 2009/10 II. félév 1 / 1 Turing-gépek Logika és számításelmélet, 7. gyakorlat 2009/10 II. félév Számításelmélet (7. gyakorlat) Turing-gépek 2009/10 II. félév 1 / 1 A Turing-gép Az algoritmus fogalmának egy intuitív definíciója:

Részletesebben

Feladatok: 1. Add meg a következ balreguláris nyelvtannak megfelel jobbreguláris nyelvtant!

Feladatok: 1. Add meg a következ balreguláris nyelvtannak megfelel jobbreguláris nyelvtant! Feladatok: 1. Add meg a következ balreguláris nyelvtannak megfelel jobbreguláris nyelvtant! Megoldás: S b A a Ezzel a feladattal az volt a gondom, hogy a könyvben tanultak alapján elkezdtem levezetni,

Részletesebben

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 I. Oyamaguchi [3], Dauchet és társai [1] és Engelfriet [2] bebizonyították hogy egy tetszőleges alap Alap fatranszformátorok I Vágvölgyi Sándor Oyamaguchi [3], Dauchet és társai [1] és Engelfriet [2] bebizonyították hogy egy tetszőleges alap termátíró rendszerről eldönthető hogy összefolyó-e. Mindannyian

Részletesebben

Felismerhető nyelvek zártsági tulajdonságai II... slide #30. Véges nemdeterminisztikus automata... slide #21

Felismerhető nyelvek zártsági tulajdonságai II... slide #30. Véges nemdeterminisztikus automata... slide #21 A számítástudomány alapjai Ésik Zoltán SZTE, Számítástudomány Alapjai Tanszék Bevezetes Bevezetés.................................................... slide #2 Automaták és formális nyelvek Szavak és nyelvek...............................................

Részletesebben

30. ERŐSEN ÜSSZEFÜGGŐ KOMPONENSEK

30. ERŐSEN ÜSSZEFÜGGŐ KOMPONENSEK 30. ERŐSEN ÜSSZEFÜGGŐ KOMPONENSEK A gráfos alkalmazások között is találkozunk olyan problémákkal, amelyeket megoldását a részekre bontott gráfon határozzuk meg, majd ezeket alkalmas módon teljes megoldássá

Részletesebben

KOVÁCS BÉLA, MATEMATIKA I.

KOVÁCS BÉLA, MATEMATIKA I. KOVÁCS BÉLA, MATEmATIkA I. 4 IV. FÜGGVÉNYEk 1. LEkÉPEZÉSEk, függvények Definíció Legyen és két halmaz. Egy függvény -ből -ba egy olyan szabály, amely minden elemhez pontosan egy elemet rendel hozzá. Az

Részletesebben

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

Házi feladatok megoldása. Nyelvek használata adatszerkezetek, képek leírására Nyelvek használata adatszerkezetek, képek leírására Formális nyelvek, 2. gyakorlat 1. feladat Módosított : belsejében lehet _ jel is. Kezdődhet, de nem végződhet vele, két aláhúzás nem lehet egymás mellett.

Részletesebben

Fogalomtár a Formális nyelvek és

Fogalomtár a Formális nyelvek és Fogalomtár a Formális nyelvek és automaták tárgyhoz (A törzsanyaghoz tartozó definíciókat és tételeket jelöli.) Definíciók Univerzális ábécé: Szimbólumok egy megszámlálhatóan végtelen halmazát univerzális

Részletesebben

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

A digitális számítás elmélete A digitális számítás elmélete 1. előadás szept. 19. Determinisztikus véges automaták 1. Példa: Fotocellás ajtó m m m k b s = mindkét helyen = kint = bent = sehol k k b s m csukva b nyitva csukva nyitva

Részletesebben

Kiterjesztések sek szemantikája

Kiterjesztések sek szemantikája Kiterjesztések sek szemantikája Példa D Integer = {..., -1,0,1,... }; D Boolean = { true, false } D T1... T n T = D T 1... D Tn D T Az összes függvf ggvény halmaza, amelyek a D T1,..., D Tn halmazokból

Részletesebben

A valós számok halmaza

A valós számok halmaza VA 1 A valós számok halmaza VA 2 A valós számok halmazának axiómarendszere és alapvető tulajdonságai Definíció Az R halmazt a valós számok halmazának nevezzük, ha teljesíti a következő axiómarendszerben

Részletesebben

1. előadás. Lineáris algebra numerikus módszerei. Hibaszámítás Számábrázolás Kerekítés, levágás Klasszikus hibaanalízis Abszolút hiba Relatív hiba

1. előadás. Lineáris algebra numerikus módszerei. Hibaszámítás Számábrázolás Kerekítés, levágás Klasszikus hibaanalízis Abszolút hiba Relatív hiba Hibaforrások Hiba A feladatok megoldása során különféle hibaforrásokkal találkozunk: Modellhiba, amikor a valóságnak egy közelítését használjuk a feladat matematikai alakjának felírásához. (Pl. egy fizikai

Részletesebben

KOVÁCS BÉLA, MATEMATIKA I.

KOVÁCS BÉLA, MATEMATIKA I. KOVÁCS BÉLA, MATEmATIkA I. 1 I. HALmAZOk 1. JELÖLÉSEk A halmaz fogalmát tulajdonságait gyakran használjuk a matematikában. A halmazt nem definiáljuk, ezt alapfogalomnak tekintjük. Ez nem szokatlan, hiszen

Részletesebben

Ellenőrző kérdések. 36. Ha t szintű indexet használunk, mennyi a keresési költség blokkműveletek számában mérve? (1 pont) log 2 (B(I (t) )) + t

Ellenőrző kérdések. 36. Ha t szintű indexet használunk, mennyi a keresési költség blokkműveletek számában mérve? (1 pont) log 2 (B(I (t) )) + t Ellenőrző kérdések 2. Kis dolgozat kérdései 36. Ha t szintű indexet használunk, mennyi a keresési költség blokkműveletek számában mérve? (1 pont) log 2 (B(I (t) )) + t 37. Ha t szintű indexet használunk,

Részletesebben

NP-teljesség röviden

NP-teljesség röviden NP-teljesség röviden Bucsay Balázs earthquake[at]rycon[dot]hu http://rycon.hu 1 Turing gépek 1/3 Mi a turing gép? 1. Definíció. [Turing gép] Egy Turing-gép formálisan egy M = (K, Σ, δ, s) rendezett négyessel

Részletesebben

KOVÁCS BÉLA, MATEMATIKA I.

KOVÁCS BÉLA, MATEMATIKA I. KOVÁCS BÉLA MATEmATIkA I 6 VI KOmPLEX SZÁmOk 1 A komplex SZÁmOk HALmAZA A komplex számok olyan halmazt alkotnak amelyekben elvégezhető az összeadás és a szorzás azaz két komplex szám összege és szorzata

Részletesebben

Időzített átmeneti rendszerek

Időzített átmeneti rendszerek Időzített átmeneti rendszerek Legyen A egy ábécé, A = A { (d) d R 0 }. A feletti (valós idejű) időzített átmeneti rendszer olyan A = (S, T,,, ) címkézett átmeneti rendszert ( : T A ), melyre teljesülnek

Részletesebben

NEM-DETERMINISZTIKUS PROGRAMOK HELYESSÉGE. Szekvenciális programok kategóriái. Hoare-Dijkstra-Gries módszere

NEM-DETERMINISZTIKUS PROGRAMOK HELYESSÉGE. Szekvenciális programok kategóriái. Hoare-Dijkstra-Gries módszere Szekvenciális programok kategóriái strukturálatlan strukturált NEM-DETERMINISZTIKUS PROGRAMOK HELYESSÉGE Hoare-Dijkstra-Gries módszere determinisztikus valódi korai nem-determinisztikus általános fejlett

Részletesebben

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

Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. HA 1 Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. (Albert Einstein) HA 2 Halmazok HA 3 Megjegyzések A halmaz, az elem és az eleme fogalmakat nem definiáljuk, hanem alapfogalmaknak

Részletesebben

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

Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. (Albert Einstein) Halmazok 1 Halmazok 1 Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé. (Albert Einstein) Halmazok 2 A fejezet legfontosabb elemei Halmaz megadási módjai Halmazok közti műveletek (metszet,

Részletesebben

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

Itt és a továbbiakban a számhalmazokra az alábbi jelöléseket használjuk: 1. Halmazok, relációk, függvények 1.A. Halmazok A halmaz bizonyos jól meghatározott dolgok (tárgyak, fogalmak), a halmaz elemeinek az összessége. Azt, hogy az a elem hozzátartozik az A halmazhoz így jelöljük:

Részletesebben

Formális Nyelvek - 1. Előadás

Formális Nyelvek - 1. Előadás Formális Nyelvek - 1. Előadás Csuhaj Varjú Erzsébet Algoritmusok és Alkalmazásaik Tanszék Informatikai Kar Eötvös Loránd Tudományegyetem H-1117 Budapest Pázmány Péter sétány 1/c E-mail: csuhaj@inf.elte.hu

Részletesebben

Formális Nyelvek és Automaták v1.9

Formális Nyelvek és Automaták v1.9 Formális Nyelvek és Automaták v1.9 Hernyák Zoltán E másolat nem használható fel szabadon, a készülő jegyzet egy munkapéldánya. A teljes jegyzetről, vagy annak bármely részéről bármely másolat készítéséhez

Részletesebben

Algoritmuselmélet. Mélységi keresés és alkalmazásai. Katona Gyula Y.

Algoritmuselmélet. Mélységi keresés és alkalmazásai. Katona Gyula Y. Algoritmuselmélet Mélységi keresés és alkalmazásai Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem 9. előadás Katona Gyula Y. (BME SZIT) Algoritmuselmélet

Részletesebben

KOVÁCS BÉLA, MATEMATIKA I.

KOVÁCS BÉLA, MATEMATIKA I. KOVÁCS BÉLA, MATEmATIkA I. 3 III. MEGFELELTETÉSEk, RELÁCIÓk 1. BEVEZETÉS Emlékeztetünk arra, hogy az rendezett párok halmazát az és halmazok Descartes-féle szorzatának nevezzük. Más szóval az és halmazok

Részletesebben

Adatszerkezetek I. 7. előadás. (Horváth Gyula anyagai felhasználásával)

Adatszerkezetek I. 7. előadás. (Horváth Gyula anyagai felhasználásával) Adatszerkezetek I. 7. előadás (Horváth Gyula anyagai felhasználásával) Bináris fa A fa (bináris fa) rekurzív adatszerkezet: BinFa:= Fa := ÜresFa Rekord(Elem,BinFa,BinFa) ÜresFa Rekord(Elem,Fák) 2/37 Bináris

Részletesebben

Adatszerkezetek és algoritmusok

Adatszerkezetek és algoritmusok 2010. január 8. Bevezet El z órák anyagainak áttekintése Ismétlés Adatszerkezetek osztályozása Sor, Verem, Lengyelforma Statikus, tömbös reprezentáció Dinamikus, láncolt reprezentáció Láncolt lista Lassú

Részletesebben

... S n. A párhuzamos programszerkezet két vagy több folyamatot tartalmaz, melyek egymással közös változó segítségével kommunikálnak.

... S n. A párhuzamos programszerkezet két vagy több folyamatot tartalmaz, melyek egymással közös változó segítségével kommunikálnak. Párhuzamos programok Legyen S parbegin S 1... S n parend; program. A párhuzamos programszerkezet két vagy több folyamatot tartalmaz, melyek egymással közös változó segítségével kommunikálnak. Folyamat

Részletesebben

A következő feladat célja az, hogy egyszerű módon konstruáljunk Poisson folyamatokat.

A következő feladat célja az, hogy egyszerű módon konstruáljunk Poisson folyamatokat. Poisson folyamatok, exponenciális eloszlások Azt mondjuk, hogy a ξ valószínűségi változó Poisson eloszlású λ, 0 < λ

Részletesebben

Következik, hogy B-nek minden prímosztója 4k + 1 alakú, de akkor B maga is 4k + 1 alakú, s ez ellentmondás.

Következik, hogy B-nek minden prímosztója 4k + 1 alakú, de akkor B maga is 4k + 1 alakú, s ez ellentmondás. Prímszámok A (pozitív) prímszámok sorozata a következő: 2, 3, 5, 7, 11, 13, 17, 19,... 1. Tétel. Végtelen sok prímszám van. Első bizonyítás. (Euklidész) Tegyük fel, hogy állításunk nem igaz, tehát véges

Részletesebben

2016, Diszkrét matematika

2016, Diszkrét matematika Diszkrét matematika 2. előadás Sapientia Egyetem, Műszaki és Humántudományok Tanszék Marosvásárhely, Románia mgyongyi@ms.sapientia.ro 2016, őszi félév Miről volt szó az elmúlt előadáson? Követelmények,

Részletesebben

út hosszát. Ha a két várost nem köti össze út, akkor legyen c ij = W, ahol W már az előzőekben is alkalmazott megfelelően nagy szám.

út hosszát. Ha a két várost nem köti össze út, akkor legyen c ij = W, ahol W már az előzőekben is alkalmazott megfelelően nagy szám. 1 Az utazó ügynök problémája Utazó ügynök feladat Adott n számú város és a városokat összekötő utak, amelyeknek ismert a hossza. Adott továbbá egy ügynök, akinek adott városból kiindulva, minden várost

Részletesebben

Bisonc++ tutorial. Dévai Gergely. A szabály bal- és jobboldalát : választja el egymástól. A szabályalternatívák sorozatát ; zárja le.

Bisonc++ tutorial. Dévai Gergely. A szabály bal- és jobboldalát : választja el egymástól. A szabályalternatívák sorozatát ; zárja le. Bisonc++ tutorial Dévai Gergely A Bisonc++ egy szintaktikuselemz -generátor: egy környezetfüggetlen nyelvtanból egy C++ programot generál, ami egy tokensorozat szintaktikai helyességét képes ellen rizni.

Részletesebben

A sorozat fogalma. függvényeket sorozatoknak nevezzük. Amennyiben az értékkészlet. az értékkészlet a komplex számok halmaza, akkor komplex

A sorozat fogalma. függvényeket sorozatoknak nevezzük. Amennyiben az értékkészlet. az értékkészlet a komplex számok halmaza, akkor komplex A sorozat fogalma Definíció. A természetes számok N halmazán értelmezett függvényeket sorozatoknak nevezzük. Amennyiben az értékkészlet a valós számok halmaza, valós számsorozatról beszélünk, mígha az

Részletesebben

Melykeres(G) for(u in V) {szin(u):=feher Apa(u):=0} for(u in V) {if szin(u)=feher then MBejar(u)}

Melykeres(G) for(u in V) {szin(u):=feher Apa(u):=0} for(u in V) {if szin(u)=feher then MBejar(u)} Mélységi keresés Ez az algoritmus a gráf pontjait járja be, eredményképpen egy mélységi feszítőerdőt ad vissza az Apa függvény által. A pontok bejártságát színekkel kezeljük, fehér= érintetlen, szürke=meg-

Részletesebben

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!

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! RE 1 Relációk Függvények RE 2 Definíció: Ha A, B és ρ A B, akkor azt mondjuk, hogy ρ reláció A és B között, vagy azt, hogy ρ leképezés A-ból B-be. Ha speciálisan A=B, azaz ρ A A, akkor azt mondjuk, hogy

Részletesebben

1. tétel - Gráfok alapfogalmai

1. tétel - Gráfok alapfogalmai 1. tétel - Gráfok alapfogalmai 1. irányítatlan gráf fogalma A G (irányítatlan) gráf egy (Φ, E, V) hátmas, ahol E az élek halmaza, V a csúcsok (pontok) halmaza, Φ: E {V-beli rendezetlen párok} illeszkedési

Részletesebben

Feladatok, amelyek gráfokkal oldhatók meg 1) A königsbergi hidak problémája (Euler-féle probléma) a

Feladatok, amelyek gráfokkal oldhatók meg 1) A königsbergi hidak problémája (Euler-féle probléma) a Feladatok, amelyek gráfokkal oldhatók meg ) A königsbergi hidak problémája (Euler-féle probléma) a b d c A megfelelő gráf: d a b c ) Egy szórakoztató feladat (Hamilton-féle probléma) Helyezzük el az,,,...,

Részletesebben

5. előadás. Programozás-elmélet. Programozás-elmélet 5. előadás

5. előadás. Programozás-elmélet. Programozás-elmélet 5. előadás Elemi programok Definíció Az S A A program elemi, ha a A : S(a) { a, a, a, a,..., a, b b a}. A definíció alapján könnyen látható, hogy egy elemi program tényleg program. Speciális elemi programok a kövekezők:

Részletesebben

6. Függvények. Legyen függvény és nem üreshalmaz. A függvényt az f K-ra való kiterjesztésének

6. Függvények. Legyen függvény és nem üreshalmaz. A függvényt az f K-ra való kiterjesztésének 6. Függvények I. Elméleti összefoglaló A függvény fogalma, értelmezési tartomány, képhalmaz, értékkészlet Legyen az A és B halmaz egyike sem üreshalmaz. Ha az A halmaz minden egyes eleméhez hozzárendeljük

Részletesebben

Informatika szigorlat. A lexikális elemző feladatai közé tartozik a whitespace karakterek (a

Informatika szigorlat. A lexikális elemző feladatai közé tartozik a whitespace karakterek (a Informatika szigorlat 17-es tétel: Felülről lefelé elemzések 1. Lexikális elemzés A lexikális elemző alapvető feladata az, hogy a forrásnyelvű program lexikális egységeit felismerje, azaz meghatározza

Részletesebben

1/50. Teljes indukció 1. Back Close

1/50. Teljes indukció 1. Back Close 1/50 Teljes indukció 1 A teljes indukció talán a legfontosabb bizonyítási módszer a számítástudományban. Teljes indukció elve. Legyen P (n) egy állítás. Tegyük fel, hogy (1) P (0) igaz, (2) minden n N

Részletesebben

Analízis előadás és gyakorlat vázlat

Analízis előadás és gyakorlat vázlat Analízis előadás és gyakorlat vázlat Készült a PTE TTK GI szakos hallgatóinak Király Balázs 2010-11. I. Félév 2 1. fejezet Számhalmazok és tulajdonságaik 1.1. Nevezetes számhalmazok ➀ a) jelölése: N b)

Részletesebben

MintaFeladatok 1.ZH Megoldások

MintaFeladatok 1.ZH Megoldások Kérem e-mail-ben jelezze, ha hibát talál: (veanna@inf.elte.hu, vagy veanna@elte.hu ) 1. feladat L1 = {ab,ba,b} L2=b*ab* L3 = {a, bb, aba} L1L3 = {aba, abbb, ababa, baa, babb, baaba, ba, bbb, baba} (ab+b)*

Részletesebben

Gauss-Jordan módszer Legkisebb négyzetek módszere, egyenes LNM, polinom LNM, függvény. Lineáris algebra numerikus módszerei

Gauss-Jordan módszer Legkisebb négyzetek módszere, egyenes LNM, polinom LNM, függvény. Lineáris algebra numerikus módszerei A Gauss-Jordan elimináció, mátrixinvertálás Gauss-Jordan módszer Ugyanazzal a technikával, mint ahogy a k-adik oszlopban az a kk alatti elemeket kinulláztuk, a fölötte lévő elemeket is zérussá lehet tenni.

Részletesebben

Formális nyelvek Második, javított kiadás

Formális nyelvek Második, javított kiadás BACH IVÁN Formális nyelvek Második, javított kiadás Egyetemi tankönyv TYPOTEX Kiadó Budapest, 2002 A könyv az illetékes kuratórium döntése alapján az Oktatási Minisztérium támogatásával a Felsőoktatási

Részletesebben

4. SOROK. a n. a k (n N) a n = s, azaz. a n := lim

4. SOROK. a n. a k (n N) a n = s, azaz. a n := lim Példák.. Geometriai sor. A aq n = a + aq + aq 2 +... 4. SOROK 4. Definíció, konvergencia, divergencia, összeg Definíció. Egy ( ) (szám)sorozat elemeit az összeadás jelével összekapcsolva kapott a + a 2

Részletesebben

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!

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! függvények RE 1 Relációk Függvények függvények RE 2 Definíció Ha A, B és ρ A B, akkor azt mondjuk, hogy ρ reláció A és B között, vagy azt, hogy ρ leképezés A-ból B-be. Ha speciálisan A=B, azaz ρ A A, akkor

Részletesebben

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

4. Fuzzy relációk. Gépi intelligencia I. Fodor János NIMGI1MIEM BMF NIK IMRI 4. Fuzzy relációk Gépi intelligencia I. Fodor János BMF NIK IMRI NIMGI1MIEM Tartalomjegyzék I 1 Klasszikus relációk Halmazok Descartes-szorzata Relációk 2 Fuzzy relációk Fuzzy relációk véges alaphalmazok

Részletesebben

Analízis elo adások. Vajda István. 2012. szeptember 10. Neumann János Informatika Kar Óbudai Egyetem. Vajda István (Óbudai Egyetem)

Analízis elo adások. Vajda István. 2012. szeptember 10. Neumann János Informatika Kar Óbudai Egyetem. Vajda István (Óbudai Egyetem) Vajda István Neumann János Informatika Kar Óbudai Egyetem 1 / 36 Bevezetés A komplex számok értelmezése Definíció: Tekintsük a valós számpárok R2 halmazát és értelmezzük ezen a halmazon a következo két

Részletesebben

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

ALAPFOGALMAK 1. A reláció az program programfüggvénye, ha. Azt mondjuk, hogy az feladat szigorúbb, mint az feladat, ha ALAPFOGALMAK 1 Á l l a p o t t é r Legyen I egy véges halmaz és legyenek A i, i I tetszőleges véges vagy megszámlálható, nem üres halmazok Ekkor az A= A i halmazt állapottérnek, az A i halmazokat pedig

Részletesebben

Kupac adatszerkezet. A[i] bal fia A[2i] A[i] jobb fia A[2i + 1]

Kupac adatszerkezet. A[i] bal fia A[2i] A[i] jobb fia A[2i + 1] Kupac adatszerkezet A bináris kupac egy majdnem teljes bináris fa, amely minden szintjén teljesen kitöltött kivéve a legalacsonyabb szintet, ahol balról jobbra haladva egy adott csúcsig vannak elemek.

Részletesebben

9. előadás. Programozás-elmélet. Programozási tételek Elemi prog. Sorozatszámítás Eldöntés Kiválasztás Lin. keresés Megszámolás Maximum.

9. előadás. Programozás-elmélet. Programozási tételek Elemi prog. Sorozatszámítás Eldöntés Kiválasztás Lin. keresés Megszámolás Maximum. Programozási tételek Programozási feladatok megoldásakor a top-down (strukturált) programtervezés esetén három vezérlési szerkezetet használunk: - szekvencia - elágazás - ciklus Eddig megismertük az alábbi

Részletesebben

Budapesti M szaki és Gazdaságtudományi Egyetem Automatizálási és Alkalmazott Informatikai Tanszék INFORMATIKA 2 AUTOMATÁK ÉS NYELVEK.

Budapesti M szaki és Gazdaságtudományi Egyetem Automatizálási és Alkalmazott Informatikai Tanszék INFORMATIKA 2 AUTOMATÁK ÉS NYELVEK. Budapesti M szaki és Gazdaságtudományi Egyetem Automatizálási és Alkalmazott Informatikai Tanszék INFORMATIKA 2 AUTOMATÁK ÉS NYELVEK Vajk István 2010. március Tartalomjegyzék 1. Fejezet Automaták és nyelvek

Részletesebben

Rekurzió. Dr. Iványi Péter

Rekurzió. Dr. Iványi Péter Rekurzió Dr. Iványi Péter 1 Függvényhívás void f3(int a3) { printf( %d,a3); } void f2(int a2) { f3(a2); a2 = (a2+1); } void f1() { int a1 = 1; int b1; b1 = f2(a1); } 2 Függvényhívás void f3(int a3) { printf(

Részletesebben

BOOLE ALGEBRA Logika: A konjunkció és diszjunkció tulajdonságai

BOOLE ALGEBRA Logika: A konjunkció és diszjunkció tulajdonságai BOOLE ALGEBRA Logika: A konjunkció és diszjunkció tulajdonságai 1.a. A B B A 2.a. (A B) C A (B C) 3.a. A (A B) A 4.a. I A I 5.a. A (B C) (A B) (A C) 6.a. A A I 1.b. A B B A 2.b. (A B) C A (B C) 3.b. A

Részletesebben

Programozási Módszertan definíciók, stb.

Programozási Módszertan definíciók, stb. Programozási Módszertan definíciók, stb. 1. Bevezetés Egy adat típusát az adat által felvehető lehetséges értékek halmaza (típusérték halmaz, TÉH), és az ezen értelmezett műveletek (típusműveletek) együttesen

Részletesebben

A matematikai feladatok és megoldások konvenciói

A matematikai feladatok és megoldások konvenciói A matematikai feladatok és megoldások konvenciói Kozárné Fazekas Anna Kántor Sándor Matematika és Informatika Didaktikai Konferencia - Szatmárnémeti 2011. január 28-30. Konvenciók Mindenki által elfogadott

Részletesebben

FEGYVERNEKI SÁNDOR, Valószínűség-sZÁMÍTÁs És MATEMATIKAI

FEGYVERNEKI SÁNDOR, Valószínűség-sZÁMÍTÁs És MATEMATIKAI FEGYVERNEKI SÁNDOR, Valószínűség-sZÁMÍTÁs És MATEMATIKAI statisztika 10 X. SZIMULÁCIÓ 1. VÉLETLEN számok A véletlen számok fontos szerepet játszanak a véletlen helyzetek generálásában (pénzérme, dobókocka,

Részletesebben

Általános algoritmustervezési módszerek

Általános algoritmustervezési módszerek Általános algoritmustervezési módszerek Ebben a részben arra mutatunk példát, hogy miként használhatóak olyan általános algoritmustervezési módszerek mint a dinamikus programozás és a korlátozás és szétválasztás

Részletesebben

Fák 2009.04.06. Témakörök. Fa definíciója. Rekurzív típusok, fa adatszerkezet Bináris keresőfa, bejárások Bináris keresőfa, módosítás B-fa

Fák 2009.04.06. Témakörök. Fa definíciója. Rekurzív típusok, fa adatszerkezet Bináris keresőfa, bejárások Bináris keresőfa, módosítás B-fa Fák szenasi.sandor@nik.bmf.hu PPT 2007/2008 tavasz http://nik.bmf.hu/ppt 1 Rekurzív típusok, fa adatszerkezet Bináris keresőfa, bejárások Bináris keresőfa, módosítás B-fa Témakörök 2 Fa (Tree): csomópontok

Részletesebben

Diszkrét matematika I.

Diszkrét matematika I. Diszkrét matematika I. középszint 2014. ősz 1. Diszkrét matematika I. középszint 8. előadás Mérai László diái alapján Komputeralgebra Tanszék 2014. ősz Elemi számelmélet Diszkrét matematika I. középszint

Részletesebben

Fordítóprogramok szerkesztése Flex és Bison segítségével

Fordítóprogramok szerkesztése Flex és Bison segítségével Fordítóprogramok szerkesztése Flex és Bison segítségével Bodó Zalán Fordítóprogramok szerkesztése Flex és Bison segítségével Kolozsvár, 2014 c Bodó Zalán c Erdélyi Múzeum-Egyesület, 2014 Felelős kiadó

Részletesebben

Algoritmusok helyességének bizonyítása. A Floyd-módszer

Algoritmusok helyességének bizonyítása. A Floyd-módszer Algoritmusok helyességének bizonyítása A Floyd-módszer Algoritmusok végrehajtása Egy A algoritmus esetében a változókat három változótípusról beszélhetünk, melyeket az X, Y és Z vektorokba csoportosítjuk

Részletesebben

Algoritmuselmélet. Legrövidebb utak, Bellmann-Ford, Dijkstra. Katona Gyula Y.

Algoritmuselmélet. Legrövidebb utak, Bellmann-Ford, Dijkstra. Katona Gyula Y. Algoritmuselmélet Legrövidebb utak, Bellmann-Ford, Dijkstra Katona Gyula Y. Számítástudományi és Információelméleti Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem 3. előadás Katona Gyula Y. (BME

Részletesebben

A lineáris algebrában központi szerepet betöltı vektortér fogalmát értelmezzük most, s megvizsgáljuk e struktúra legfontosabb egyszerő tulajdonságait.

A lineáris algebrában központi szerepet betöltı vektortér fogalmát értelmezzük most, s megvizsgáljuk e struktúra legfontosabb egyszerő tulajdonságait. 2. VEKTORTÉR A lineáris algebrában központi szerepet betöltı vektortér fogalmát értelmezzük most, s megvizsgáljuk e struktúra legfontosabb egyszerő tulajdonságait. Legyen K egy test és V egy nem üres halmaz,

Részletesebben

Algoritmusok bonyolultsága

Algoritmusok bonyolultsága Algoritmusok bonyolultsága 11. előadás http://www.ms.sapientia.ro/~kasa/komplex.htm () 1 / 1 NP-telesség Egy L nyelv NP-teles, ha L NP és minden L NP-re L L. Egy Π döntési feladat NP-teles, ha Π NP és

Részletesebben

Absztrakt adatstruktúrák A bináris fák

Absztrakt adatstruktúrák A bináris fák ciós lámpa a legnagyobb élettartamú és a legjobb hatásfokú fényforrásnak tekinthető, nyugodtan mondhatjuk, hogy a jövő fényforrása. Ezt bizonyítja az a tény, hogy ezen a területen a kutatások és a bejelentett

Részletesebben

Programkonstrukciók A programkonstrukciók programfüggvényei Levezetési szabályok. 6. előadás. Programozás-elmélet. Programozás-elmélet 6.

Programkonstrukciók A programkonstrukciók programfüggvényei Levezetési szabályok. 6. előadás. Programozás-elmélet. Programozás-elmélet 6. Programkonstrukciók Definíció Legyen π feltétel és S program A-n. A DO A A relációt az S-ből a π feltétellel képezett ciklusnak nevezzük, és (π, S)-sel jelöljük, ha 1. a / [π] : DO (a) = { a }, 2. a [π]

Részletesebben

akonyv 2006/12/18 11:53 page i #1 Formális nyelvek és fordítóprogramok

akonyv 2006/12/18 11:53 page i #1 Formális nyelvek és fordítóprogramok akonyv 2006/12/18 11:53 page i #1 Csörnyei Zoltán Kása Zoltán Formális nyelvek és fordítóprogramok akonyv 2006/12/18 11:53 page ii #2 akonyv 2006/12/18 11:53 page iii #3 Csörnyei Zoltán Kása Zoltán FORMÁLIS

Részletesebben

A valós számok halmaza 5. I. rész MATEMATIKAI ANALÍZIS

A valós számok halmaza 5. I. rész MATEMATIKAI ANALÍZIS A valós számok halmaza 5 I rész MATEMATIKAI ANALÍZIS 6 A valós számok halmaza A valós számok halmaza 7 I A valós számok halmaza A valós számokra vonatkozó axiómák A matematika lépten-nyomon felhasználja

Részletesebben

HALMAZELMÉLET feladatsor 1.

HALMAZELMÉLET feladatsor 1. HALMAZELMÉLET feladatsor 1. Egy (H,, ) algebrai struktúra háló, ha (H, ) és (H, ) kommutatív félcsoport, és teljesül az ún. elnyelési tulajdonság: A, B H: A (A B) = A, A (A B) = A. A (H,, ) háló korlátos,

Részletesebben

Melykeres(G) for(u in V) {szin(u):=feher Apa(u):=0} for(u in V) {if szin(u)=feher then MBejar(u)}

Melykeres(G) for(u in V) {szin(u):=feher Apa(u):=0} for(u in V) {if szin(u)=feher then MBejar(u)} Példa Adott egy n n-es sakktábla. Az (1,1) mezőn áll egy huszár. Határozzuk meg eljuthat -e az (u,v) mezőre, ha igen adjunk meg egy legkevesebb lépésből álló utat! Adjunk algoritmust, ami megoldja a feladatot.

Részletesebben

Fordítóprogramok felépítése, az egyes programok feladata. A következő jelölésmódot használjuk: program(bemenet)(kimenet)

Fordítóprogramok felépítése, az egyes programok feladata. A következő jelölésmódot használjuk: program(bemenet)(kimenet) Fordítóprogramok. (Fordítóprogramok felépítése, az egyes komponensek feladata. A lexikáliselemző működése, implementációja. Szintaktikus elemző algoritmusok csoportosítása, összehasonlítása; létrehozásuk

Részletesebben

5. A kiterjesztési elv, nyelvi változók

5. A kiterjesztési elv, nyelvi változók 5. A kiterjesztési elv, nyelvi változók Gépi intelligencia I. Fodor János BMF NIK IMRI NIMGI1MIEM Tartalomjegyzék I 1 A kiterjesztési elv 2 Nyelvi változók A kiterjesztési elv 237 A KITERJESZTÉSI ELV A

Részletesebben

Programozási módszertan

Programozási módszertan 1 Programozási módszertan 1. Alapfogalmak Feldhoffer Gergely 2012 Féléves tananyag terve 2 Program helyességének bizonyítása Reprezentáció Logikai-matematikai eszköztár Programozási tételek bizonyítása

Részletesebben

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2007/2008

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2007/2008 Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2007/2008 Az Előadások Témái Bevezető: mi a mesterséges intelligencia... Tudás reprezentáció Gráfkeresési stratégiák Szemantikus hálók

Részletesebben

Reguláris kifejezések 1.

Reguláris kifejezések 1. Reguláris kifejezések 1. A nyelvtechnológia eszközei és nyersanyagai 1. gyakorlat A beadandó feladatok be vannak keretezve! 1.1. Miért hívják reguláris kifejezésnek? (!) Az elméleti és a gyakorlati reguláris

Részletesebben

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

VEKTORTEREK I. VEKTORTÉR, ALTÉR, GENERÁTORRENDSZER október 15. Irodalom. További ajánlott feladatok VEKTORTEREK I. VEKTORTÉR, ALTÉR, GENERÁTORRENDSZER 2004. október 15. Irodalom A fogalmakat, definíciókat illetően két forrásra támaszkodhatnak: ezek egyrészt elhangzanak az előadáson, másrészt megtalálják

Részletesebben

Adatszerkezetek Tömb, sor, verem. Dr. Iványi Péter

Adatszerkezetek Tömb, sor, verem. Dr. Iványi Péter Adatszerkezetek Tömb, sor, verem Dr. Iványi Péter 1 Adat Adat minden, amit a számítógépünkben tárolunk és a külvilágból jön Az adatnak két fontos tulajdonsága van: Értéke Típusa 2 Adat típusa Az adatot

Részletesebben

Diszkrét matematika I.

Diszkrét matematika I. Diszkrét matematika I. középszint 2014. ősz 1. Diszkrét matematika I. középszint 10. előadás Mérai László diái alapján Komputeralgebra Tanszék 2014. ősz Felhívás Diszkrét matematika I. középszint 2014.

Részletesebben

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2007/2008

Mesterséges Intelligencia. Csató Lehel. Csató Lehel. Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 2007/2008 Matematika-Informatika Tanszék Babeş Bolyai Tudományegyetem, Kolozsvár 007/008 Az Előadások Témái Bevezető: mi a mesterséges intelligencia... Tudás reprezentáció i stratégiák Szemantikus hálók / Keretrendszerek

Részletesebben

Megoldás meghatározása Ez a szakasz kitölti a c és S táblázatokat, a kiíratás S alapján egy rekurzív algoritmussal megtehető.

Megoldás meghatározása Ez a szakasz kitölti a c és S táblázatokat, a kiíratás S alapján egy rekurzív algoritmussal megtehető. Leghosszabb közös részsorozat Egy sorozat, akkor részsorozata egy másiknak, ha abból elemeinek elhagyásával megkapható. A feladat két sorozat X = (x 1,...,x m ) és Y = (y 1,...,y n ) leghosszabb közös

Részletesebben

Temporális logikák és modell ellenırzés

Temporális logikák és modell ellenırzés Temporális logikák és modell ellenırzés Temporális logikák Modális logika: kijelentések különböző módjainak tanulmányozására vezették be (eredetileg filozófusok). Ilyen módok: esetleg, mindig, szükségszerűen,

Részletesebben