- 1、本文档共50页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
命令式程序的语义
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 5.4 指称语义 命令的语法翻译 C?x := M? = ?s: state. ?update s x (V?M?s)? C?P1; P2? = C?P2? ? C?P1? C?if B then P1 else P2? = ?s: state. if V?B?s then C?P1?s else C?P2?s C?while B do P od? = fix(?f : state ? state?. ?s: state. if V?B?s then (f ? C?P?)s else ?s?) 程序P在环境?下的含义 ?P?? = A??C?P??? ?P?? s = ( ?P??) s 5.4 指称语义 例 一个简单的程序skip ? x := cont x C?skip?? = ?s: state.?update s x (V?cont x?s)? = ?s: state.?update s x (lookup s x)? = ?s: state. ?s? ?skip?? s = (A??C?skip???)(s) = (A???s: state. ?s???)(s) = ?s? 5.4 指称语义 指称语义可用来证明简单程序之间的等价 证明 while B do P od = if B then (P; while B do P od) else skip C?while B do P od?= fix (?f : state ? state?. ?s: state. if V?B?s then (f ? C?P?)s else ?s? ) = ?s: state. if V?B?s then (C?while B do P od? ? C?P?)s else ?s? = C?if B then (P; while B do P od) else skip? 5.4 指称语义 6.4.3 操作语义和指称语义的等价 引理5.1 令?是环境并且s?Astate不是底元。对任何类型为loc、val或bool的表达式M,以及Aloc、Aval或Abool中的a,有 ?M, s?? ?eval a 当且仅当 ?M?? s = a 对M的结构进行归纳来证明该引理 ?x, s?? ?eval ?(x) = ?x?? s ?cont x, s?? ?eval lookupA s ?(x) = ?cont x?? s ?f M1 … Mk , s?? ?eval fA(a1, …, ak) = ?f M1 … Mk?? s 5.4 指称语义 引理5.2 令F是函数 F ? ?f : state ? state?. ?s: state. if Bs then f ? (Ps) else ?s? 这是把while循环翻译到?state, fix, ?所得的形式,其中 B: state?bool并且P : state?state? 令s:state是区别于?state的状态。对任何自然数n,若 (Fn ? s) = ?s??,则存在某个m ? n,使得?s?? = P?m s, Bs? = false,且对所有的k?m,有P?k s = ?sk?且Bsk =true 注:对P : state?state?,用P?k s表示把P的k次严格 合成作用到s,也就是P?k s ? P ? (P ? … (Ps) … ) 5.4 指称语义 定理5.3 令?是一个环境,并且s, s?? Astate是任意的“非底元”状态。对任何程序P有 ?P, s?? ?exec s?当且仅当 ?P?? s = ?s?? 5.5 Kernel程序的前后断言 5.5.1 一阶逻辑和部分正确性证明 证明Kernel程序的性质 用类型化?项上的一般证明系统 使用更适合于Kernel程序语法的逻辑 后一种方式的优点 不需要学习类型化?演算和最小不动点概念 程序正确与否的大部分直观理由都关联到程序的结构 如果证明系统以一种自然的方式反映程序设计语言的结构,它可能对程序设计风格产生直接的影响 5.5 Kernel程序的前后断
您可能关注的文档
- 室内定位航位推测算法室内定位航位推测算法的研究与实现-计算机工程.pdf
- 螺旋铣孔技术研究进展-天津大学研究生e-learning平台.pdf
- 从塞班到广岛-cuhk.pdf
- 大型水母声学观测与评价技术研究进展-生态学报.pdf
- 文本挖掘工具述评-中国人民大学学术期刊社.pdf
- 华南师大附中2008—2009学年高三综合测试-汕头教育教学.doc
- 微机原理与接口技术试验.ppt
- 一解压固件压缩包.doc
- 启发式全局偏序挖掘算法-oalib.pdf
- 领航中国智能交通的科技先锋-交通科技管理中心.pdf
- DeepSeek培训课件入门宝典:第2册 开发实战篇 .pptx
- 全面认识全过程人民民主-2024春形势与政策课件.pptx
- 2024春形势与政策-全面认识全过程人民民主.pptx
- 2025年春季学期形势与政策第二讲-中国经济行稳致远讲稿.docx
- 2024春形势与政策-铸牢中华民族共同体意识课件.pdf
- 2024春形势与政策-走好新时代科技自立自强之路课件 (2).pptx
- 2024春形势与政策-走好新时代科技自立自强之路课件.pptx
- 形势与政策学习指导教学-整套课件.pdf
- 2023年春季形势与政策讲稿第三讲-开创高质量发展新局面.pdf
- DeepSeek培训课件-清华大学-DeepSeek模型本地部署与应用构建.pptx
文档评论(0)