program analysis lecture notes 8414709