DFA最小化,语法分析初步

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

 DFA最小化为:

{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}

不可区别的,等价

 

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

{6,7}

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

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

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

 

 

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

{6,7}

{1}a={3,4},

{2}a={3,4}

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

 

 

状态转换图:

DFA最小化,语法分析初步

 

 

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:

DFA最小化,语法分析初步

 

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

 

 

0

1

A

{Xad}

{be}

{cf}

B

{be}

 

{adY}

C

{cf}

{adY}

 

D

{adY}

{be}

{cf}

状态转换图为: DFA最小化,语法分析初步  

 

  最小化DFA为:

{A,B,C}

{D}

{A}0->{B}

{B}0->

{C}0->{D}

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

不可区别

{A}{B}{C}

{D}

不可区别

 

状态转换图为:

DFA最小化,语法分析初步

 

 

 

 

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

AB

→ aA | ɛ 

→ b | bB

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

 解:语法分析过程:

     S→AB

     →aAB

     →aaAB

     →aaaAB

     →aaaεB

     →aaab

答:原因:共同左因子的存在导致。

4.P100 练习4,反复提取公共左因子,对文法进行改写。

解:提取公共左因子得:

      S->C$

      C->bA | aB

      A->aD | bAA

      B->bD | aBB

      D-> ɛ | C

上一篇:形式语言与自动机|DFA识别句子


下一篇:DFA最小化,语法分析初步