Originally Posted by

**fusion1455** *** It's not necessarily that this problem is overly difficult but I was just wondering if anyone could help show the clear and correct way to solve this by use of a loop invariant and induction.***

*Use induction to prove the following program to compute x*y is correct given the initial assertion that x is a non-negative integer and the final asseration that the value returned from mult(x,y) is x*y.

procedure mult(x,y)

if(x==0) then return 0

else return y + mult(x-1, y)