跳轉到內容

離散數學/有限狀態自動機

來自華夏公益教科書,開放的書籍,開放的世界

形式上,一個確定性有限自動機(DFA)是一個 5 元組 其中

  • Q 是所有狀態的集合。
  • 是正在考慮的字母表。
  • 是狀態轉換的集合,每個狀態包含字母表中每個元素的唯一一個轉換。
  • 是唯一的起始狀態。
  • F 是所有接受狀態的集合。

對於 DFA, 可以被視為一個從 的函式。

示例:考慮 DFA ,其狀態轉換由下表給出

a b
p q p
q p q

很容易驗證這個 DFA 接受輸入 "aaa"。

類似地,非確定性有限自動機的形式定義是一個 5 元組 其中

  • Q 是所有狀態的集合。
  • 是正在考慮的字母表。
  • 是狀態轉換的集合,包含 轉換,並且對於每個狀態,任何特定輸入可以有多個轉換。
  • 是唯一的起始狀態。
  • F 是所有接受狀態的集合。

對於 NFA, 可以被視為一個從 的函式,其中 的冪集。

注意,對於 NFA 和 DFA 而言, 不是狀態集合。相反,它是一個單獨的狀態,因為兩者都只能從一個狀態開始。但是,NFA 可以透過新增一個新的起始狀態並進行 ε 轉換到所有需要的起始狀態來實現類似的功能。

DFA 和 NFA 之間的區別在於,DFA 的 delta 轉換不允許包含 ε 跳躍(在無輸入的情況下進行轉換)、同一輸入的轉換的並集以及字母表中任何元素的無轉換。

對於任何非確定有限自動機 ,存在一個確定有限自動機 ,使得

華夏公益教科書