形式语言

形式语言

1. 关于语言的定义

人类所特有的用来表达意思、交流思想的工具,是一种特殊的社会现象,由语音、词汇和语法构成一定的系统。

2. 语言描述的三种途径

􀂙 穷举法— 只适合句子数目有限的语言。
􀂙 语法描述— 生成语言中合格的句子。
􀂙 自动机— 对输入的句子进行检验,区别哪些是语言中的句子,哪些不是语言中的句子。

3. 形式语法

形式语法是一个四元组G=(N,Σ,P,S),其中,N是非终结符(non-terminal symbol)的有限集合(有时也称变量集或句法种类集);Σ是终结符号(terminal symbol)的有限集合,N∩Σ=∅;V=N∪Σ称为总词汇表(vocabulary);P是一组重写规则的有限集合:P={α→β},其中,α,β是由V中元素构成的串,但是,α中至少应含有一个非终结符号;S∈N称为句子符或初始符。

4. 推导的定义

5. 最左推导、最右推导和规范推导

约定每步推导中只改写最左边的那个非终结符,这种推导称为“最左推导”
约定每步推导中只改写最右边的那个非终结符,这种推导称为“最右推导”
最右推导也称规范推导

6. 句型与句子

文法G=(N,Σ,P,S)的句子形式(句型)通过如下递归方式定义:
(1)S是一个句子形式;
(2)如果γβα是一个句子形式,且β→δ是P中的产生式,那么,γδα也是一个句子形式。
对于文法G,不含非终结符的句子形式称为G生成的句子。由文法G生成的语言(或称G识别的语言)是指G生成的所有句子的集合,记作

7. 正则文法 Regular grammar (3型文法)

正则文法也是最严厉的文法

如果文法G的规则集P中所有规则均满足如下形式:A→Bx,或A→x,其中,A,B∈N, x∈Σ,则称该文法G为正则文法,或称3型文法。
在这种书写格式中,由于规则右部的非终结符号(如果有的话)出现在最左边,所以,这种形式的正则文法又叫左线性正则文法。类似地,如果一正则文法所有含非终结符号的规则形式为A→xB,则该文法称为右线性正则文法。

例3-2 G=(N,Σ,P,S),其中,N={S,A,B},Σ={a, b},

P:
(1)S→aA
(2)A→aA
(3)A→bbB

(4)B→bB

(5)B→b

该文法形式上似乎不满足上述正则文法定义的条件(第3条规则有两个非终止符),但规则(3)可以改写成如下两条规则:
A→bB′
B′→bB
因此,该文法修改后为右线性正则文法,它所识别的语言为:
L(G)={a^n b^m},n≥1,m≥3。

8. 上下文无关文法(context-free grammar, CFG)(2型文法)

如果文法G的规则集P中所有规则均满足如下形式:A→α,其中,A∈N,α∈(N∪Σ)*,则称文法G为上下文无关文法(context-free grammar, CFG),或称2型文法。
例3-3 G=(N,Σ,P,S),其中,N={S,A,B,C},Σ={a,b, c},

P:(1)S→ABC
(2)A→aA|a
(3)B→bB|b
(4)C→BA|c

显然,该文法为上下文无关文法,可识别的语言为
L(G)={a^n b^m a^k c^α},n≥1,m≥1,k≥0,α∈{0,1}
从定义中我们可以看出,2型文法比3型文法少了一层限制,其规则右端的格式没有约束。也就是说,规则左部的非终结符可以被改写成任何形式。

9. 上下文有关文法(context-sensitive grammar, CSG)(1 型文法)

