Alap fatranszformátorok II

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

Formális nyelvek - 9.

Diszkrét matematika 2.C szakirány

Diszkrét matematika 2.

Kiterjesztések sek szemantikája

Formális nyelvek - 5.

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

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

30. ERŐSEN ÜSSZEFÜGGŐ KOMPONENSEK

KOVÁCS BÉLA, MATEMATIKA I.

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.

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

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

ZH feladatok megoldásai

KOVÁCS BÉLA, MATEMATIKA I.

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.

Diszkrét matematika 2.

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

Számelmélet (2017. február 8.) Bogya Norbert, Kátai-Urbán Kamilla

Logika és informatikai alkalmazásai kiskérdések február Mikor mondjuk, hogy az F formula a G-nek részformulája?

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

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

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

Csima Judit november 15.

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

Mérhetőség, σ-algebrák, Lebesgue Stieltjes-integrál, véletlen változók és eloszlásfüggvényeik

Adatbázisok elmélete 12. előadás

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

MM CSOPORTELMÉLET GYAKORLAT ( )

Markov-láncok stacionárius eloszlása

Gráfelmélet. I. Előadás jegyzet (2010.szeptember 9.) 1.A gráf fogalma

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

1. tétel - Gráfok alapfogalmai

Alapfogalmak a Diszkrét matematika II. tárgyból

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

Diszkrét matematika 2.C szakirány

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 digitális számítás elmélete

Véges automaták, reguláris nyelvek

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!

Iván Szabolcs október 6.

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

Diszkrét matematika 2.

Diszkrét matematika 2.

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:

ú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.

Diszkrét matematika 2.C szakirány

HAMILTON ÚT: minden csúcson PONTOSAN egyszer áthaladó út

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

Algoritmuselmélet 1. előadás

