下列哪个语法生成语言L = {a i b j | i≠j}
(A) A
(B) B
(C) C
(D) D答案: (D)
解释:
语言L包含以下字符串:{ abb,aab,abbb,aabbb,aaabb,aa,bb,……。 },即所有a出现在字符串的b之前,并且“ a的数量”不等于“ b的数量”,因此i≠j。
在这里,语法A,B和C还会生成字符串“ ab”,其中i = j,还有更多的i = j字符串,因此这些语法不会生成语言L,因为对于属于语言L的字符串,指数我不应该等于指数j。
语法D :此语法永远不会生成a和b均不相等的字符串,即i = j。因此,该语法生成语言L。因此生成选项D。
这个问题的测验