形式语义-归纳原理.ppt
《形式语义-归纳原理.ppt》由会员分享,可在线阅读,更多相关《形式语义-归纳原理.ppt(64页珍藏版)》请在三一办公上搜索。
1、程序设计语言的形式语义,The Formal Semantics of Programming Languages,第三章 归纳原理,第二章遗留的问题:自然语义对任意的命令c和初始状态,至多存在一个终止状态使得?结构化操作语义对任意的命令c和初始状态,至多存在一个终止状态使得?自然语义描述与结构化操作语义描述的等价性?,第三章 归纳原理,数学归纳法,结构归纳法的一般形式规则归纳法,以操作语义为例,使用归纳法证明一些与操作语义相关的性质,从而对操作语义有更深入的理解;并为指称语义的学习打下基础。,3.1 数学归纳法,数学归纳法:自然数集是对0和后继运算封闭的最小集,3.1 数学归纳法,设P(n)
2、是与自然数N有关的性质,3.2 良基归纳法,第二数学归纳法的正确性依赖于性质:自然数的每个子集都有最小元 良基集,3.2 良基归纳法,良基关系是反自反的,否则会有无穷下降链 从极小元角度定义良基关系,3.2 良基归纳法,如果某个集合上存在良基关系,则称其为良基集自然数之间的小于关系是良基关系(极小元等同于最小元),3.2 良基归纳法,良基归纳原理,3.2 良基归纳法,良基归纳法,使用良基归纳法的关键是选择合适的良基关系第一数学归纳法良基关系定义为自然数上的后继关系第二数学归纳法良基关系定义为自然数上的小于关系,3.2 良基归纳法,例:证明下面的Euclid算法求两个数的最大公约数程序对于任意大
3、于0的自然数x,y都是终止的,即要证明:对任意的初始状态,若(x)0且(y)0,则存在使得,3.2 良基归纳法,令:S=|(x)0且(y)0 欲证:S,有下面性质P()成立:,良基关系:,是良基关系,(x)和(y)的值不会无穷减少而始终保持大于0极小元:(x)=1且(y)=1,3.2 良基归纳法,良基归纳法证明:归纳基对极小元:(x)=1且(y)=1,归纳步 归纳假设:对任意的状态S,若则有P()成立 下面证明这时也有P()成立,3.2 良基归纳法,归纳步 归纳假设:对任意的状态S,若则有P()成立 下面证明这时也有P()成立,设(x)=m,(y)=n,分两种情况:(1)m=n,则有=fals
4、e,3.2 良基归纳法,归纳步 归纳假设:对任意的状态S,若则有P()成立 下面证明这时也有P()成立,设(x)=m,(y)=n,分两种情况:(2)mn,则有=true,根据while和if语义规则,得到:,其中:,3.2 良基归纳法,归纳步 归纳假设:对任意的状态S,若则有P()成立 下面证明这时也有P()成立,其中:,不管哪种情况都有:,至此证明了,对任意的S,有P(),即对任意的S,上述程序都是终止的,3.2 良基归纳法,小结:良基归纳法是证明程序终止性的最重要的方法由于程序中存在循环和递归,程序可能无法正常终止如果能够证明执行程序的循环或递归会使良基集的值变小,则程序必会终止,3.3
5、结构归纳法,归纳定义归纳基:给出集合A的基本元素归纳步:给出从已有元素构造新元素的构造方法最小化:集合A是对基本元素和构造方法封闭的最小集例如:,3.3 结构归纳法,结构归纳法对归纳定义的集合A,要证明性质P对集合A的所有元素都成立,只要证明:归纳基:直接证明性质P对于A的基本元素都成立归纳步:对于构造A的某种构造方法,证明若a是由a1,a2,an用该方法构造得到的,证明若性质P对于a1,a2,an都成立蕴涵性质P对a也成立。(在归纳假设性质P对a1,a2,an都成立的情况下,证明P对a也成立),这种证明方法的正确性基于:集合A是对于基本元素和构造方法封闭的最小集合。设:S=aA|性质P对于a
6、成立S也对于基本元素和构造方法封闭,3.3 结构归纳法,结构归纳法是良基归纳法的特例在归纳定义集合A上定义良基关系:,由于A是对基本元素和构造方法封闭的最小集合,A的每个元素,要么是基本元素,要么可根据某种构造方法进行分解为其前趋这种分解不可能无限进行下去,一定会得到基本元素而不可再分因此上述关系是良基关系,3.3 结构归纳法,命题3.3 对于所有的算术表达式a,状态和整数m,m,有:,令P是算术表达式的一个性质,要证明对所有的算术表达式a性质P(a)为真,只要这证明:对所有的原子表达式a性质P(a)为真 对所有算术表达式的各种构成方法该性质也保持为真,分情形证明:,只有一条规则可用,所以m=
7、m=n,根据加法规则,必存在m0、m1和m0、m1满足:,由归纳假设,m0=m0 且m1=m1,所以m=m,同理可证明其他几种情况,3.4 规则归纳法,规则归纳法为了将结构归纳法用于更为复杂的情况,将归纳定义的思想用规则的形式做更为数学化的描述规则归纳法是结构归纳法的一般形式,归纳定义的一般形式归纳定义集合的思想:基本元素+构造方法。使用规则的形式描述这种归纳定义,首先定义什么是规则,3.4 规则归纳法,定义:给定集合X,X上的一个规则(rule)集是关系:,公理 H=,H为有限集(包括空集),3.4 规则归纳法,例:算术表达式,3.4 规则归纳法,例:也可明确写为:,3.4 规则归纳法,定义
8、:R推导树 给定X上的规则R,R推导树是满足如下条件的有穷树(树的节点个数有穷)(1)所有的节点都由X中的元素标记,特别地,叶子节点由规则集R的基中的元素标记;(2)所有的内部节点(包括根)都满足:设标记该节点的元素是x0,而它的(直接)子节点由x1,x2,xn标记,则,是R的某个规则的实例,3.4 规则归纳法,如果xX存在根由x标记的R推导树,则称x是R可推导的,记为:,简记为:,3.4 规则归纳法,定义:给定X上的规则集R,称X 的子集,为R归纳定义的集合。,规则集R定义的集合就是能够使用其中的规则有限步推导得到的元素。归纳定义可看作子集概括原理的一种特殊方式,它使用集合X上的一组规则概括
9、出X的一个子集。指明集合X是为了避免悖论,所关注的是规则所定义的子集本身,IR是对R封闭的最小集,集合Q对规则集是R封闭的当且仅当对所有规则实例(H/x),有HQ xQ,归纳定义的正确性?(存在且惟一)3.6节再讨论,3.4 规则归纳法,规则归纳法基本思想在一个推导中,如果一个性质在从所有规则实例的前提移动到结论的过程中保持为真,那么该推导的结论也具有该性质。因此,对由这些规则定义的集合中的所有元素该性质也为真。要证明对规则所定义的集合的所有元素某个性质为真,常常用到规则归纳法。,3.4 规则归纳法,规则归纳法IR是规则集R定义的集合,P是某个性质,xIR.P(x)当且仅当:对任意规则实例(H
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 形式 语义 归纳 原理
链接地址:https://www.31ppt.com/p-6416584.html