确定有限状态自动机

✍ dations ◷ 2025-09-14 09:23:02 #确定有限状态自动机

在计算理论中,确定有限状态自动机或确定有限自动机(英语:deterministic finite automaton, DFA)是一个能实现状态转移的自动机。对于一个给定的属于该自动机的状态和一个属于该自动机字母表 Σ {displaystyle Sigma } 的字符,它都能根据事先给定的转移函数转移到下一个状态(这个状态可以是先前那个状态)。

确定有限状态自动机 A {displaystyle {mathcal {A}}} 是由

所组成的5-元组。因此一个DFA可以写成这样的形式: A = ( Q , Σ , δ , s , F ) {displaystyle {mathcal {A}}=left(Q,Sigma ,delta ,s,Fright)}

确定有限状态自动机从起始状态开始,一个字符接一个字符地读入一个字符串 w Σ {displaystyle win Sigma ^{*}} (这里的 {displaystyle {}^{*}} 指示Kleene星号算子。),并根据给定的转移函数一步一步地转移至下一个状态。在读完该字符串后,如果该自动机停在一个属于F的接受状态,那么它就接受该字符串,反之则拒绝该字符串。

为了在保证严谨的前提下,方便地叙述关于DFA的内容,我们定义如下扩展的转移函数:

对于一个确定有限状态自动机 A = ( Q , Σ , δ , s , F ) {displaystyle {mathcal {A}}=left(Q,Sigma ,delta ,s,Fright)} ,如果 δ ( s , w ) F {displaystyle delta ^{*}left(s,wright)in F} ,我们就说该自动机接受字符串w,反之则表明该自动机拒绝字符串w。

被一个确定有限自动机接受的语言(或者叫“被识别的语言”)定义为: L ( A ) = { w Σ | A   {displaystyle {mathcal {L}}({mathcal {A}})={win Sigma ^{*}|{mathcal {A}}~} 接受字符串   w } {displaystyle ~w}} ,也就是由所有被接受的字符串组成的集合。

除了数学上的严谨表述,通常为了讨论方便,也使用状态图直观地表示DFA。不难发现,对于一个给定的DFA,存在唯一一个对应的有向图(但是严格意义上一个有向图不能确定出唯一一个DFA)。有向图的每个结点对应一个状态,每条有向边对应一种转移。习惯上将结点画成两个圈表示接受状态,一个圈表示拒绝状态。用一条没有起点的边指向起始状态。

除了在表述上方便以外,在研究某些问题(如“给定的DFA的语言是否为无穷集合”)时,状态图也提供了有效的解法。

DFA是一种实际的计算模型,因为有平凡的线性时间、恒定空间的在线算法模拟在输入流上的DFA。给定两个DFA有有效算法找到识别它们所识别语言的并集、交集和补集的DFA。还有有效算法确定一个DFA是否接受任何给定字符串,一个DFA是否接受所有字符串,两个DFA是否识别同样的语言,和对特定正则语言找到状态数目最小的DFA(最小DFA)。

在另一方面,DFA在可识别的语言上有严格的限制—很多简单的语言,包括需要多于恒定空间来解决的任何问题,不能被DFA识别。经典的DFA不能识别的简单语言的例子是括号语言,就是由正确配对的括号组成的语言,比如 (()())。由形如anbn的字符串组成的语言,就是有限数目个a,随后是相等数目个b。可以证明没有DFA有足够状态来识别这种语言(通俗地说,因为需要至少2n个状态,而n是不恒定的)。

下面是一个确定有限状态自动机的例子。

确定有限状态自动机 A = ( Q , Σ , δ , s , F ) {displaystyle {mathcal {A}}=left(Q,Sigma ,delta ,s,Fright)}

状态 S 1 {displaystyle S_{1}} 表示在输入的字符串中有偶数个0,而 S 2 {displaystyle S_{2}} 表示有奇数个0。在输入中1不改变自动机的状态。当读完输入的字符串的时候,状态将显示输入的字符串是否包含偶数个0。

