U području teorije računalne složenosti, posebno u proučavanju konačnih automata, koncept nedeterminizma igra važnu ulogu.
Nedeterministički konačni automati (NFSM) teorijski su modeli koji dopuštaju višestruke prihvatljive staze kojima se može pristupiti u bilo kojem danom stanju. Međutim, kada se suočimo s takvom situacijom, postavlja se pitanje: koji put odabrati?
Ovo pitanje dotiče se pojma "prihvaćanja" u NFSM-ovima i kriterija koji se mogu koristiti za donošenje odluke.
Da bismo razumjeli proces selekcije, prvo istražimo prirodu nedeterminizma u NFSM-ovima. Za razliku od determinističkih konačnih automata (DFSM), NFSM ne posjeduju jedinstveni prijelaz za svaki mogući ulazni simbol u svakom stanju. Umjesto toga, oni dopuštaju postojanje više prijelaza za isti ulazni simbol. Ova karakteristika dovodi do mogućnosti postojanja više puta koje treba slijediti iz jednog stanja, što potencijalno može rezultirati različitim ishodima.
Kada se suoče s takvom situacijom, NFSM-ovi koriste mehanizam koji se naziva "grananje" kako bi istražili sve moguće putove istovremeno. To znači da stroj stvara više kopija sebe, od kojih svaka slijedi različitu stazu. Kao rezultat toga, NFSM se može promatrati kao istraživanje strukture nalik na stablo, gdje svaka grana predstavlja drugačiji računski put. Ova tehnika grananja temeljna je u analizi NFSM-ova i njihove računalne složenosti.
Razmotrimo sada kriterije koji se mogu koristiti za odabir određenog puta među više prihvatljivih. Jedan uobičajeni pristup je razmatranje koncepta "prihvaćanja" u NFSM-ovima. Prihvaćanje se odnosi na uvjet koji određuje hoće li stroj smatrati dani unos valjanim ili ne. U NFSM-ovima, prihvaćanje se može definirati na dva glavna načina: "prihvaćanje konačnim stanjem" i "prihvaćanje praznim stogom".
Prihvaćanje konačnim stanjem događa se kada, nakon konzumiranja cijelog ulaznog niza, NFSM završi u stanju označenom kao konačno stanje. Ovaj kriterij podrazumijeva da stroj prihvaća ulaz ako postoji barem jedan računski put koji vodi do konačnog stanja. Suprotno tome, ako nijedan put ne vodi do konačnog stanja, unos se odbija.
Prihvaćanje od strane praznog stoga, s druge strane, relevantno je kada NFSM-ovi uključuju stog kao dodatnu komponentu. U ovom scenariju, prihvaćanje se događa kada je ulazni niz u potpunosti obrađen, a stog postane prazan. Slično prihvaćanju konačnim stanjem, ako postoji barem jedan računski put koji rezultira praznim stogom, ulaz se prihvaća; inače se odbija.
S obzirom na ove kriterije, odabir specifičnog puta između više prihvatljivih u nedeterminističkom stroju može se odrediti davanjem prioriteta uvjetima prihvaćanja. Na primjer, ako je prihvaćanje konačnim stanjem primarni kriterij, stroj bi izabrao put koji vodi do konačnog stanja, bez obzira na druge potencijalne putove. Nasuprot tome, ako je prihvaćanje praznog stoga primarni kriterij, stroj bi dao prioritet putu koji rezultira praznim stogom.
Važno je napomenuti da izbor staze u NFSM-ovima ne utječe na računsku snagu stroja. Bez obzira na odabrani put, NFSM i dalje može prepoznati isti skup jezika kao bilo koji drugi NFSM za određeni unos. Proces odabira samo određuje prihvaćanje ili odbijanje unosa na temelju navedenih kriterija.
Kada se suočimo s višestrukim prihvatljivim putovima u nedeterminističkom stroju, izbor puta može se odrediti davanjem prioriteta uvjetima prihvaćanja, kao što je prihvaćanje konačnim stanjem ili prihvaćanje praznim stogom. Proces odabira ne utječe na računsku snagu stroja, ali utječe na to hoće li se unos prihvatiti ili odbiti.
Ostala nedavna pitanja i odgovori u vezi EITC/IS/CCTF Osnove teorije računalne složenosti:
- Koja je uloga teorema rekurzije u demonstraciji neodlučnosti ATM-a?
- Uzimajući u obzir PDA koji može čitati palindrome, možete li detaljno opisati evoluciju hrpe kada je ulaz, prvo, palindrom, a drugo, nije palindrom?
- S obzirom na nedeterminističke PDA uređaje, superpozicija stanja moguća je po definiciji. Međutim, nedeterministički PDA uređaji imaju samo jedan hrp koji ne može biti u više stanja istovremeno. Kako je to moguće?
- Koji je primjer PDA uređaja koji se koriste za analizu mrežnog prometa i identifikaciju obrazaca koji ukazuju na moguće provale sigurnosti?
- Što znači da je jedan jezik moćniji od drugog?
- Mogu li Turingov stroj prepoznati jezike koji su osjetljivi na kontekst?
- Zašto je jezik U = 0^n1^n (n>=0) neregularan?
- Kako definirati FSM koji prepoznaje binarne nizove s parnim brojem simbola '1' i pokazati što se s njim događa prilikom obrade ulaznog niza 1011?
- Kako nedeterminizam utječe na prijelaznu funkciju?
- Jesu li regularni jezici ekvivalentni konačnim automatima?
Više pitanja i odgovora pogledajte u Osnovama teorije računalne složenosti EITC/IS/CCTF