[论文解读] New Algorithms for Regular Expression Matching
本文提出了一种新的正则表达式匹配算法,在单位代价RAM模型下利用字级并行性,通过使用O(m)空间,实现了改进的时间复杂度。关键贡献在于对NFA进行分层分解,并结合高效的位串操作,以O(log m)时间每步模拟状态集,从而在小到中等大小的正则表达式下实现次线性时间复杂度,尤其当m ≤ √w或w > log²n时表现更优。
In this paper we revisit the classical regular expression matching problem, namely, given a regular expression $R$ and a string $Q$, decide if $Q$ matches one of the strings specified by $R$. Let $m$ and $n$ be the length of $R$ and $Q$, respectively. On a standard unit-cost RAM with word length $w \geq \log n$, we show that the problem can be solved in $O(m)$ space with the following running times: \begin{equation*} \begin{cases} O(n\frac{m \log w}{w} + m \log w) & ext{if $m > w$} \\ O(n\log m + m\log m) & ext{if $\sqrt{w} < m \leq w$} \\ O(\min(n+ m^2, n\log m + m\log m)) & ext{if $m \leq \sqrt{w}$.} \end{cases} \end{equation*} This improves the best known time bound among algorithms using $O(m)$ space. Whenever $w \geq \log^2 n$ it improves all known time bounds regardless of how much space is used.
研究动机与目标
- 在保持O(m)空间使用的同时,改进正则表达式匹配的时间复杂度。
- 克服现有NFA模拟与DFA构造方法的局限性,特别是DFA方法带来的指数级空间开销。
- 利用单位代价RAM模型中的字级并行性,比传统状态集方法更高效地模拟NFA。
- 消除对大型DFA表的依赖,避免实际应用中因缓存未命中导致的性能下降,提供更友好的缓存访问方式。
提出的方法
- 引入NFA的分层分解方法,以支持利用位操作进行高效的并行模拟。
- 采用位串表示状态集,并通过按位操作(AND、OR、左移、NOT)批量模拟状态转移。
- 使用分隔符映射技术将NFA状态划分为区间,通过预计算的位图实现常数时间操作。
- 利用字级并行性同时模拟多个NFA状态,将每步模拟时间从O(m)降低至O(log m)。
- 应用一种模拟数据结构,其预处理时间为O(m log m),每次操作时间为O(log m),支持高效的状态集更新。
- 通过递归分解和位级聚合,将大型NFA模拟问题简化为更小的子问题。
实验结果
研究问题
- RQ1是否可以不构建大型DFA,仅通过字级并行性加速正则表达式匹配?
- RQ2在仅使用O(m)空间的前提下,正则表达式匹配的最佳时间复杂度是多少?
- RQ3如何优化NFA状态集模拟,以避免传统方法中每步O(m)的开销?
- RQ4是否可以在避免DFA方法指数级空间膨胀的同时,保持接近线性的时间性能?
- RQ5字长w在决定正则表达式匹配算法性能方面起什么作用?
主要发现
- 当m > w时,算法时间复杂度为O(n·m·log w / w + m·log w),对大型正则表达式实现显著加速。
- 当√w < m ≤ w时,时间复杂度为O(n·log m + m·log m),优于中等大小正则表达式的Thompson算法O(n·m)。
- 当m ≤ √w时,时间复杂度为O(min(n + m², n·log m + m·log m)),对极小正则表达式可达到最优的O(n)时间。
- 当w ≥ log²n时,无论空间使用情况如何,该算法均优于所有已知的时间复杂度界限,得益于增强的字级并行性。
- 当m = O(log n)时,算法实现O(n·log log n)时间复杂度与O(log n)空间复杂度,避免了DFA构造的指数级空间开销。
- 该方法避免了大型查找表的使用,减少了缓存未命中,相较于以往的DFA方法具有实际优势。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。