【发布时间】:2012-10-17 04:35:21
【问题描述】:
在我的教科书中,这是对这两个术语的解释:
上下文相关语法:
语法可以有 w1 → w2 形式的产生式,其中 w1 = lAr 和 w2 = lwr,其中 A 是非终结符,l 和 r 是零字符串 或多个终端或非终端符号,并且 w 是一个非空字符串 终端或非终端符号。它也可以有产生式 S → λ 只要 S 没有出现在任何其他的右侧 生产。
上下文无关语法:
语法只能有 w1 → w2 形式的产生式,其中 w1 是 不是终端符号的单个符号。类型 3 语法可以有 仅形式为 w1 → w2 且 w1 = A 且 w2 = aB 或 w2 = a,其中 A 和 B 是非终结符,a 是终结符 符号,或者 w1 = S 和 w2 = λ。
在我的教科书中,作者说:CSG是CFG的一个特例。但是,我不明白这一点。因为在 CSG 中,lAr -> lwr。 l 和 r 可以是 零字符串 或多个终结符或非终结符。因此,当它是零字符串时(意味着:长度 = 0)。我们可以将 lAr 写为 A。因此,CSG 将是 CFG。所以,CSG 是 CFG
我理解错了吗?请为我更正。
谢谢:)
【问题讨论】:
-
换一种说法——CFG是CSG的一个特例。
-
This answer 可能会有所帮助
标签: algorithm context-free-grammar context-sensitive-grammar