There is theoretical evidence that the naive cartesian-product construction for the intersection of DFAs is the best we can do. What about the concatenation of two DFAs? The trivial construction involves converting each DFA into an NFA, adding an epsilon-transition and determinizing the resulting NFA. Can we do better? Is there a known bound on the size of the minimal concatenation DFA (in terms of the sizes of the prefix and suffix DFAs)?
Efficient concatenation of DFAs?
cc.complexity theory;fl.formal languages;automata theory;dfa
Yes - it is known that there exist DFA's of $m$ and $n$ states, respectively, such that the minimal DFA for the concatenation of the corresponding languages has $m*2^n - 2^{n-1}$ states, which matches the known upper bound.This was first observed by Maslov in 1970, and rediscovered by Yu, Zhuang, and K. Salomaa in their paper, The state complexities of some basic operations on regular languages, TCS 125 (1994), 315-328.