Iteration and Verification

To prove that factorial-product maintains the invariant, use mathematical induction:

Objective: Prove that (factorial-product a b) terminates with the value a × b! for any nonnegative integer b.

Base Case: When b = 0, factorial-product gives a. Since a × b! = a × 0! = a, this is correct.

Inductive Hypothesis (I.H.): Assume (factorial-product i j) gives i × j! for j = b-1.