Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

Formální definice Konečná množina vnitřních stavů Q Konečná vstupní abeceda A Počáteční stav q 0 Množina přijímacích stavů K.

Podobné prezentace


Prezentace na téma: "Formální definice Konečná množina vnitřních stavů Q Konečná vstupní abeceda A Počáteční stav q 0 Množina přijímacích stavů K."— Transkript prezentace:

1 Formální definice Konečná množina vnitřních stavů Q Konečná vstupní abeceda A Počáteční stav q 0 Množina přijímacích stavů K

2 Automat na kávu Q={0,1,2,3,4,5} A={1,2,5} q 0 =0 K={5} 012345 1123455 2234555 5555555

3 Automat na rozpoznávání jazyka Vstupní abeceda A Množina A * všech posloupností symbolů z A (slov) Jazyk J je podmnožina A * Pokud se po přečtení slova dostane do stavu z K, přijímá slovo Automat přijímá právě slova z J, rozpoznává J

4 Příklad A={0,1} J je jazyk tvořený slovy se sudým počtem jedniček Q={q s, q L } q 0 = q s p(q s,0)= q s, p(q L,0)= q L, p(q S,1)= q L, p(q L,1)= q s qsqs qLqL 1

5 Úkol Navrhněte konečný automat nad abecedou {0,1}, který bude rozpoznávat jazyk tvořený slovy, kde je každý znak zdvojený Například 001100, 00, 00001111 má být přijato 00110, 001101, 0 nemá být přijato

6 Úkol Navrhněte konečný automat nad abecedou {0,1}, který bude rozpoznávat jazyk tvořený souměrnými slovy o sudé délce. Například 001100, 00, 0000110000 má být přijato 00110, 001101, 0, 00100 nemá být přijato

7 Regulární jazyky Jazyky rozpoznatelné konečným automatem Pro manipulaci nepotřebují ukládat do paměti nic kromě konečně mnoha hodnot Vzato do důsledku jsou všechny jazyky regulární a všechny počítače konečné automaty Ve skutečnosti se jedná o jazyky, které lze interpretovat (Basic, Python, makra pro Excel) Jazyky typu Pascalu, C, vyžadují paměť, zásobník

8 Nedeterministický konečný automat Přechodová funkce není jednoznačná Příklad: automat rozpoznává jazyk tvořený slovy zakončenými posloupností 010 q0q0 q1q1 q2q2 qKqK 0,1 1 0 0

9 Převod NKA na KA q0q0 q1q1 q 02 q2q2 q 01 q 0K q 12 q 1K q 012 q 2K q 12K q 01K q 02K q 012K qKqK 1 0 1

10 Převod NKA na KA q0q0 q1q1 q 02 q2q2 q 01 q 0K q 12 q 1K q 012 q 2K q 12K q 01K q 02K q 012K qKqK 1 0 0 1 0 1

11 Převod NKA na KA Každý nedeterministický konečný automat lze převést na deterministický konečný automat. Množina rozpoznávaných jazyků je stejná (regulární jazyky) Takto vzniklý deterministický konečný automat může mít až 2 n vnitřních stavů, efektivita výpočtu tedy může být katastrofální. Často se ale většina stavů nevyužije a efektivita výpočtu je přijatelná.


Stáhnout ppt "Formální definice Konečná množina vnitřních stavů Q Konečná vstupní abeceda A Počáteční stav q 0 Množina přijímacích stavů K."

Podobné prezentace


Reklamy Google