Ülesanne täielikult lahendatud
-
Miks ükski lõplik automaat ei suuda seada vastavusse 0-e ja 1-e, ükskõik kui palju olekuid sellele anda 8 sammu
Selle lehe paarsusautomaadil on kaks olekut ja see loeb jada 101101 — kuus sümbolit —, vajamata kunagi kolmandat. Sööda sellele kuus miljonit sümbolit ja see vajab ikka kahte. Mis on siis see, mida fikseeritud olekute arvuga automaat teha ei suuda? Ja kuidas tõestada, et automaati ei ole olemas, mitte lihtsalt seda, et seda ei õnnestunud leida?
-
Jälgi olemasolevat automaati. Paarsus algab olekus e ja iga 1 vahetab seda. Kuus sümbolit hiljem on see tagasi olekus e ja sisend võetakse vastu. Teel ei kogunenud midagi: automaat on kuuenda sümboli juures täpselt samas seisundis, milles see oleks võinud olla esimese sümboli juures.
-
See ongi kogu ressurss. DFA mälu on olek, milles see viibib, ja ei midagi muud. Ei loendurit, ei pinu ega linti, kuhu kirjutada. Pärast mis tahes prefiksi lugemist on kõik, mida automaat selle prefiksi kohta teab, see, millises oma k olekust see parajasti asub.
-
Nii et leia midagi, mis vajab selgelt rohkem. Võta sõned, mis koosnevad mingist arvust nullidest, millele järgneb täpselt sama palju ühtesid. 01 on selline, 0011 on selline, 001 ei ole ja ka 0110 ei ole.
-
Oleta, et k olekuga DFA tuvastab selle. Ära küsi, milline automaat välja näeb — seda ei öelda sulle kunagi. Sööda sellele lihtsalt k+1 prefiksit, mis koosnevad 0 kuni k nullist, ja pane tähele, kuhu igaüks neist selle jätab.
-
Dirichlet' printsiip. Prefikseid on rohkem kui olekuid, seega sattuvad kaks neist samasse kohta. Nimetagem neid 0ⁱ ja 0ʲ, kus i on väiksem kui j. Alates sellest hetkest ei suuda automaat neil vahet teha, ja mitte sellepärast, et see oleks halvasti kavandatud. Olek on ainus, mis tal on, ja need kaks sõnet viisid selle samasse olekusse.
-
Nüüd sööda mõlemale jätkule sama asja: i ühte. Sama algolek, samad sümbolid, seega sama lõppolek ja seega sama otsus. Automaadil pole võimalust teha midagi muud.
-
Ja need kaks otsust peavad erinema. 0ⁱ1ⁱ omab kattuvat arvu ja kuulub hulka; 0ʲ1ⁱ mitte, sest j ei ole i. Üks tuleb vastu võtta ja teine tagasi lükata, kuid automaat annab neile sama vastuse. See, mis murdub, on eeldus, et see oli olemas.
-
Loe argumenti uuesti ja pane tähele, mida selles kunagi ei ilmunud: k väärtust. Kaks — paarsusautomaadi enda suurus — või kaks miljardit: k+1 prefiksit on igal juhul rohkem kui k olekut. Seades aga n-ile ülempiiri, muutub keel kohe lõplike olekutega keeleks: kuni N-i vastavusse viimiseks on vaja 2N+2 olekut, seega 22 olekut N = 10 korral ja 202 olekut N = 100 korral.
Vastus
Ükski lõplik automaat ei tuvasta seda, ükskõik mis suuruses. Tõestus ei vaja midagi selle kohta, kuidas automaat on ehitatud, vaid ainult seda, et k+1 elementi ei saa paikneda k kohas ilma, et kaks neist sama kohta jagaks, ning et oleku jagamine tähendab unustamist. Paarsusautomaat näitab sama asja miniatuuris: sööda sellele 0, siis 00, siis 000, ja kõik kolm jätavad selle olekusse e, sest see ei vaata nulle üldse.
Ülempiiris peitubki kogu raskus. Kuni N-i vastavusse viimine on lihtne, 2N+2 olekuga — üks paar lisaks iga sümboli jaoks, kuhu soovid jõuda —, ja see arv kasvab peatumata, seega iga konkreetse N-i jaoks on olemas automaat ja ühelgi automaadil pole iga N-i. See lõhe ongi see, mida tähendab „lõplik mälu“, ja see on põhjus, miks järgmine samm pärast DFA-d defineeritakse sellele pinu andmisega: piiramatu hoidla, mis on lisatud tagasi täpselt sellepärast, et just seda selle puudumine maksab. -
Allikad (2)
- Insight block 3 — the nerve-net model the finite automaton descends from: W. S. McCulloch and W. Pitts, "A logical calculus of the ideas immanent in nervous activity." Bulletin of Mathematical Biophysics 5(4), 115–133, 1943.
- Insight block 1 — the theorem that fixes the minimum state count: A. Nerode, "Linear automaton transformations." Proceedings of the American Mathematical Society 9(4), 541–544, 1958.