“目标是构造非确定性 Büchi 自动机 $A \varphi$,使”
形式陈述
无限字上的接受条件
非确定性 Büchi 自动机写作
其中
输入是由字母组成的无限序列(ω-word)
令
自动机接受
直觉
为什么到达一次不够
若接受条件只要求曾经到达
识别“字母
在输入
相反,“最终永远只有
若猜得过早,后面的
例子与边界
与有限自动机的差异
NFA在有限字末端查看当前状态是否接受;Büchi 输入没有末端,只能用运行中无限重复的集合定义接受。把 NFA 的“读完后位于
两者都只有有限状态,却有不同的确定化性质。每个NFA都能确定化为DFA;非确定Büchi却未必有等价的确定Büchi表示。允许更一般的Rabin条件或奇偶条件后,才能为全部ω-正则语言提供确定表示。
Safra构造给出具体机制:可达子集之外再保存有序分组、稳定名字与绿色进展。一棵树上同一个名字最终持续存在且无限变绿,才能把分散的接受迹象串成同一条成功运行;仅要求每轮子集碰到接受集不足以做到这一点。
补集也因此更微妙。把
lasso 与非空性
有限 Büchi 自动机若语言非空,就存在最终周期字
因此非空性可归约为:是否存在从初态可达、且包含接受状态和循环的强连通区域。对于只有一个顶点的 SCC,必须另检查有自环;“顶点自身经零步可达”不提供消耗无限输入的循环。对于包含至少两个顶点的 SCC,可从接受点出发经过其他顶点再返回,得到非空闭合游走,其标签就是非空周期
这里证明的是至少存在一个最终周期见证,不是说全部接受字都最终周期,也不是说所有接受运行最终只沿一个简单环。有限图允许每次走环时作不同选择,仍可产生非周期输入。
这个判据的必要性可以直接从有限性推出:接受运行中至少有一个接受顶点出现无限次,取两次不同位置的出现便得到非空回返。充分性则由初始路径加上述闭合游走构造:重复游走会无限次访问接受点,其边标签构成最终周期输入。两向构造都使用实际的正长度路径,不能用零步自达替代。
on-the-fly 搜索不必预先生成全图;可以在探索转移的同时寻找接受环。但算法仍须区分“看见接受节点”和“证明从它可回到接受区域”。
推论与应用
从接受运行到对抗策略
自动机的非确定接受只要求存在一条运行。有限 Büchi 博弈则把顶点分给控制器和环境,要求存在一个控制策略,使环境的每种选择都无限次访问目标。一个包含接受点的可达环并不足以满足这个量词:环境可能在环上的自己顶点选择永远离开。该页用两层吸引域删除失败区域,以八状态例子逐轮计算,并用保留区的返回秩与删除层的下降秩分别证明双方策略。
自动机论验证接口
ω-正则语言可定义为 Büchi 自动机所接受的无限词语言。LTL 模型检查常把否定规格转换为 Büchi 自动机,再与系统取同步积;积中的接受运行代表系统存在一条违反规格的无限路径。
请求系统的完整积图把这个接口落实为五点七边:否定响应规格的两态自动机在初始请求上分成两支,一个继续等待,另一个进入接受监控。积顶点使用读完当前系统标签后的自动机状态,所以初始积集合须先消费初态标签;本页标准运行中的
系统公平性、generalized Büchi 多接受集合和 transition-based acceptance 会改变判空条件。广义 Büchi 要求每个接受集合都无限访问,因而必须在同一个可达循环 SCC 中命中每个集合。可通过强连通路径把各集合代表串成闭合游走,但不一定能找到一条同时访问所有集合的简单环。没有任何接受集合时仍要存在无限运行,有限死路不能作为见证。
对显式普通 Büchi 图的
Büchi 自动机只表达
运行非确定性还会影响“拒绝”的证明:一个字被拒绝,必须说明所有可能运行都没有无限访问接受集,而不是展示一条失败运行。实现判空时通常在自动机状态图上整体搜索接受 SCC,避免逐一枚举无限多运行;把某次启发式选择走入死路当作拒绝结论,会混淆存在接受运行的量词。
参考资料
- J. Richard Büchi, “On a Decision Method in Restricted Second Order Arithmetic,” Proceedings of the International Congress on Logic, Methodology and Philosophy of Science, Stanford University Press, 1962, pp. 1–11。
- Wolfgang Thomas, “Automata on Infinite Objects,” in Handbook of Theoretical Computer Science, Vol. B, Elsevier, 1990, Ch. 4。
- Christel Baier and Joost-Pieter Katoen, Principles of Model Checking, MIT Press, 2008, Ch. 4。
- Carnegie Mellon University, 15-414: Lecture Notes on LTL Model Checking & Büchi Automata, 2018, Lecture 19,§4,给出无限运行及存在接受运行的定义。