我对经典语言“常规语言包容”感兴趣。给定一个正则表达式,我们用L (E )表示与其相关的正则语言。(正则表达式位于固定的字母Σ上,并带有联合,Kleene-star和串联运算。)
输入:两个正则表达式和Ë 2问:这是真的,大号(ē 1)⊆ 大号(ē 2)?
已知常规语言包含PSPACE完整[1]。
经典的方式来解决这个问题(在PSPACE)是构建的NFA 和阿2关联到ë 1和ë 2,建立一个DFA d 2从阿2,它补充成DFA d Ç 2,最后,从A 1和D C 2建立与L (E 1)和L (E 2 )C的交点相对应的交点自动机A P。现在当且仅当存在没有在接受路径甲P。
如果我没记错的话,因为是固定语言,所以整个过程可以在多项式时间内完成,因为唯一的指数膨胀来自将A 2转换为D 2。更好的是,当由|参数化时,问题是FPT 。E 2 | ,E 2的长度。
这激发了我的问题:
问题:当是一个固定表达式时,常规语言包含的复杂度是多少?它是否保持PSPACE完整?
[1] LJ Stockmeyer和AR Meyer。需要指数时间的单词问题:初步报告。第五届ACM年度计算机理论研讨会论文集,STOC '73,第1-9页。
备注:作为该领域的非专家,我发现[1](和当时的相关论文)相当不可读,并且找不到PSPACE完整性的另一证明-指向现代证明的任何指针,例如一本书,非常欢迎!另外,我认为作者似乎允许对正则表达式进行平方运算,我认为这是当今相当不规范的。)