第九次作业 DFA最小化,语法分析初步

1.将DFA最小化:教材P65 第9题

 解:

DFA化简:

I

{1,2,3,4,5}

{6,7}

 

{1,2,5}a->{2,3,4,5}

{3,4}a ->

{1,2,3,4,5}可区别,划分

 

II

{1,2,5}{3,4}

{6,7}

 

{1,2}b->{1,2,5}

{5}b->

{1,2,5}可区别,划分

{

III

{1,2}{5}{3,4}

{6,7}

 

{3}b->{6,7},{3}c->{3,4},{3}d->{5}

{4}b->{6,7},{4}c->{3,4},{4}d->{5}

{3,4}不可区别,等价

6}b->{6,7}

{7}b->{6,7}

{6,7}不可区别,等价

IIII

{1,2}{5}{3,4}

{6,7}

 

{1}a->{3,4},{1}b->{1,2}

{2}a->{3,4},{2}b->{1,2}

{1,2}不可区别,等价

 


所以,最小化DFA为:

所识别的语言:b*ac*(da)*bb*

 

2.构造以下文法相应的最小的DFA

S→ 0A|1B

A→ 1S|1

B→0S|0

 解:

S->01S|01|10S|10

  ->01S+01+10S+10

  ->(01+10)S+01+10

  ->(01|10)S|(01|10)

  ->(01|10)*(01|10)

 NFA:

 

 

 NFA->DFA状态转换图:

 

 

0

1

A

ε{A}={ABC}

{EG}

{FH}

B

{EG}

 

ε{BD}={BCD}

C

{FH}

ε{BD}={BCD}

 

D

{BCD}

{EG}

{FH}

DFA:

DFA化简:

I

{A,B,C}

{D}

 

{A}1->{ABC}

{B}1->{D}

{C}1->

{A,B,C}可区别,划分

 

II

{A},{B},{C}

{D}

故最小化DFA:

 

3.给定如下文法 G[S]:

AB

→ aA | ɛ 

→ b | bB

给出句子aaab 的一个自顶向下语法分析过程,并说明回溯产生的原因是什么?

解:

语法分析:S -> AB -> aAB -> aaAB ->aaaAB -> aaaɛB -> aaaB -> aaabB -> aaabb

                               -> aaaB -> aaab

回溯产生的原因:文法→ b | bB中有公共左因子,导致语法的不确定性。

 

4.P100 练习4,反复提取公共左因子。

 解:

S -> C$

C -> bA | aB

A -> aC' | bAA

B -> bC' | aBB

C' -> ɛ | C  

 

posted @ 2019-11-08 16:35  fourn666  阅读(148)  评论(0编辑  收藏  举报