状态图 :
在有限状态语法的重写规则或中,只不过是当时的一种特殊情况,所以可以把有限状态的重写规则归结为。在规则中,如果把和看成不同的状态,那么当从状态到状态时,可生成一个终极符号。这样,便可把有限状态语法想象为一种生成装置,这种装置每次只能够生成一个终极符号,而每一个终极符号都与一个特定的状态相联系。
改用小写字母来表示状态。如果这种生成装置原先处于某一状态,生成一个终极符号后,就可以到状态。在状态,再生成一个终极符号后,就可以到状态,以此类推。这种情况可用状态图来表示。状态图是有限状态语法的形象表示法。
例如,如果这种生成装置原先处于某状态,生成一个终极符号后,进入状态,那么它生成的语言是,其状态图如图1所示:
图1 生成语言a的状态图
如果这种生成装置原先处于状态,生成终极符号后,转入状态,在状态,再生成终极符号后,转入状态,那么它生成的语言是,其状态图如图2所示:
图2 生成语言ab的状态图
如果这种生成装置处于状态,生成终极符号后又回到,那么它生成的语言是,,,……。这种状态图叫作圈(loop),其状态图如图3所示:
图3 生成圈的状态图
如果这种生成装置处于状态,生成终极符号后,转入状态。在状态,要么生成终极符号后再回到;要么生成终极符号后转入状态,那么它生成的语言是,,,……。 其状态图如图4所示:
图4 生成语言ac,abc,abbc,……的状态图
这种生成装置在生成了若干个终极符号之后,还可能转回到前面的状态,构成一个大的封闭圈,如图5所示。它可以生成如,,,……的终极符号串。这里表示符号串的终点,既是初始状态,又是最后状态。
图5 生成大的封闭圈的状态图
给出一个状态图,就可以按着图中的路径,始终顺着箭头所指的方向来生成句子。当达到图中的某一状态时,可以沿着从这一状态引出的任何一条路径前进,不管这条路径在前面的生成过程中是否已经走过。在从一个状态过渡到另一个状态时,可以容许若干种走法。状态图中可以容许有任意有限长度的、任意有限数目的圈。这样的生成装置在数学上叫有限状态马尔可夫过程(finite state Markov process)。