Program Verification: Theory and Practice Sriram K. Rajamani Microsoft Research India (with thanks to Tom Ball for material from his course)