Σ*成为集合Σ的闭包,Σ+=Σ1∪Σ2∪Σ3∪…∪Σn…称为Σ的正闭包。
即:
如:Σ={0,1,},则Σ*={ε,0,1,00,01,10,11,000,001,010,…}
Σ+={0,1,00,01,10,11,000,001,010,…}
- 设G[S]是一个文法,如果符号串x是从识别符号推导出来的,即有S =>x,则称x是文法G[S]的句型。
- 若x仅由终结符组成,即S=>x,x∈VT*,则称x为G[S]的句子。
文法的类型 (0型>1型 >2型>3型)
- 1型文法:若每一个产生式均满足|β|>=|α|(限定文法要有扩展性),仅仅S=>ε除外,则文法G是1型或上下文有关的。
- 2型文法:满足α是一个非终结符,β∈(VN∪VT)*,则此文法称为2型的或上下文无关的。例如S=>Ab,A=>a。
- 3型文法:若P的每一个产生式的形式都是A=>aB或A=>a,其中A和B都是非终结符,a∈VT*,则G是3型文法或正规文法。
- 0型文法:对于每个产生式α=>β:α∈(VT∪VN)*且至少含有一个非终结符,而β∈(VT∪VN)*,则G是一个0型文法
判断文法的二义性:
如果一个文法中的某个句子对应两棵不同的语法树,则说这个文法是二义的。
短语,直接短语,句柄,可规约串。
令G是一个文法,S是文法的开始符号,αβδ是文法G的一个句型。如果有S=>αAδ且A=>β,则称β是句型αβδ相对于非终结符A的短语。特别地,如果有A=>β,则称β是句型αβδ相对于规则A=>β的直接短语。
句柄:对于无二义性文法,一个有右句型的唯一句柄是其最左直接短语。
短语的找法:直接画出语法树,能组成根的叶子结点集,即为短语。