【问题标题】:Is it possible for an ambiguous CFG to convert into GNF?模棱两可的 CFG 是否可以转换为 GNF?
【发布时间】:2022-01-02 19:40:12
【问题描述】:

所以我正在研究如何将 CFG 转换为 GNF,并尝试使用我的名字中的字母来实现,因此生产规则如下:-

A->AkS|SA S->AtA

其中 S,A 是非终结符,k,t 是终结符 但这是一个模棱两可的 CFG,那么我们可以将其转换为 GNF 吗?

【问题讨论】:

    标签: context-free-grammar automata finite-automata context-free-language automata-theory


    【解决方案1】:

    是的,any CFG 可以转换为 Greibach 范式中的等价文法。如果原始文法是模棱两可的,那么转换后的文法也是模棱两可的,但反过来不一定正确;转换可能会引入歧义。

    上述声明假设您使用的是宽松的 GNF 定义,它允许产生式 S→ε,但仅适用于开始符号 S。对于 GNF 的严格定义,只有不能导出 ε 的文法才能进行变换;严格的 ε 消除将导致语法识别除 ε 之外的原始语法所识别的每个句子。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-05-26
      • 2011-09-07
      • 1970-01-01
      • 2014-12-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-09
      相关资源
      最近更新 更多