在計算理論(TOC)中,使用框圖解釋 DFA 的工作原理。


在計算理論(TOC)中,有限自動機(FA)表示如下:

FA 的組成部分

有限自動機的不同組成部分如下:

輸入帶

  • 輸入帶具有左端並延伸到右端。

  • 它被分成多個塊,每個塊包含來自輸入字母表 Σ 的單個符號。

  • 磁帶的結束塊在左端包含結束標記 ₵,在右端包含結束標記 $。

  • 缺少結束標記表示磁帶是無限長的。

  • 兩個結束標記之間從左到右的符號序列是待處理的輸入字串。

只讀磁頭

  • 磁帶有一個只讀磁頭,它一次檢查一個塊,並且可以向左或向右移動一個塊。

  • 在操作開始時,磁頭始終位於輸入磁帶的最左端塊。

  • 然後機器僅限制只讀磁頭從左到右的方向移動,並且每次讀取符號時都移動一個塊。

有限控制

  • 有一個有限控制確定自動機的狀態,並控制磁頭的移動。

  • 有限控制的輸入通常是讀寫磁頭下的符號(假設為 a)和機器的當前狀態(假設為 q),以給出以下輸出;

  • 沿著磁帶到下一個塊的讀寫磁頭運動。

  • 由 δ(q, a) 給出的有限狀態機的下一個狀態。

有限自動機的操作

有限自動機或確定性自動機在初始時間,假設機器處於初始狀態 q0,其輸入機制位於輸入磁帶中輸入字串的最左端符號上。

在自動機的每次移動過程中,輸入機制向右移動一個位置,因此每次移動消耗一個輸入符號。

當字串到達末尾時,如果自動機處於其最終狀態之一,則接受該字串。否則,它被拒絕。

輸入機制只能從左到右移動,並且在每個步驟中只讀取一個符號。

從一個內部狀態到另一個內部狀態的轉換受轉換函式 δ 控制。

例如,如果 δ(q0, a) = q1,

  • 那麼,如果有限自動機處於狀態 q0 且當前輸入符號為 a,則機器將進入下一個狀態 q1。

  • 一旦到達狀態 q1,無論讀取什麼符號,此機器都不會離開狀態 q1,直到掃描或接受另一個輸入符號。

示例

如果機器 M 定義為,請檢查字串 s = {01} 是否被機器接受。

M = ({q0, q1, q2}, {0, 1}, δ, q0{q1}),其中 δ 給定為;

δ (q0, 0) = q0,

δ (q0, 1) = q1,

δ (q1, 0) = q0,

δ (q1, 1) = q2,

δ (q2, 0) = q2,

δ (q2, 0) = q1。

此機器 M 接受字串 01。讓我們從狀態 q0 開始,首先從輸入磁帶掃描符號 0。

檢視圖的邊,很明顯自動機保持在狀態 q0。接下來,只讀磁頭升級 1 並讀取 1,自動機進入狀態 q1。

我們現在位於字串的末尾,同時處於最終狀態 q1。

更新於: 2021年6月15日

1K+ 次檢視

開啟你的 職業生涯

透過完成課程獲得認證

開始
廣告