Symbolic Logic: Syntax, Semantics, and Proof