'n Deterministiese eindige toestand masjien (DFSM) en 'n nie-deterministiese eindige toestand masjien (NFSM) is twee tipes eindige toestand masjiene (FSMs) wat in berekeningskompleksiteitsteorie gebruik word. Alhoewel hulle ooreenkomste in hul basiese struktuur en funksionaliteit deel, is daar sleutelverskille wat hulle onderskei. Om hierdie verskille te verstaan is van kardinale belang op die gebied van kuberveiligheid, aangesien dit help met die ontleding van die berekeningskompleksiteit van algoritmes en die ontwerp van veilige stelsels.
Die belangrikste verskil tussen 'n DFSM en 'n NFSM lê in die manier waarop hulle oorgange van een staat na 'n ander hanteer. In 'n DFSM, vir 'n gegewe invoersimbool, is daar slegs een moontlike oorgang vanaf enige gegewe toestand. Dit beteken dat die gedrag van 'n DFSM geheel en al bepaal word deur sy huidige toestand en die invoersimbool wat dit ontvang. Aan die ander kant maak 'n NFSM voorsiening vir veelvuldige moontlike oorgange vanaf 'n gegewe toestand vir 'n spesifieke invoersimbool. Hierdie nie-deterministiese gedrag gee 'n NFSM meer buigsaamheid in sy staatsoorgange.
Om hierdie verskil te illustreer, kom ons kyk na 'n voorbeeld. Gestel ons het 'n DFSM en 'n NFSM wat albei ontwerp is om 'n taal te herken wat bestaan uit stringe van 0'e en 1'e waar die laaste simbool altyd 'n 1 is. Die DFSM sal 'n aparte toestand hê vir elke moontlike kombinasie van simbole wat tot dusver teëgekom is, en dit sal oorgang na 'n nuwe toestand gebaseer op die huidige toestand en die invoersimbool. In teenstelling hiermee sal die NFSM verskeie moontlike oorgange vir elke toestand en insetsimboolkombinasie hê, wat dit toelaat om verskillende paaie uit te brei en te verken. Byvoorbeeld, in die NFSM, by ontvangs van 'n 1 as die laaste simbool, kan dit óf oorgaan na 'n aanvaardende staat óf in 'n nie-aanvaardende toestand bly.
Nog 'n beduidende verskil tussen DFSM's en NFSM's is hul rekenkrag. DFSM's is rekenaarmatig minder kragtig as NFSM's, aangesien hulle 'n meer beperkte manier het om staatsoorgange te hanteer. Hierdie onderskeid word relevant wanneer die ekwivalensie van DFSM'e en NFSM'e oorweeg word. Dit is bewys dat daar vir elke NFSM 'n ekwivalente DFSM bestaan wat dieselfde taal erken. Dit beteken dat enige taal wat deur 'n NFSM erken word, ook deur 'n DFSM erken kan word, al is dit moontlik met 'n groter aantal state.
Die belangrikste verskil tussen 'n deterministiese eindige toestand masjien (DFSM) en 'n nie-deterministiese eindige toestand masjien (NFSM) lê in hul hantering van toestand oorgange. 'n DFSM het 'n unieke oorgang vir elke toestand en invoersimbool kombinasie, terwyl 'n NFSM voorsiening maak vir veelvuldige moontlike oorgange. Hierdie nie-deterministiese gedrag gee NFSM's meer buigsaamheid, maar maak hulle ook rekenkundig kragtiger. Dit is egter belangrik om daarop te let dat ten spyte van hul verskille, elke taal wat deur 'n NFSM erken word, ook deur 'n ekwivalente DFSM erken kan word.
Ander onlangse vrae en antwoorde t.o.v EITC/IS/CCTF Computational Complexity Theory Fundamentals:
- Is daar 'n teenstrydigheid tussen die definisie van NP as 'n klas besluiteprobleme met polinoom-tyd-verifieerders en die feit dat probleme in die klas P ook polinoom-tyd-verifieerders het?
- Is verifieerder vir klas P polinoom?
- Kan 'n Nondeterministic Finite Automaton (NFA) gebruik word om die toestandsoorgange en aksies in 'n firewall-konfigurasie voor te stel?
- Is die gebruik van drie bande in 'n multiband TN gelykstaande aan enkelbandtyd t2(vierkant) of t3(kubus)? Met ander woorde is die tydskompleksiteit direk verwant aan die aantal bande?
- As die waarde in die vastepuntdefinisie die limiet van die herhaalde toepassing van die funksie is, kan ons dit steeds 'n vaste punt noem? In die voorbeeld wat gewys word as ons in plaas van 4->4 4->3.9, 3.9->3.99, 3.99->3.999 het, … is 4 steeds die vaste punt?
- As ons twee TM'e het wat 'n beslisbare taal beskryf, is die ekwivalensievraag nog onbeslisbaar?
- In die geval van die opsporing van die begin van die band, kan ons begin deur 'n nuwe band T1=$T te gebruik in plaas daarvan om na regs te skuif?
- Hoe groot is die stapel van 'n PDA en wat bepaal die grootte en diepte daarvan?
- Is daar huidige metodes om Tipe-0 te herken? Verwag ons dat kwantumrekenaars dit haalbaar sal maak?
- Hoekom is LR(k) en LL(k) nie ekwivalent nie?
Sien meer vrae en antwoorde in EITC/IS/CCTF Computational Complexity Theory Fundamentals