有限自动机电路表示的描述性与计算复杂性
1. 引言
有限自动机是最流行的计算模型之一,状态复杂度是有限自动机最常用的复杂度度量。它在结构语言理论中表现出色,但并不总能反映自动机实现的复杂度或简单性。本文探讨另一种自动机复杂度度量:BC - 复杂度,旨在捕捉自动机实现的细节。
状态复杂度与状态最小化问题相关,而 BC - 复杂度与状态分配问题相关。状态分配是有限状态机综合中的经典问题,即如何将自动机的状态编码为二进制存储元件向量,使自动机的转移函数成为“最简单”的开关函数。
过去 40 年,该领域研究众多,但主要从功能优化角度出发,关注不同“最简单”开关函数概念下的最优状态分配方法。标准优化方法试图最小化状态变量间的依赖关系,以实现转移函数作为布尔电路的有效实现。也有其他简单性解释,如最小化存储元件的平均切换,对应电路的最小功耗。
直到最近,状态分配问题才从复杂度角度进行研究。BC - 复杂度对应开关函数“简单性”的标准解释,即电路中的门数量。大致模型是将有限自动机的输入和状态编码为位向量,转移函数编码为布尔电路,该电路的复杂度即为自动机(此电路表示)的 BC - 复杂度。
本文的贡献有三方面:
- 证明一个有用的引理(引理 3),可统一证明不同语言类的 BC - 复杂度下界。
- 用该引理证明给定非确定性状态复杂度的语言的 BC - 复杂度下界,并改进之前的上界,使二进制输入字母表的上下界仅相差一个常数乘法因子(最多为 4)。
- 考虑电路表示的 DFA 上各种算法的计算复杂度,证明许多简单问题(如确定状态是否可达)在此表示下是 PSPACE 完全的,特别是证明了电路表示的 DFA 和标准状态表表示的 NFA
超级会员免费看
订阅专栏 解锁全文
37

被折叠的 条评论
为什么被折叠?



