×

从正则表达式到使用压缩NFA的DFA。 (英语) Zbl 0912.68105号

摘要:将正则表达式转换为NFA的主要方法有两种,一种是由于McNaughton和Yamada,另一种是因为Thompson。不幸的是,两者都有缺点。给定一个长度为(R)的正则表达式(R),并出现字母符号,作者[Lect.Notes Compute.Sci.644,88-108(1992)]和A.布吕格曼·克莱因【正则表达式到有限自动机,Theoret.Compute.Sci.120197-213(1993)】给出了(Theta(m+r))时间和(O(r))空间算法,以生成McNaughton和Yamada的NFA的(Theta,m)空间表示和(s+1)状态和(m\)跃迁。这个NFA的问题是在最坏的情况下(m=\Theta(s^{2}))。Thompson的方法用(Theta(r))时间和空间构造一个具有状态和跃迁的空间NFA。这个NFA的问题是,\(r \)可以任意大于\(s \)。我们使用(Theta(r))time(Theta)(s))space算法克服了这两种方法的缺点,构造了McNaughton和Yamada的NFA的(O(s)空间表示。给定任意一组NFA状态,我们的表示可用于计算在最佳时间(O(|V|+|U|))从V中的状态转移一次的状态集。在最坏的情况下,McNaughton和Yamada的NFA需要(Theta(|V|\times|U|))。使用汤普森的NFA,在最坏的情况下,等效计算需要(Theta(r))时间。比较基准表明,在NFA构建时间、NFA接受测试以及通过子集构建NFA到DFA的转换方面,我们方法的实现优于竞争方法的实现。在本文中,程序转换用于设计算法和导出程序。特别重要的变换是Douglas Smith以前用来提高函数程序效率的一种有限差分形式。

MSC公司:

65年第68季度 形式语言和自动机

软件:

酯类
PDF格式BibTeX公司 XML格式引用
全文: 内政部

参考文献:

[1] Aho,A.,《字符串中的模式匹配》(Book,R.V.,Formal Language Theory(1980),学术出版社:纽约学术出版社)
[2] Aho,A。;霍普克罗夫特,J。;Ullman,J.,《计算机算法的设计与分析》(1974),Addison-Wesley:Addison-Whesley Reading,MA·Zbl 0326.68005号
[3] Aho,A。;Sethi,R。;Ullman,J.,《编译原理、技术和工具》(1986),Addison Wesley:Addison Wesley Reading,马萨诸塞州
[4] Berry,G。;Cosserat,L.,《esterel同步编程语言及其数学语义》(Brookes,S.D.;Roscoe,A.W.;Winskel,G.,《并发研讨会》,《计算机科学讲义》第197卷(1985),施普林格:施普林格柏林)·Zbl 0599.68023号
[5] Berry,G。;Sethi,R.,《从正则表达式到确定性自动机》,Theoret。计算。科学。,48, 117-126 (1986) ·Zbl 0626.68043号
[6] Brüggemann-Klein,A.,《有限自动机的正则表达式》,Theoret。计算。科学。,120197-213(1993年)·兹伯利0811.68096
[7] Brzozowski,J.,正则表达式的导数,J.ACM,11,4,481-494(1964)·Zbl 0225.94044号
[8] 蔡,J。;Paige,R.,《使用多集判别法解决无散列的语言处理问题》,Theoret。计算。科学。,145, 189-228 (1995) ·Zbl 0874.68165号
[9] Chang,C.,《从正则表达式到使用压缩NFA的DFA》,(博士论文(1992),纽约大学:纽约大学)·Zbl 0912.68105号
[10] Chang,C。;Paige,R.,《从正则表达式到使用压缩NFA的DFA》,(Apostolico,A.;Crochemore,M.;Galil,Z.;Manber,U.,《计算机科学讲义》,第644卷(1992年),Springer:Springer Berlin),88-108·Zbl 0912.68105号
[11] Driscoll,J。;北卡罗来纳州萨纳克。;Sleator,D。;Tarjan,R.,《使数据结构持久化》(Proc.8th ACM STOC(1986)),第109-121页
[12] 艾默生。;Lei,C.,命题微积分中的模型检验,(IEEE计算机科学逻辑会议(1986)),86-106
[13] 霍普克罗夫特,J。;Ullman,J.,《形式语言及其与自动机的关系》(1969),Addison-Wesley:Addison-Whesley Reading,MA·Zbl 0196.01701号
[14] Kleene,S.,《神经网络和有限自动机中事件的表示》(《自动机研究》,《数学研究年鉴》,第34卷(1956年),普林斯顿大学出版社:新泽西州普林斯顿大学出版),3-41·Zbl 0074.11204号
[15] Knuth,D.,关于语言从左到右的翻译,Inform。和控制,8,6,607-639(1965)·Zbl 0231.68027号
[16] 麦克诺顿,R。;Yamada,H.,自动机的正则表达式和状态图,IRA Trans。电子。计算。,EC-9、39-47(1960)·Zbl 0156.25501号
[17] Myhill,J.,《有限自动机和事件表示》,WADC,技术代表,57-624(1957)
[18] Nerode,A.,《线性自动机变换》(Proc.Amer.Math.Soc.,9(1958)),541-544·Zbl 0089.33403号
[19] 拉宾,M。;Scott,D.,有限自动机及其决策问题,IBM研究发展杂志。,3, 114-125 (1959) ·Zbl 0158.25404号
[20] 里奇,D。;汤普森,K.,《UNIX分时系统》,美国通信协会,17,7,365-375(1974)
[22] Smith,D.,KIDS——一个基于知识的软件开发系统,(自动化软件设计研讨会,自动化软件设计会议,AAAI-88(1988))
[23] (程序员手册,程序员手册,SunOS参考手册,第二卷(1989),SUN microsystems)
[24] 汤普森,K.,正则表达式搜索算法,通信ACM,11,6,419-422(1968)·兹比尔0164.46205
[25] Ullman,J.,超大规模集成电路的计算方面(1984),计算机科学出版社:计算机科学出版社,马里兰州罗克维尔·Zbl 0539.68021号
[26] Winskel,G.,《程序设计语言的形式语义》(1993),麻省理工学院出版社:麻省理学院出版社剑桥·Zbl 0919.68082号
此参考列表基于出版商或数字数学图书馆提供的信息。其项与zbMATH标识符进行启发式匹配,可能包含数据转换错误。在某些情况下,zbMATH Open的数据对这些数据进行了补充/增强。这试图尽可能准确地反映原始论文中列出的参考文献,而不要求完整或完全匹配。