1) 令 P 为常规语言,Q 为上下文无关语言,使得 Q P.(例如,设 P 为正则表达式 p*q* 表示的语言,Q 为 {p n q n |n N})。那么以下哪一项是常态?
(一) 问
(B) P – Q
(C) * – P
(四) * – Q
(一) A
(乙)乙
(C)丙
(四)丁答案: (C)
解释:
1. P ∩ Q 将是 Q,由于给定的事实 Q ⊆ P,因此上下文无关但不规则。
2. 由于上下文无关语言的闭包特性,P − Q = P ∩ Q 甚至可能不是上下文无关语言。
3. Σ∗ − P 是 P 的等价补,因此是正则的。请参阅常规语言的闭包法则。
4. Σ∗ − Q 是 Q 的等价补,因此它甚至可能不是上下文无关语言。
请参阅 CFL 的关闭规则。
参考:https://www.geeksforgeeks.org/closure-properties-of-context-free-languages/
见 https://www.geeksforgeeks.org/automata-theory-set-4/
此解决方案由Vineet Purswani 提供。
这个问题的测验