跳转至

Lecture 8

文法的二义性

Definition

CFG \(G = (V,T,S,P)\) 称为二义的,如果对于某个 \(w \in T^*\),存在根节点都为开始符号 \(S\) 的两棵不同的分析树,其产物都是 \(w\),反之称之为无二义的文法

Theorem

对 CFG \(G = (V,T,S,P)\)\(w \in T^*\)\(w\) 具有两棵不同的分析树,当且仅当存在两个不同的从开始 \(S\)\(w\) 的最左推导

Theorem

一个 CFG 是否为二义的问题是不可判定的,即不存在解决该问题的算法

固有二义语言

Definition

如果上下文无关语言 \(L\) 的所有文法都是二义的,则称 \(L\) 是固有二义的。

某些上下文无关语言只有二义文法