Logika és számításelmélet 10. előadás
Rice tétel Rekurzíve felsorolható nyelvek tulajdonságai Tetszőleges P RE halmazt a rekurzívan felsorolható nyelvek egy tulajdonságának nevezzük. P triviális, ha P = vagy P = RE. L P = { M L(M) P}. Rice tétele Ha P RE egy nem triviális tulajdonság, akkor L P R.
Rice tétel Bizonyítás Bizonyítás: 1. eset P. Mivel tudjuk, hogy L u R, elég elátni, hogy L u L P. Mivel P nem triviális, ezért létezik L P. (L ). L RE, ezért van olyan M L TG, melyre L(M L ) = L. Egy tetszőleges M, w TG emenet pároshoz elkészítünk egy M (valójáan M M,w ) kétszalagos TG-t, mely egy x emenetén a következőképpen működik: 1. Bemenetétől függetlenül először szimulálja M-et w-n 2. Így, ha M nem áll meg w-n, M se áll meg semelyik inputján L(M ) =. 3. Ha M elutasítja w-t, akkor M q n -e lép és leáll (azaz nem fogadja el x-et L(M ) =. 4. Ha M elfogadja w-t, akkor M szimulálja M L -et x-en (azaz L(M ) = L).
Rice tétel Bizonyítás x w M M M L q n q n Összefoglalva M, w L u L(M ) = L L(M ) P M L P. M, w L u L(M ) = L(M ) P M L P. Azaz: M, w L u M L P, tehát L u L P és így L P R.
Rice tétel Bizonyítás 2. eset P. Alkalmazhatjuk az 1. eset eredményét P = RE \ P-re, hiszen ekkor P szintén nem triviális és P. Azt kapjuk, hogy L P R. L P R, hiszen ha R-eli lenne akkor a nem TG-kódokat elutasítva L P -t eldöntő TG-t kapnánk. L P R L P R (tétel volt).
Rice tétel Alkalmazások Következmények: Eldönthetetlen, hogy egy M TG az üres nyelvet ismeri-e fel. (P = { }) véges nyelvet ismer-e fel (P = {L L véges }) környezetfüggetlen nyelvet ismer-e fel (P = {L L környezetfüggetlen }) elfogadja-e az üres szót (P = {L RE ε L})...
Post Megfelelkezési Proléma Legyenek u 1,..., u n, v 1..., v n Σ + (n 1). A D = {d 1,..., d n } halmazt dominókészletnek nevezzük ha d i = u i v i (1 i n). A d i1 d im sorozat (m 1) a D egy megoldása, ha d i j D (1 j m) és u i1 u im = v i1 v im. Példa: Az { ca, a a, ca a, } ac c egy megoldása a ca a ac a ca a a c. Megjegyzés: Tehát a megoldáshoz a dominók töször felhasználhatók és nem kell mindet felhasználni. Post Megfelelkezési Proléma (PMP): L PMP = { D D-nek van megoldása}. Tétel L PMP RE. Bizonyítás: Ha D-t egy áécének tekintjük, akkor éppen a D feletti szavak a potenciális megoldások. Egy TG, mely ezen D feletti szavakat a hosszlexikografikus sorrenden sorra kipróálja és ha megoldást talál -en leáll éppen L PMP -t ismeri fel.
Post Megfelelkezési Proléma Tétel L PMP R. Bizonyítás: Definiáljuk a PMP egy módosított változatát, MPMP-t. Az MPMP proléma igen-példányai olyan (D, d) (dominókészlet,dominó) párok, melyre D-nek van d-vel kezdődő megoldása. L MPMP = { D, d d D D-nek van d-vel kezdődő megoldása}. Először megmutatjuk, hogy L MPMP L PMP. Jelölés: ha u = a 1 a n Σ + és Σ akkor legyen alcsillag(u) := a 1 a 2 a n jocsillag(u) := a 1 a 2 a n. mindkétcsillag(u) := a 1 a 2 a n.
Post Megfelelkezési Proléma Legyen D = {d 1,..., d n } egy tetszőleges dominókészlet, ahol d i = u i v i (1 i n). D legyen a következő D + 2 méretű készlet: d 0 = alcsillag(u 1) mindkétcsillag(v 1 ), d i = alcsillag(u i) jocsillag(v i ) (1 i n), d n+1 =. Állítás: D, d 1 L MPMP D L PMP. Az állítás izonyítása: ha d i1 d im MPMP egy (D, d 1 ) emenetének egy megoldása, akkor d 0 d i 2 d i m d n+1 megoldása D -nek, mint PMP inputnak. ha d i 1 d i m D -nek, mint PMP inputnak egy megoldása, akkor az első illetve az utolsó etű egyezése miatt ez csak úgy lehetséges, hogy d i 1 = d 0 és d i m = d n+1. Ekkor viszont d i1 d im 1 megoldása a (D, d 1 ) MPMP emenetnek. Ezzel az állítást izonyítottuk. Mivel a megfeleltetés TG-pel kiszámítható, ezért L MPMP L PMP.
Post Megfelelkezési Proléma Most megmutatjuk, hogy L u L MPMP. Minden M, w (TG, szó) párhoz megadunk egy D, d (dominókészlet, kezdődominó) párt, úgy hogy w L(M) D-nek van d-vel kezdődő megoldása. Legyen M = (Q, Σ, Γ, δ, q 0,, q n ) és w = a 1 a n Σ. (D, d) konstrukciója: d := q 0 a 1 a n (ahol Σ) d : D ha δ(p, a) = (q,, R), akkor pa q : D ha δ(p, a) = (q,, L), akkor ( c Γ :) cpa qc : D ha δ(p, a) = (q,, S ), akkor pa q : D ( a Γ :) a a : D,, ( a Γ :) a, : D. : D a : D
Post Megfelelkezési Proléma Példa: Ha M-nek δ(q 0, ) = (q 2, a, R) és δ(q 2, a) = (,, S ) átmenetei, akkor q 0 a aq 2 a a egy a-ot elfogadó konfigurációátmenet. Az M, a -hoz tartozó dominókészlet tartalmazza töek között a q 0 a kezdő-, q 0 aq 2 és q 2a átmenet-, a a,, és valamint a efejezéshez szükséges a, Ekkor egy kirakás ( -al lokkokra osztva): q 0 a q 0 a aq 2 a a a q 2 a a identikus dominókat és dominókat.
Post Megfelelkezési Proléma q 0 a q 0 a aq 2 a a a q 2 a a A fenti példán szemléltetjük, hogy w L(M) D-nek van d-vel kezdődő megoldása. Az első lokk csak a d = q 0 a kezdődominóól áll. A következő két lokkan alul és felül is konfigurációk következnek, felül mindig eggyel "lemaradva". A 4.-6. lokkokan a a (és a ) típusú dominókkal egyesével ehozható a felső szó lemaradása, egészen addig, amíg az alsó rész már csak -al hossza. Végül a 7. lokkan csak egy (záró)dominó szerepel, melynek az a szerepe, hogy ehozza a még megmaradt lemaradást.
Post Megfelelkezési Proléma A fenti példa alapján meg lehet általános eseten is konstruálni egy megoldást, így w L(M) van D, d -nak megoldása. Másrészt ha van d-vel kezdődő megoldás, akkor ez a dominósorozat két szavának hosszára vonatkozó megfontolások alapján csak -t tartalmazó dominók használatával lehetséges. Meggondolható, hogy minden kirakás gyakorlatilag konfigurációátmenetek sorozata kell legyen az első megjelenéséig, és így a w szóhoz tartozó kezdőkonfigurációól el lehet jutni elfogadó konfigurációa, azaz w L(M). Nyilván D, d M, w -ől TG-pel kiszámítható, így eláttuk, hogy L u L MPMP. Innen a tétel izonyítása: L u L MPMP, L MPMP L PMP és tudjuk már, hogy L u R. Eől a visszavezetés tranzitivitása és korái tételünk alapján L PMP R.
CF nyelvtanokkal kapcsolatos eldönthetetlen prolémák Egyértelmű nyelvtan Egy G környezetfüggetlen (CF, 2-es típusú) nyelvtan egyértelmű, ha minden L(G)-eli szónak pontosan egy aloldali levezetése van G-en. (Baloldali levezetés: mindig a legaloldali nemterminálist írjuk át a mondatformáan.) L ECF = { G G egy egyértelmű CF nyelvtan}. Tétel L ECF R Bizonyítás: Megmutatjuk, hogy L PMP L ECF. Legyen D = { } u 1 v 1,..., u n v n egy tetszőleges dominókészlet. := {a 1,..., a n } úgy, hogy Γ =. P A := {A u 1 Aa 1,..., A u n Aa n, A ε}. P B := {B v 1 Ba 1,..., B v n Ba n, B ε}.
CF nyelvtanokkal kapcsolatos eldönthetetlen prolémák Egyértelmű nyelvtan Bizonyítás: (folyt.) G A = A, {A}, Γ, P A. G B = B, {B}, Γ, P B. G D = S, {S, A, B}, Γ, {S A, S B} P A P B. f : D G D visszavezetés, mert: * ha u i 1 v i1 uim v i m megoldása D-nek, akkor u i 1 u im = v i1 v im. De ekkor u i1 u im a im a i1 = v i1 v im a im a i1 kétféleképpen is levezethető, így G D nem egyértelmű. * ha G D nem egyértelmű, akkor van olyan szó, aminek két aloldali levezetése van. De ezek S A-val illetve S B-vel kell kezdődjenek, hiszen G A és G B egyértelmű.a generált szavak xy, x Γ, y alakúak, így ugyanaz a generált Γ feletti prefix is. Így a két levezetés D egy megoldását adja. f nyilván TG-pel kiszámítható. Mivel L PMP R, következik, hogy L ECF R, amiől kapjuk, hogy L ECF R.
CF nyelvtanokkal kapcsolatos eldönthetetlen prolémák Közös metszet, ekvivalencia, tartalmazás Tétel Eldönthetetlenek az alái CF nyelvtanokkal kapcsolatos kérdések. Legyen G 1 és G 2 két CF nyelvtan. L(G 1 ) L(G 2 ) L(G 1 ) = Γ valamely Γ-ra L(G 1 ) = L(G 2 ) L(G 1 ) L(G 2 ) Csak az elsőt izonyítjuk. L PMP -t vezethetjük vissza rá. Legyen D = { } u 1 v 1,..., u n v n a dominókészlet. Készítsük el a fenti GA és G B nyelvtanokat. Könnyen látható, hogy D-nek akkor és csak akkor van megoldása, ha L(G A )-nak és L(G B )-nek van nemüres metszete. (A másik 3 állítás: iz. nélkül)
Eldönthetetlen prolémák az elsőrendű logikáan Tétel Eldönthetetlen, hogy A elsőrendű logikai formulára (1) A teljesül-e (logikailag igaz-e). (iz. nélkül). L PMP -t lehet visszavezetni rá. Azaz minden D dominókészlethez megadható egy A D elsőrendű formula, melyre van D-nek megoldása A D. (részletek l. pl. Gazdag jegyzet) Következmény Legyen F egy elsőrendű formulahalmaz és A egy elsőrendű formula. Eldönthetetlen, hogy (2) A kielégíthetetlen-e (3) A kielégíthető-e (4) F A teljesül-e Bizonyítás: (2) A A kielégíthetetlen. (3) Eldönthetetlen nyelv komplementere. (4) Kieléghetetlenségre visszavezethető (l. logika rész).
Eldönthetetlen prolémák az elsőrendű logikáan Logikáól tanultuk, hogy van olyan algoritmus, ami egy tetszőleges A elsőrendű formulára pontosan akkor áll meg igen válasszal, ha A kielégíthetetlen (például a elsőrendű logika rezolúciós algoritmusa). Ezért a kielégíthetetlenség eldöntése RE-eli proléma. a kielégíthetőség eldöntése nem RE-eli proléma. Mi a helyzet nulladrendű logika esetén? A fenti kérdések mindegyike eldönthető. (ítélettála). Véges sok interpretáció van, elsőrenden végtelen. Nulladrendű logikáan, az a kérdés van-e hatékony megoldás. A továiakan az R nyelvosztályt vizsgáljuk. (Bonyolultságelmélet.)
BONYOLULTSÁGELMÉLET Determinisztikus és nemdeterminisztikus időonyolultsági osztályok A továiakan eldönthető prolémákkal foglalkozunk, ilyenkor a kérdés az, hogy milyen hatékonyan dönthető el az adott proléma. TIME ( f (n)) = {L L eldönthető O( f (n)) időigényű determinisztikus TG-pel} NTIME ( f (n)) = {L L eldönthető O( f (n)) időigényű NTG-pel} P= k 1TIME (n k ). NP= k 1NTIME (n k ). Észrevétel: P NP. Sejtés: P NP (sejtjük, hogy igaz, de izonyítani nem tudjuk).
NP A P tartalmazza a gyakorlatan is hatékonyan megoldható prolémákat. Milyen prolémákat tartalmaz NP? Egy L NP-eli prolémához definíció szerint létezik őt polinom idően eldöntő NTG ami gyakran a következőképpen működik: a proléma minden I emenetére polinom idően megsejti (azaz nemdeterminisztikusan generálja) I egy lehetséges m megoldását és polinom idően leellenőrzi (determinisztikusan), hogy m alapján I L-e. A következőken a P és NP onyolultsági osztályok közötti kapcsolatot vizsgáljuk.
Polinom idejű visszavezetés Polinom idően kiszámítható szófüggvény Az f : Σ szófüggvény polinom idően kiszámítható, ha van olyan Turing-gép, ami polinom idően kiszámítja. Visszavezetés polinom idően L 1 Σ polinom idően visszavezethető L 2 -ra, ha van olyan f : Σ polinom idően kiszámítható szófüggvény, hogy w L 1 f (w) L 2. Jelölés: L 1 p L 2. A polinom idejű visszavezetést Richard Karpról elnevezve Karp-redukciónak is nevezik. Tétel Ha L 1 p L 2 és L 2 P, akkor L 1 P. Ha L 1 p L 2 és L 2 NP, akkor L 1 NP. Az elsőt izonyítjuk, a második analóg.
Polinom idejű visszavezetés Bizonyítás: Legyen L 2 P és tegyük fel, hogy L 1 p L 2. Legyen M 2 az L 2 -t eldöntő, míg M a visszavezetést kiszámító TG. Feltehetjük, hogy M p(n) és M 2 p 2 (n) polinom idejű TG-ek. Konstruáljuk meg M 1 -et: w f (w) M 1 M M 2 q n q n M 1 eldönti az L 1 nyelvet ha w n hosszú, akkor f (w) legfelje p(n) hosszú lehet M 1 időigénye p 2 (p(n)), ami szintén polinom
Polinom idejű visszavezetés Adott prolémaosztályra nézve nehéz nyelv Legyen C egy prolémaosztály. egy L proléma C-nehéz (a polinom idejű visszavezetésre nézve), ha minden L C esetén L p L. Adott prolémaosztályan teljes nyelv Egy C-nehéz L proléma C-teljes, ha L C. Tétel Legyen L egy NP-teljes proléma. Ha L P, akkor P = NP. Bizonyítás: Elég megmutatni, hogy NP P. Legyen L NP egy tetszőleges proléma. Ekkor L p L, hiszen L NP-teljes. Mivel L P, ezért az előző tétel alapján L P. Ez minden L NP-re elmondható, ezért NP P.