Concatenazione efficiente di DFA?


16

Vi sono prove teoriche che l'ingenua costruzione di prodotti cartesiani per l'intersezione dei DFA sia "il meglio che possiamo fare". E la concatenazione di due DFA? La banale costruzione prevede la conversione di ogni DFA in un NFA, l'aggiunta di una transizione epsilon e la determinazione del NFA risultante. Possiamo fare di meglio? Esiste un limite noto alle dimensioni del DFA di concatenazione minimo (in termini di dimensioni dei DFA "prefisso" e "suffisso")?

Risposte:


20

Sì - è noto che esistono DFA di stati e n , rispettivamente, in modo tale che il DFA minimo per la concatenazione delle lingue corrispondenti abbia m 2 n - 2 n - 1 stati, che corrisponde al limite superiore noto.mnm2n2n1

Ciò fu osservato per la prima volta da Maslov nel 1970 e riscoperto da Yu, Zhuang e K. Salomaa nel loro articolo, "Le complessità statali di alcune operazioni di base su linguaggi regolari", TCS 125 (1994), 315-328.


1
Grazie Jeffrey! Questo automa è costruibile nel tempo meno della banale ? O(2n+m)
Aryeh,

1
m*2n-2n-1
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.