Loops
Weakest pre-conditions on loops are problematic since they need not terminate
So instead we approximate the wp of a loop with a loop invariant
A loop invariant differs from a weakest pre-condition
- Does not imply termination
- May be stronger than is strictly necessary