有窮自動機分為兩類:確定的有窮自動機 (Deterministic Finite Automata)和不確定的有 窮自動 機(Nondeterministic Finite Automata) 。
關於有窮自動機將討論如下內容
確定的有窮自動機DFA 不確定的有窮自動機NFA NFA的確定化 DFA的最小化
VT={a,d} VN={S,A,B}
A B(ad)B B
AdB
正規文法和正規式
對G=(VN,VT,P,S),存在一個 =VT上的正規式R : L(R)=L(G)
AxB AxAy Axy
, By ≈ A=xy ≈ A=xy ≈ A=xy
正規文法和正規式
G[s]:SaA|a AaAadAd
A(ad)A(ad)
=f(Q,b)=Q
Q屬於終態。
得證。
a
Ua b, a
S
b
aQ
b
V
b
DFA M所能接受的符號串的全體記為L(M).
對於任何兩個有窮自動機M和M′,如果L(M)=L(M′),則 稱M與M′是等價的.
結論:
上一個符號串集V是正規的,當且僅當存在一個上 的確定有窮自動機M,使得V=L(M)。
DFA的確定性表現在轉換函數f:K×Σ→K是一個單值函 數,也就是說,對任何狀態k∈K,和輸入符號a∈Σ, f(k,a)唯一地確定了下一個狀態。從狀態轉換圖來看, 若字母表Σ含有n個輸入字元,那麼任何一個狀態結 點最多有n條弧射出,而且每條弧以一個不同的輸入 字元標記。
狀態
字元
a
S
U
U
Q
V
U
Q
Q
b
V0
V0
Q0
Q