15-812 : Programming Language Semantics Lecture Notes on Dynamic Logic