Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Loops 找出“a”的正确性;“while循环”;使用霍尔逻辑_Loops_While Loop_Formal Verification_Loop Invariant_Hoare Logic - Fatal编程技术网

Loops 找出“a”的正确性;“while循环”;使用霍尔逻辑

Loops 找出“a”的正确性;“while循环”;使用霍尔逻辑,loops,while-loop,formal-verification,loop-invariant,hoare-logic,Loops,While Loop,Formal Verification,Loop Invariant,Hoare Logic,我目前正在努力弄清楚,如何证明一个包含循环的程序是正确的。我在wp、vc和pc的基础上工作 有问题的循环是: wp(while(i<n) i = i+1; | i >= n) wp(while(true) x=4; |x=4) wp(while(i=n) wp(而(真)x=4;|x=4) 其中“;”之前的所有内容都是程序,而“|”之后的所有内容都是后置条件 在我的讲座中,我听说你必须找到不变量以及程序的终止函数,但我目前还不知道如何直观地做到这一点。我听说,你需要训练这个,但我

我目前正在努力弄清楚,如何证明一个包含循环的程序是正确的。我在wp、vc和pc的基础上工作

有问题的循环是:

wp(while(i<n) i = i+1; | i >= n)

wp(while(true) x=4; |x=4)
wp(while(i=n)
wp(而(真)x=4;|x=4)
其中“;”之前的所有内容都是程序,而“|”之后的所有内容都是后置条件

在我的讲座中,我听说你必须找到不变量以及程序的终止函数,但我目前还不知道如何直观地做到这一点。我听说,你需要训练这个,但我还没有看到关于这个的例子,大部分只是理论。如果有人能帮我解释循环的验证,那将是b我真的很好


我非常感谢您的帮助。

维基百科有一个很好的介绍:这是一个建立良好的研究领域,有很多在线资源。这里有一个例子可以让您开始:
wp
是一个函数,结果是一个表达式。这里不需要证明某些东西是正确的。(您没有霍尔三元组。)这两个
wp
表达式的计算结果都是
true
,因为在这两种情况下,无论初始状态如何,post条件都是满足的。Wikipedia有一个很好的介绍:这是一个成熟的研究领域,有很多在线资源。下面是一个示例,可以帮助您开始:
wp
是一个函数离子,结果是一个表达式。这里不需要证明某些东西是正确的。(你没有霍尔三元组。)两个
wp
表达式的计算结果都是
true
,因为在这两种情况下,无论初始状态如何,post条件都是满足的。