公理语义-Mann子目标Hoare讲述.pptVIP

  • 6
  • 0
  • 约9.73千字
  • 约 46页
  • 2016-12-29 发布于湖北
  • 举报
程序设计形式语义学 2 公理语义 试图通过在程序逻辑的范围内给出证明规则来确定程序设计构造的含义。该方法的代表人物是R.W.Floyd和C.A.R.Hoare。 从一开始,公理语义强调的是正确性证明。 2.5 程序正确性证明-Manna的子目标断言法 美国斯坦福大学的Z.Manna教授在Floyd的不变式断言法的基础上,提出了部分正确性证明的子目标法。 子目标法与不变式法的主要区别在于: 在断言设置中,不变式法的断言描述程序处理过程中的中间变量与初始值之间的关系,而子目标断言中描述的是中间变量与终值间的关系 其归纳推理方向不同。不变式断言法沿程序执行方向正向推理,而子目标法沿程序执行的反方向逆向归纳推理。 2.5 程序正确性证明-Manna的子目标断言法 1. 建立输入、输出和循环不变式断言 设x,y的初始值为x0,y0,可分别建立输入断言I、输出断言O、子目标断言如下: I(x): x0 ≥ 0 ∧ y0 ≥ 0 ∧ (x0 ≠ 0 ∨ y0 ≠ 0 ) O(x,z): z = gcd(x0,y0) 子目标断言q(x,y,yf): x ≥ 0 ∧ y ≥ 0 ∧ (x ≠ 0 ∨ y ≠ 0 ) = yf = gcd(x,y) 2.5 程序正确性证明-Manna的子目标断言法 2.

文档评论(0)

1亿VIP精品文档

相关文档