如何将无上下文语法(可生成常规语言)转换为右线性语法

时间:2013-02-07 01:00:42

标签: context-free-grammar regular-language nfa

无上下文语法:(e代表epsilon)

  S --> aSb|aSa|bSa|bSb|e

它可以生成常规语言,这意味着它可以转换为正确的线性语法。是否有将CFG转换为RLG的一般规则?

1 个答案:

答案 0 :(得分:1)

没有用于将CFG转换为右线性语法的通用算法,因为右线性语法精确地生成常规语言,这是无上下文语言的严格子集。因此,如果存在执行此转换的通用算法,则会证明所有无上下文的语言都是规则的,这已知是错误的。

希望这有帮助!