Qualsiasi problema risolto da un automa finito è in P


8

Dopo la mia lezione di Teoria del calcolo oggi mi è venuta in mente questa domanda: se un problema può essere risolto da un automa finito, questo problema appartiene a P.

Penso che sia vero, poiché gli automi riconoscono linguaggi molto semplici, quindi tutti questi linguaggi avrebbero algoritmi polinomiali per risolverli. Quindi, è vero che qualsiasi problema risolto da un automa finito è in P?

Risposte:


15

Si è vero. In termini di classi di complessità, dove è la classe di linguaggi regolari (ovvero, problemi che possono essere risolti da un automa finito). Più specificamente, e è un sottoinsieme rigoroso di dal teorema della gerarchia temporale.

REGP,
REG
(*)REGDTIME(n),
DTIME(n)P

La prova di (*) è la seguente: per qualsiasi problema in , esiste un DFA che lo risolve. Converti quel DFA in una macchina Turing con gli stessi stati e la stessa funzione di transizione, che si sposta sempre verso destra fino a quando non vede uno spazio vuoto, quindi accetta o rifiuta. Questa macchina di Turing si ferma sempre nel tempo esattamente .REGn


Vale anche la pena ricordare che per qualsiasi costante fissa .

REG=DSPACE(0)=DSPACE(k)
k

7

Si è vero. Per ogni problema di questo tipo esiste un DFA che decide la lingua e che verifica se una parola è accettata da un DFA può essere facilmente eseguito in tempo lineare nella lunghezza della parola.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.