Deterministični končni avtomat (DFSM) in nedeterministični končni avtomat (NFSM) sta dve vrsti končnih avtomatov (FSM), ki se uporabljata na področju teorije računalniške kompleksnosti. Medtem ko imata oba FSM podobne lastnosti in ju je mogoče uporabiti za modeliranje različnih računalniških procesov, se razlikujeta glede na njuno obnašanje in naravo svojih prehodov.
Glavna razlika med DFSM in NFSM je v načinu, kako obravnavata prehode med stanji. V DFSM je prehod iz enega stanja v drugega enolično določen s trenutnim stanjem in vhodnim simbolom. To pomeni, da je za dano stanje in vhodni simbol lahko le eno možno naslednje stanje. Z drugimi besedami, DFSM deluje na determinističen način, kjer je naslednje stanje enolično določeno s trenutnim stanjem in vnosom.
Po drugi strani pa NFSM omogoča več možnih naslednjih stanj za dano stanje in vhodni simbol. To pomeni, da ima lahko prehodna funkcija NFSM več veljavnih izbir za naslednje stanje. Z drugimi besedami, NFSM deluje na nedeterminističen način, kjer naslednje stanje ni enolično določeno s trenutnim stanjem in vnosom. Namesto tega lahko NFSM preide v eno ali več stanj hkrati, kar ustvari več možnih poti izračuna.
Za ponazoritev te razlike si oglejmo primer. Recimo, da imamo NFSM in DFSM, ki modelirata preprost jezik, ki sprejema nize 0 in 1, ki se končajo z 1. NFSM ima dve stanji: S0 in S1. DFSM ima tudi dve stanji: Q0 in Q1.
Za NFSM ima lahko prehodna funkcija za stanje S0 in vhodni simbol 0 dve možni naslednji stanji: S0 in S1. To pomeni, da ko je NFSM v stanju S0 in prejme vhodni simbol 0, lahko preide v stanje S0 ali S1. Po drugi strani ima prehodna funkcija za stanje S0 in vhodni simbol 1 samo eno možno naslednje stanje: S1. To pomeni, da ko je NFSM v stanju S0 in prejme vhodni simbol 1, bo vedno prešel v stanje S1.
Nasprotno pa ima DFSM edinstveno naslednje stanje za vsako kombinacijo trenutnega stanja in vhodnega simbola. Na primer, ko je DFSM v stanju Q0 in prejme vhodni simbol 0, bo vedno prešel v stanje Q0. Podobno, ko je DFSM v stanju Q0 in prejme vhodni simbol 1, bo vedno prešel v stanje Q1.
Glavna razlika med determinističnimi in nedeterminističnimi končnimi avtomati je v naravi njihovih prehodov. Deterministični končni avtomat (DFSM) ima edinstveno naslednje stanje za vsako kombinacijo trenutnega stanja in vhodnega simbola, medtem ko nedeterministični končni avtomat (NFSM) omogoča več možnih naslednjih stanj za dano kombinacijo trenutnega stanja in vhodnega simbola.
Druga nedavna vprašanja in odgovori v zvezi Osnove teorije računske kompleksnosti EITC/IS/CCTF:
- Kaj Kleenejeva zvezdna operacija naredi z regularnim jezikom?
- V enem ali dveh stavkih razložite enakovrednost determinističnih in nedeterminističnih končnih avtomatov.
- Jezik ima dva niza; enega sprejme avtomatski ...
- Ali lahko preprost algoritem za razvrščanje obravnavamo kot končni avtomatizem (FSM)? Če je odgovor pritrdilen, kako bi ga lahko predstavili z usmerjenim grafom?
- Ali so lahko prazni nizi in prazni jeziki polni?
- Ali lahko virtualne stroje štejemo za FSM-je?
- Katere so nekatere osnovne matematične definicije, oznake in uvodi, potrebni za razumevanje formalizma teorije računske kompleksnosti?
- Zakaj je teorija računske kompleksnosti pomembna za razumevanje temeljev kriptografije in kibernetske varnosti?
- Kakšna je vloga rekurzijskega izreka pri dokazovanju neodločljivosti ATM?
- Če upoštevate dlančnik, ki lahko bere palindrome, ali lahko podrobno opišete razvoj sklada, ko je vhod, prvič, palindrom, in drugič, ni palindrom?
Oglejte si več vprašanj in odgovorov v Osnovah teorije računalniške kompleksnosti EITC/IS/CCTF

