形式语言与自动机 Part.1绪论, Part.2 语言与文法
课程名:形式语言与自动机
作者:Lupinus_Linn
许可证:CC-BY-NC-SA 3.0 创作共用-署名-非商业性-相同方式共享
- 署名(英语:Attribution,BY):您(用户)可以复制、发行、展览、表演、放映、广播或通过信息网络传播本作品;您必须按照作者或者许可人指定的方式对作品进行署名。
- 非商业性使用(英语:Noncommercial,NC):您可以自由复制、散布、展示及演出本作品;您不得为商业目的而使用本作品。
- 相同方式共享(英语:Sharealike,SA):您可以自由复制、散布、展示及演出本作品;若您改变、转变或更改本作品,仅在遵守与本作品相同的许可条款下,您才能散布由本作品产生的派生作品。(参见copyleft。)
引用:
- 本文中部分文字与图片引用自北京邮电大学计算机学院王柏教授的《形式语言与自动机》课程课件。
- 绪论中的证明方法部分引自清华大学王生原老师课件。
- 部分题目插图引用自北京邮电大学出版社《形式语言与自动机 第二版》教材。
在此一并表示感谢,并不做商业用途。
本笔记所有内容的传送门
Part.1绪论, Part.2 语言与文法
Part 3.有限自动机
Part.4 正则语言,2DFA,Mealy&Moore机
Part.5 上下文无关语言与下推自动机(PDA)
Part.6 图灵机
文章目录
- Part 1. 绪论
- 1.1 课程核心内容
- 1.2 形式语言
- 1.3 自动机
- 1.4 文法
- 1.5 证明技术
- Part 2.语言和文法
- 2.1 基本概念
- 2.2 常用符号规定
- 2.3 Chomsky文法体系
Part 1. 绪论
1.1 课程核心内容
(序号指课本章节)
- 语言,文法, 语言的运算(并、连接、闭包、…), 推导, 句型, 句子
- 有限自动机、三种类型(DFA/NFA/ɛ-NFA),极小化,相互关系
右线性文法,正则式,文法与自动机、正则式的关系
3型语言的性质(泵浦引理等)
有输出的自动机- 推导树,二义性
上下文无关文法的变换
CNF/GNF (GNF 本届考试不要求)
下推自动机
文法与自动机的关系 (本届PDA 转 CFG 考试不要求)
文法特性(2型语言的泵浦引理等)- 图灵机 (本届仅5.1 基本图灵机)
1.2 形式语言
形式化描述的字母表上的字符串的集合
形式语言是某个字母表上的字符串的集合, 有一定的描述范围。
1.3 自动机
自动机是具有离散输入输出的数学模型。自动机接受一定的输入,执行一定的动作, 产生一定的结果。使用状态迁移描述整个工作过程。
自动机的本质:根据状态、输入和规则决定 下一个状态
状态: 一个标识,能区分自动机在不同时刻的状况。有限状态系统具有任意有限数目的内部“状态”。
有限自动机可以认为是由一个带有读头的有限控制器和一条写有字符的输入带组成。
自动机和语言的关系
形式语言 | 用于接受的自动机 |
---|---|
非限定性语言 | 图灵机 |
上下文有关语言 | 线性有界自动机 |
上下文无关语言 | 下推自动机 |
正则语言 | 有限自动机 |
1.4 文法
文法是定义语言的一个数学模型,而自动机可 看作是语言的识别系统。
1.5 证明技术
“If – Then”命题
把 If部分作为已知的命题,把 Then 部分作为结论.
“If - And - Only - If ”命题
可分别证明如下两个命题:
1 if A then B,
2 if B then A.
欲证R ⊆ S
可证明如下命题: if x∈R then x∈S
欲证R = S
可分别证明如下两个命题:
1 if x∈R then x∈S
2 if x∈S then x∈R
逆否命题的证明
有时,证明原命题的逆否(contrapositive)命题更加方便。
欲证 if A then B , 可证明如下命题: if not B then not A
反证法
欲证 if H then C ,可以把 H 和 not C 都作为已知的命题,把任何一个矛盾( contradiction ) 命题作为新的结论.
举例证明存在性&举反例否定任意性
集合的归纳定义
由 3 部分构成:
1 基础(basis) // 直接定义集合中的元素(至少1个)
2 归纳(induction)// 从已知元素生成新元素的规则
3 极小性限制 // 申明集合中的元素只能由1、2 生成
结构归纳法
对于归纳定义的集合S,欲证对于任意x∈S,满足性质P(x).
1 基础(basis) // 若有直接定义a∈S,则证明P(a)
2 归纳(induction) // 若归纳定义中有规则
a 1 , a 2 , … , a n ∈ S , t h e n f ( a 1 , a 2 , … , a n ) i n S a_1,a_2,\dots,a_n \in S,then \ f(a_1,a_2,\dots,a_n)in\ S a1,a2,…,an∈S,then f(a1,a2,…,an)in S
则证明 i f P ( a 1 ) , P ( a 2 ) , … , P ( a n ) i n S t h e n P ( f ( a 1 , a 2 , … , a n ) ) 成 立 if\ P(a_1),P(a_2),\dots,P(a_n)in\ S\ then\ P(f(a_1,a_2,\dots,a_n))成立 if P(a1),P(a2),…,P(an)in S then P(f(a1,a2,…,an))成立
Part 2.语言和文法
2.1 基本概念
- 字母表
- 字符串
- 闭包
- 语言
- 文法
- 推导和句型
- 句子
2.2 常用符号规定
- 字母表: Σ, Γ, . . .
- 字符: a, b, c, . . .
- 字符串: . . . , w, x, y, z
- 集合: A,B, C, . . .
2.3 Chomsky文法体系
Chomsky文法体系该体系对生成式(产生式)的形式做了一些规定, 分为四类,即0型、1型、2型、3型文法.
文法类别 | 对应语言 | 对应自动机 | 生成式约束 |
---|---|---|---|
0型文法 | 递归可枚举语言 | 图灵机 | No |
1型文法 | 上下文有关语言 | 若不考虑ε,与线性有界自动机LBA等价。 |
1. 左部的长度小于右部 2. 不含A->ε |
2型文法 | 上下文无关语言 | 下推自动机PDA | 左部是单个非终结符。 |
3型文法 | 正则语言 | 有限自动机 | 左/右线性文法。 |
- 注意,四种文法从上到下是包含关系,询问类别时应该取尽量靠下的文法(范围较小的文法)。
形式语言与自动机 Part.1绪论, Part.2 语言与文法相关推荐
- 形式语言与自动机 第6章 上下文无关语言的性质
文章目录 第6章 上下文无关语言的性质 CFL 的缩胀定理和 Ogden 定理 CFL 缩胀定理 Ogden 定理 CFL 的封闭性质和判定性质 CFL 封闭性质 CFL 判定性质 CFL 的成员资格 ...
- 形式语言与自动机 Part 3.有限自动机
课程名:形式语言与自动机 作者:Lupinus_Linn 许可证:CC-BY-NC-SA 3.0 创作共用-署名-非商业性-相同方式共享 署名(英语:Attribution,BY):您(用户)可以复制 ...
- 形式语言与自动机 Part.4 正则语言,2DFA,MealyMoore机
课程名:形式语言与自动机 作者:Lupinus_Linn 许可证:CC-BY-NC-SA 3.0 创作共用-署名-非商业性-相同方式共享 署名(英语:Attribution,BY):您(用户)可以复制 ...
- 形式语言与自动机 Part.5 上下文无关语言与下推自动机(PDA)
课程名:形式语言与自动机 作者:Lupinus_Linn 许可证:CC-BY-NC-SA 3.0 创作共用-署名-非商业性-相同方式共享 署名(英语:Attribution,BY):您(用户)可以复制 ...
- 形式语言与自动机 Part.6 图灵机
课程名:形式语言与自动机 作者:Lupinus_Linn 许可证:CC-BY-NC-SA 3.0 创作共用-署名-非商业性-相同方式共享 署名(英语:Attribution,BY):您(用户)可以复制 ...
- 计算理论 形式语言与自动机_下推式自动机(PDA)| 计算理论
计算理论 形式语言与自动机 Pushdown Automaton (PDA) is a kind of Automaton which comes under the theory of Comput ...
- 【形式语言与自动机】图灵机
[形式语言与自动机]图灵机 一.图灵机 在经过有限状态机的介绍之后,再来看一种功能更强大的机器. 图灵机基本结构 〉 一条分格的无限长的纸带,每格可容纳一个字符 〉 一个读写头,可以在纸带上移动(可以 ...
- 【形式语言与自动机】有限状态机
[形式语言与自动机]有限状态机 一.有限状态机 其需求来自于对语言字符串识别的需要,给定字符串判定它是否属于语法G产生的 L(G), 判断是否属于这个集合. 句子识别 〉 给定一个字符串,判定是否属于 ...
- 【第二章 语言及文法】形式语言与自动机第二章个人总结复习笔记分享!(含文件、持续更新...)
目录 一.总览 二.2.1 [语言的定义与运算] 2.2 [文法] 2.3 [文法的分类] 说明 网盘链接 参考教材 有用的话请点个赞吧,后续有时间会持续更新. 提示:本文内容全是我一人学习总结而来, ...
最新文章
- 逻辑覆盖测试(四)判定/条件覆盖
- sturts2 单上传、多上传、下载例子
- go 怎么等待所有的协程完成_GO语言基础进阶教程:Go语言的协程——Goroutine
- 批量删除数据库中有特定开始字符的表、视图和存储过程
- IntelliJ IDEA 添加copyright
- Excel通过身份证获取出生年月,性别,年龄,生肖,星座,省份等信息总结归纳...
- 苹果高通“情变”祸及所有中国 iPhone 用户!
- FreeBSD6.1学习笔记[转]
- python各个模块
- verilog语法检查
- vue中使用router打开一个新的窗口
- python中的各类除法总结
- RZ G2L核心板内存性能测试
- html img 拉伸,图片因img标签拉伸的处理办法
- Java面试宝典-2017
- 用python提取文字中省份与城市
- matlab中m文件是什么,MATLAB中M文件的使用
- java 关键字6,【JAVA SE基础篇】6.开始前的一些规定以及关键字
- Java实现word、excel、ppt转pdf文件,pdf转图片(无水印)
- 大华NVR设备接分别入宇视摄像机Onvif和RTSP主子码流的方案说明
热门文章
- 蒲公英 · JELLY技术周刊 Vol.26: 请问您这个月要来点肝么?
- linux串口工具 kermit,ubuntu串口工具(minicom、kermit)的使用
- 《剑指Offer》之“平衡二叉树”
- 利用PHPExcel转Excel饼图
- 一键重装系统win8图文教程
- HTML之基础标签_思维导图版
- Dev-C++如何更改字体大小
- sockjs-node报错
- 距离最短原则的离散点连接 Python实现
- BuildPack:无需编写 Dockerfile,新一代的企业镜像打包工具