
- 自動機理論教程
- 自動機理論 - 首頁
- 自動機理論 - 入門指南
- 自動機理論 - 歷史
- 自動機理論 - 應用
- 自動機理論術語
- 自動機中字串的基礎知識
- 自動機的集合論
- 語言和文法
- 計算理論中的文法
- 由文法生成的語言
- 喬姆斯基文法分類
- 有限自動機
- 確定性有限自動機 (DFA)
- 非確定性有限自動機 (NFA)
- 從 NFA 到 DFA 的轉換
- DFA 的最小化
- 穆爾機與米利機
- DFA 的補集
- 正則表示式
- 自動機中的正則表示式
- 自動機中的 Arden 定理
- 將正則表示式轉換為有限自動機
- 正則文法的泵引理
- 計算理論中的正則集
- 上下文無關文法
- 上下文無關文法 (CFG)
- 上下文無關文法中的二義性
- 上下文無關語言的閉包性質
- 簡化上下文無關文法
- 喬姆斯基正規化 (CNF)
- 格雷巴赫正規化 (GNF)
- 上下文無關文法的泵引理
- 下推自動機
- 下推自動機 (PDA)
- 下推自動機的接受
- 根據 CFG 構造 PDA
- 下推自動機與語法分析
- 圖靈機
- 圖靈機 (TM) 基礎
- 圖靈機接受的語言
- 多磁帶圖靈機
- 多軌跡圖靈機
- 非確定性圖靈機
- 半無限帶圖靈機
- 線性界限自動機 (LBA)
- 可計算性和不可判定性
- 圖靈語言的可判定性
- 不可判定語言
- 圖靈機停機問題
- 計算理論中的 Rice 定理
- Post 對應問題 (PCP)
- 自動機理論資源
- 自動機理論 - 快速指南
- 自動機理論 - 資源
- 自動機理論 - 討論
自動機理論簡介
自動機 – 它是什麼?
"自動機"一詞源於希臘語 "αὐτόματα",意為"自動"。自動機(複數為自動機)是一種抽象的自動計算裝置,它按照預定的操作序列自動執行。
具有有限狀態的自動機稱為有限自動機 (FA) 或有限狀態機 (FSM)。
有限自動機的形式化定義
自動機可以用一個 5 元組 (Q, ∑, δ, q0, F) 表示,其中 -
Q 是一個有限的狀態集。
∑ 是一個有限的符號集,稱為自動機的字母表。
δ 是轉移函式。
q0 是任何輸入都從其開始處理的初始狀態 (q0 ∈ Q)。
F 是 Q 中的一個或多個最終狀態的集合 (F ⊆ Q)。
相關術語
字母表
定義 - 字母表是任何有限的符號集。
示例 - ∑ = {a, b, c, d} 是一個字母表集,其中 'a'、'b'、'c' 和 'd' 是符號。
字串
定義 - 字串是從 ∑ 中取出的符號的有限序列。
示例 - 'cabcad' 是字母表集 ∑ = {a, b, c, d} 上的一個有效字串
字串的長度
定義 - 字串中存在的符號數量。(用|S|表示)。
示例 -
如果 S = 'cabcad',則 |S|= 6
如果 |S|= 0,則稱為空字串(用λ或ε表示)
克萊尼星號
定義 - 克萊尼星號∑*是作用於符號或字串集∑的一元運算子,它給出∑上所有可能長度的所有可能字串的無限集,包括λ。
表示 - ∑* = ∑0 ∪ ∑1 ∪ ∑2 ∪……. 其中 ∑p 是長度為 p 的所有可能字串的集合。
示例 - 如果 ∑ = {a, b},則 ∑* = {λ, a, b, aa, ab, ba, bb,………..}
克萊尼閉包 / 加號
定義 - 集合∑+是∑上所有可能長度的所有可能字串的無限集,不包括 λ。
表示 - ∑+ = ∑1 ∪ ∑2 ∪ ∑3 ∪…….
∑+ = ∑* − { λ }
示例 - 如果 ∑ = { a, b } ,則 ∑+ = { a, b, aa, ab, ba, bb,………..}
語言
定義 - 語言是對於某個字母表 ∑ 的 ∑* 的子集。它可以是有限的或無限的。
示例 - 如果語言採用 ∑ = {a, b} 上長度為 2 的所有可能字串,則 L = { ab, aa, ba, bb }