Zadanie 1. (6 punktów) Słowo w nazwiemy anagramem słowa v jeśli w można otrzymać z v poprzez zamianę kolejności liter. Niech
|
|
- Michał Kalinowski
- 8 lat temu
- Przeglądów:
Transkrypt
1 Zadanie 1. (6 punktów) Słowo w nazwiemy anagramem słowa v jeśli w można otrzymać z v poprzez zamianę kolejności liter. Niech anagram(l) = {w : w jest anagaramem v dla pewnego v L}. (a) Czy jeśli L jest regularny, to anagram(l) też? (b) Czy jeśli L jest bezkontekstowy, to anagram(l) też? Rozwiązanie. Rozważmy regularny język L = (abc). Nietrudno zauważyć, że anagram(l) to zbiór słów, gdzie wszystkie litery a, b, c występują tyle samo razy. Pokażemy, że język anagram(l) nie jest nawet bezkontekstowy, a więc odpowiedź na oba podpunkty brzmi nie. Gdyby język anagram(l) był bezkontekstowy, to bezkontekstowy byłby język K = anagram(l) a b c = {a n b n c n : n N}, jako iloczyn języka bezkontekstowego i regularnego. Dowód, że K nie jest bezkontekstowy był na wykładzie. 1
2 Zadanie 2. (6 punktów) Czy jeśli L jest bezkontekstowy, to {w : ww R L} też? Rozwiązanie. Nie. Rozważmy język L = {a n b n c 2m b m a k : n, m, k N}. Język L jest bezkontekstowy. Generuje go poniższa gramatyka. Nietrudno zauważyć, że S XY Z X axb ɛ Y ccy b ɛ Z az ɛ {w : ww R L} = {a n b n c n : n N}, a więc język ten nie jest bezkontekstowy. 2
3 Zadanie 3. (6 punktów) Załóżmy, że rozpatrujemy maszyny Turinga akceptujące słowa nad alfabetem {a, b}. Dla każdego z poniższych problemów ustalić, czy jest rozstrzygalny i czy jest częściowo rozstrzygalny. (a) Dany jest kod maszyny Turinga. Pytanie: czy maszyna akceptuje wyłącznie słowa składające się z samych liter a? (b) Dany jest kod maszyny Turinga. Pytanie: czy maszyna akceptuje wyłącznie słowa zawierające literę b? (c) Dany jest kod maszyny Turinga. Pytanie: czy maszyna akceptuje pewne słowo zawierające literę b? Rozwiązanie. Będziemy korzystać w redukcjach z dopełnienia problemu stopu: (NS) Dany jest kod maszyny Turinga. Pytanie: czy maszyna nie akceptuje słowa pustego? Problem (NS) nie jest nawet częściowo rozstrzygalny. (Gdyby był, to problem stopu by był rozstrzygalny.) Pokażemy, najpierw, że (a) nie jest nawet częściowo rozstrzygalny. Dla kodu maszyny Turinga M nietrudno wyprodukować kod maszyny M taki, że Jeśli M akceptuje słowo puste, to L(M ) = b +. Jeśli M nie akceptuje słowa pustego, to L(M ) =. Funkcja f, która zamienia kod maszyny M na kod maszyny M jest obliczalna. Wystarczy do kodu maszyny M dopisać wstęp, który sprawdza, czy dane na wejściu słowo należy do b +. Jeśli tak, wycieramy wejście (zostawiając słowo puste) i uruchamiamy M. Jeśli nie, odrzucamy. Nietrudno zobaczyć, że funkcja f jest redukcją problemu (NS) do (a), a więc (a) nie może być nawet częściowo rozstrzygalny. Teraz pokażemy, że (b) też nie jest częściowo rozstrzygalny. Rozważmy funkcję obliczalną g, która działa podobnie jak maszyna f, z tą różnicą, że zamiast b + jest a +. Funkcja g jest redukcją problemu (NS) do (a). Problem (c) jest częściowo rozstrzygalny. Algorytm zgaduje niedeterministycznie słowo zawierające literę b, a następnie uruchamia maszynę na tym słowie. Problem (c) nie jest rozstrzygalny, ponieważ jest dopełnieniem problemu (a), który nie jest rozstrzygalny. 3
4 Zadanie 4. (6 punktów *) Rozważmy automaty ze stosem z następującym warunkiem akceptacji: stos należy do L, gdzie L jest bezkontekstowy. Czy istnieje język, który nie jest bezkontekstowy, a jest rozpoznawany przez rozważany rodzaj automatu? Rozwiązanie. Dla zwiększenia obrazowości rozwiązania i zmniejszenia liczby oznaczeń poszczególne alfabety występujące w rozwiązaniu będziemy oznaczać różnymi kolorami. Niech A - automat rozpoznający L z niebieskim stosem, z jednym stanem, stos początkowy niebieska pinezka, operacje read(czerwona litera lub epsilon); pop(niebieska litera); push(niebieskie słowo), akceptacja przez pusty niebieski stos (taki właśnie automat powstaje po konwersji z gramatyki bezkontekstowej). Niech B - automat rozpoznający nasz główny język, stos początkowy pusty, operacje read(biała litera), push(zielona litera), pop(zielona litera), akceptuje, jeśli słowo będące na stosie, przekolorowane na czerwono, jest w języku L. Teraz zmieniamy B w następujący sposob: Zamiast robić push(zielona litera), myślimy o tym, czy automat B tą literę będzie chciał kiedykolwiek zdjąć (tzn. niedeterministycznie zgadujemy) jeśli nie, to od razu tą literę przekolorowujemy na czerwono. Zatem stos wygląda tak, że najpierw ma czerwone litery (które tam zostaną już do końca, dla automatu A), a potem zielone (tymczasowe pomocnicze dla B), nigdy nie ma zielonej przed czerwoną, do zaakceptowania cały stos musi być czerwony, a żeby literę zdjąć, musi ona być zielona. Teraz zamiast wrzucać te czerwone litery, przekazujemy je bezpośrednio do A, czyli nasz stos będzie teraz wyglądał tak, że na początku są niebieskie litery pomocnicze dla A, a potem zielone pomocnicze dla B. Czyli wrzucamy na początku niebieską pinezkę i zamiast wrzucać czerwone litery na stos, traktujemy je jako wejście dla automatu A (czyli patrzymy, co zrobiłby automat A, jakby wczytał taką literę i wykonujemy odpowiednią operację na niebieskim stosie (możemy to zrobic, bo w takim momencie nie ma zielonych na wierzchu); potem ewentualnie wykonujemy jeszcze ɛ-przejścia automatu A). Akceptujemy przez pusty stos. 4
5 (9 punktów) Wybierz 9 z poniższych pytań i odpowiedz na nie. Za prawidłowe odpowiedzi dajemy +1 punkt, za złe -1 punkt. Punkty policzymy za 9 najgorszych odpowiedzi, czyli nie opłaca się odpowiadać na więcej niż 9 pytań. W każdym pytaniu podana jest modyfikacja znanego modelu. Trzeba powiedzieć, czy model zmodyfikowany ma tę samą siłę wyrazu co niezmodyfikowany. 1. Maszyna Turinga, która zawsze przesuwa głowicę w prawo. Odpowiedź: Model nie jest równoważny. 83 poprawnych na 86 prób. Krótkie uzasadnienie: Taka maszyna jest równoważna automatowi skończonemu. Pisanie na taśmie niczego nie wnosi, podobnie wyjście poza ostatnią literę słowa. 2. Maszyna Turinga, która ma prawo pisać tylko na słowie wejściowym, a nie na symbolach blank. Odpowiedź: Model nie jest równoważny. 66 poprawnych na 69 prób. Krótkie uzasadnienie: Dla każdej takiej maszyny problem czy maszyna akceptuje dane słowo w jest rozstrzygalny (a nie jest rozstrzygalny dla niektórych maszyn Turinga), bo ilość konfiguracji użytych w biegu jest ograniczona przez długość słowa wejściowego w. 3. Maszyna Turinga (niedeterministyczna), która może przesuwać głowicę tylko o 1 komórkę w prawo, lub na początek taśmy. Odpowiedź: Model jest równoważny. 46 poprawnych na 49 prób. Krótkie uzasadnienie: Dowolną maszynę symulujemy M maszyną N ograniczonego rodzaju w następujący sposób. Załóżmy, że bieg maszyny M składał się z konfiguracji c 1, c 2,..., c n. Symulując jeden krok maszyny M, maszyna N zostawia na taśmie zapis konfiguracji c i, wraz z położeniem głowicy. Aby przejść z zapisu c i do c i+1, należy przejechać całe słowo, przesunąć znacznik głowicy i wrócić na początek. Przy przesuwaniu znacznika w lewo przydaje się niedeterminizm, choć można to nawet zrobić deterministycznie. 4. Automat ze stosem, który może przesuwać się po wejściu w dwie strony. (Przykładowa tranzycja: w stanie q, z a na wejściu i b na czubku stosu, zmień stan na p, zdejmij ze stosu literę b i przesuń głowicę w lewo.) Odpowiedź: Model nie jest równoważny. 51 poprawnych na 53 prób. Krótkie uzasadnienie: Taki automat potrafi rozpoznać język {a n b n c n : n N}, który nie jest bezkontekstowy. Najpierw, w zwykły sposób, maszyn sprawdza, czy jest tyle samo a co b. Potem wraca do pierwszego b i sprawdza, czy jest tyle samo b co c. Ogólniej, problem niepustości jest nierozstrzygalny dla takich maszyn. 5. Automat ze stosem, gdzie operacja zdejmij ze stosu literę b jest uogólniona do zdejmij ze stosu słowo z języka L, dla L języka regularnego. Odpowiedź: Model jest równoważny. 28 poprawnych na 30 prób. Krótkie uzasadnienie: Taką operację symulujemy poprzez zjadanie ze stosu pamiętając stan automatu skończonego dla L. 5
6 6. Automat ze stosem, który może wykonać przejście postaci jeśli zawartość stosu należy do L, to zmień stan z p na q, dla L języka bezkontekstowego. Odpowiedź: Model nie jest równoważny. 36 poprawnych na 37 prób. Krótkie uzasadnienie: Taki automat potrafi rozpoznać język {a n b n c n : n N}, który nie jest bezkontekstowy. Przy czytaniu prefiksu a b, wrzucamy go na stos. Pomiędzy ostatnim b a pierszym c, sprawdzamy czy stos ma tyle samo a co b. Potem czytamy litery c, zdejmując dla każdej c jedno b ze stosu. Na końcu mają być na stosie same a. 7. Automat ze stosem, z operacją podwój stos, która zamienia stos w na stos ww. Odpowiedź: Model nie jest równoważny. 67 poprawnych na 72 prób. Krótkie uzasadnienie: Taki automat potrafi rozpoznać język {a n b n c n : n N}, który nie jest bezkontekstowy. Przy czytaniu prefiksu a, wrzucamy go na stos. Przed przeczytanim pierwszego b, wrzucamy na stos #, a potem stos podwajamy. W ten sposób liczbę n mamy dwa razy na stosie, co pozwala nam sprawdzić długość bloku liter b oraz długość bloku liter c. 8. Gramatyka bezkontekstowa, gdzie prawe strony reguł mogą zawierać wyrażenia regularne, np. X (X ay ). Odpowiedź: Model jest równoważny. 75 poprawnych na 77 prób. Krótkie uzasadnienie: Na przykład regułę X (X ay ) symulujemy przez dodanie nowych nieterminali A, B oraz reguł X A A AA BaY B BB X. 9. Wyrażenia regularne, gdzie dozwolona jest operacja różnicy L K. Odpowiedź: Model jest równoważny. 53 poprawnych na 59 prób. Krótkie uzasadnienie: Język regularne są zamknięte na dopełnienie. 10. Wyrażenia regularne, gdzie każda litera alfabetu występuje 10 razy. Odpowiedź: Model nie jest równoważny. 81 poprawnych na 84 prób. Krótkie uzasadnienie: Dla ustalonego alfabetu, np. alfabetu {a}, takich wyrażeń jest skończenie wiele (nierównoważnych), a języków regularnych jest nieskończenie wiele. Inny argument: nie można opisać języka {a 1 1}. 11. Automat skończony, gdzie warunek akceptacji to: co najmniej połowa biegów jest akceptująca. Odpowiedź: Model nie jest równoważny. 13 poprawnych na 24 prób. Krótkie uzasadnienie: Rozważmy następujący automat. a a b Na słowie a n b m ma on n biegów akceptujących (ukośną tranzycją można wczytać dowolną literę a) oraz m 1 biegów nieakceptujących (prawą tranzycją poziomą można wczytać dowolną literę b oprócz pierwszej). Słowo 6
7 takie zostanie zaakceptowane wtedy i tylko wtedy gdy n m 1. Skądinąd wiadomo (nierywialny dowód), że nierozstrzygalny jest problem: czy dla danego automatu A istnieje słowo wejściowe gdzie automat ma co najmniej połowę biegów akceptujących. 12. Automat skończony, który może wykonać instrukcję wróć do początku słowa w stanie q. Odpowiedź: Model jest równoważny. 21 poprawnych na 32 prób. Krótkie uzasadnienie: Aby symulować taki automat, wystarczy śledzić jego bieg od początku w każdym z możliwych stanów. 13. Automat skończony, który może wykonać instrukcję usuń ostatnią literę czytanego słowa. Automat nie dowiaduje się jaka litera zniknęła. Na przykład, jeśli wykona tę instrukcję czytając pierwszą literę słowa abbac, to zniknie c. Odpowiedź: Model nie jest równoważny. 33 poprawnych na 51 prób. Krótkie uzasadnienie: Takim automatem można rozpoznać nieregularny język {a n b(a+b) n : n N}. Czytając litery a na początku, usuwamy ostatnie litery. Akceptujemy jeśli po pierwszej literze b jest koniec wejścia. 14. Automat ze stosem, który może wykonać instrukcję usuń ostatnią literę czytanego słowa. Odpowiedź: Model nie jest równoważny. 5 poprawnych na 17 prób. Krótkie uzasadnienie: Taki automat potrafi rozpoznać język {a n b n a(a+ b) n : n N}, który nie jest bezkontekstowy. Najpierw, w zwykły sposób, maszyn sprawdza, czy jest tyle samo a co b, ale przy czytaniu liter b automat usuwa ostatnią literę słowa wejściowego. Aby zaakeptować, maszyna musi skończyć po wczytaniu pierwszego a po bloku liter b. 15. Maszyna Turinga, która się blokuje (odrzucając wejście) jak tylko drugi raz odwiedzi tę samą konfigurację. Odpowiedź: Model jest równoważny. 32 poprawnych na 35 prób. Krótkie uzasadnienie: Każdą maszynę Turinga można zmodyfikować tak, by nie odwiedzała dwa razy tej samej konfiguracji. Maszyna na specjalnej taśmie (można i bez dodawania taśmy) trzyma licznik, który zwiękasza po wykonaniu każdego kroku. Inne rozwiązanie: maszyny nie trzeba modyfikować, bo biegi odwiedzające dwa razy tę samą konfigurację nic nie wnoszą do akceptacji. 7
Imię, nazwisko, nr indeksu
Imię, nazwisko, nr indeksu (kod) (9 punktów) Wybierz 9 z poniższych pytań i wybierz odpowiedź tak/nie (bez uzasadnienia). Za prawidłowe odpowiedzi dajemy +1 punkt, za złe -1 punkt. Punkty policzymy za
Dopełnienie to można wyrazić w następujący sposób:
1. (6 punktów) Czy dla każdego regularnego L, język f(l) = {w : każdy prefiks w długości nieparzystej należy do L} też jest regularny? Odpowiedź. Tak, jęsli L jest regularny to też f(l). Niech A będzie
Języki formalne i automaty Ćwiczenia 9
Języki formalne i automaty Ćwiczenia 9 Autor: Marcin Orchel Spis treści Spis treści... 1 Wstęp teoretyczny... 2 Maszyna Mealy'ego... 2 Maszyna Moore'a... 2 Automat ze stosem... 3 Konwersja gramatyki bezkontekstowej
(j, k) jeśli k j w przeciwnym przypadku.
Zadanie 1. (6 punktów) Rozważmy język słów nad alfabetem {1, 2, 3}, w których podciąg z pozycji parzystych i podciąg z pozycji nieparzystych są oba niemalejące. Na przykład 121333 należy do języka, a 2111
10110 =
1. (6 punktów) Niedeterministyczny automat skończony nazwiemy jednoznacznym, jeśli dla każdego akceptowanego słowa istnieje dokładnie jeden bieg akceptujący. Napisać algorytm sprawdzający, czy niedeterministyczny
Zadanie 1. Czy prawdziwa jest następująca implikacja? Jeśli L A jest językiem regularnym, to regularnym językiem jest też. A = (A, Q, q I, F, δ)
Zadanie 1. Czy prawdziwa jest następująca implikacja? Jeśli L A jest językiem regularnym, to regularnym językiem jest też L = {vw : vuw L dla pewnego u A takiego, że u = v + w } Rozwiązanie. Niech A =
Języki, automaty i obliczenia
Języki, automaty i obliczenia Wykład 11: Obliczalność i nieobliczalność Sławomir Lasota Uniwersytet Warszawski 6 maja 2015 Plan 1 Problemy częściowo rozstrzygalne 2 Problemy rozstrzygalne 3 Funkcje (częściowo)
Matematyczna wieża Babel. 4. Ograniczone maszyny Turinga o językach kontekstowych materiały do ćwiczeń
Matematyczna wieża Babel. 4. Ograniczone maszyny Turinga o językach kontekstowych materiały do ćwiczeń Projekt Matematyka dla ciekawych świata spisał: Michał Korch 4 kwietnia 2019 1 Dodajmy kontekst! Rozważaliśmy
Języki, automaty i obliczenia
Języki, automaty i obliczenia Wykład 10: Maszyny Turinga Sławomir Lasota Uniwersytet Warszawski 29 kwietnia 2015 Plan Maszyny Turinga (Niedeterministyczna) maszyna Turinga M = (A, Q, q 0, F, T, B, δ) A
Automat ze stosem. Języki formalne i automaty. Dr inż. Janusz Majewski Katedra Informatyki
Automat ze stosem Języki formalne i automaty Dr inż. Janusz Majewski Katedra Informatyki Automat ze stosem (1) dno stosu Stos wierzchołek stosu Wejście # B B A B A B A B a b b a b a b $ q i Automat ze
Matematyczne Podstawy Informatyki
Matematyczne Podstawy Informatyki dr inż. Andrzej Grosser Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Rok akademicki 2013/2014 Automat ze stosem Automat ze stosem to szóstka
Języki, automaty i obliczenia
Języki, automaty i obliczenia Wykład 12: Gramatyki i inne modele równoważne maszynom Turinga. Wstęp do złożoności obliczeniowej Sławomir Lasota Uniwersytet Warszawski 20 maja 2015 Plan 1 Gramatyki 2 Języki
Maszyna Turinga języki
Maszyna Turinga języki Teoria automatów i języków formalnych Dr inż. Janusz Majewski Katedra Informatyki Maszyna Turinga (1) b b b A B C B D A B C b b Q Zależnie od symbolu obserwowanego przez głowicę
Obliczenia inspirowane Naturą
Obliczenia inspirowane Naturą Wykład 01 Modele obliczeń Jarosław Miszczak IITiS PAN Gliwice 05/10/2016 1 / 33 1 2 3 4 5 6 2 / 33 Co to znaczy obliczać? Co to znaczy obliczać? Deterministyczna maszyna Turinga
złożony ze słów zerojedynkowych o długości co najmniej 3, w których druga i trzecia litera od końca sa
Zadanie 1. Rozważmy jezyk złożony ze słów zerojedynkowych o długości co najmniej 3, w których druga i trzecia litera od końca sa równe. Narysować diagram minimalnego automatu deterministycznego akceptujacego
Hierarchia Chomsky ego Maszyna Turinga
Hierarchia Chomsky ego Maszyna Turinga Języki formalne i automaty Dr inż. Janusz Majewski Katedra Informatyki Gramatyka Gramatyką G nazywamy czwórkę uporządkowaną gdzie: G = V skończony zbiór
1 Automaty niedeterministyczne
Szymon Toruńczyk 1 Automaty niedeterministyczne Automat niedeterministyczny A jest wyznaczony przez następujące składniki: Alfabet skończony A Zbiór stanów Q Zbiór stanów początkowych Q I Zbiór stanów
Przykład: Σ = {0, 1} Σ - zbiór wszystkich skończonych ciagów binarnych. L 1 = {0, 00, 000,...,1, 11, 111,... } L 2 = {01, 1010, 001, 11}
Języki Ustalmy pewien skończony zbiór symboli Σ zwany alfabetem. Zbiór Σ zawiera wszystkie skończone ciagi symboli z Σ. Podzbiór L Σ nazywamy językiem a x L nazywamy słowem. Specjalne słowo puste oznaczamy
Języki formalne i automaty Ćwiczenia 7
Języki formalne i automaty Ćwiczenia 7 Autor: Marcin Orchel Spis treści Spis treści... 1 Wstęp teoretyczny... 2 Automaty... 2 Cechy automatów... 4 Łączenie automatów... 4 Konwersja automatu do wyrażenia
Hierarchia Chomsky ego
Hierarchia Chomsky ego Gramatyki nieograniczone Def. Gramatyką nieograniczoną (albo typu 0) nazywamy uporządkowaną czwórkę G= gdzie: % Σ - skończony alfabet symboli końcowych (alfabet, nad którym
JAO - Wprowadzenie do Gramatyk bezkontekstowych
JAO - Wprowadzenie do Gramatyk bezkontekstowych Definicja gramatyki bezkontekstowej Podstawowymi narzędziami abstrakcyjnymi do opisu języków formalnych są gramatyki i automaty. Gramatyka bezkontekstowa
Języki formalne i automaty Ćwiczenia 1
Języki formalne i automaty Ćwiczenia Autor: Marcin Orchel Spis treści Spis treści... Wstęp teoretyczny... 2 Wprowadzenie do teorii języków formalnych... 2 Gramatyki... 5 Rodzaje gramatyk... 7 Zadania...
Jaki język zrozumie automat?
Jaki język zrozumie automat? Wojciech Dzik Instytut Matematyki Uniwersytet Śląski Katowice wojciech.dzik@us.edu.pl 7. Forum Matematyków Polskich, 12-17 września 2016, Olsztyn Prosty Automat do kawy Przemawiamy
Języki formalne i automaty Ćwiczenia 4
Języki formalne i automaty Ćwiczenia 4 Autor: Marcin Orchel Spis treści Spis treści... 1 Wstęp teoretyczny... 2 Sposób tworzenia deterministycznego automatu skończonego... 4 Intuicyjne rozumienie konstrukcji
Wyrażenie nawiasowe. Wyrażenie puste jest poprawnym wyrażeniem nawiasowym.
Wyrażenie nawiasowe Wyrażeniem nawiasowym nazywamy dowolny skończony ciąg nawiasów. Każdemu nawiasowi otwierającemu odpowiada dokładnie jeden nawias zamykający. Poprawne wyrażenie nawiasowe definiujemy
Języki, automaty i obliczenia
Języki, automaty i obliczenia Wykład 9: Własności języków bezkontekstowych Sławomir Lasota Uniwersytet Warszawski 27 kwietnia 2016 Plan 1 Pompowanie języków bezkontekstowych 2 Własności domknięcia 3 Obrazy
Rozwiązania około dwustu łatwych zadań z języków formalnych i złożoności obliczeniowej i być może jednego chyba trudnego (w trakcie tworzenia)
Rozwiązania około dwustu łatwych zadań z języków formalnych i złożoności obliczeniowej i być może jednego chyba trudnego (w trakcie tworzenia) Kamil Matuszewski 20 lutego 2017 22 lutego 2017 Zadania, które
ZLOŻONOŚĆ OBLICZENIOWA - WYK. 2
ZLOŻONOŚĆ OBLICZENIOWA - WYK. 2 1. Twierdzenie Sipsera: Dla dowolnej maszyny M działającej w pamięci S(n) istnieje maszyna M taka, że: L(M) = L(M ), M działa w pamięci S(n), M ma własność stopu. Dowód:
Obliczenia inspirowane Naturą
Obliczenia inspirowane Naturą Wykład 01 Od maszyn Turinga do automatów komórkowych Jarosław Miszczak IITiS PAN Gliwice 03/03/2016 1 / 16 1 2 3 Krótka historia Znaczenie 2 / 16 Czego dowiedzieliśmy się
Wykład5,str.1. Maszyny ze stosem ... 1,0 λ r. λ,z λ
Wykład5,str1 p 0,Z 0Z 0,0 00 q λ,z λ r Wykład5,str1 Słowo na wejściu: 0011 część nieprzeczytana Z p 0,Z 0Z 0,0 00 q λ,z λ r Wykład5,str1 Słowo na wejściu: 0011 część nieprzeczytana 0 Z p 0,Z 0Z 0,0 00
MODELOWANIE RZECZYWISTOŚCI
MODELOWANIE RZECZYWISTOŚCI Daniel Wójcik Instytut Biologii Doświadczalnej PAN d.wojcik@nencki.gov.pl tel. 022 5892 424 http://www.neuroinf.pl/members/danek/swps/ Podręcznik Iwo Białynicki-Birula Iwona
Języki formalne i automaty Ćwiczenia 2
Języki formalne i automaty Ćwiczenia 2 Autor: Marcin Orchel Spis treści Spis treści... 1 Wstęp teoretyczny... 2 Metoda brute force... 2 Konwersja do postaci normalnej Chomskiego... 5 Algorytm Cocke a-youngera-kasamiego
JAO - Języki, Automaty i Obliczenia - Wykład 2. JAO - Języki, Automaty i Obliczenia - Wykład 2
Dowodzenie nieregularności języka [lemat o pompowaniu] Jeśli L regularny to istnieje stała c spełniająca : jeżeli z L, z c to istnieje dekompozycja w = u v x tak, że uv i x L dla każdego i 0 [lemat o skończonej
Wprowadzenie do maszyny Turinga
Wprowadzenie do maszyny Turinga Deterministyczna Maszyna Turinga (DTM) jest pewną klasą abstrakcyjnych modeli obliczeń. W tej instrukcji omówimy konkretną maszynę Turinga, którą będziemy zajmować się podczas
Matematyczna wieża Babel. 3. Gramatyki o językach bezkontekstowych materiały do ćwiczeń
Matematyczna wieża Babel. 3. Gramatyki o językach bezkontekstowych materiały do ćwiczeń Projekt Matematyka dla ciekawych świata spisał: Michał Korch 21 marca 2019 1 Gramatyki! Gramatyka to taki przepis
Języki formalne i automaty Ćwiczenia 3
Języki formalne i automaty Ćwiczenia 3 Autor: Marcin Orchel Spis treści Spis treści... 1 Wstęp teoretyczny... 2 Algorytm LL(1)... 2 Definicja zbiorów FIRST1 i FOLLOW1... 3 Konstrukcja tabeli parsowania
JAO - lematy o pompowaniu dla jezykow bezkontekstowy
JAO - lematy o pompowaniu dla jezykow bezkontekstowych Postać normalna Chomsky ego Gramatyka G ze zbiorem nieterminali N i zbiorem terminali T jest w postaci normalnej Chomsky ego wtw gdy każda produkcja
Temat: Zastosowanie wyrażeń regularnych do syntezy i analizy automatów skończonych
Opracował: dr inż. Zbigniew Buchalski KATEDRA INFORMATYKI TECHNICZNEJ Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych ćwiczenie Temat: Zastosowanie wyrażeń regularnych do syntezy i analizy automatów
KATEDRA INFORMATYKI TECHNICZNEJ. Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych. ćwiczenie 204
Opracował: prof. dr hab. inż. Jan Kazimierczak KATEDA INFOMATYKI TECHNICZNEJ Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych ćwiczenie 204 Temat: Hardware'owa implementacja automatu skończonego pełniącego
Minimalizacja automatów niedeterministycznych na słowach skończonych i nieskończonych
Szczepan Hummel Minimalizacja automatów niedeterministycznych na słowach skończonych i nieskończonych 24.11.2005 1. Minimalizacja automatów deterministycznych na słowach skończonych (DFA) [HU] relacja
Maszyna Turinga. Algorytm. czy program???? Problem Hilberta: Przykłady algorytmów. Cechy algorytmu: Pojęcie algorytmu
Problem Hilberta: 9 Czy istnieje ogólna mechaniczna procedura, która w zasadzie pozwoliłaby nam po kolei rozwiązać wszystkie matematyczne problemy (należące do odpowiednio zdefiniowanej klasy)? 2 Przykłady
ZŁOŻONOŚĆ OBLICZENIOWA ALGORYTMÓW
ZŁOŻONOŚĆ OBLICZENIOWA ALGORYTMÓW NIEDETERMINISTYCZNE MASZYNY TURINGA Bartosz Zieliński Katedra Fizyki Teoretycznej i Informatyki Zima 2011-2012 NIEDETERMINISTYCZNE MASZYNY TURINGA DEFINICJA: NIEDETERMINISTYCZNA
Efektywność Procedur Obliczeniowych. wykład 5
Efektywność Procedur Obliczeniowych wykład 5 Modele procesu obliczeń (8) Jedno-, wielotaśmowa MT oraz maszyna RAM są równoważne w przypadku, jeśli dany problem jest rozwiązywany przez jeden model w czasie
Typy algorytmów losowych. ALP520 - Wykład z Algorytmów Probabilistycznych p.2
Typy algorytmów losowych ALP520 - Wykład z Algorytmów Probabilistycznych p.2 Typy algorytmów losowych Las Vegas - zawsze daje prawidłowa odpowiedź (różny czas działania). Przykład: RandQuicksort ALP520
3. Macierze i Układy Równań Liniowych
3. Macierze i Układy Równań Liniowych Rozważamy równanie macierzowe z końcówki ostatniego wykładu ( ) 3 1 X = 4 1 ( ) 2 5 Podstawiając X = ( ) x y i wymnażając, otrzymujemy układ 2 równań liniowych 3x
Algorytmy stochastyczne, wykład 05 Systemy Liendenmayera, modelowanie roślin
Algorytmy stochastyczne, wykład 5, modelowanie roślin Jarosław Piersa Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika 214-3-2 1 2 3 ze stosem Przypomnienie gramatyka to system (Σ, A, s,
Złożoność obliczeniowa zadania, zestaw 2
Złożoność obliczeniowa zadania, zestaw 2 Określanie złożoności obliczeniowej algorytmów, obliczanie pesymistycznej i oczekiwanej złożoności obliczeniowej 1. Dana jest tablica jednowymiarowa A o rozmiarze
Maszyna Turinga, ang. Turing Machine (TM)
Maszyna Turinga, ang. Turing Machine (TM) Alan Turing wybitny angielski matematyk, logik i kryptolog, jeden z najważniejszych twórców informatyki teoretycznej, któremu zawdzięczamy pojęcie maszyny Turinga
1. Synteza automatów Moore a i Mealy realizujących zadane przekształcenie 2. Transformacja automatu Moore a w automat Mealy i odwrotnie
Opracował: dr hab. inż. Jan Magott KATEDRA INFORMATYKI TECHNICZNEJ Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych ćwiczenie 207 Temat: Automaty Moore'a i Mealy 1. Cel ćwiczenia Celem ćwiczenia jest
Turing i jego maszyny
Turing Magdalena Lewandowska Politechnika Śląska, wydział MS, semestr VI 20 kwietnia 2016 1 Kim był Alan Turing? Biografia 2 3 Mrówka Langtona Bomba Turinga 4 Biografia Kim był Alan Turing? Biografia Alan
2.2. Gramatyki, wyprowadzenia, hierarchia Chomsky'ego
2.2. Gramatyki, wyprowadzenia, hierarchia Chomsky'ego Gramatyka Gramatyką G nazywamy czwórkę uporządkowaną G = gdzie: N zbiór symboli nieterminalnych, T zbiór symboli terminalnych, P zbiór
Materiały: kartki papieru (5 x 5 kolorów), piłeczki pingpongowe (5 x 5 kolorów), worek (nieprzeźroczysty).
Pudełkowy komputer Materiały: kartki papieru (5 x 5 kolorów), piłeczki pingpongowe (5 x 5 kolorów), worek (nieprzeźroczysty). Budowa komputera: każdy uczeń składa proste pudełko metodą orgiami Zobacz:
Języki regularne, rozpoznawanie wzorców regularnych, automaty skończone, wyrażenia regularne
Języki regularne, rozpoznawanie wzorców regularnych, automaty skończone, wyrażenia regularne Automat skończony (AS), ang. Finite Automaton (FA) Automat skończony (automat czytający, maszyna Rabina-Scotta)
R O Z D Z I A Ł V I I I
R O Z D Z I A Ł V I I I 1. Definicja maszyny Turinga Najprostszym narzędziem do rozpoznawania języków jest automat skończony. Nie ma on pamięci zewnętrznej, a jedynie wewnętrzną. Informacją pamiętaną z
1 Układy równań liniowych
II Metoda Gaussa-Jordana Na wykładzie zajmujemy się układami równań liniowych, pojawi się też po raz pierwszy macierz Formalną (i porządną) teorią macierzy zajmiemy się na kolejnych wykładach Na razie
Modele Obliczeń. Wykład 1 - Wprowadzenie. Marcin Szczuka. Instytut Matematyki, Uniwersytet Warszawski
Modele Obliczeń Wykład 1 - Wprowadzenie Marcin Szczuka Instytut Matematyki, Uniwersytet Warszawski Wykład fakultatywny w semestrze zimowym 2014/2015 Marcin Szczuka (MIMUW) Modele Obliczeń 2014/2015 1 /
1 Maszyny Turinga. stan 1 litera 1 litera 2 ruch stan 2. Matematycznie P S (Q {B}) (Q {B}) {L, R, } S
1 Maszyny Turinga Mając pewną wiedze techniczną na temat budowy komputera trudno przyjąć model rozważany wcześniej. Należy też uświadomoć sobie, że prosty pomysł łatwiej zrealizować technicznie. Tę zaletę
Teoria obliczeń czyli czego komputery zrobić nie mogą
Teoria obliczeń czyli czego komputery zrobić nie mogą Marek Zaionc Uniwersytet Jagielloński Materiały do wykładu: P. Odifreddi, Classical Recursion Theory, North Holland 1989. J.H. Hopcroft, J.D. Ullman
Złożoność obliczeniowa. wykład 1
Złożoność obliczeniowa wykład 1 Dwa wykłady: wtorek / środa różnice niewielkie Sprawy organizacyjne wtorek: trochę szybciej, parę dodatkowych rzeczy dedykowana grupa ćw. M. Pilipczuka - ale śmiało mogą
Metody Kompilacji Wykład 8 Analiza Syntaktyczna cd. Włodzimierz Bielecki WI ZUT
Metody Kompilacji Wykład 8 Analiza Syntaktyczna cd Analiza Syntaktyczna Wstęp Parser dostaje na wejściu ciąg tokenów od analizatora leksykalnego i sprawdza: czy ciąg ten może być generowany przez gramatykę.
Maszyny Turinga i problemy nierozstrzygalne. Maszyny Turinga i problemy nierozstrzygalne
Maszyny Turinga Maszyna Turinga jest automatem ta±mowym, skª da si z ta±my (tablicy symboli) potencjalnie niesko«czonej w prawo, zakªadamy,»e w prawie wszystkich (tzn. wszystkich poza sko«czon liczb )
Elementy Teorii Obliczeń
Wykład 2 Instytut Matematyki i Informatyki Akademia Jana Długosza w Częstochowie 10 stycznia 2009 Maszyna Turinga uwagi wstępne Maszyna Turinga (1936 r.) to jedno z najpiękniejszych i najbardziej intrygujacych
TEORIA ZŁOŻONOŚCI PROBLEMY I ALGORYTMY OGRANICZENIE DOLNE I GÓRNE PROJEKTOWANIE ALGORYTMÓW I METODY SZTUCZNEJ INTELIGENCJI
PROJEKTOWANIE ALGORYTMÓW I METODY SZTUCZNEJ INTELIGENCJI TEORIA ZŁOŻONOŚCI I MASZYNA TURINGA TEORIA ZŁOŻONOŚCI Teoria złożoności poszukuje rozwiązania dla problemów, które są algorytmicznie trudne do rozwiązania
Definicja 2. Twierdzenie 1. Definicja 3
INSTYTUT CYBERNETYKI TECHNICZNEJ POLITECHNIKI WROCŁAWSKIEJ ZAKŁAD SZTUCZNEJ INTELIGENCJI I AUTOMATÓW Ćwiczenia laboratoryjne z Logiki Układów Cyfrowych ćwiczenie 205 temat: ZASTOSOWANIE JĘZYKA WYRAŻEŃ
Nierówność Krafta-McMillana, Kodowanie Huffmana
Nierówność Krafta-McMillana, Kodowanie Huffmana Kodowanie i kompresja informacji - Wykład 2 1 marca 2010 Test na jednoznaczna dekodowalność Kod a jest prefiksem kodu b jeśli b jest postaci ax. x nazywamy
AUTOMATY SKOŃCZONE. Automat skończony przedstawiamy formalnie jako uporządkowaną piątkę:
AUTOMATY SKOŃCZONE DETERMINISTYCZNY AUTOMAT SKOŃCZONY - DAS Automat skończony jest modelem matematycznym systemu o dyskretnych wejściach i wyjściach. System taki w danej chwili może znajdować się w jednym
Języki, automaty i obliczenia
Języki, automaty i obliczenia Szymon Toruńczyk 2018 Szymon Toruńczyk. Data ostatniej modyfikacji: 2018-09-18 15:35:20+02:00 Spis treści 1 Słowa i języki 7 2 Języki regularne 11 2.1 Wyrażenia regularne
Metody Kompilacji Wykład 7 Analiza Syntaktyczna
Metody Kompilacji Wykład 7 Analiza Syntaktyczna Parsowanie Parsowanie jest to proces określenia jak ciąg terminali może być generowany przez gramatykę. Włodzimierz Bielecki WI ZUT 2/57 Parsowanie Dla każdej
Przekształcanie wykresów.
Sławomir Jemielity Przekształcanie wykresów. Pokażemy tu, jak zmiana we wzorze funkcji wpływa na wygląd jej wykresu. A. Mamy wykres funkcji f(). Jak będzie wyglądał wykres f ( ) + a, a stała? ( ) f ( )
Zasada indukcji matematycznej
Zasada indukcji matematycznej Twierdzenie 1 (Zasada indukcji matematycznej). Niech ϕ(n) będzie formą zdaniową zmiennej n N 0. Załóżmy, że istnieje n 0 N 0 takie, że 1. ϕ(n 0 ) jest zdaniem prawdziwym,.
Gramatyki, wyprowadzenia, hierarchia Chomsky ego. Gramatyka
Gramatyki, wyprowadzenia, hierarchia Chomsky ego Teoria automatów i języków formalnych Dr inŝ. Janusz Majewski Katedra Informatyki Gramatyka Gramatyką G nazywamy czwórkę uporządkowaną gdzie: G =
Edytor tekstu MS Word 2010 PL. Edytor tekstu MS Word 2010 PL umożliwia wykonywanie działań matematycznych.
Edytor tekstu MS Word 2010 PL. Edytor tekstu MS Word 2010 PL umożliwia wykonywanie działań matematycznych. Edytor tekstu MS Word 2010 PL umożliwia wykonywanie działań matematycznych, pod warunkiem, że
1. Maszyna Turinga, gramatyki formalne i ONP
1. Maszyna uringa, gramatyki formalne i OP 1.1.Maszyna uringa Automat skończony składa się ze skończonego zbioru stanów i zbioru przejść ze stanu do stanu, zachodzących przy różnych symbolach wejściowych
Matematyczne Podstawy Informatyki
Matematyczne Podstawy Informatyki dr inż. Andrzej Grosser Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Rok akademicki 2013/2014 Gramatyki bezkontekstowe I Gramatyką bezkontekstową
Rozdział 4. Macierze szyfrujące. 4.1 Algebra liniowa modulo 26
Rozdział 4 Macierze szyfrujące Opiszemy system kryptograficzny oparty o rachunek macierzowy. W dalszym ciągu przypuszczamy, że dany jest 26 literowy alfabet, w którym utożsamiamy litery i liczby tak, jak
PROBLEMY NIEROZSTRZYGALNE
PROBLEMY NIEROZSTRZYGALNE Zestaw 1: T Przykład - problem domina T Czy podanym zestawem kafelków można pokryć dowolny płaski obszar zachowując odpowiedniość kolorów na styku kafelków? (dysponujemy nieograniczoną
Klasyczne i kwantowe podejście do teorii automatów i języków formalnych p.1/33
Klasyczne i kwantowe podejście do teorii automatów i języków formalnych mgr inż. Olga Siedlecka olga.siedlecka@icis.pcz.pl Zakład Informatyki Stosowanej i Inżynierii Oprogramowania Instytut Informatyki
Niestandardowe modele obliczeń
Niestandardowe modele obliczeń Zadania kwalifikacyjne Adam Michalik 11 czerwca 2014 1 Uwagi ogólne Do kwalifikacji należy rozwiązać wszystkie zadania o maszynach Turinga, oraz kilka zadań matematycznych
Przykłady zastosowań funkcji tekstowych w arkuszu kalkulacyjnym
S t r o n a 1 Bożena Ignatowska Przykłady zastosowań funkcji tekstowych w arkuszu kalkulacyjnym Wprowadzenie W artykule zostaną omówione zagadnienia związane z wykorzystaniem funkcji tekstowych w arkuszu
Maszyna Turinga (Algorytmy Część III)
Maszyna Turinga (Algorytmy Część III) wer. 9 z drobnymi modyfikacjami! Wojciech Myszka 2018-12-18 08:22:34 +0100 Upraszczanie danych Komputery są coraz szybsze i sprawniejsze. Na potrzeby rozważań naukowych
Odmiany maszyny Turinga. dr hab. inż. Joanna Józefowska, prof. PP 1
Odmiany maszyny Turinga 1 Uniwersalna maszyna Turinga Uniwersalna maszyna U nad alfabetem A k jest to maszyna definiująca funkcje: f U, n+1 = {((w(i 1, I 2,..., I n )),y) w - opis maszyny T za pomocą słowa,
Polcode Code Contest PHP-10.09
Polcode Code Contest PHP-10.09 Przedmiotem konkursu jest napisanie w języku PHP programu, którego wykonanie spowoduje rozwiązanie zadanego problemu i wyświetlenie rezultatu. Zadanie konkursowe Celem zadania
Automaty Büchi ego i równoważne modele obliczeń
Politechnika Krakowska im. Tadeusza Kościuszki Wydział Fizyki, Matematyki i Informatyki Kierunek Matematyka Paulina Barbara Rozwód Automaty Büchi ego i równoważne modele obliczeń praca magisterska studia
JĘZYKIFORMALNE IMETODYKOMPILACJI
Stefan Sokołowski JĘZYKIFORMALNE IMETODYKOMPILACJI Inst. Informatyki Stosowanej, PWSZ Elbląg, 2009/2010 JĘZYKI FORMALNE reguły gry Wykład1,2X2009,str.1 Zasadnicze informacje: http://iis.pwsz.elblag.pl/
Wyrażenia regularne.
Teoretyczne podstawy informatyki Wykład : Wyrażenia regularne. Prof. dr hab. Elżbieta Richter-Wąs.2.202 Wyrażenia regularne Wyrażenia regularne (ang. regular expressions) stanowią algebraiczny sposób definiowania
Teoretyczne podstawy informatyki
Teoretyczne podstawy informatyki Wykład 10b: Wzorce i automaty. http://hibiscus.if.uj.edu.pl/~erichter/dydaktyka2009/tpi-2009 Prof. dr hab. Elżbieta Richter-Wąs 1 Wzorce i automaty Problematyka wzorców
0 + 0 = 0, = 1, = 1, = 0.
5 Kody liniowe Jak już wiemy, w celu przesłania zakodowanego tekstu dzielimy go na bloki i do każdego z bloków dodajemy tak zwane bity sprawdzające. Bity te są w ścisłej zależności z bitami informacyjnymi,
Jednym z najprostszych sposobów porządkowania jest technika stosowana przy sortowaniu listów:
Jednym z najprostszych sposobów porządkowania jest technika stosowana przy sortowaniu listów: Listy rozkładane są do różnych przegródek. O tym, do której z nich trafi koperta, decydują różne fragmenty
Zamiana ułamków na procenty oraz procentów na ułamki
Zamiana ułamków na procenty oraz procentów na ułamki Przedmowa Opracowanie to jest napisane z myślą o uczniach szkół podstawowych którzy całkowicie nie rozumieją o co chodzi w procentach. Prawie wszystko
Zadanie 1. Zmiana systemów. Zadanie 2. Szyfr Cezara. Zadanie 3. Czy liczba jest doskonała. Zadanie 4. Rozkład liczby na czynniki pierwsze Zadanie 5.
Zadanie 1. Zmiana systemów. Zadanie 2. Szyfr Cezara. Zadanie 3. Czy liczba jest doskonała. Zadanie 4. Rozkład liczby na czynniki pierwsze Zadanie 5. Schemat Hornera. Wyjaśnienie: Zadanie 1. Pozycyjne reprezentacje
Matematyczne Podstawy Informatyki
Matematyczne Podstawy Informatyki dr inż. Andrzej Grosser Instytut Informatyki Teoretycznej i Stosowanej Politechnika Częstochowska Rok akademicki 2013/2014 Stany równoważne Stany p i q są równoważne,
Alan M. TURING. Matematyk u progu współczesnej informatyki
Alan M. TURING n=0 1 n! Matematyk u progu współczesnej informatyki Wykład 5. Alan Turing u progu współczesnej informatyki O co pytał Alan TURING? Czym jest algorytm? Czy wszystkie problemy da się rozwiązać
JĘZYKI FORMALNE I METODY KOMPILACJI
Stefan Sokołowski JĘZYKI FORMALNE I METODY KOMPILACJI Inst Informatyki Stosowanej, PWSZ Elbląg, 2015/2016 JĘZYKI FORMALNE reguły gry Wykład1,str1 Zasadnicze informacje: http://iispwszelblagpl/ stefan/dydaktyka/jezform
R O Z D Z I A Ł V I I
R O Z D Z I A Ł V I I 1. Podstawowe definicje RozwaŜane w poprzednim rozdziale automaty Rabina-Scotta były urządzeniami o bardzo ograniczonej zdolności przechowywania informacji. Rzeczywista pojemność
Matematyka Dyskretna 2/2008 rozwiązania. x 2 = 5x 6 (1) s 1 = Aα 1 + Bβ 1. A + B = c 2 A + 3 B = d
C. Bagiński Materiały dydaktyczne 1 Matematyka Dyskretna /008 rozwiązania 1. W każdym z następujących przypadków podać jawny wzór na s n i udowodnić indukcyjnie jego poprawność: (a) s 0 3, s 1 6, oraz
Języki formalne i automaty Ćwiczenia 8
Języki formalne i automaty Ćwiczenia 8 Autor: Marcin Orchel Spis treści Spis treści... 1 Wstęp teoretyczny... 2 Konwersja NFA do DFA... 2 Minimalizacja liczby stanów DFA... 4 Konwersja automatu DFA do
Algorytmy Równoległe i Rozproszone Część X - Algorytmy samostabilizujące.
Algorytmy Równoległe i Rozproszone Część X - Algorytmy samostabilizujące. Łukasz Kuszner pokój 209, WETI http://www.sphere.pl/ kuszner/ kuszner@sphere.pl Oficjalna strona wykładu http://www.sphere.pl/
Parsery LL(1) Teoria kompilacji. Dr inż. Janusz Majewski Katedra Informatyki
Parsery LL() Teoria kompilacji Dr inż. Janusz Majewski Katedra Informatyki Zadanie analizy generacyjnej (zstępującej, top-down) symbol początkowy już terminale wyprowadzenie lewostronne pierwszy od lewej
Wstęp wszystkich przedszkolakach i pierwszakach, Wielki elementarz, małe i duże litery, drukowane, jak i pisane, poprawnie czytać,
Wstęp Program edukacyjny pt. Mój pierwszy alfabet został stworzony z myślą o wszystkich przedszkolakach i pierwszakach, którzy chcieliby nauczyć się rozpoznawania liter, jednocześnie dobrze się bawiąc.
Teoretyczne podstawy informatyki
Teoretyczne podstawy informatyki Wykład 10: Opis wzorców - wyrażenia regularne. http://hibiscus.if.uj.edu.pl/~erichter/dydaktyka2010/tpi-2010 Prof. dr hab. Elżbieta Richter-Wąs 1 Wyrażenia regularne Wyrażenia