A {displaystyle {mathcal {A}}} 能识别的语言是 L ( A ) = { w | # 0 ( w ) 0   ( m o d   2 ) } {displaystyle {mathcal {L}}({mathcal {A}})={w|#_{0}(w)equiv 0~(mod~2)}} 。用正则表达式表示为: ( 1 ( 01 0 ) ) {displaystyle (1^{*}(01^{*}0)^{*})^{*}}

确定有限状态自动机的交,并,差,补,连接,替换,同态,逆同态等运算是封闭的,也就是说确定有限状态自动机通过这些运算产生的新的自动机也是确定有限状态自动机。

A = ( Q , Σ , δ , s , F ) {displaystyle {mathcal {A}}=(Q,Sigma ,delta ,s,F)} 是一个DFA,那么由补运算产生的新DFA定义为: A ¯ = ( Q , Σ , δ , s , Q F ) {displaystyle {bar {mathcal {A}}}=(Q,Sigma ,delta ,s,Q-F)} 。显然只要将 A {displaystyle {mathcal {A}}} 中接受的状态设为不接受的状态,同时把不接受的状态设为接受的状态就得到 A ¯ {displaystyle {bar {mathcal {A}}}} 。补运算的复杂度是: O ( | Q | ) {displaystyle O(left|Qright|)}

有两个DFA, A 1 = ( Q 1 , Σ , δ 1 , s 1 , F 1 ) {displaystyle {mathcal {A}}_{1}=(Q_{1},Sigma ,delta _{1},s_{1},F_{1})} A 2 = ( Q 2 , Σ , δ 2 , s 2 , F 2 ) {displaystyle {mathcal {A}}_{2}=(Q_{2},Sigma ,delta _{2},s_{2},F_{2})} ,那么由这两个DFA创造出来的新的自动机定义为: B = ( Q 1 × Q 2 , Σ , δ B , ( s 1 , s 2 ) , M ) {displaystyle {mathcal {B}}=(Q_{1}times Q_{2},Sigma ,delta _{mathcal {B}},(s_{1},s_{2}),M)} 。其中 M Q 1 × Q 2 {displaystyle Msubseteq Q_{1}times Q_{2}} ( s 1 , s 2 ) {displaystyle left(s_{1},s_{2}right)} B {displaystyle {mathcal {B}}} 的开始状态, δ B {displaystyle delta _{mathcal {B}}} B {displaystyle {mathcal {B}}} 的转移函数,且作如下定义: q 1 Q 1 ,   q 2 Q 2 ,   σ Σ : δ B ( ( q 1 , q 2 ) , σ ) = ( δ 1 ( q 1 , σ ) , δ 2 ( q 2 , σ ) ) {displaystyle forall q_{1}in Q_{1},~q_{2}in Q_{2},~sigma in Sigma :delta _{mathcal {B}}((q_{1},q_{2}),sigma )=(delta _{1}(q_{1},sigma ),delta _{2}(q_{2},sigma ))}

交运算和并运算的复杂度都是 O ( | Q 1 | | Q 2 | | Σ | ) {displaystyle O(left|Q_{1}right|left|Q_{2}right|left|Sigma right|)}

一个同态函数 h : Σ Γ {displaystyle h:Sigma ^{*}rightarrow Gamma ^{*}} 可以递归的定义为:

于是则有   h ( u v ) = h ( u ) h ( v ) {displaystyle ~h(uv)=h(u)h(v)} 。(以上所述中   ϵ {displaystyle ~epsilon } 为空字符,   u , v Σ , σ Σ {displaystyle ~u,vin Sigma ^{*},sigma in Sigma }

此外替换运算和逆同态运算的方法近似。

对于一个正则语言,接受该语言的等价类自动机是一个   ( Q , Σ , δ , s , F ) {displaystyle ~(Q,Sigma ,delta ,s,F)} 的5-元组。其定义如下:

~L被称为Nerode关系,是Myhill-Nerode定理的基础。简单的来说就是对于任意   x , y , z Σ {displaystyle ~x,y,zin Sigma ^{*}} ,如果 x z L y z L {displaystyle xzin LLeftrightarrow yzin L} ,那么x~Ly。

对于任意给定的确定有限状态自动机都能找到一个与之计算能力等价的最小确定有限状态自动机,简称最小自动机。该最小自动机中状态的数量等于能识别相同语言的等价类自动机中等价关系的数量,我们可以称最小自动机和等价类自动机“实际上”是相等的,也就是同构。非正式的说法是:对于最小自动机上的任意状态都可以通过一个同构函数变换成等价类自动机上的一个状态。

能识别一个正则语言的等价类自动机是唯一的,因此能识别该语言的最小自动机也是唯一的。

定义一个非等价关系: N := { ( p , q )   |   p , q Q , w Σ : δ ( p , w ) F δ ( q , w ) F } {displaystyle N:={(p,q)~|~p,qin Q,exists win Sigma ^{*}:delta ^{*}(p,w)in Fleftrightarrow delta ^{*}(q,w)notin F}} ,如下步骤可以得到这个集合N:

以下是由一个任意DFA转换到一个最小DFA的步骤:

这样就得到了接受相同语言的最小自动机。复杂度为 O ( | Q | 2 | Σ | ) {displaystyle O(left|Qright|^{2}left|Sigma right|)}

相关

  • 强迫强迫行为(英语:Compulsive behavior),又称作态行为,是一种重复与持续的行为,当事人无法由这种行为中获得益处或满足感,但难以停止去做这种行为的内在冲动。这类行为在一般人的身上
  • 姆斯季斯拉夫·弗谢沃洛多维奇·克尔德什姆斯季斯拉夫·弗谢沃洛多维奇·克尔德什(俄语:Мстисла́в Все́володович Ке́лдыш,1911年1月28日(2月10日)-1978年6月24日)是数学家、物理学家、航天
  • 艾德蒙·德瓦尔艾德蒙·德瓦尔,OBE(Edmund de Waal, 1964年-)是英国的陶瓷艺术家,作家,出生于英国诺丁汉。直到2011年,他曾为英国威斯敏斯特大学策展人,讲师,艺术评论家,艺术史学家和陶瓷教授。他曾
  • 意大利新现实主义意大利新现实主义(意大利语:Neorealismo),或译作意大利新写实主义,也以“意大利电影黄金年代”的称呼闻名,是一场国家电影运动,特征为讲述穷人和工人阶级的故事,在外景拍摄,常使用非
  • 裴逢裴逢(越南语:Bùi Phùng,1920年9月10日-1999年11月22日)是越南人民军大将和越南共产党中央委员会委员。
  • 哈勃山坐标:80°52′S 158°19′E / 80.867°S 158.317°E / -80.867; 158.317哈勃山(英语:Mount Hubble)是南极洲的山峰,位于奥次地,属于丘吉尔山脉的一部分,海拔高度2,490米,以美国天文
  • 刘云 (足球运动员)刘云(1995年1月7日-),是一名中国足球运动员,司职中场。目前效力于中甲球队武汉卓尔。刘云出道于武汉卓尔青训系统。2013年代表湖北队参加十二运会足球比赛取得第三名的成绩。2014年进入武汉卓尔一线队名单,但并未在联赛中出场。2015年5月31日,刘云在中甲联赛第11轮6:0大胜深圳宇恒的比赛中首次代表武汉卓尔首发上场,并创造一次助攻。当赛季刘云共为球队在中甲联赛中出场17次。2016年7月武汉卓尔俱乐部官方宣布与刘云签订了新的工作合同。
  • 飞马座V342dHR 8799 d是位于飞马座,距离地球129光年的一颗系外行星,它环绕着一颗6等的牧夫座λ型星HR 8799运转着,质量介于木星的7至13倍之间,半径比木星大约20%至30%。这颗行星与HR 8799的轨道距离为24天文单位,离心率大于0.04,周期为100年。它是HR8799系统内已知最内侧的行星,于2008年11月13日与另外两颗行星一起被Marois等人使用夏威夷的凯克望远镜和双子望远镜,利用直接影像技术发现的。 维基共享资源上有关飞马座V342d的多媒体资源天球赤道座标: 23h 07m 28.
  • 琳宁 (清朝宗室)宗室琳宁(18世纪?-1805年),爱新觉罗氏,满洲镶蓝旗,清朝宗室、官员。谥勤僖。早年担任宗人府效力笔帖式。乾隆二十六年,任七品笔帖式。乾隆三十二年,任宗人府经历。乾隆三十五年,改副理事官。乾隆三十九年,升任理事官。乾隆四十一年,任江西道监察御史,后稽查宗人府事务。乾隆四十三年,任宗室佐领。乾隆四十八年,掌京畿道监察御史。乾隆四十九年,任礼科给事中,后署正蓝旗满洲副都统。乾隆五十年,任山海关副都统。乾隆五十三年,任黑龙江将军。乾隆五十四年,改吉林将军。乾隆五十六年,任盛京将军。乾隆五十七年,任总管内务府
  • 无我明妃无我明妃(梵文Nairātmyā,中文音译“艿哈特蜜娅”,藏文' bdag med ma),藏传佛教无上瑜伽部(梵文 Anuttarayoga Tantra)主尊欢喜金刚之明妃,著名瑜伽女(yoginī),象征般若智慧。Nair 译为“无”,ātmyā 译为“我”(阴性形式),无我即为所证悟之空性。无我明妃与其配偶吉祥欢喜金刚常现悲智结合双身拥抱形像,有时也现散坐或游戏坐单身形像。