Syllabus for FMCS
Syntax, Semantics and Proof Methods for Propositional Logic and Predicate Logic.
Introduction to logic as a programming language (Prolog).
Case studies in the Specification and Verification of algorithms (using Hoare Logic) and protocols and distributed systems (using Modal/Temporal Logic).