We observe that the classical Cartesian product construction for the intersection of (languages of) nondeterministic finite automata (NFA) is non-optimal in the worst case, if the automata have many transitions. For a fixed alphabet, the product of two NFA may have $Θ(m^2)$ transitions if these NFA have at most $n$ states and $m$ transitions each. We describe alternative constructions with $O(m n)$ transitions: or $O(m n^{k-1})$ for the intersection of $k$ NFA (for fixed $k \ge 2$ and alphabet $Σ$). This gives a faster algorithm for deciding NFA intersection emptiness. The new algorithm is optimal, unless there exists a breakthrough combinatorial algorithm for detecting $(k+1)$-cliques in undirected graphs. This also leads to a more efficient certification scheme for NFA intersection emptiness.
翻译:我们观察到,对于具有多条转移的非确定性有限自动机(NFA)的语言交集,经典笛卡尔积构造在最坏情况下并非最优。对于固定字母表,当两个NFA各有至多$n$个状态和$m$条转移时,其乘积可能包含$Θ(m^2)$条转移。我们描述了具有$O(m n)$条转移的替代构造;对于k个NFA的交集(固定$k \ge 2$和字母表$Σ$),该构造具有$O(m n^{k-1})$条转移。这为判定NFA交集非空性提供了更快的算法。新算法是最优的,除非存在检测无向图中$(k+1)$-团问题的突破性组合算法。此外,该结果还导致了一种更高效的NFA交集非空性认证方案。