There are various approaches to prove the correctness of a program: