J ezyki Automty i Oliczeni (nieformlne nottki) W. Rytter J ezyki formlne - ziory s lów nd lfetem skończonym.podsttwowe opercje to, orz konktencj. Wyrżeni regulrne stndrdowe - tylko te opercje, st le to s low (w l cznie z pustym), wyrżeni i rozeszerzone (z opercjmi dope lnieni i przecieci). Npisć stndrdowe wyrżeni regulrne dl zioru tekstów inrnych nie zwierjcych 111, nie zwierjcych 1111, nie zwierjcych 010. Grmtyk G = (N, T, P, S). Hierrchi Chomsky ego grmtyk (jedno z njcz estszych pytń n egzminch mgr): (0) komintoryczne (ez ogrniczeń) (1) kontekstowe (2) ezkontekstowe (3) jednostronnie liniowe. Npisć przyk ldy grmtyk dl: { n2 : n 1}, {x#x : x ( ) }, { n n c n : n 1}, {x ( c) : # (x) = # (x) = # c (x)}, { 2n : n 1}. Hierrchi utomtów (utomty z pmieci typu T ): (0) mszyny Turing (T = tśm) (1) liniowo ogrniczone (T = tśm o d lugości liniowej) (2) stosowe (T = stos ) (3) skończone (T = ). Może też yć T = kolejk (kolejki), licznik (liczniki). 1
Twierdzenie: (dowód w cz eścich n wielu wykldch) Grmtyki typu i odpowidj utomtom typu i, i = 0... 3. Automty skończone Deterministyczne utomty skończone: A = (Σ, Q, δ, q 0, F ). Przyk ldy. Dowody n to że j ezyk nie jest kceptowny przez utomt skończony, lemt o pompowniu, lemt o skończoej liczie ilorzów, metod ezpośredni korzystjc z tego, że jest z m lo pmieci. Przećwiczyć n j ezykch: { n n : n 1}, { n : n jest licz pierwsz }, L = {ziór inrnych zpisów licz pierwszych}. Konstrukcj lgericzn utomtu knonicznego (ilorzowego), jest to utomt minimlny. Stny s ilorzmi jezyk przez wszystkie możliwe s low. Przeroić podon konstrukcje np. dl L = Σ Σ, gdzie Σ = {, }. Wzory n ilorzy wyrżeń regulrnych. Udowodnić, że L 1 implikuje L regulrny. Udowodnić, że L = {x (0 1) + : [0.x] 2 > r } regulrny wt. i tylko wtedy gdy r wymierne (dl 0 < r < 1). Automty skończone niedeteterministyczne. Determinizcj. L regulrny to L R też. Przyk ldy n to że determinizcj puchnie wyk ldniczo. Jezyki {xcy : i-t liter w x różn od i-tej w y dl i n, x, y ( ) } {x : n-t liter od końc x jest równ 1, x (0 1) }. Zroić dok ldn konstrukcj minimlnych utomtów deterministycznych i niedeterministycznych dl powyższych j ezyków dl n = 3. Udowodnić, że jeśli L regulrny to j ezyk (L) = {x : x 2 L } też regulrny, podonie dl j ezyk {x : x k Ldl pewnego k } 2
Lemt Higmn Oznczmy: x y jeśli s lowo x jest podcigiem y, np.. Jest to cześciowy porzdek. Lemm 0.1 [Lemt Higmn] Jeśli Σ < to dl kżdego X Σ ziór jego s lów minimlnych w sensie jest skończny. Dowód. Przypuśćmy, że tez jest f lszyw. Rozwżmy nieskończone cigi s lów x 1, x 2,.. nd lfetem Σ (niektóre s low mog yć spoz L) tkie że i < j not (x i x j ) (le może yć x j x i ). Istnieje co njmniej jeden tki cig, gdyż zk ldmy (przez zprzeczenie), że ziór s lów minimlnych zioru X jest nieskończony. Wyierzmy spośród tych cigów minimlny cig w sensie d lugości, tzn. x 1 minimlne, jeśli x 1 ustlone to x 2 minimlne, jeśli x 1, x 2 ustlone to x 3 minimlne, itd. Wyierzmy podcig nieskończony x i1, x i2.. wszystkich s lów z tego cigu zczynjcych sie n pewn tk sm litere. Usuńmy te litere z pocztku kżdego z tych s lów otrzymujc cig x i 1, x i 2... Wtedy cig x 1, x 2,..., x i1 1, x i 1, x i 2, x i 3... spe lni te sme wrunki co pocztkowy cig i jest mniejszy, sprzeczność. Niech sus(l), sup(l) ozncz odowiednio ziór podcigów i ndcigów s lów z jezyk L. Udowodnić, że dl dowolnego L nd skończonym lfetem sus(l), sup(l) s regulrne. Automty dl prolemu string-mtching u (dopsowni wzorc) Akceptcj j ezyk Σ Y, gdzie Y jest ziorem wzorców. wzorzec. Dwie metody konstrukcji. N pocztku Y = {y}, jeden Metod 1: poprzez tlic e F. F [i] = mx d lugość w lściwego sufiksu s low y[1..i] ed cego prefiksem wzorc. Tlice F liczymy w czsie liniowym. Nstepnie tworzymy szkielet utomtu, stny to {0..n}, δ(i 1, y[i]) = i dl 1 i n. Dl pozost lych przejść δ(i, ) = δ(f [i], ). Udowodnić, że determinizcj niwnego utomtu niedeterministycznego dl string-mtchingu dl jednego lu wielu wzorców nie zwieksz liczy stnów (rozptrujemy je- 3
dynie stny osiglne ze stnu pocztkowego). Udowodnić: w utomcie dl jednego wzorc jeśli usuniemy trnzycje prowdzce do stnu 0 to mmy co njwyżej 2n-1 trnzycji. Czyli rozmir opisu utomtu niezleżny od wielkości lfetu. Z lóżmy, że dl kżdego stnu utomtu trzymmy trnzycje w liście posortownej wzgledem d lugości stnu do którego trnzycj prowdzi. Mjc tki utomt możemy wykonywć string-mtching rutlnie, w dnym momencie szukmy trnzycji dl dnej litery przeszukujc liste liniow. Udowodnić że w sumie dje to liniowy, niezleżny od lfetu, lgorytm dl string-mtchingu. Dl utomtu dl wielu wzorców podć przyk ld gdy ziór trnzycji prowdzcych do stnów istotnych (różnych od zer lu korzeni drzew wzorców) istotnie zleży od rozmiru lfetu (np. ziór wzorców: {,, c,..., z m } Automt dl wielu wzorców możemy konstruowć podonie jk dl jednego uogólnijc tlice F. W tym wypdku stny odpowidj prefiksom wzorców, szkielet utomtu jest drzewem. Przejście jest w szkielecie do przodu jeśli z prefiksu u prowdzi do pewnego prefiksu u. Pozost le przejści s w ty l. Udowodnić że ezpośrednie rozszerzenie lgorytmu oliczni F n drzewo dje czs O( x 1 + x 2 +... x k ) gdzie x 1, x 2,... x k s wzorcmi. Metod 2: (ezpośrednio). Dl wielu wzorców ezpośredni metod poleg n przechodzeni drzew T prefiksów wzorców metod BFS. N pocztku tworzymy utomt poziomu zerowego, jest to zpetlony (dl kżdego symolu) korzeń drzew T. W kolejnym kroku k = 1, 2,... tworzymy utomt dl zioru Σ {u 1, u 2,... u k } gdzie {u 1, u 2,... u k } s wszystkimi prefiksmi z T d lugości co njwyżej k. Nst epnie tworzymy utomt dl nst epnego poziomu. Dl kżdego Σ, u i = k orz u i ed cego prefiksem pewnego wzorc wykonujemy: γ:=δ(u i, ); δ(u i, ) := u i ; δ(u i, ) := γ gdy γ jest prefiksem pewnego wzorc else δ(u i, ) := δ(γ, ). 4
N przyk ld jeśli ziór wzorców jest {,, } i mmy utomt dl zioru z poziomu 2ego {,, } to utomt dl nstepnego poziomu możemy zczć od liczeni trnzycji dl stnu odpowidjcego prefiksowi, tworzc nowy stn odpowidjcy prefiksowi, orz kopiujc przejści dl nowego stnu ze stnu γ =, do którego prowdzi przejście etykietowne ze stnu u i =, poz przejściem δ(, = γ ) gdyż γ jest prefiksem pewnego wzorc. 1 5 Rysunek 1: Niech ziorem wzorców edzie X = {,, }. Konstrukcj przejść dl stnu n 3cim poziomie mjc utomt dl prefiksów 2ego poziomu, mmy tutj γ =. Ze stnu prowdzimy przejści do stnów δ(γ, ) orz γ gdyż γ T. Automt dl 3ego poziomu edziemy mieć dopiero po przetworzeniu wszsytkich elementów drzew prefiksów T z 3ego poziomu (,, ). Automty dl wszystkich sufksów i wszystkich pods lów Automt sufiksowy (pods lów): kceptujcy wszystkie sufiksy (pods low) zdnego s low x d lugości n. Minimlny utomt m O(n) stnów i O(n) istotnych trnzycji (nie prowdzcych do stnu-pu lpki reject ). Pry okzji ekspozycj podejści lgericznego: Twierdzenie Mychill-Nerod. L jest regulrny < > L jest sum pewnej liczy kls równowżości relcji prwostronnie zmknietej ze wzgledu n konktencje, tzn. x y x y dl kżdego symolu. Zstosownie: niech x y P os(x) = P os(y). L1 = ziór sufiksów dnego tekstu, L2 = ziór pods lów. L1 i L2 s sum pewnej liczy kls strkcji, orz jest prwostronnie zmkniet. 5
Konstrukcj utomtu sufiksowego: kceptujcy wszystkie sufiksy dl dnego tekstu d lugości n. Konstrukcj minimln. Stnmi s ziory P os(w), dl wszystkich pods lów, P os(w) = ziór pozycji w dnym tekscie kończcych wystpieni w} δ(p os(w), ) = P os(w). Zk ldmy, że P os(ϵ) = {1..n}. Stny kceptujce postci P os(w), gdzie w jest sufiksem tekstu. {1,2,3,4,5} {1,3,4} {4} {2,5} (3} {5} Rysunek 2: Automt sufiksowy dl s low, stnmi s ziory pozycji kończcych wystpienie pods low, kceptujcymi s ziory zwierjce 5, stn jest pominiety, prowdz do niego rkijce strz lki. Automt sufiksowy m co njwyżej 2n stnów. Policzyć dok ldnie licz e stnów i trnzycji dl s low postci n 2 c. Udowodnić, że icz trnzycji w utomcie sufiksowym, które nie prowdz do stnu nie przekrcz 3n. Udowodnić, że determinizcj nturlnego niedeterministycznego utomtu dl sufiksow dje minimlny utomt deterministyczny. Niedeterministyczny utomt nturlny definiujemy nstepuj co: jeśli s lowo jest równe 1 2.. n to ziór stnów [0..n], δ(i, i+1 ) = i + 1 dl i > 0. δ(0, ) = {i : i = }. Zk ldmy, że tekst kończy sie wyróżnionym symolem. Przekszt lcenie drzew sufiksowego n utomt sufiksowy: utożsmimy korzenie izomorficznych poddrzew, otrzymujemy 6
prwie dory szkielet tomtu sufiksowego. Stnmi s posklejne wez ly drzew sufiksowego. Do dnego wez l v wyiermy trnzycje o njd luższej etykiecie (s lowie) c 1 c 2... c k. tworzymy k 1 dodtkowych stnów pośrednich odpowidjcych s lowom c j c j+1... c k dl 1 j < k. Jeśli mmy trnzycje do v o etykiecie c i c i+1... c k to zmienimy to n trnzycjetykietown c i do stnu odpowidjćego c i+1... c k. Udowodnić, że utomt którego stnmi s ziory P os(w) m minimln licze stnów dl jezyk wszystkich sufiksów. Znleżć przyk ld gdy minimlny utomt sufiksowy nie jest minimlnym utomtem kceptujcym wszystkie pods low (stnmi kceptujcymi s terz wszystkie stny utomtu sufiksowego). Wzić tekst cc. Automty skończone z wyjściem typu Mely (wyjście zleży od stnu i czytnego symolu) i typu Moore (wyjście zleży tylko od stnu). Opisć przekszt lcnie jednych n drugie. N przyk ld: n wejściu pry cyfr dwu licz poczwszy od njmniej znczcych pozycji, utomt wypisuje kolejne cyfry sumy (różnicy). Udowodnić, że kolejnych cyfr iloczynu utomt nie wypisze. Grmtyki jednostronnie liniowe i utomty: równowżność (w sensie mocy) tkich grmtyk i utomtów. Opisć dok:ldnie ć przjście od grmtyk jednostronnie liniowych do utomtów i odwrotnie. Pokzć, że dl grmtyki liniowej j ezyk może nie yć regulrny. Syntez utomtu: wyrżenie reg. utomt ez ϵ-przejść. utomt niedeterministyczny z ϵ-przejścimi Syntez e przeprowdzmy w ten sposó, że otrzymujemy utomt znormlizowny, tzn. 1) jeden stn kceptujcy z którego nic nie cwychodzi ; 2) z kżdego stnu lo tylko jedno przejście, lo tylko dw przejści i wtedy o pustym s lowem; 3) nie m ϵ-cyklu Prolem: dne wyr. reg. W rozmiru m (opercje,, ) i s lowo d lugości n, sprwdzić czy w W. Istnieje lgorytm o z lożoności O(m n): symulcj ϵ-utomtu, ez determinizcji. 7
Dne rozszerzone wyrzenie regulrne W i text w, pokzc ze mozn w czsie wielominowym (wzgledem n + m) sprwdzic czy x W. Anliz utomtu: utomt skończony niedet. wyrżenie regulrne. Dwie metody: Metod I: rozwizywnie równń, korzystjc z tego że jeśli ϵ / A to rozwizniem równni X = AX B jest A B. Metod II: podonie jk domkni ecie trnzytywne mcierzy oolowskiej. J ezyki regulrne zmkni ete ze wzgl du n opercje i. Rozmir wyrżeń regulrnych w stosunku do rozszerzonych wyrżeń regulrnych Wyrżenie stndrdowe dopuszcz jedynie opercje,,, wyrżenie rozszerzone dodtkowo,. Jezyk sk ldjcy sie z jednego s low (... (( 2 0 1 ) 2 ) 2 ) 2 )...) 2 n ) dje sie opisć semirozszerzonym wyrżeniem (ez opercji -) rozmiru O(n) ntomist stndrdowe wyrżenie m rozmir Ω(2 n ). Zroić dok ldn konstrukcje wyrżeni. Możn nie używć opercji i jednorzowo zstosowć opercj e, wtedy jest podonie. Z tego wynik: njkrótsze s lowo które nie jest kceptowne przez niedeterministyczny utomt skończony o n stnch może mieć d lugość wyk ldnicz. Skonstruowć precyzyjniej tki utomt. Istnieje rozszerzone wyrżenie regulrne rozmiru n tkie, że równowżne normlne wyrżenie regulrne m rozmir Ω(2 2n ). Trudne. Automty skończone jko opis orzów czrnoi lych, przyk ldy. Wielominowy lgorytm dl prolemu 2-wymirowego string-mtchingu dl tk zdefiniownych tekstów dwuwymirowych. Minimlizcj det. utomtu skończonego. Dw stny s i-równowżne, gdy s równowżne z dok Ldności do s lów d lugości co njwyżej i. Niech R i relcj i-równowżności. Wtedy R i = R i+1 implikuje R i = R i+2 orz R i jest końcow relcj równowżności stnów. Sklejmy klsy równowżnych stnów, w rezultcie otrzymujemy utomt minimlny (z lożony ze stnów osiglnych ze stnu pocztkowego). 8
Podejście teorigrfowe: tworzymy grf G, w ez ly = pry stnów, (δ(s.), δ(s, )) (s, s ) dl kżdej pry stnów s, s i symolu Σ. Stny s, s nie s równowżne, wtedy i tylko wtedy gdy istnieje w G ścieżk od F (Q F ) do (s, s ) (udowodnić). Dje to lgorytm O(n 2 ) n minimlizcj e utomtu. Równowżność det. utomtów skończonych. Ltwiej si e sprwdz równowżność dok ldnie dwóch stnów q 1, q 2 tego smego utomtu (możn dw utomty z l czyć w jeden jko sum roz l czn). Pocztkowo mmy podzil n loki ed ce singletonmi. Wstwimy pre (q 1, q 2 ) do kolejki K. Nstepnie dopóki kolejk niepust wykonujemy: (p, q) := delete(k); A := F ind(p); B := F ind(q); jeśli A B to Union(A, B), insert((δ(p, ), δ(q, )), K) dl kżdego Σ. N końcu sprwdzmy czy jkiś lok zwier jednocześnie stn kceptujcy i niekceptujcy, wtedy (i tylko wtedy) pocztkowe stny nie s równowżne. Udowodnić poprwność tego lgorytmu. Algorytm dzi l w czsie O(n log n), jeśli lfet jest st lego rozmiru. Algorytm Brzozowskiego. Dl utomtu niedet. A przez det(a) oznczmy deterministyczn wersje A (poprzez konstrukcje potegow, stnmi s ziory A) w której s tylko stny osiglne ze stnu pocztkowego. Przez A R oznczmy nturlny utomt (z reguly niedeterministyczny) dl odwróconego jezyk L(A) R (powst ly przez odwrócenie strz lek (trnzycji), orz zmine ziorów stnów kceptujcych i pocztkowych). Prof. J. Brzozowski zuwży l, nstepuj c w lsność ( ) jeśli A jest deterministyczny to det(a R ) jest minimlnym utomtem deterministycznym dl j ezyk L(A) R. Wynik std strkcyjny (czsmi efektywny) lgorytm minimlizcji: Algorytm Brzozowskiego; N wejściu utomt determnistyczny A; N wyjściu minimln deterministyczn wersj A. A := det(a R ); A := det(a R ). Zdnie. Udowodnić w lsność ( ). 9
Z lożoność prolemów dl utomtów i wyrżeń. Prolem memership dl stndrdowych wyrżeń w czsie O(n r) gdzie r d lugość wyrżeni, n d lugość tekstu. Algorytm poprzez symulcje utomtu. Pokzć, że prolem memership dl rozszerzonych wyrżeń regulrnych możn rozwizć w czsie wuelominowym metod progrmowni dynmicznego. Inne prolemy: czy j ezyk jest pusty, nieskończony (w czsie wielominowym). Czy zwier wszystkie s low (prolem W = Σ ) jest P-spce zupe lny. Osttni prolem m z lożoność pmieciow Ω(2 n ) gdy mmy stndrdowe wyrżeni i dodtkowo opercje potegowni, np. ( ) 13 ( ) = Σ. Systemy utomtów komórkowych System utomtów skończonych zncznie silniejszy niż pojedyńczy utomt skończony. Automty umieszczone s w punktch k-wymirrowej krty. Rozwżmy jedynie k = 1, k = 2. Istotn jest jednorodność, wszystkie utomty tkie sme, poz yć może rzegowymi. Przyk ld systemu: gr Życie. Automty w stnie 0 lu 1 (mrtwy lu żywy). S siedztwo: 8 utomtow z oku. Automt przeżyw gdy 1 < licz ssidów < 4, rodzi sie gdy licz ssidów = 3 i poprzednio w dnym miejscu nie y lo utomtu (stn 0). Podć przyk ldy systemów stilnych dowolnie dużych, (n przyk ld prostokt 2 n ustwiony pod ktem 45 o ), przesuwjcych sie, orz oscylujcych (periodycznych). Przyk ld (innego) systemu który si e rozmnż, njpierw rdzo prosty: system 2-wymirrowy, stny 0 lu 1, ssiedzi 4 z oku, przyst licz żywych ssidów to utomt ginie, jeśli puste miejsce m nieprzyzst licze żywych ssidów to pojwi sie utomt. Po pewnym czsie mmy 4 tkie sme (jk pocztkow) konfigurcje, potem 16 itd. Przyk ld (innych) systemów rozmnżjcych sie dl utomtów z dowolnie duż licz stnów (ptrz prc Amoroso & Cooper, Tesseltion structures for reproduction, JCSS vol. 5 (1971)). Jednowymirrowe ssiedztwo: utomt z lewej (1 ssid), 2-wymirrowe: z lewej i z do lu (dwóch ssidów). Stny [0..A 1]. Nstepny stn sum modulo A, gdzie sum jest sum rytmetyczn stnów ssidów (w przypdku 1-wymirrowym jednego ssid) i sieie. 10
Pocztkow konfigurcj: stny w komórkch ujemnych i wiekszych niż k s zerowe. Dl systemu jednowymirrowego udowodnić że po n = A k! krokch system sie powtórzy n miejscch od n-tego, n pocztkowych k miejscch edzie to smo co n pocztku. Dl systemu jednowymirrowego udowdnić, że kontryucj pol x odleglego od dnego pol o d (w lewo) po czsie t wynosi ( t d) (Tzn. jest to wspó lczynnik przy pocz tkowej wrtości w polu x. Jeśli 0 < d k, n = Ak! to ( ) ( ) n d (orz n n d ) jest podzielne przez A Przyk ld dl liczy stnów A = 3 i pocztkowego rozmiru k = 4: 1221 10101 111111 1222221 10111101 111222111 1220110221 10121212101 111000000111 1221000001221. A wi ec 1221 si e rozmnoży lo (chociż szyciej niż w ogólnym przypdku), stny 0 trktujemy jko puste. Prolem synchronizcji (orginlnie zwny prolemem plutonu egzekucyjnego). 1-wymirrowy system synchronizuje sie po co njwyżej 3n krokch. Pocztkowo wszystkie utomty tkie sme poz rzegowymi, które wiedz że s rzegowe. System znjduje środek poprzez wygenerownie sygn lów o szykości 1 i 1/3. Szyszy sygn l odij si e od prwego rzegu i spotyk si e z sygn lem wolniejszym w środku (uwg mog yć dw środki). Oszcowć z grusz licz e stnów tkiego utomtu. Trudniejsz konstrukcj: synchronizcj po 2n 2 krokch, jest to minimlny czs synchronizcji. Przyk ld 2-wymirowego systemu utomtów: liczenie przez utomty domknieci trnzytywnego mcierzy Boolowskiej. System liczcy domkniecie trnzytywne mcierzy oolowskiej. Implementujemy lgorytm Wrshll n systmie dwuwymirowym utomtów komórkowych. Kżdy element komunikuje sie z czterem ssidmi w odleg lości miejskiej równej 1. Z lewego gornego rogu sygnl iegnie po przektnej z szykości 1. k-ty uktywniony element 3 11
przektnej generuje proces (flowy) ktory iegnie poziomo i pionowo. Proces ten po drodze uktywni elementy ktore wysylj swoej wrtosci. Kzdy element w ktorym sie scidz te wrtosci dodje (lterntyw) ich koninkcje do swojej wrtosci. Po 5n krokch domkniecie trnzytywne jest policzone. Ogrody Edenu Ogrody Edenu s skończonymi konfigurcjmi systemu utomtów komórkowych które nie wynikj (po jednym kroku) z żdnej innej konfigurcji skończonej. Udowodnić, że dl systemu jednowymirowego ziór ogrodów Edenu jest (jko ziór s lów) regulrny, prolem istnieni ogrodów Edenu m stosunkowo prosty lgorytm. W przypdku dwuwymirowym prolem istnieni ogrodów Edenu jest nierozstrzyglny (rdzo trudne, udowdni l Jrko Kri). Dwukierunkowe utomty skończone Dl kżdego dwukierunkowego utomtu skończonego istnieje równowżny zwyczjny utomt skończony (konstrukcj poprzez crossing sequences). Oszcowć licz e stnów utomtu zwyczjnego (czsmi musi yć rz edu wyk ldniczego). Pokzć że utomt dwuwskżnikowy (2-g lowicowy) jest silniejszy, np. n prolemie L pt = {x$y : x jest pods lowem y}, j ezyk ten nie jest regulrny. Istnieje determ. 2-glowicowy 2-kierunkowy utomt dl tego j ezyk orz niedeterm. 2-glowicowy 1-kierunkowy. Udowodnić, że istnieje deterministyczny 2-kierunkowy k-wskżnikowy utomt skończony kceptujcy L pt w czsie liniowym, gdzie k jest st l (nturln). Odpowid to rdzo prymitywnemu lgorytmowi n string-mtching w czsie liniowym i pmieci st lej, stosujemy lgorytm Duvl-Crochemore n leksykogrficznie mksymlny sufiks, lgorytm ten przy okzji liczy okres tekstu, gdy tekst jest mocno okresowy (ptrz skrypt ASD, Bnchowski, Diks, Rytter). Algorytm opier sie n nstepuj cej w lsności leksykogrficznie mksym. sufiksu: niech x edzie swoim mksymlnym sufiksem o (njkrótszym) okresie p, jeśli symol lmie okres w sensie mniejszym tzn. < gdzie jest symolem odleg lym o p od w s lowie x to x jest (dlej) swoim mksymlnym sufiksem (kurt to jest proste), orz njkrótszym okresem x jest x (trudne i zdziwijce). Ide lgorytmu Duvl jest wyjśnion n rysunku. 12
mksymlny sufiks c c c c c c wczytnie c c c c c c i j k l i j k l nowe m c c c c c c c c c c c c c reset i, j, k,l i j k l wczytnie c, strtujemy ze wszystkim od l cofmy sie z m n pozycje l wczytnie, mxsufix m tylko trywilny okres Rysunek 3: Trzy możliwe przejści w lgorytmie Duvl, x[i..m] = mxsuf(x[1..m]), x[i..k] okres mks. sufiksu, m osttnio wczytny symol. Pozycj j odpowid m w sensie okresowości. Algorytm sprwdz czy nstepny symol jest kontynucj okresu mksymlnego sufiksu, jeśli nie to czy lmie okres w sensie mniejszy. Grmtyki ezkontekstowe Grmtyk G = (N, T, P, S) jest ezkontekstow gdy lew stron kżdej regu ly syntktycznej (produkcji) jest pojedyńczym symoelm nieterminlnym (zmienn syntktyczn). # (x)}: Udowodnić formlnie, że nstepuj c grmtyk generuje {x ( ) : # (x) = S > B A A > S AA B > S BB Npisć pe lne grmtyki ezkontekstowe dl j ezyków {,, c} { i j c k : i j lu i k lu j k }, {x#y : x, y {, } + x y}. Proste przekszt lceni grmtyk. Usuwnie z ednych nieterminli, przy okzji wielominowy lgorytm n test L(G) = (czy symol pocztkowy jest zedny? ). Usuwnie s low pustego, może zwi ekszyć grmtyk e wyk ldniczo. Elimincj produkcji postci A B. Sprowdznie do postci normlnej Chomsky ego, przćwiczyć dl j ezyków nwisowych. 13
Lemt o pompowniu : JeSli L ezkontekstowy, to dl z L dosttecznie dużych istnieje rozk ld z = uvwxy, vx ϵ spe lnijcy i uv i wx i y L. Zstosowni: CFL nie zmkni ete n dope lnienie i przeci ecie teoriomnogościowe. Lemt o pompowniu kontrolownym (uproszczony lemt Ogden). Jeśli zznczymy przedzi l d lugości co njmnije p 0 s lowie z L to jedn z cz eści pompujcych (v, x) jest c lkowicie w zznczonym przedzile dl pewnej dekompozycji uvwxy. Pokzć, że dl j ezyk c { p n c n : n 1} zwyczjny lemt o pompowniu nie chwyt lemt kontrolowny dzi l dorze. Zstosowć lemt o pompowniu kontrolownym dl j ezyk { i j c k : i j i k j k}. Niech N edzie st l z lemtu. Weźmy s lowo n! 2n! c 3n!. Zznczyć prefiks d lugości n!. Npisć grmtyk e dl dope lnieni tego j ezyk. Twierdzenie Prikh Niech lfet Σ = { 1, 2,... k }. Dl s low x jego wektorem Prikh jest P rikh(x) = (# 1 (x), # 2 (x), # 3 (x),... # k (x)) Dl j ezyk L oznczmy P rikh(l) = {P rikh(x) : x L}. Twierdzenie Prikh. Jeśli L ezk. to istnieje j ezyk R regulrny tki, że P rikh(l) = P rikh(r). (Szkic dowodu) Z lóżmy grmtyk ezk. G jest w postci normlnej Chomsky ego mjc k nieterminli. Niech N edzie tk st l, że w kżdym drzewie wyprowdzeni s low d lugości co njwyżej N istnieje ścieżk n której pewien nieterminl pojwi sie co njmniej k + 2 rzy. Niech Q edzie podzioremz zioru nieterminli, niech L Q edzie ziorem s lów mjcych drzewo wyprowdzeni zwierjce dok ldnie wszystkie nieterminle z Q i żdnych innych. 14
Niech F Q edzie ziorem s lów z L Q o d lugości co njwyżej N, T Q edzie ziorem s low xy tkich, że xy N orz istnieje wyprowdzenie A xay w którym wystepuj jedynie nieterminle z Q. Wtedy P rikh(l q ) = P rikh(f Q T Q) Ztem L Q = Q L Q jest w sensie Prikh równowżny j ezykowi kóry jest regulrny, gdyż ziory F Q i T q s skończone. Mmy P rikh(l) = Q P rikh(f Q T Q) Automty stosowe Automt stosowy A = (Σ, Q, Γ, δ, s 0, Z 0, F ), Γ - lfet stosowy, δ - funkcj przxejść. δ : (Σ {ϵ}) (Q Γ ). Opis chwilowy (pe ln konfigurcj) (q, w, α), w - niewczytn jezcze cz eść tekstu wejściowego, α - zwrtość stosu, wierzcho lek stosu z lewej strony α. Konfigurcj pocztkow (s 0, w, Z 0 ), gdzie w jest pe lnym tekstem wejściowym. Trzy typy kceptcji N(A), T (A), L(A), stosem pustym, stnem kceptujcym, orz jednym i drugim jednocześnie. Pokzć, że te trzy typy s równowżne w sensie klsy definiownych jezyków. Przyk ldy. L = {x#x R : x ( ) + } deterministyczny, dron modyfikcj dje niedetermnistyczny utomt dl L = {xx R : x ( ) + }. L = {x#y : x y orz x, y ( ) + } L = {xy : x y, x = y orz x, y ( ) + } Zroić grmtyk e dl osttniego j ezyk. Deterministyczny utomt stosowy: w kżdej sytucji co njwyżej jeden ruch. Dowód (przez og lupinie utomtu) fktu: 15
J ezyk L = {ww R : w ( ) + } nie jest deterministyczny. Twierdzenie. Jeśli L CF L to istnieje utomt stosowy A tki, że L = N(A). Dw dowody, konstrukcje użyte w dowodch mj duże znczenie prktyczne w zwizku z prsermi typu LL(k) i LR(k). Dowód pierwszy. Automt zgduje lewostronne wyprowdzenie. Produkcj A > γ odpowid zstpieniu wierzcho lk stosu (jeśli jest nim A) przez γ. Automt może w tym momencie wypisć stosown produkcje grmtyki. Jeśli n wierzcho lku jest symol terminlny i n wejściu też, to o zostj wymzne. Dowód 2. Tym rzem zk ldmy, że wiercho lek stosu jest z prwej strony npisu α. stosem n którym jest jedynie dno stosu Z 0. Mmy dwie opercje. Shif t: wpisujemy symol wejściowy n stos (z prwej strony α); Strtujemy ze Reduce: jeśli grup symolu n wierzcho lku stosu jest prw stron produkcji A > γ to utomt zstepuje tekst γ n stosie przez A. Automt może w tym momencie wypisć stosown produkcje grmtyki. Automt kceptuje, gdy wczyt c ly tekst orz n stosie poz dnem stosu jest jedynie symol pocztkowy grmtyki. Nieformln definicj grmtyk LL(k) i LR(k) jko tych dl których utomty konstruowne w pierwszym (drugim) dowodzie s deterministyczne, jeśli utomt widzi k symoli hed. Pierwsze L jest od Look hed, drug liter od Leftmost i Rightmost, odpowiednio. Twierdzenie Jeśli L = N(A) dl utomtu stosowego A, to L = L(G) dl pewnego j ezyk ezkontekstowego. Proof. Tworzymy grmtyke G, której nieterminlmi s trójki (q, A, q 1 ) plus specjlny symol pocztkowy S. Jeśli (q1, B 1 B 2..B m ) δ(q,, A) to tworzymy ziór produkcji postci (g, A, p) (q 1, B 1, q 2 )(q 2, B 2, q 2 )..(q m, B m, p) dl kżdego q 2, q 3,.., q m Q (Grmtyk rdzo duż) W szczególności jeśli m = 0, ( wi ec (q 1, ϵ) δ(q,, A)) to tworzymy produkcj e (q, A, p), gdzie p = q 1. N przyk ld, gdy (q 1, B 1 B 2 B 3 ) δ(q,, A) to tworzymy produkcj e (q, A, p) (q 1, B 1, q 2 )(q 2, B 2, q 3 )(q 3, B 3, p). Pondto tworzymy ziór produkcji inicjlnych S (q 0, Z 0, q) dl kżdego q Q. Zchodzi: (q, A, q 1 ) G x (q, x, A) (q 1, ϵ, ϵ) 16
Podć przyk ldy przejści od utomtu do grmtyki. Postć normln Greich (metod niestndrdow) Z lóżmy, że grmtyk G jest w postci norm. Chomsky ego. Tworzymy now grmtyke G, tworzymy nowe nieterminle (A, B), tkie że A G B α dl pewnego α. Tworzymy produkcje tk y zchodzi l w lsność: A G B α (A, B) G α A A B x B D C x1 E x2 Rysunek 4: Dekompozycj wyprowdzeni A Bx n E, C Ex 2 i A Dx 1 przy z lożeniu że D BC i E s regu lmi grmtyki G. Mmy cztery przypdki generowni produkcji dl tkiej dekompozycji zleżnie od tego które z x 1, x 2 s puste. Pocztkowo w G tworzymy produkcje inicjlne: S (S, A), dl kżdego A. Nstepnie tworzymy cztery typy produkcji w zleżności od tego które z x 1, x 2 s puste (ptrz Rysunek 4). 1. (A, B) (C, E)(A, D) gdy E A, D BC {x 1 ϵ, x 2 ϵ} 2. (A, B) (C, E) gdy A BC i E {x 1 = ϵ, x 2 ϵ} 3. (A, B) (A, D) gdy D BC i C {x 1 ϵ, x 2 = ϵ} 4. (A, B) gdy A BC i C. {x 1 = ϵ, x 2 = ϵ} Pokzć, że kls DCF L (detrm. ezkontekstowe) jest zmnkni t ze wzgl edu n dope lnienie. Pokzć również, jk udowodnić że przeci ecie j ezyk ezkontekstowego i regu- 17
lrnego jest ezkontekstowe (pokzć n przyk ldch) nie u ywjc utomtów (ezpośrednio z grmtyi ezk. i grmtyki prwostronnie liniowej). Porównć z dowodem poprzez utomt. Njtrudniejszy j ezyk ezkontekstowy Niech Σ 0 = {(, ), [, ]} edzie lfetem zwyk lych nwisów, D k edzie j ezykiem poprwnych nwisów k typów (dl 2 typów przyjmujemy nwisy z Σ 0 ). Nstepuj cy jezyk nzywmy jezykiem Greich L 0 = {x 1 1cx 1 2... cx 1 i 1 dx 2 1cx 2 2... cx 2 i 2... dx k 1cx k 2... cx k i k : x i j Σ + 0 orz x 1 j 1 x 2 j 2... x k j k D 2 dl pewnych j 1,... j k } Twierdzenie. L 0 jest njtrudniejszym jezykiem ezkontekstowym, to znczy L 0 CF L orz jeśli z lożoność rozpoznwni L 0 jest T (n) to kżdy jezyl L CF L możn rozpoznwć w czsie O(T (n)). Npisć grmtyke generujc L 0. Dl j ezyk L oznczmy Niedet(L) = {(G 1, G 2,... G n ) : G i Σ, orz w 1 w 2... w n L dl pewnych w 1 G 1, w 2 G 2,... w n G n } Niech N = {A 1, A 2,... A r } edzie ziorem nieterminli, definiujemy r typów nwisów, gdzie i-ty nwis otwierjcy jest równy A i, zmykjcy jest równy Āi. odpowiedjcy jezyk r-nwisowy. Oznczmy przez D N r Niech G edzie grmtyk ezk. w postci normlnej Greich (po prwej stronie dok ldnie jeden terminl i to n pocztku). Dl kżdej produkcji π = (A A 1 A 2... A k ) definujemy kcj(π) = ĀA ka k 1... A 1. kcj(π) odpowid jednemu krokowi niedet. utomtu stosowego: ĀA k A k 1... A 1 pop(a), push(a k ), push(a k 1 )... push(a 1 ). Dl symolu Σ oznczmy H() = {kcj(π 1 ), kcj(π 2 ),... kcj(π i )}, gdzie π 1,... π i s wszystkimi produkcjmi w których wystepuje. Niech S edzie symolem 18
strtowym grmtyki i niech w = 1 2... n, wtedy zchodzi: w L(G) ({S}, H( 1 ), H( 2 ),... H( n )) Niedet(D N r ) Powyższ równowżność mówi że w L(G) gdy istnieje poprwn histori utomtu stosowego kceptujcego w z pomoc pustego stosu, pocztkowo n stosie jest pocztkowy symol grmtyki. Przyk ld. Grmtyk A BA B BB. H() = {ĀAB, Ā}, H() = { BBB, B}. Jeśli w = to w L(G) poniewż z cigu ziorów {A}, H(), H(), H(), H(), H() możn wyrć kolejno s low A ĀAB BBB B B Ā, ich konktencj dje poprwn historie dzi lni utomtu stosowego AĀAB BBB B BĀ. Jest to poprwne wyrżenie nwisowe w D {A,B} 2. Lepiej to widć jk sie zstpi nwisy A i B przez [ i (. Ztem rozpoznwnie jezyk sprowdz sie do prolemu memership dl cigów ziorów Niedet(D r ) dl r ed cych st l. r typów nwisów możn zkodowć dwom typmi, i-ty nwis otwierjcy odpowid s lowu [( i 1. W ten sposó rozpoznwnie dowolnych jezyków ezkontekstowych sprowdz sie do prolemu memership dl Niedet(D 2 ), ten prolem koduje si e ezpośrednio jko j ezyk L 0. Zroić to co powyżej dl konkretnej grmtyki i tekstu, policzyć ziory H( i ). Pokzć odpowiedniość miedzy ziorem Niedet(D 2 ) i jezykiem L 0, w lściwie że to jest to smo. Niech L 0 = L 0 /[d (ocinmy z lewej strony nwis kwdrtowy). Udowodnić że dl kżdego jezyk ezkontekstowego L istnieje homomorfizm h tki że L = h 1 (L 0). Dl kżdego jezyk ezkontekstowego L zchodzi L = h(d r R), gdzie r zleży od L, h jest homomorfizmem orz R jest jezykiem regulrnym. Troche komintoryki tekstów i s low podwójne S low Fioncciego i ich w lsności. S low Thue-Mors t = h (), gdzie h() =, h() =. Dowód tego, że morfizm h zchowuje w lsność to e squre free. S lowo t nie zwier pods low typu cvcvc, gdzie c jest liter. Niech β() =, β() =, β(c) =. S low β 1 (t) jest squre free. Ztem jest 19
nieskończenie squre free s lów n lfetem 3 literowym. Mteri l z rtyku lu Morphisms, squre free strings nd the tower of Hnoi puzzle, Americn Mth. Monthly 101:7 (1994) 651-658. Okresowość w tekstch, lemt o okresowości. Zstosownie do tego że ziór dwóch s low {x, y} jest kodem jednozncznym wtedy i tylko wtedy gdy xy = yx. Relcj x xx. Sprwdznie równowżności dwóch s lów. Wprowdzmy relcje x xx dl dowolnego s low (dż pods low) x. Ziór kls równowżności jest skończony (d skończonego lfetu), np. 7 kls dl 2 liter i 160 kls dl 3 liter. Algorytm przekszt lcni jednego s low w drugie. Mteri l z ksiżki Comintorics on words, Lothire, strony 33-35. Dl dnego tekst x 0 pokzć, że {x : x x 0 } jest regulrny ( dl wszystkich 7 njkrótszych nierównowżnych s lów nd lfetem {, } wyliczyć n ćwiczenich dok ldnie wyrżeni regulrne opisujce klsy równowżności i podć utomty niedet. z jk njmniejsz licz stnów). Przez Alf(x) oznczmy ziór liter w x. Niech p edzie njkrótszym prefiksem x tkim, że Alf(x) = Alf(p), symetrycznie q edzie njkrótszym sufiksem,, Σ, p, q Σ, oznczmy ˆx = pq. Zchodzi fkt: Nszkicujemy tylko dowód tego, że x xx ˆx ŷ x ˆx Oserwcj. (Uzsdnienie) Oserwcj. x yα y βx x y x yα yyα yx βxx βx y Alf(y) Alf(x) ( u) x xyu (Uzsdnienie) Indukcj po y. Niech y = y u, Σ i n mocu z l. indukc. zchodzi dl u : ( u ) x xy u. Rozk ldmy x = zz, ierzemy u = z y u. W ten sposó dowodzimy osttni oserwcje. 20
Przechodzimy terz do dowodu, że x ˆx = pq. Rozk ldmy: x = py, x = zq. Istniej u i symetrycznie v (n mocy osttniej oserwcji) tkie, że p pyu = xu, q vpq. Ztem pq xuq, x = zq zvpq, czyli ˆx xα, x βˆx dl pewnych α, β. Z przedosttniej oswerwcji wynik, że x ˆx. Morfizmy dwuwymirowe. Morfizmy mog yć użyte do definiowni rekurencyjnie orzków, n przyk ld ptrz Figure 5 H1: 0 1 1 1 1 1 1 1 0 1 0 1 0 1 orzek J. Hfermn 1 1 1 0 1 0 H2: 1 1 1 1 1 0 1 1 0 0 0 0 0 0 dywn Sierpinskiego 1 1 1 0 0 0 Rysunek 5: Wielokrotne stosownie tych morfizmów generuje regulrne struktury. Mszyny Turing N wyk ldzie mszyny Turing, krótko o istnieniu prolemów nierozstrzyglnych (j ezyków nierekurenyjnych generowych przez grmtyki) orz N P -zupe lność. Mszyny Turing odpowidj grmtykom typu 0 (ez dowodu). oliczlność ozncz oliczlność równiwż n mszynch Turing. Hipotez Church: Mszyny Turing s luż zsdniczo do dowodów negtywnych. L jest rekurencyjny gdy L i L s przeliczlnie rekurencyjne. Opisć konstrukcje mszyny Turing implementujcej lgorytm Knuth-Morris- Prtt w czsie liniowym. Inny przyk ld: mszyn T sprwdzjc czy sum dwóch licz inrnych jest równ trzeciej liczie, liczy zpisne z mrkermi pomiedzy nimi i z mrkermi n końcch. 21
Istnienie prolemu N P -zupe lnego: czy dn mszyn Turing zkceptuje niedeterministycznie dny tekst w czsie ogrniczonym przez licze zpisn unrnie (wejście: tekst#licz). Dowód tego że SAT jest NP-zupe lny. Przyk ldy innych prolemów NP-zupe lnych. Definicj hierrchii: DLOG NLOG P NP P SP ACE. podstwowy prolem teorii z lożoności: które z tych inkluzji s w lściwe? Przyk ldy prolemów P-spce zupe lnych. Teoretyczny model oliczeń równoleg lych PRAM, kls NC. Poj ecie P-zupe lności. Przyk ldy prolemów P-zupe lnych: Circuit Vlue Prolem, Generowlność, liczenie DFS-u. 22