Last week we discussed proofs by induction. We use induction to prove statements of the form (∀n)P (n). This is done in two steps. First, we prove the base case P (0). Afterwards, as the inductive step, we show that the implication P (n) ⇒ P (n + 1) holds for all n. We also saw some modifications of this proof technique. This week we will see some applications of proofs by induction. Today we look at structural induction and invariants. The study of invariants will lead to the topic of program correctness.