确定性有限自动机

有限自动机可分为两种类型 −

  • 确定性有限自动机 (DFA)
  • 非确定性有限自动机 (NDFA / NFA)

确定性有限自动机 (DFA)

在 DFA 中,对于每个输入符号,都可以确定机器将移动到的状态。因此,它被称为确定性自动机。由于它具有有限数量的状态,因此该机器被称为确定性有限机器确定性有限自动机。

DFA 的正式定义

DFA 可以用 5 元组 (Q、∑、δ、q0、F) 表示,其中 −

  • Q 是一组有限的状态。

  • 是一组有限的符号,称为字母表。

  • δ 是转换函数,其中 δ: Q × ∑ → Q

  • q0 是处理任何输入的初始状态 (q0 ∈ Q)。

  • F 是 Q 的一组最终状态 (F ⊆ Q)。

DFA 的图形表示

DFA 由称为状态图的有向图表示。

  • 顶点代表状态。
  • 标有输入字母的弧表示转换。
  • 初始状态由空的单个传入弧表示。
  • 最终状态由双圆圈表示。

示例

让确定性有限自动机是 →

  • Q = {a, b, c},
  • ∑ = {0, 1},
  • q0 = {a},
  • F = {c}, and

转移函数 δ 如下表 − 所示

当前状态 输入 0 的下一个状态 输入 1 的下一个状态
a a b
b c a
c b c

其图形表示如下 −

DFA 图形表示