HAMILTON KÖR: minden csúcson PONTOSAN egyszer áthaladó kör. Forrás: (

Csima Judit BME, VIK, november 9. és 16.

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

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!

10. előadás. Konvex halmazok

Automaták és formális nyelvek

SzA II. gyakorlat, szeptember 18.

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

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

Alapfogalmak II. Def.: Egy gráf összefüggő, ha bármely pontjából bármely pontjába eljuthatunk egy úton.

Diszkrét matematika I.

Algoritmuselmélet. Gráfok megadása, szélességi bejárás, összefüggőség, párosítás. Katona Gyula Y.

... 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.

SZÁMÍTÁSTUDOMÁNY ALAPJAI

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

minden x D esetén, akkor x 0 -at a függvény maximumhelyének mondjuk, f(x 0 )-at pedig az (abszolút) maximumértékének.

Kongruenciák. Waldhauser Tamás

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

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

Analízis I. Vizsgatételsor

Formális nyelvek I/2.

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.

RSA algoritmus. P(M) = M e mod n. S(C) = C d mod n. A helyesség igazoláshoz szükséges számelméleti háttér. a φ(n) = 1 mod n, a (a 1,a 2,...

Logika és informatikai alkalmazásai

Csima Judit október 24.

1. Legyen egy háromszög három oldalának a hossza a, b, c. Bizonyítsuk be, hogy Mikor állhat fenn egyenlőség? Kántor Sándorné, Debrecen

0-49 pont: elégtelen, pont: elégséges, pont: közepes, pont: jó, pont: jeles

Diszkrét matematika 2.C szakirány

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

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

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

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

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

illetve a n 3 illetve a 2n 5

Diszkrét matematika 2.C szakirány

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!

Algoritmuselmélet 1. előadás

1 2. gyakorlat Matematikai és nyelvi alapfogalmak. dr. Kallós Gábor

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

Matematikai logika és halmazelmélet

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

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

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

Chomsky-féle hierarchia

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

Legyen adott egy S diszkrét halmaz. Leggyakrabban S az egész számoknak egy halmaza, például S = {0, 1, 2,..., N}, {0, 1, 2,... }.

Általános algoritmustervezési módszerek

Diszkrét Matematika MSc hallgatók számára. 4. Előadás

Logika es sz am ıt aselm elet I. r esz Logika Harmadik el oad as 1/33

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

Átírás:

Alap fatranszformátorok II Vágvölgyi Sándor Fülöp Zoltán és Vágvölgyi Sándor [2, 3] közös eredményeit ismertetjük. Fogalmak, jelölések A Σ feletti alaptermek TA = (T Σ, Σ) Σ algebráját tekintjük. Minden f Σ m, m 0 és t 1,..., t m T Σ esetén, f TA (t 1,..., t m ) = f(t 1,..., t m ). Alap termátíró rendszer. Legyen Σ egy rangolt ábécé. Egy R T Σ T Σ véges halmazt Σ feletti alap termátíró rendszernek nevezünk. R elemeit szabályoknak nevezzük és u v alakban írjuk. A R T Σ T Σ átírási reláció definíciója: tetszőleges s, t T Σ esetén, s R t akkor és csak akkor ha létezik egy u v szabály R-ben és c T Σ,1 környezet úgy hogy s = c[u] and t = c[v]. R kongruencia reláció a TA alapterm algebrán. Azt mondjuk hogy R az R által generált kongruencia a TA alapterm algebrán. Az R alap termátíró rendszer redukált ha minden u v szabályára, u irreducibilis R { u v }-re 1

nézve és v irreducibilis R-re nézve. Állítás 1 [4] Ha az R alap termátíró rendszer redukált, akkor R konvergens. Fél faautomata és faautomata. Legyen Σ egy rangolt ábécé. A Σ feletti fél faautomata egy A alap termátíró rendszer a Σ AH rangolt ábécé felett. Itt AH - az A állapothalmaza - nulla rangú szimbólumokból áll és AH Σ =. A szabályai az alábbi két típusúak: f(a 1,..., a n ) a ahol f Σ n, n 0, a, a 1,..., a n AH és a 1 a 2, ahol a 1, a 2 AH. A második típusú szabályokat λ szabályoknak nevezzük. A λ szabályokat ki tudjuk küszöbölni. Az a AH állapot elérhető, ha létezik olyan t T Σ alapfa amelyre t A a. A fél faautomata összefüggő, ha minden a AH állapot elérhető. A fél faautomata determinisztikus, ha minden f Σ m, m 0, a 1,..., a m AH esetén, legfeljebb egy f(a 1,..., a m ) bal oldalú szabály van A-ban, és nincsen λ-szabály A-ban. 2

A fél faautomata teljes, ha minden f Σ m, m 0, a 1,..., a m AH esetén, legalább egy f(a 1,..., a m ) bal oldalú szabály van A-ban. Lemma 2 Legyen A egy fél faautomata Σ felett. A determinisztikus fél faautomata akkor és csak akkor ha A egy redukált alap termátíró rendszer Σ AH felett. Alap fatranszformátor. A Σ feletti A, B fél faautomatákból álló (A, B) párt alap fatranszformátornak nevezzük (AFT, röviden). Az (A, B) által indukált τ(a, B) T Σ T Σ fatranszformáció definíciója: Minden p, q T Σ esetén, (p, q) τ(a, B) akkor és csak akkor ha létezik u T Σ,n, n 0, környezet és z 1,..., z n, z 1,..., z n T Σ fák és a 1,..., a n közös állapotai A-nak és B-nek úgy hogy p = u[z 1,..., z n ] A u[a 1,..., a n ] és q = u[z 1,..., z n] B u[a 1,..., a n ], ahol z i A a i és z i B a i, 1 i n. Példa. Σ = Σ 0 Σ 2, Σ 0 = { $ }, Σ 2 = { f }. Páros fa: páros sokszor fordul elő benne a $ szimbólum. Páratlan fa: páratlan sokszor fordul elő benne a $ szimbólum. Az A fél faautomata állapotai: AH = { 0, 1 }, A szabályai: 3

$ 1, f(0, 0) 0, f(0, 1) 1, f(1, 0) 1, f(1, 1) 0. A (Σ, AH, A, { 0 }) faautomata a páros fák halmazát ismeri fel. A (Σ, AH, A, { 1 }) faautomata a páratlan fák halmazát ismeri fel. A B fél faautomata állapotai: AH B = { 0, 1 }, B szabályai: $ 1, f(0, 0 ) 0, f(0, 1) 1, f(1, 0 ) 1, f(1, 1) 0. A (Σ, AH B, B, { 0 }) faautomata a páros fák halmazát ismeri fel. A (Σ, AH B, B, { 1 }) faautomata a páratlan fák halmazát ismeri fel. (f($, f($, f($, $))), f($, $)) τ(a, B), mert f($, f($, f($, $))) A f($f($, f(1, $))) A f($, f($, f(1, 1))) A f($, f($, 0)) A f($, f(1, 0)) A f($, 1) és f($, $) B f($, 1). Ugyanakkor (f($, $), f(f($, $), f($, $)) τ(a, B), mert f($, $) A f(1, $) A f(1, 1) A 0 f(f($, $), f($, $)) B f(0, 0 ) A 0, és a fenti két átírási sorozatban nem fordul elő ugyanaz a fa. τ(a, B) azokból a (p, q) párokból áll amelyekre létezik 4

u T Σ,n, n 0, környezet és z 1,..., z n, z 1,..., z n T Σ páratlan fák úgy hogy p = u[z 1,..., z n ] és q = u[z 1,..., z n]. Dauchet és munkatársai és Engelfriet megmutatták hogy Tétel 3 Tetszőleges R alap termátíró rendszer esetén, meg tudunk konstruálni egy (A, B) Σ feletti alap fatranszformátort úgy hogy R = τ(a, B). Az alábbi megszorításokat vezetjük be az alap fatranszformátorokra. Azt mondjuk hogy az (A, B) alap fatranszformátor (i) determinisztikus, ha A és B determinisztikusak, (ii) teljes, ha A és B teljesek, és (ii) szimmetrikus, ha A = B. A fenti megszorítások tetszőleges kombinációját képezhetjük. Például, az AFT szimmetrikus, determinisztikus ha mind szimmetrikus mind determinisztikus. Így összesen nyolc transzformáció osztályunk van. AF T jelöli az alapfatranszformátorok által indukált transzformációk osztályát. Az AF T jelölés D-, S- és T - prefixei jelölik a determinisztikus, a szimmetrikus 5

és a teljes alapfatranszformátorok által indukált transzformációk osztályát. Ezen prefixek tetszőleges kombinációját képezhetjük. Például, SD-AF T jelöli a szimmetrikus, deterministikus alapfatranszformátorok által indukált transzformációk osztályát. A fenti nyolc transzformáció osztály tartalmazási ábráját mutatjuk be. A tartalmazási ábrán bemutatott tartalmazások igazolásához tekintsük a következő táblázatot. A táblázat megmutatja hogy az egyes transzformáció osztályokra a reflexív, szimmetrikus és tranzitív tulajdonságok közül melyek teljesülnek. Ha az Y -AF T, Y {, T, D, T D, S, T S, SD, T SD} osztály minden eleme rendelkezik a P {reflexív, szimmetrikus, tranzitív} tulajdonsággal, akkor a Y -AF T and P által meghatározott bejegyzés a + jel, különben a jel. reflexív szimmet. tranzitív AF T, T -AF T + D-AF T, T D-AF T + S-AF T, T S-AF T + + SD-AF T, T SD-AF T + + + 6

Tétel 4 Az 1. ábrán láthatjuk az AF T, T -AF T, D-AF T, T D-AF T, S-AF T, T S-AF T, SD-AF T and T SD-AF T fatranszformátor osztályok tartalmazási diagramját. Bizonyítás. Az AF T = T -AF T és D-AF T = T D-AF T egyenlőségeket az alábbi standard konstrukcióval igazoljuk. Legyen (A, B) egy tetszőleges AFT. Megkonstruáljuk az (A, B ) teljes AFT-t. Az a új állapotot adjuk hozzá az AH állapothalmazhoz. A b új állapotot adjuk hozzá a AH B állapothalmazhoz, itt a b. Új szabályokat adunk A-hoz: minden új szabály jobb oldalán a áll. Az összes lehetséges bal oldalt tekintjük amire nincsen szabály A-ban. B-t hasonlóan tesszük teljessé. A konstrukció megőrzi A és B determinisztikus tulajdonságát. Az ábrán látható valódi tartalmazásokat igazoljuk. Tetszőleges X, Y osztályok esetén, ha az X osztály az Y osztály felett van és él köti őket össze, akkor az X Y tartalmazás definíció szerint fennáll. Most belátjuk az X Y tartalmazást. Továbbá belátjuk hogy az éllel nem összekötött osztályok nem tartalmazzák egymást. Ehhez elegendő igazolni hogy (a) SD-AF T és T S-AF T nem tartalmazzák egymást, és 7

D-AF T = T D-AF T AF T = T -AF T SD-AF T T SD-AF T S-AF T T S-AF T 1. ábra Az AF T, D-AF T, S-AF T, SD-AF T és T SD-AF T osztályok tartalmazási diagramja 8

(b) D-AF T and S-AF T nem tartalmazzák egymást. Először igazoljuk (a)-t, azaz hogy T S-AF T SD- AF T és SD-AF T T S-AF T. Az első egyenlőtlenség azért teljesül mert az SD-AF T minden eleme tranzitív és T S-AF T nem minden eleme tranzitív, lásd a táblázat. A második egyenlőtlenség igazolásához megkonstruálunk egy A determinisztikus faautomatát úgy hogy a τ(a, A) szimmetrikus, determinisztikus transzformáció nincs benne T S-AF T -ben. Legyen A =, azaz A-nak nincsenek szabályai, és így τ(a, A) = {( t, t) t T Σ }. Indirekt bizonyítás végett feltesszük hogy τ(a, A) T S-AF T, azaz hogy létezik egy teljes B faautomata úgy hogy τ(a, A) = τ(b, B). Léteznek p, q T Σ egymástól különböző alapfák és b AH úgy hogy p B b és q B b. Ezért (p, q) τ(b, B). Mivel p q, kapjuk hogy (p, q) τ(a, A). Ellentmondás. Most igazoljuk (b)-t. Evégett igazoljuk hogy D- AF T S-AF T és S-AF T D-AF T. Az első egyenlőtlenség nyilván fennáll. Most belátjuk a második egyenlőtlenséget. Megadunk egy (A, A) szimmetrikus AFT-t úgy hogy τ(a, A) D-AF T. Legyen Σ = Σ 0 Σ 1, Σ 0 = {#, $} és 9

Σ 1 = {f}, és legyen AH = {a, b}. Az A fél faautomata szabályai: # a, f(a) b, and $ a b. Megjegyezzük hogy A nemdeterminisztikus. Most (#, $), (f(#), $) τ(a, A). Indirekt bizonyítás végett tegyük fel hogy τ(a, A) D-AF T, azaz τ(a, A) = τ(b, C) valamely B és C determinisztikus faautomatákra. Mivel (#, $) τ(b, C), létezik B és C közös c állapota amelyre # c B és $ c C. Mivel (f(#), $) τ(b, C) az f(c) c szabály is B-ben van. Minden n 1 esetén, (f n (#), $) τ(b, C), ami ellentmondás, hiszen (f 2 (#), $) τ(a, A). Tétel 5 Tetszőleges τ T Σ T Σ bináris relációra ekvivalens az alábbi négy állítás. (a) τ SD-AF T. (b) τ megegyezik egy redukált alap termátíró rendszer által a TA alapterm algebra felett generált kongruenciával. (c) τ megegyezik egy konvergens alap termátíró rendszer által a TA alapterm algebra felett generált kongruenciával. (d) τ egy végesen generált kongruencia a TA alapterm algebra felett. 10

Bizonyítás. Első lépés: (a)-ból következik (b). Legyen A egy determinisztikus fél faautomata. Megkonstruálunk egy redukált alap termátíró rendszert amelyre τ(a, A) = R. Feltesszük hogy A összefüggő. Az alábbi algoritmus minden a AH állapotra megkonstruál egy tree(a) T Σ alapfát úgy hogy tree(a) A a. Algoritmus 6 Input: A összefüggő determinisztikus fél faautomata Σ felett. Output: Minden a AH állapotra, egy tree(a) T Σ alapfa úgy hogy tree(a) A a. Segéd változók: Minden a AH állapotra, egy flag(a) zászló, ami igaz és hamis értéket vesz fel, és azt jelzi hogy tree(a)-t defináltuk-e már. minden a AH állapotra, legyen flag(a) = hamis; while létezik a AH állapot úgy hogy flag(a) = hamis do minden f(a 1,..., a m ) a A-beli szabályra do if flag(a 1 ) =... = flag(a m ) = igaz and flag(a) = hamis, 11

then begin tree(a) := f(tree(a 1 ),..., tree(a m )); flag(a) := igaz end Mivel A összefüggő, a fenti algoritmus sikeresen véget ér úgy hogy minden a AH állapotra, flag(a) = igaz. Példa. Legyen Σ = Σ 0 Σ 1 Σ 2, Σ 0 = { $, # }, Σ 1 = { g }, Σ 2 = { f }. A összefüggő determinisztikus fél faautomata szabályai: $ 1, # 1, f(1, 1) 1, f(1, 2) 1, f(2, 1) 1, f(2, 2) 1, g(1) 2, g(2) 1, A fenti eljárás a tree(1) = $ és tree(2) = g($) alapfákat adja vissza. Most megadjuk az R alap termátíró rendszert. Legyen R = {f(tree(a 1 ),..., tree(a m )) tree(a) f(a 1,..., a m ) a A és f(tree(a 1 ),..., tree(a m )) tree(a)}. 12

Példa R alap termátíró rendszer szabályai: # $, f($, $) $, f($, g($)) $, f(g($), $) $, f(g($), g($)) $, g(g($)) $. Az alábbi P1 P7 állítások teljesülnek a tree(a) fákra és az R alap termátíró rendszerre. P1: Minden a AH esetén, tree(a) A a. Ezt a fenti algoritmus közvetlen vizsgálatával igazolhatjuk. P2: Minden u v R átírási szabályra, u A v. Ez a P1 állításból következik és abból hogy R minden szabálya f(tree(a 1 ),..., tree(a m )) tree(a), alakú ahol f(a 1,..., a m ) a A. P3: Minden a, b AH állapotra, a = b akkor és csak akkor ha tree(a) = tree(b). Ha a = b akkor tree(a) = tree(b) mert minden a állapothoz az algoritmus egyetlen tree(a) fát konstruál meg. Fordított irányban, tegyük fel hogy a b és tree(a) = tree(b). Láttuk hogy tree(a) A a és tree(b) A b. Ugyanabból a fából két különböző állapotot deriválunk. Ez ellentmond annak hogy A determinisztikus. P4: Minden a AH állapotra, a tree(a) alapfa irreducibilis R-re nézve. Bizonyítás tree(a) felépítése 13

(struktúrája) szerint. P5: R redukált. P6: Minden p T Σ alapterm és a AH állapot esetén, p A a akkor és csak akkor ha p R tree(a). P7: τ(a, A) = R. Második lépés: 1. állítás szerint (b)-ből következik (c). Harmadik lépés: Definíció szerint (c)-ből következik (d). Negyedik lépés: (d)-ből következik (a). Legyen E T Σ T Σ egy Σ feletti alap termátíró rendszer. Most megadunk Σ felett egy összefüggő determinisztikus R fél faautomatát AH állapothalmazzal úgy hogy E = R T Σ T Σ. Evégett legyen T = { t T Σ t részfája u nak vagy v nek ahol u v in E } az E-ben előforduló termek résztermeinek a halmaza és legyen Θ = E T T. Θ ekvivalencia reláció T felett. Minden t T esetén, [t] Θ = [t] E T. Példa. Legyen Σ = Σ 0 Σ 1 Σ 2, Σ 0 = { $, # }, Σ 1 = { g }, Σ 2 = { f }. E az alábbi szabályokból áll: $ #, g($) g(#), f($, $) #, f(g($), #) #, f(#, g($)) #, f(g($), g($)) #. 14

T = { $, #, g($), g(#), f($, $), f(g($), #), f(#, g($)), f(g($), g($)) }. Θ-nak két osztálya van: { $, #, f($, $), f(g($), #), f(#, g($)), f(g($), g($)) } és { g($), g(#) }. Legyen AH = {[t] Θ t T }. Tekintsük a Σ AH rangolt ábécét, ahol AH elemei 0 rangú szimbólumok. Definiáljuk az R alap termátíró rendszert Σ AH felett. R az alábbi szabályokból áll: f([t 1 ] Θ,..., [t m ] Θ ) [f(t 1,..., t m )] Θ, ahol f(t 1,..., t m ) T. Példa. AH = { [$] Θ, [g($)] Θ }. R elemei: $ [$] Θ, # [$] Θ, g([$] Θ ) [g($)] Θ, f([$] Θ, [$] Θ ) [$] Θ, f([g($)] Θ, [$] Θ ) [$] Θ, f([$] Θ, [g($)] Θ ) [$] Θ, f([g($)] Θ, [g($)] Θ ) [$] Θ. Tétel 7 Van olyan algoritmusunk amely R-et számolja ki O(n log n) időben. Bizonyítás. T elemeit egy irányított gráf csúcsaival adjuk meg. Az f(t 1,..., t m )-hez tartozó csúcsból 15

irányított élek vezetnek a t 1,..., t m -hez tartozó csúcsokba. Ezt a gráfot E részterm gráfjának nevezzük. E részterm gráfját megtudjuk konstruálni O(n) idő alatt. Θ-t E részterm gráfján számoljuk ki. Állítás 8 Downey és társai [1] Van egy olyan algoritmusunk amely az E részterm gráfján fut O(n log n) időben és Θ-t számolja ki. Itt n az E mérete, azaz az E-ben előforduló szimbólumok száma. Bizonyítás. Legyen η az E reflexív lezártja. 1. Ha f(p 1,..., p m ) T és f(s 1,..., s m ) T és (p 1, s 1 ) η,..., (p m, s m ) η, akkor tegyük bele az (f(p 1,..., p m ), f(s 1,..., s m )) párt η-ba. 2. Legyen ρ az η reflexív, tranzitív, szimmetrikus lezártja. Ha ρ = η akkor visszaadjuk a θ = η relációt. Különben η := ρ és menjünk az 1. pontra. Bejárjuk E részterm gráfját és minden f(t 1,..., t m ) termhez tartozó csúcsra az f([t 1 ] Θ,..., [t m ] Θ ) [f(t 1,..., t m )] Θ, szabályt beletesszük R-be. Lemma 9 R redukált alap termátíró rendszer Σ AH felett. 16

Lemma 10 Minden t T termre, t R[t] θ. Lemma 11 Minden s T Σ és t T termekre ha s R[t] Θ, akkor s E t. Lemma 12 E = R T Σ T Σ. R fél faautomata Σ felett az AH állapot halmazzal. 2. és 9. lemmák szerint R fél faautomata determinisztikus. 10. lemma szerint R fél faautomata összefüggő. 1. és 9. lemmák szerint R alap termátíró rendszer konvergens. Ezért minden s T Σ alaptermnek létezik egy egyértelműen meghatározott R-normáformája amit s jelöl. Nyilvánvalóan s tartalmazhatja Σ szimbólumait és AH állapotait is. Lemma 13 Tetszőleges s, t T Σ esetén, s E t akkor és csak akkor ha s = t. Példa. AH = { [$] Θ, [g($)] Θ }. Igaz-e hogy g(g(f(g($), g($)))) E g(g($))? g(g(f(g($), g($)))) A g(g(f(g([$] Θ ), g([$] Θ )))) A g(g(f([g($)] Θ, [g($)] Θ ))) A g(g([$] Θ )) A g([g($)] Θ ), és g(g($)) A g(g([$] Θ )) A g([g($)] Θ ). A 12. lemma szerint g(g(f(g($), g($)))) E g(g($)). A 13. lemmából kapjuk az alábbi eredményt. Lemma 14 E = τ(r, R). 17

Tehát (d)-ből következik (a). References [1] P. J. Downey, R. Sethi, and R. E. Tarjan: Variations on the Common Subexpression Problem. Journal of the ACM, 27 (1980) 758-771. [2] Z. Fülöp and S. Vágvölgyi, Ground term rewriting rules for the word problem of ground term equations, Bulletin of the EATCS, 45 (1991) 186-201. [3] Z. Fülöp, and S. Vágvölgyi, Restricted ground tree transducers. Theoretical Computer Science, 250 (2001) 219-233. [4] W. Snyder, A Fast Algorithm for Generating Reduced Ground Rewriting Systems from a set of Ground Equations, Journal of Symbolic Computation, 15 (1993) 415-450. 18