如果文法G的规则集P中所有规则满足如下形式:αAβ→αγβ,其中,A∈N,α,β,γ∈(N∪Σ)* ,且γ至少包含一个字符,则称文法G为上下文有关文法(context-sensitive grammar, CSG),或称1型文法。
从上述定义可以看出,字符串αAβ中的A被改写成γ时需要有上文语境α和下文语境β,这体现了上下文相关的含义。当然,α和β可以为空字符ε,如果α和β同时为空时,1型文法变成了2型文法。也就是说,2型文法是1型文法的特例。因此,1型文法可识别的语言集合比2型文法可识别的语言集合更大。
例3-4 G=(N,Σ,P,S),其中,N={S,A,B,C},Σ={a,b, c},
P:(1)S→ABC
(2)A→aA|a
(3)B→bB|b
(4)BC→Bcc
根据第(4)条规则可以断定该文法为上下文有关文法,所识别的语言为L(G)={a^n b^m c^2},n≥1,m≥1。

通过这个例子我们可以看到,规则左部不一定仅为一个非终结符,可以有上下文限制,但是,规则右端的长度不小于规则左部的长度。因此,这种文法又有另一种定义:如果文法G为上下文有关文法,当且仅当x→y,x∈(N∪Σ)+,y∈(N∪Σ)*,并且,|y|≥|x|。注意,在定义中,空字符ε不可出现在1、2、3型文法的产生式中,否则,第二种定义不成立。不过在形式语言理论中,我们可以把1、2、3型文法的定义扩充到允许x→ε类型的产生式存在。

10. 0型文法 无约束文法

如果文法G的规则集P中所有规则满足如下形式:α→β,其中,α∈(N∪Σ)+,β∈(N∪Σ)*,则称G为无约束文法或无限制重写系统,也称0型文法。
根据上述定义我们不难看出,从0型文法到3型文法,对规则的约束越来越多,每一个正则文法都是上下文无关文法,每一个上下无关文法都是上下文有关文法,而每一个上下文有关文法都可以认为是0型文法。因此,从0型文法到3型文法所识别的语言集合越来越小。

如果用G0、G1、G2和G3分别表示0型、1型、2型和3型文法,那么 L(G3) ⊆ L(G2) ⊆ L(G1) ⊆ L(G0)。

我们约定,如果一个文法的产生式集合P中,有分属于不同类型文法的产生式,则把属于包含最广类型文法的那条产生式所属的类型作为这个文法的类型。比如说,某个文法的全部规则分别属于1型文法、2型文法和3型文法,则我们称这个文法为1型文法。同理,如果一种语言能够由几种文法所产生,则把这种语言称为在这几种文法中受限制最多的那种文法所产生的语言。

只要你能描述出来,都属于这个类型,即0型。

11. 4种文法的区别

4种文法的联系

4种文法判别

1.先来看看3型文法的判断规则

①:左边必须只有一个字符,且必须是非终结符;
②:其右边最多只能有两个字符,要么是一个非终结符+终结符(终结符+非终结符),要么是一个终结符。
③:对于3型文法中的所有产生式,若其右边有两个字符的产生式,这些产生式右边两个字符中终结符和非终结符的相对位置一定要固定,也就是说如果一个产生式右边的两个字符的排列是:终结符+非终结符,那么所有产生式右边只要有两个字符的,都必须满足终结符+非终结符。反之亦然。

2.再看看2型文法判断规则

①:与3型文法的第一点相同,即:左边必须有且仅有一个非终结符。
②:2型文法所有产生式的右边可以含有若干个终结符和非终结符(只要是有限的就行,没有个数限制)。

3.最后再看看1型文法判断规则

①:1型文法所有产生式左边可以含有一个、两个或两个以上的字符,但其中必须至少有一个非终结符。
②:与2型文法第二点相同,但需要满足|α|≤|β|.

  1. 0型文法不需要判断了,一般的文法都是0型文法。 O(∩_∩)O

12. 上下文无关文法的二义性

一个文法G,如果存在某个句子有不只一棵分析树与之对应,那么称这个文法是二义的。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,723评论 6 481
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,485评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 152,998评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,323评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,355评论 5 374
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,079评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,389评论 3 400
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,019评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,519评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,971评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,100评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,738评论 4 324
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,293评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,289评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,517评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,547评论 2 354
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,834评论 2 345

推荐阅读更多精彩内容