作业 09 DFA最小化,语法分析初步

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

DFA化简如下:

I

{1,2,3,4,5}

{6,7}

 

{3,4}b->{6,7}

{1,2}b->{2}

{5}b->

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

{6}b->{6}, {7}b->{6}

不可区别,等价

II

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

{6,7}

{3}c->{3}, {4}c->{3}

{3}d={5}, {4}d->{5}

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

III

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

{6,7}

{1}a={3,4}, {2}a={3,4}

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

 

  状态转换图如下:

  

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

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

S→ 0A|1B

A→ 1S|1

B→0S|0

答:由上可得正规式如下:

  S->0A | 1B

    ->0(1S | 1) | 1(0S | 0)

    ->01S | 01 | 10S | 10

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

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

  由正规式可得NFA如下:

  

  由NFA可得DFA状态转换矩阵如下:

 

 

0

1

A

{Xad}

{be}

{cf}

B

{be}

 

{adY}

C

{cf}

{adY}

 

D

{adY}

{be}

{cf}

  DFA状态转换图如下:

  

    最小化DFA如下:

 

I

{A,B,C}

{D}

 

{A}0->{B}

{B}0->

{C}0->{D}

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

不可区别

II

{A}{B}{C}

{D}

不可区别

 

  

状态转换图如下:

  

3.自上而下语法分析,回溯产生的原因是什么?

句子aaab 的一个自顶向下语法分析过程如下:

  S=>AB

    =>aAB

    =>aaAB

    =>aaaAB

    =>aaaεB

    =>aaab

  回溯产生的原因是文法的产生式有公共左因子。

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

S→C$

C→bA|aB

A→a|aC|bAA

B→b|bC|aBB

S->C$

C->bA|aB

A->aD|bAA

B->bE|aBB

D->ε|C

E->ε|C

猜你喜欢

转载自www.cnblogs.com/yeli1629/p/11803989.html