Logic and Discrete Mathematics - Willem Conradie & Valentin Goranko