可计算函数程序设计语言.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

2.4归约和符号解释器命题如果M是PCF闭项,但它不是?x:?.M1或?M1,M2?的形式,那么对任何项N,M??lazyN当且仅当M??leftN。推论如果P是PCF程序,R是结果,那么P??lazyR当且仅当P??leftR。和最左归约相比,由于惰性归约的规则集合小一些,因此有可能得到一个效率相对较高的实现。2.3程序和语义积类型???的数学值是有序对集合函数类型???的数学值是从?到?的函数集合如果?=?,那么函数有不动点约定:对任何n?N,用?n?表示其数码例:?x:nat.M 如果对任何自然数n?N,都有 [?n?/x]M???f(n)?那么?x:nat.M的指称就是数值函数f:N?N2.3程序和语义环境?是指从变量到值的映射若x:?,?(x)是类型?的值集上的元素通过归纳可以定义表达式M在环境?中的含义〖M〗?〖x〗?是变量x在环境?中的值函数应用〖MN〗?的含义是通过把M指称的函数〖M〗?应用到N指称的变元〖N〗?来获得2.3程序和语义指称语义是可合成的,即任何表达式的含义由它子表达式的含义决定如果〖B〗?是true, 那么〖ifBthenMelseN〗?=〖M〗?如果〖B〗?是false, 那么〖ifBthenMelseN〗?=〖N〗?否则,〖ifBthenMelseN〗?=?如果B?,M?和N?同B,M和N分别有同样的指称,那么〖ifB?thenM?elseN?〗?=ifBthenMelseN〗?2.3程序和语义2.3.4操作语义eval(M)=N当且仅当经若干步(含零步)归约,M可以归约到范式N类型nat和bool(add) 0+0?0,0+1?1,…, 3+5?8,…(Eq?) Eq?nn?true,Eq?nm?false n和m是不同的数码(cond) iftruethenMelseN?M iffalsethenMelseN?N2.3程序和语义二元组(proj) Proj1?M,N??MProj2?M,N??N重新命名约束变量(?) ?x:?.M=?y:?.?y?x?M y在M中不是自由的函数(?) (?x:?.M)N??N/x?M递归(fix) fix???f:???.f(fix?f)2.3程序和语义这个操作语义并没有指定计算步骤,因而显得抽象一些保留了重新命名约束变量的等式公理的形式对于二元组的满射配对公理(sp)和函数的外延公理(?),没有相应的归约规则2.3程序和语义2.3.5由各种形式的语义定义的等价关系各种等价关系公理等价:M=N是可证明的 用M=axN表示指称等价:M和N对自由变量的任何取值都有相同的指称 用M=denN表示操作等价:eval(M)?eval(N)(程序M和N计算到同样结果,或者它们的计算都没有定义) 用M=opN表示2.3程序和语义操作等价M=opN可以从程序推广到一般项上下文C[]是一个项,但其中有一个洞例:C0[]=def?x:nat.x+[]例:C0[x]是?x:nat.x+x项M和N操作等价: 如果对任意使得C[M]和C[N]都是程序的上下文C[],都有eval(C[M])?eval(C[N])2.3程序和语义等式证明系统的可靠性: 如果在公理语义中能证明M和N相等,那么在指称语义中,M和N应该有同样的含义=ax?=den这是判断公理系统正确性的基本标准对PCF语言而言,公理语义对指称语义是可靠的2.3程序和语义操作语义的计算适当性如果M是个程序,并且M和作为结果的N有同样的指称,那么在操作语义中,执行程序M的结果是N计算适当性表明已有足够的归约规则去确定任何程序的值对PCF语言而言,操作语义有计算的适当性2.3程序和语义对PCF语言的程序而言,要满足的最小要求是(?programsM)(?resultsN)M=axNiffM=denNiffM=opN对任意的项,希望满足的要求是=ax?=den?=op操作等价是三者中最粗糙的一个,和指称等价或可证明的等价相比,可能有

文档评论(0)

176****8738 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档