文档库 最新最全的文档下载
当前位置:文档库 › 形式语言与自动机理论试题答案解析

形式语言与自动机理论试题答案解析

形式语言与自动机理论试题答案解析
形式语言与自动机理论试题答案解析

形式语言与自动机理论试题答案解析

一、按要求完成下列填空

1.给出集合{Φ,{Φ}}和集合{ε,0,00}的幂集(2x4')

(1) {Φ,{Φ},{{Φ}},{Φ,{Φ}}}

(2) {Φ,{ε},{0},{00},{ε,0},{ε,00},{0,00},{ε,0,00}}

2.设∑={0,1},请给出∑上的下列语言的文法(2x5')

(1)所有包含子串01011的串

S→X01011Y

X→ε|0X|1X

Y→ε|0Y|1Y

(2)所有既没有一对连续的0,也没有一对连续的1的串

A→ε|A’|A”

A’→0|01|01A’

A”→1|10|10A”

3.构造识别下列语言的DFA 2x6'

(1) {x|x∈{0,1}+且x以0开头以1结尾}

(设置陷阱状态,当第一个字符为1时,进入陷阱状态)

(2) {x|x∈{0,1}+且x的第十个字符为1}

(设置一个陷阱状态,一旦发现x的第十个字符为0,进入陷阱状态)

二、判断(正确的写T ,错误的写F ) 5x2'

1.设1R 和2R 是集合{a,b,c,d,e}上的二元关系,则

3231321)(R R R R R R R ? ( T )

任取(x.,y),其中x,y },,,,{e d c b a ∈,使得321)(),(R R R y x ∈。

)),(),((321R y z R R z x z ∈∧∈?? },,,,{e d c b a z ∈ )),(),(),((321R y z R z x R z x z ∈∧∈∧∈??

)),(),(()),(),((3231R y z R z x z R y z R z x z ∈∧∈?∧∈∧∈?? 3231),(),(R R y x R R y x ∈∧∈? 3231),(R R R R y x ∈?

2.对于任一非空集合A ,Φ?A

2 ( T ) 3.文法G :S A|AS A a|b|c|d|e|f|g 是RG ( F ) 4.3型语言

2型语言

1型语言

0型语言 ( F )

5.s (rs+s )*r=rr *s (rr *s )* ( F )

不成立,假设r,s 分别是表示语言R ,S 的正则表达式,例如当R={0},S={1}, L(s(rs+s)*r)是以1开头的字符串,而L(rr*s(rr*s)*)是以0开头的字符串.L(s(rs+s)*r) ≠ L(rr*s(rr*s)*) 所以s(rs+s)*r ≠ rr*s(rr*s)*,结论不成立

三、设文法G 的产生式集如下,试给出句子aaabbbccc 的至少两个不同的推导(12分)。 aSBC

aBC S |→

ab aB bB →bb CB →BC bC →bc cC →cc

推导一:

S=>aSBC

=>aaSBCBC =>aaaBCBCBC =>aaabCBCBC =>aaabBCCBC =>aaabbCCBC =>aaabbCBCC =>aaabbBCCC =>aaabbbCCC =>aaabbbcCC =>aaabbbccC =>aaabbbccc

推导二:

S=>aSBC

=>aaSBCBC =>aaaBCBCBC

=>aaaBBCCBC =>aaaBBCBCC

=>aaabBCBCC

=>aaabbCBCC

=>aaabbBCCC =>aaabbbCCC =>aaabbbcCC

=>aaabbbccC =>aaabbbccc

四、判断语言{n n n 010|n>=1}是否为RL ,如果是,请构造出它的有穷描述(FA,RG 或者RL );如果不是,请证明你的结论(12分)

解:设L={n n n 010|n>=1}。假设L 是RL ,则它满足泵引理。不妨设N 是泵引理所指的仅依赖于 L 的正整数,取Z=N N N 010 显然,Z ∈L 。

按照泵引理所述,必存在u ,v ,w 。由于|uv|<=N,并且|v|>=1,所以v 只可能是由0组成的非空串。不妨设v=k 0,k>=1 此时有u=j k N --0 ,w=N N j 010 从而有uv i w=N N j i k j k N 010)0(0-- 当i=2时,有uv 2w=N N k N 010+ 又因为k>=1,

所以 N+k>N 这就是说N N k N 010+不属于L , 这与泵引理矛盾。所以,L 不是RL 。

五、构造等价于下图所示DFA 的正则表达式。(12分)

答案(之一):(

01+(1+00)((1+00*1)0)*((1+00*1)1)

)*

(ε+(1+00)((1+00*1)0)*00*)

3

Y

S

30

去掉q 3:

去掉q 1

去掉q 2:

Y

Y

01+(1+00)((1+00*1)0)*((1+00*1)1)

去掉q 0:

六、设M=({210,,q q q },{0,1},{0,1,B},{δ},0q ,B,{2q }),其中δ的定义如下:

δ(0q ,0)=(0q ,0,R ) δ(0q ,1)=(1q ,1,R ) δ(1q ,0)=(1q ,0,R ) δ(1q ,B )=(2q ,B ,R )

请根据此定义,给出M 处理字符串00001000,10000的过程中ID 的变化。(10分)

解:处理输入串00001000的过程中经历的ID 变化序列如下:

0q 00001000

00q 0001000

000q 001000

0000q 01000

00000q 10000

000011q 0000 0000101q 00

00001001q 0

000010001q

00001000B 2q

处理输入串10000的过程中经历的ID 变化序列如下:

0q 10000

11q 00000 101q 000 1001q 00 10001q 0 100001q

10000B 2q

X

Y

(01+(1+00)((1+00*1)0)*((1+00*1)1))* ( +(1+00)((1+00*1)0)*00*)

七、根据给定的NFA,构造与之等价的DFA。(14分)NFA M的状态转移函数如下表

解答:

相关文档