Véges automata determinizálása, összefüggő automaták, algoritmikus eldöntési probléma

Véges automata determinizálása

Minden véges nemdeterminisztikus automatához megkonstruálható egy véges determinisztikus automata úgy, hogy teljesül.

L3 további zártsági tulajdonságia

zárt a komplementerre, a metszetre és a különbségre.

Tehát az alábbi formális eszközök mind az nyelvosztályt írják le egy adot ábécé felett:

  • jobblineáris grammatikák
  • ballineáris grammatikák
  • 3-as normálformájú grammatikák
  • reguláris kifelyezések
  • a komplementer, metszet, különbség, tükörkép, pozitív lezárt műveletekkel bővített úgynevezett általánosított kifejezések
  • véges determinisztikus automaták
  • véges nemdeterminisztikus automaták

Összefüggő automata

Legyen véges determinisztikus automata. A állapotot a kezdőállapotból elérhetőnek mondjuk, ha létezik redukció, ahol

Az véges determinisztikus automatát összefüggőnek mondjuk, ha minden állapota elérhető a kezdőállapotból.

elérhető a kezdőállapotból, akkor és csak akkor, ha van olyan , hogy

Algoritmikus problémák

Akkor beszélünk algoritmukis eldöntési problémáról, ha a bemenet egy olyan objektum, mely egy adott végtelen halmazból kerülhet ki, kimenete pedig igen/nem.

Olyan algoritmust keresünk, amely kellően általános ahhoz, hogy a végtelen lehetséges bemenet bármelyike esetén alkalmazható legyen.

Egy probléma eldönthető, ha létezik olyan minden lehetséges bemenet esetén termináló algoritmus, amelyik a helyes választ adja.

3as típusú grammatikák algoritmikus problémái

Eldönthető, hogy egy reguláris grammatika az üres nyelvet generálja-e.

Bizonyítás: A tanultak szerint a grammatikához megadható olyan A véges determinisztikus automata, amelyik a grammatika által generált nyelvet ismeri fel. Az automata pontosan akkor nem ismer fel egyetlen szót sem, ha kezdőállapotából minden végállapota elérhetetlen. Ez viszont algoritmikusan eldönthető.

Eldönthető, hogy két reguláris grammatika által generált nyelv diszjunkt-e.

Bizonyítás: Generálják a és reguláris grammatikák rendre az és nyelveket. Az nyelv szintén reguláris, így van olyan reguláris grammatika, amely -at generálja. Ekkor azonban akkor és csak akkor, ha , amely a fentiek szerint eldönthető.

Eldönthető, hogy két reguláris grammatika ugyanazt a nyelvet generálja-e vagy sem.

Bizonyítás: Generálják a és reguláris grammatikák rendre az és nyelveket. Az nyelv szintén reguláris, így van olyan reguláris grammatika, amely -at generálja. Ekkor azonban akkor és csak akkor, ha , amely a fentiek szerint eldönthető.

Eldönthető, hogy egy reguláris grammatika bővebb, vagy egyenlő nyelvet generál-e, mint egy másik.

Bizonyítás: Generálják a és reguláris grammatikák rendre az és nyelveket. Az szintén reguláris. Ennek üressége eldönthető, ami ekvivalens azzal, hogy

A 3-as típusú grammatikák szóproblémája hatékonyan eldönthető.

Szóprobléma: Adott grammatika és .

Bizonyítás: Legyen egy 3-as típusú grammatika normálformában adva és a levezetendő szó.

Az algoritmus rekurzívan kiszámol egy részhalmazból álló sorozatot. -ból (csak -től függő) konstans időben számolható.

Könnyen látható, hogy azon nemterminálosok halmaza, melyek pontosan leezetési lépés után a mondatforma végén állhatnak.

Tehát ha , akkot nyilván

Források