Die beperkings op die beweging van 'n nie-deterministiese Turing-masjien se oorgangsfunksie kan voorgestel word deur 'n Boolese formule te gebruik deur die moontlike konfigurasies en oorgange van die masjien in logiese proposisies te enkodeer. Dit kan bereik word deur 'n stel veranderlikes te definieer wat die toestande en simbole van die masjien verteenwoordig, en deur logiese operateurs te gebruik om die beperkings op die oorgange uit te druk.
Om dit te illustreer, kom ons kyk na 'n nie-deterministiese Turing-masjien M met toestande Q en alfabet Σ. Die oorgangsfunksie δ van M kan voorgestel word as 'n Boolese formule wat die beperkings op die beweging van die masjien kodeer.
Eerstens definieer ons 'n stel veranderlikes Q_i vir elke toestand q_i in Q, en Σ_j vir elke simbool σ_j in Σ. Hierdie veranderlikes verteenwoordig die huidige toestand en simbool wat deur die masjien gelees word. Byvoorbeeld, as M toestande {q_0, q_1} en alfabet {0, 1} het, sal ons veranderlikes Q_0, Q_1, Σ_0 en Σ_1 hê.
Vervolgens definieer ons 'n stel veranderlikes Q'_i en Σ'_j vir elke toestand q'_i en simbool σ'_j waarna die masjien kan oorgaan. Hierdie veranderlikes verteenwoordig die volgende toestand en simbool wat op die band geskryf moet word. Gaan voort met ons voorbeeld, ons sal veranderlikes Q'_0, Q'_1, Σ'_0 en Σ'_1 hê.
Om die beperkings op die beweging van die masjien vas te lê, kan ons 'n Boolese formule definieer wat die oorgangsfunksie δ afdwing. Vir elke moontlike oorgang (q_i, σ_j) -> (q'_i, σ'_j), kan ons die beperking as 'n logiese voorstel uitdruk. Byvoorbeeld, as die masjien van toestand q_0 na toestand q_1 kan oorgaan wanneer simbool 0 gelees word, kan ons hierdie beperking voorstel as die stelling Q_0 ∧ Σ_0 → Q'_1.
Om die beperkings vir alle moontlike oorgange voor te stel, kan ons die samehang van hierdie stellings neem. Byvoorbeeld, as M twee oorgange het: (q_0, 0) -> (q_1, 1) en (q_1, 1) -> (q_0, 0), sal die Boolese formule wat die beperkings voorstel, wees (Q_0 ∧ Σ_0 → Q' _1) ∧ (Q_1 ∧ Σ_1 → Q'_0).
Benewens die oorgangsbeperkings, moet ons ook stellings insluit wat die uniekheid van die volgende staat en simbool afdwing. Dit kan gedoen word deur klousules by te voeg wat verseker dat slegs een Q'_i en een Σ'_j op enige gegewe tydstip waar kan wees.
Deur die beperkinge op die beweging van 'n nie-deterministiese Turing-masjien se oorgangsfunksie voor te stel deur 'n Boolese formule te gebruik, kan ons die krag van Boolese Bevredigings- (SAT)-oplossers gebruik om die kompleksiteit van die masjien te ontleed. SAT-oplossers kan die bevredigbaarheid van die formule bepaal, wat ooreenstem met die vind van 'n aanvaardende berekeningspad vir die masjien. As die formule bevredigbaar is, beteken dit dat daar 'n geldige berekeningspad vir die masjien bestaan, en as dit onbevredigbaar is, beteken dit dat geen geldige berekeningspad bestaan nie.
Die beperkings op die beweging van 'n nie-deterministiese Turing-masjien se oorgangsfunksie kan voorgestel word deur 'n Boolese formule te gebruik deur die toestande, simbole en oorgange van die masjien in logiese proposisies te enkodeer. Deur gebruik te maak van SAT-oplossers, kan ons die kompleksiteit van die masjien ontleed en die bestaan van 'n geldige berekeningspad bepaal.
Ander onlangse vrae en antwoorde t.o.v Kompleksiteit:
- Is PSPACE-klas nie gelyk aan die EXPSPACE-klas nie?
- Is P-kompleksiteitsklas 'n subset van PSPACE-klas?
- Kan ons bewys dat Np en P-klas dieselfde is deur 'n doeltreffende polinoomoplossing vir enige NP-volledige probleem op 'n deterministiese TM te vind?
- Kan die NP-klas gelyk wees aan die EXPTIME-klas?
- Is daar probleme in PSPACE waarvoor daar geen bekende NP-algoritme is nie?
- Kan 'n SAT-probleem 'n volledige NP-probleem wees?
- Kan 'n probleem in NP-kompleksiteitsklas wees as daar 'n nie-deterministiese draaimasjien is wat dit in polinoomtyd sal oplos
- NP is die klas tale wat polinoomtydverifieerders het
- Is P en NP eintlik dieselfde kompleksiteitsklas?
- Is elke konteks vrye taal in die P-kompleksiteitsklas?
Sien meer vrae en antwoorde in Complexity