- 1、本文档共48页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
3)证明中间断言是良断言。由于循环由B,C点断开后,程序分解为7条通路,因此需分别对前6条通路予以证明。(通路C-H与证明终止性无关) 2. 通路α2(B?D?B) qB(x,y) ∧y1是偶数∧y2是偶数= qB(x,y) qB(x, y1/2,y2/2,2y3) 即: y10∧y20 ∧y1是偶数∧y2是偶数= y1/20∧y2/20 3)证明中间断言是良断言。由于循环由B,C点断开后,程序分解为7条通路,因此需分别对前6条通路予以证明。(通路C-H与证明终止性无关) 3. 通路α3(B?E?B) qB(x,y) ∧y1是偶数∧y2是奇数= qB(x,y) qB(x, y1/2,y2,y3) 即: y10∧y20 ∧y1是偶数∧y2是奇数= y1/20∧y20 3)证明中间断言是良断言。由于循环由B,C点断开后,程序分解为7条通路,因此需分别对前6条通路予以证明。(通路C-H与证明终止性无关) 4. 通路α4(B?C) qB(x,y) ∧y1是奇数= qC(x,y) 即: y10∧y20 ∧y1是奇数= y10∧y20 3)证明中间断言是良断言。由于循环由B,C点断开后,程序分解为7条通路,因此需分别对前6条通路予以证明。(通路C-H与证明终止性无关) 5. 通路α5(C?K?C) qC(x,y) ∧y1是奇数∧y2是偶数= qC(x,y) qC(x, y1, y2/2, y3) 即: y10∧y20 ∧y1是奇数∧y2是偶数= y10∧ y2/2 0 3)证明中间断言是良断言。由于循环由B,C点断开后,程序分解为7条通路,因此需分别对前6条通路予以证明。(通路C-H与证明终止性无关) 6. 通路α6(C?G?K?C) qC(x,y) ∧y1是奇数∧y2是奇数∧ y1 ≠ y2 = qC(x,y) qC(x, y2, |y1-y2|/2, y3) 即: y10∧y20 ∧y1是奇数∧ y2是奇数∧ y1 ≠ y2 = y20∧ |y1-y2|/2 0 以上6个蕴涵式都是显然成立的。这样就证明了qB(x,y),qC(x,y)是良断言。 4)证明终止表达式是良函数。 qB(x,y) = EB(x,y) ∈ N qC(x,y) = EC(x,y) ∈ N 即要证 y1 0 ∧ y2 0 = y1 ∈ N y1 0 ∧ y2 0 = y1 + 2y2 ∈ N 由于y1和y2均为整数,所以这两个关系是显然成立的。 5)证明终止条件成立。即对与循环有关的通路展开证明。 与循环有关的通路是: α2(B?D?B) α3(B?E?B) α5(C?K?C) α6(C?G?K?C) 分别予以证明。 5)证明终止条件成立。即对与循环有关的通路展开证明。 α2(B?D?B) qB(x,y) ∧y1是偶数∧y2是偶数= EB(x,y1,y2,y3) EB(x, y1/2,y2/2,2y3) 即: y10∧y20 ∧y1是偶数∧y2是偶数= y1y1/2 5)证明终止条件成立。即对与循环有关的通路展开证明。 α3(B?E?B) qB(x,y) ∧y1是偶数∧y2是奇数= EB(x,y1,y2,y3) EB(x, y1, y2/2, y3) 即: y10∧y20 ∧y1是偶数∧y2是奇数= y1y1/2 5)证明终止条件成立。即对与循环有关的通路展开证明。 α5(C?K?C) qC(x,y) ∧y1是奇数∧y2是偶数= EC(x,y1,y2,y3) EC(x, y1, y2/2, y3) 即: y10∧y20 ∧y1是奇数∧y2是偶数= y1 + 2y2 y1+y2 5)证明终止条件成立。即对与循环有关的通路展开证明。 α6(C?G?K?C) qC(x,y) ∧y1是奇数∧y2是奇数∧ y1 ≠ y2 = EC(x,y1,y2,y3) EC(x, y2, |y1-y2|/2, y3) 即: y10∧y20 ∧y1是奇数∧ y2是奇数∧ y1 ≠ y2 = y1 + 2y2 y2 + |y1-y2| 上述终止条件显然成立。 这样,即证明了程序的终止性。 讨论:利用良序集方法证明下述程序的终止性。 2.5 程序正确性证明-Kunth的计数器方法 D.E.Kunth于1968年提出了证明程序终止性的计数器方法。该方法直观易懂,其证明过程分为三步: 1. 为程序中的每个循环附加一个新的变量(如i,j通常被称为计数器),进入该循环前计数器置0,每执行一次循环计数器累加1; 2. 为每个循环设置一个中间断言,它表明相应的计数器不会超过某个固定的界限; 3. 进一步证明第2步设置的中间断言是不变式断言。 2.5 程序正确性证明-Kunth的计数器方法 举例:对前述
您可能关注的文档
- 公共营养师三级二级《专业技能》2程序.ppt
- 公关案例分析程序.ppt
- 互联网营销培训文档程序.ppt
- 公关策划27程序.ppt
- 互联网与房地产程序.ppt
- 互译理论和实践(一)程序.ppt
- 户籍制度社会治安管理功能程序.ppt
- 户式中央空调程序.ppt
- 公关概述与经典案例1程序.ppt
- 户式中央空调汇总程序.ppt
- 2025至2031年中国硬推拉幕驱动装置行业投资前景及策略咨询研究报告.docx
- 广告设计与制作手册.doc
- 二年级数学(上)计算题专项练习汇编.docx
- 单位管理制度集合汇编【人力资源管理篇】.docx
- 新零售业务布局策略规划方案.doc
- 2025至2031年中国端面磨簧机行业投资前景及策略咨询研究报告.docx
- 2025至2031年中国环形灯管支架行业投资前景及策略咨询研究报告.docx
- 2025至2031年中国电起动装置行业投资前景及策略咨询研究报告.docx
- 单位管理制度集合汇编[职工管理篇]十篇.docx
- 2025至2031年中国电脑摇头柔光灯行业投资前景及策略咨询研究报告.docx
文档评论(0)