Concaténation efficace des DFA?

16

Il existe des preuves théoriques que la construction de produits cartésiens naïfs pour l'intersection des DFA est "le meilleur que nous pouvons faire". Qu'en est-il de la concaténation de deux DFA? La construction triviale implique la conversion de chaque DFA en NFA, l'ajout d'une transition epsilon et la détermination du NFA résultant. Pouvons-nous faire mieux? Existe-t-il une limite connue sur la taille du DFA à concaténation minimale (en termes de taille des DFA "préfixe" et "suffixe")?

Aryeh
la source

Réponses:

20

Oui - il est connu qu'il existe des DFA de et n états, respectivement, de sorte que le DFA minimal pour la concaténation des langues correspondantes a m 2 n - 2 n - 1 états, ce qui correspond à la limite supérieure connue.mnm2n-2n-1

Cela a été observé pour la première fois par Maslov en 1970, et redécouvert par Yu, Zhuang et K. Salomaa dans leur article, "La complexité de l'état de certaines opérations de base sur les langues régulières", TCS 125 (1994), 315-328.

Jeffrey Shallit
la source
1
O(2n+m)
1
m2n-2n-1