形式语言与自动机 考前复习 CH4

正则语言的性质

4.1 证明语言的非正则性
“泵引理”是正则语言的一个必要条件: 如果一个语言是正则的, 则一定满足泵引理.

4.1.1 正则语言的泵引理
定理 5 (正则语言的泵引理 (Pumping Lemma)). .
如果语言 L 是正则的, 那么存在正整数 N, 它只依赖于 L, 对 ∀w ∈ L, 只要 |w|≥ N, 就可以将 w 分为三部分 w = xyz 满足: 1. y 6= ε (|y| > 0); 2. |xy|≤ N; 3. ∀k ≥ 0, xykz ∈ L

4.1.2 泵引理的应用 **
→证明语言
非正则!!!**

4.1.3 泵引理只是必要条件
即“正则 ⇒ 泵引理成立”, 所以“¬ 泵引理成立 ⇒¬ 正则”.
只能用来证明某个语言非正则!

4.2 正则语言的封闭性

4.2.1 并/连接/闭包
4.2.2 补
定理 7 (补运算封闭性). 如果 L 是 Σ 上的正则语言, 那么 L = Σ∗−L 也是正则的.

注意 使用这种方法求正则语言的补时, DFA 不能有缺失状态.

4.2.3 交

定理8
在这里插入图片描述
定理 9 (交运算封闭性)
如果 L 和 M 是正则语言, 那么 L∩M 也是正则语言.

证明:

  1. 二次取补,则可知原式化为两个补的并的补,成立

在这里插入图片描述

4.2.4 差

定理 10 (差运算封闭性).
如果 L 和 M 都是正则语言, 那么 L−M 也是正则的

证明: L−M = L∩M.

4.2.5 反转

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4.2.6 同态与逆同态

在这里插入图片描述
定理 12 (同态的封闭性).
若 L 是字母表 Σ 上的正则语言, h 是 Σ 上的同态, 则 h(L) 也是正 则的.

• 当 E = F + G 时:
h(L(F + G))
= h(L(F)∪L(G))
= h(L(F))∪h(L(G))
= L(h(F))∪L(h(G))
= L(h(F) + h(G))
= L(h(F + G))

• 当 E = FG 时:
h(L(E))
= h(L(F)L(G))
= h(L(F))h(L(G))
= L(h(F))L(h(G))
= L(h(F)h(G))
= L(h(FG))
= L(h(E))

逆同态 (Inverse homomorphism)
定义. 若 h 是字母表 Σ 到 Γ 的同态, 且 L 是 Γ 上的语言, 那么使 h(w) ∈ L 的 w (w ∈ Σ∗) 的集合, 称为语言 L 的 h 逆, 记为 h−1(L), 即 h−1(L) = {w ∈ Σ∗ | h(w) ∈ L}.

定理 13 (逆同态的封闭性).
如果 h 是字母表 Σ 到 Γ 的同态, L 是 Γ 上的正则语言, 那么 h−1(L) 也是正则语言.

4.3 正则语言的判定性质

正则语言, 或任何语言, 典型的 3 个判定问题:

  1. 以某种形式化模型描述的语言是否为空? 是否无穷?
  2. 某个特定的串 w 是否属于所描述的语言?
  3. 以两种方式描述的语言, 是否是相同的? — 语言的等价性

4.3.1 空性, 有穷性和无穷性
定理 14. 具有 n 个状态的有穷自动机 M 接受的集合 S:
4. S 是非空的, 当且仅当 M 接受某个长度小于 n 的串;
5. S 是无穷的, 当且仅当 M 接受某个长度为 m 的串, n ≤ m < 2n.

所以,对于正则语言:
• 存在算法, 判断其是否为空, 只需检查全部长度小于 n 的串;
• 存在算法, 判断其是否无穷, 只需检查全部长度由 n 到 2n−1 的串

4.3.2 等价性
证明:

  1. 设 M1 和 M2 是分别接受 L1 和 L2 的有穷自动机;
  2. 则 (L1 ∩L2)∪(L1 ∩L2) 是正则的, 所以可被某个有穷自动机 M3 接受;
  3. 而 M3 接受某个串, 当且仅当 L1 不等于 L2;
  4. 由于存在算法判断 L(M3) 是否为空, 因此得证.

4.4 自动机的最小化

4.4.1 DFA 状态的等价性
定义.
DFA A = (Q,Σ,δ,q0,F) 中两个状态 p 和 q, 对∀w ∈ Σ∗ : ˆ δ(p,w) ∈ F ⇔ ˆ δ(q,w) ∈ F, 则称这两个状态是等价的, 否则称为可区分的.
• 等价性只要求 ˆ δ(p,w) 和 ˆ δ(q,w) 同时在或不在 F 中, 而不必是相同状态

4.4.2 填表算法与 DFA 最小化
填表算法
递归寻找 DFA 中全部的可区分状态对:

  1. 如果 p ∈ F 而 q / ∈ F, 则 [p,q] 是可区分的;
  2. ∃a ∈ Σ, 如果 [r = δ(p,a),s = δ(q,a)] 是可区分的, 则 [p,q] 是可区分的.

定理 16. 如果填表算法不能区分两个状态, 则这两个状态是等价的

DFA 最小化
根据等价状态进行分组,后进行简化

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值