语法是无限的还是有限的?

时间:2012-10-11 02:16:12

标签: grammar bnf

S ::= N 
N ::= A B C X  |  D E F X
A ::= edith  | simone
B ::= de  |  ε 
C ::= wharton  | beauvoir
D ::= percy
E ::= bysshe  |  ε
F ::= shelley 
X ::= and S | ε

如果你继续用S替换X,你似乎可以永远继续下去,但是如果用ε代替,那么它就会停止。这会使语法无限或有限吗?

1 个答案:

答案 0 :(得分:1)

“形式语言语法”

GrammarAutomataRegular Expression都是语言有限或无限(由任意数量的字符串组成)的任何语言的有限代表。

由4个tapuler对象定义的形式语言语法: G(V n ,Σ,P,S)其中

V n - finite set变量。
Σ - 是finite set语言符号(在语法中称为终端) P - 生产规则是finite set S - 一个Start变量是变量集中的一个元素(S∈V n )。

<强> [答案]
因此,在 G(V n ,Σ,P,S) every element is finite that Why Grammar is called finite represent of a Language中。

  

在您的问题X生产 X :: =和S | ε是一个示例,显示了即使生产规则是有限的,如何使用语法生成无限大字符串!

同样,任何类型的自动机也是finite represent of a language

我想补充一下:

这四个元组的语法可以表示任何一种语言,这就是语法被称为conman represent form of any language的原因。它在编写解析器时也有实用的用途。

在理论上,形式语言的研究是关于有限形式的语言表达,以便可以理解自然和语言。