Algorithm 证明算法是如何工作的

Algorithm 证明算法是如何工作的,algorithm,pseudocode,proof,Algorithm,Pseudocode,Proof,给定伪码 MUL(a,b) x=a y=0 WHILE x>=b DO x=x-b y=y+1 IF x=0 THEN RETURN(true) ELSE RETURN(false) 我必须证明算法是如何工作的 到目前为止,我只解释了它是如何工作的,但我不确定你应该如何证明它是如何工作的 编辑:只是澄清一下。我问了另一个问题。但这两个问题是分开的。我正在做的作业包括3个问题。第一个问题是我在哪里解释了算法是如

给定伪码

MUL(a,b) 
   x=a
   y=0
   WHILE x>=b DO
      x=x-b
      y=y+1
   IF x=0 THEN
      RETURN(true)
   ELSE
      RETURN(false)
我必须证明算法是如何工作的

到目前为止,我只解释了它是如何工作的,但我不确定你应该如何证明它是如何工作的


编辑:只是澄清一下。我问了另一个问题。但这两个问题是分开的。我正在做的作业包括3个问题。第一个问题是我在哪里解释了算法是如何工作的。第二个问题是关于我的另一个问题,第三个问题(这个线程)是我必须证明我在问题1中解释的算法是如何工作的。我问这个问题的原因不是为了得到这个问题的答案,而是简单地解释一下我被要求做什么,因为我自己似乎无法理解。就我个人而言,我只想做与第一个问题相同的事情,但这没有多大意义。

尝试显示算法的前置条件和后置条件。前置条件谓词执行前的初始状态,后置条件谓词执行后的最终状态

如果可以证明如果前置条件为真,则后置条件必须为真,则该算法是正确的


查看此项了解更多详细信息:

这是什么解释?你甚至没有说它应该完成什么,更不用说如何完成了。你也可以看看。这个问题是由同一位用户提出的。证明的第一步:删除对
y
的所有引用该算法基于这样一个前提:
B除以A
当且仅当
B除以(A-B)
所有
A>=B
。我的证据是:“嘘!”。如果您需要更正式的证明,那么将是一个更好的选择。顺便说一句,归纳法可以证明这一点,但是
x
y
只是分散注意力,所以应该将它们删除。