对程序进行推理的逻辑1.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文档。上传文档
查看更多

程序验证实例n?0voidmult(intm,intn){ (0==m?0)?(0?n) x=0; (x==m?0)?(0?n) y=0;((x==m?y)?(y?n))?(yn)?(x+m==m?(y+1))?((y+1)?n) while(yn)do{ (x==m?y)?(y?n) (x+m==m?(y+1))?((y+1)?n) x=x+m; (x==m?(y+1))?((y+1)?n) y=y+1; } (x==m?y)?(y?n) ((x==m?y)?(y?n))??(yn)?(x==m?n)}x==m?n*基本知识命题逻辑程序设计中用到命题逻辑的知识if(0=mm100)… ? 0=m和m100都是命题逻辑的原子命题 ?是命题逻辑的二元运算符(下面用?而非)if(0m||0n)… ?||是命题逻辑的二元运算符(下面用?而不是||)n=0;while(!n=100){…;n=n+1;} ?!是命题逻辑的一元运算符(下面用?而不是!)*基本知识命题逻辑合式公式(well-formedformula)的归纳定义 ?::=p|??|???|???|???|(?) (1)p代表原子命题,例如x3,a[5]==10.5 原子命题具体形式与讨论的问题领域有关 (2)?代表一般命题,“::=”右部用“|”分隔的各部分代表命题的构成形式,如0=x?x100 (3)?,?,?和?代表合取、析取、非和蕴涵运算,在确定了它们的运算优先关系后,很多情况下括号可以省略,如p?(q1?q2)可简化为p?q1?q2 备注:蕴涵采用?而不是?,?用于描述函数类型*基本知识命题逻辑推理规则 例:有关合取“?”运算的推理规则 (?i) (?e1) (?e2) “?i”表示合取引入规则(i:introduction) “?e”表示合取消去规则(e:elimination) 对?和?等也都有各自的推理规则?????????????*谓词逻辑程序设计中用到谓词逻辑的知识谓词:结果类型为bool的函数 booleven(intm){//用编程语言写的谓词,与数理 if(m/2*2==m)returntrue;//逻辑中的有区别 elsereturnfalse;}if(even(x)even(y))…、=、==、!=…等关系算符都是谓词 基本知识*谓词逻辑合式公式 (1)谓词集合?、函数集合?(包括常量) (2)基于?来定义项集 t::=x|c|f(t,…,t) (f??) 例如a+5b–3中的a+5和b–3 (3)归纳地定义基于(?,?)的合式公式 ?::=P(t1,t2,…,tn)|??|???|???| ???|?x?|?x?|(?) (P??)增加的规则 全称量词断言和存在量词断言的证明规则等 基本知识*Hoare逻辑程序逻辑对程序进行推理的逻辑Hoare逻辑是一种程序逻辑介绍面向非常简单的编程语言(只有赋值语句、顺序语句、条件语句和循环语句)的Hoare逻辑推理规则*Hoare逻辑合式公式(well-formedformula)语法形式:{P}S{Q},称为Hoare三元式 (1)S是代码段,遵循相应编程语言的语法 (2)P和Q是关于程序状态(变量到值的映射)的断言,分别称为S的前断言和后断言,断言是谓词逻辑的合式公式 (3)例:{x==1?y5}x=x+1{x==2?y5}{P}S{Q}的含义:在满足P的状态下执行S,若执行终止,则终止状态满足Q 例:{x

文档评论(0)

193****2543 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档