📜  复合有限自动机 (FA)

📅  最后修改于: 2021-09-27 22:39:00             🧑  作者: Mango

先决条件 – 有限自动机 (FA)
化合物 FA 是对给定的 DFA D1 和 D2 进行运算 (∪, ∩, -) 后形成的所得 DFA。

D1 = (Q1, ∑, δ, q1, F1) and D2 = (Q2, ∑, δ, q2, F2) 

在哪里,
Q 1和Q 2 :分别为DFA D1 和D2 的有限状态集。
∑:输入字母表包含有限数量的输入符号。
δ:过渡函数(δ:Qx∑->Q)
q 1和q 2 :分别为D1和D2的初始状态。
F 1和F 2 :分别是DFA D1 和D2 的最终状态集。

复合有限自动机 (FA) 的特性:

  1. 复合 FA (D1XD2) 中的状态数等于 m*n,其中 m 是 D1 中的状态数,n 是状态 D2 的数。
  2. 化合物 FA 的初始状态是 D1 和 D2 初始状态的组合。
  3. 复合 FA 的最终状态取决于执行的操作。

例子:

D1 = no. of a's divisible by 2
D2 = no. of b's divisible by 3

D1 ({q1, B}, {a, b}, δ, q1, {q1}), 
D1 ({q2, A, C}, {a, b}, δ, q2, {q2}) 

构造最小 FA:

(D1∪D2), 
(D1∩D2), 
(D1-D2),
(D2-D1) 

解释:

DFA D1:

DFA D2:

1.并集(D1∪D2):
任何属于 D1 语言D2 语言的字符串w 都被合成复合自动机接受。
终态:如果 D1 的终态或 D2 的终态包含在化合物 FA 的任何状态中。

2. 交点(D1∩D2):
任意字符串瓦特属于对两者D1的语言D2的语言由所得化合物自动机接受。
终态:如果 D1 的终态和 D2 的终态都包含在化合物 FA 的任何状态中。

3. 差异(D1 – D2):
任何被 D1 接受的字符串w,不被 D2 接受。
终态:如果 D1 的终态和 D2 的非终态包含在化合物 FA 的任何状态中。

4. 差异(D2 – D1):
任何被 D2 接受的字符串w,不被 D1 接受。
终态:如果 D2 的终态和 D1 的非终态包含在化合物 FA 的任何状态中。