Języki, automaty i obliczenia/Ćwiczenia 12: Języki kontekstowe i automat liniowo ograniczony. Maszyna Turinga: Różnice pomiędzy wersjami
m Zastępowanie tekstu – „\displaystyle ” na „” |
m Zastępowanie tekstu – „,↵</math>” na „</math>,” |
||
(Nie pokazano 5 pośrednich wersji utworzonych przez tego samego użytkownika) | |||
Linia 5: | Linia 5: | ||
język palindromów, czyli: | język palindromów, czyli: | ||
<center><math> | <center><math> | ||
L=\left\{w \overleftarrow{w} \ : : \ : w\in \left\{0,1\right\}^*\right\} | L=\left\{w \overleftarrow{w} \ : : \ : w\in \left\{0,1\right\}^*\right\}</math></center> | ||
</math></center> | |||
Sprawdź, że: | Sprawdź, że: | ||
Linia 131: | Linia 130: | ||
Niech będzie dany alfabet <math>\Sigma_I =\left\{0,1,\clubsuit\right\}</math>. Zaprojektuj maszynę Turinga akceptująca język postaci: | Niech będzie dany alfabet <math>\Sigma_I =\left\{0,1,\clubsuit\right\}</math>. Zaprojektuj maszynę Turinga akceptująca język postaci: | ||
<center><math> | <center><math> | ||
L=\left\{u\clubsuit w\ : : \ : u,w\in \left\{0,1\right\}^*\right\} | L=\left\{u\clubsuit w\ : : \ : u,w\in \left\{0,1\right\}^*\right\}</math></center> | ||
</math></center> | |||
Zaprojektuj maszynę Turinga <math>\mathcal{M}=(\Sigma _{T},S,f,s_{0},S_{F})</math>, która akceptuje język <math>L</math>. Następnie: | Zaprojektuj maszynę Turinga <math>\mathcal{M}=(\Sigma _{T},S,f,s_{0},S_{F})</math>, która akceptuje język <math>L</math>. Następnie: | ||
Linia 222: | Linia 220: | ||
W trakcie wykładu rozważaliśmy język | W trakcie wykładu rozważaliśmy język | ||
<center><math> | <center><math> | ||
L=\{3^k\ : : \ : k=i\cdot j\text{ dla pewnych } i,j> 1\} | L=\{3^k\ : : \ : k=i\cdot j\text{ dla pewnych } i,j> 1\}</math>,</center> | ||
</math></center> | |||
wykazując, że <math>L\in | wykazując, że <math>L\in</math> '''NP''' . | ||
Uzasadnij, że także <center><math>L\in | Uzasadnij, że także <center><math>L\in</math> '''P''' <math></math>.</center> | ||
}} | }} | ||
Linia 254: | Linia 251: | ||
W oczywisty sposób otrzymujemy, że ilość wymaganych kroków czasowych maszyny jest ograniczona przez wielomian (dla dużych <math>n</math>). | W oczywisty sposób otrzymujemy, że ilość wymaganych kroków czasowych maszyny jest ograniczona przez wielomian (dla dużych <math>n</math>). | ||
Dla małych <math>n</math> możemy zawsze rozbudować maszynę tak, aby akceptowała słowa bez żadnego testowania. | Dla małych <math>n</math> możemy zawsze rozbudować maszynę tak, aby akceptowała słowa bez żadnego testowania. | ||
Zatem <math>L\in | Zatem <math>L\in</math> '''P''' . | ||
</div></div> | </div></div> | ||
Linia 310: | Linia 307: | ||
Skonstruuj maszynę Turinga <math>\mathcal{MT}</math> akceptującą język: | Skonstruuj maszynę Turinga <math>\mathcal{MT}</math> akceptującą język: | ||
<center><math> | <center><math> | ||
L_1=\left\{www\ : : \ : w\in \left\{\circ,\bullet,\star\right\}^*\right\} | L_1=\left\{www\ : : \ : w\in \left\{\circ,\bullet,\star\right\}^*\right\}</math></center> | ||
</math></center> | |||
}} | }} |
Aktualna wersja na dzień 21:49, 11 wrz 2023
Ćwiczenia 12
Ćwiczenie 1
Rozważmy maszynę Turinga z wykładu (Przykład 1.2) akceptującą język palindromów, czyli:
Sprawdź, że:
oraz że
- .
Ćwiczenie 2
Niech będzie dany alfabet . Zaprojektuj maszynę Turinga akceptująca język postaci:
Zaprojektuj maszynę Turinga , która akceptuje język . Następnie:
- Wypisz elementy składowe maszyny , tzn. zbiory oraz funkcję przejścia (zapewnij, aby ).
- Wykonaj symulację maszyny na słowie ,
- na słowie ,
- oraz na słowie .
Ćwiczenie 3
W trakcie wykładu rozważaliśmy język
wykazując, że NP .
Uzasadnij, że takżeĆwiczenie 4
Uzasadnij, że funkcja jest konstruowalna pamięciowo.
Ćwiczenie 5
Uzasadnij, że funkcja jest konstruowalna pamięciowo.
Ćwiczenie 6
Skonstruuj maszynę Turinga akceptującą język:
Ćwiczenie 7
Uzasadnij, że język
jest rozpoznawany przez pewną niedeterministyczna maszynę Turinga .
Podpowiedź: wykorzystaj konstrukcję z wyrocznią. Dla słowa wejściowego przeprowadź weryfikację w trzech etapach: konstrukcja słów , gdzie (wyrocznia), sklejanie, weryfikacja, czy .