📜  自动机理论 |设置 10

📅  最后修改于: 2021-09-28 10:54:58             🧑  作者: Mango

这些问题用于 GATE CS 考试的练习目的。

问题 1:请考虑以下语句:

  • X:对于任何语言,语言 L 或其补语 L’ 必须是有限的。
  • Y:包含 epsilon 的语言的 DFA 必须将初始状态作为最终状态。
  • Z:非确定性有限自动机比确定性有限自动机更强大。

以下哪个(些)陈述是正确的?

(A)只有 X
(B)只有 Y
(C)只有 Z
(D)以上所有。

解释:
X:不正确。因为,语言 L 及其恭维可以是无限的。
Y:没错,因为如果语言包含 epsilon,那么它的初始状态也必须是 final 的,否则 DFA 将无法接受 epsilon。
Z:不正确。因为,NFA 接受的每种语言也被某些 DFA 接受。因此,NFA 和 DFA 在功率上是等效的。

选项(B)是正确的。

问题 2:以下哪个正则表达式描述了 {a, b} 上不包含连续 b 对的语言?

(A) (a*baa*)(b + epsilon)
(B) (a + ba)*(b + epsilon)
(C) (a*baa*)*(b + epsilon) + a*
(D) (a*ba*)*(b + epsilon) + a*(b + epsilon)

解释:

  • (A)这是不正确的。因为,它不包含 (a 或 epsilon)。
  • (B)这是正确的。因为,它包含 (epsilon, a, b, ba, ab, …..),即没有连续的 b 对。
  • (C)这是不正确的。因为,它不包含“ab”或“aab”。
  • (D)这是不正确的。因为,它包含’bb’,这是不允许的。

选项(B)是正确的。

问题 3:对于下面给出的正则表达式,不在字母表 {0, 1} 上的最短字符串的长度是多少:

1*(0 + 1)*1* 

(一)三个
(二)
(三)
()

解释:
检查在字母表 {0, 1} 上生成的每个字符串,直到找到不是由给定正则表达式生成的最短字符串。
在这种情况下,不是由给定正则表达式生成的最小字符串是 0110,其长度为 4。

所以,选项(D)是正确的。

问题 4:设 ‘X’ 是由最终状态下确定性下推自动机(DPDA)接受的所有语言的集合,而 ‘Y’ 是由 DPDA 接受的所有语言的空堆栈集合,那么以下哪项是正确的?

(A) X 是 Y 的真子集
(B) X = Y
(C) X 是 Y 的真超集
(D)以上都不是

解释:
DPDA被最终状态接受的语言集是空栈DPDA接受的语言的真超集。所以 X 是 Y 的真超集。

选项(C)是正确的。

问题 5:考虑 X 和 Y 是字母表 {0, 1} 上的两种语言,分别由正则表达式 0*(10*)* 和 (0* + 1*)* 表示。以下内容哪些是对的?

(A) X 是 Y 的真子集
(B) Y 是 X 的真子集
(C) X = Y
(D)没有

解释:
这里,

L(X) 
= 0*(10*)* 
= {epsilon, 0, 1, 10, 01, 00, 11, ......} 

和。

L(Y) 
= (0* + 1*)* 
= {epsilon, 0, 1, 10, 01, 00, 11, ....} 

所以,这两种语言是等价的。

选项(C)是正确的。