This course explores the fundamentals of good reasoning by means of symbolic techniques in both propositional and predicate logic. Students will learn to translate sentences into logical notation as well as how to use truth tables and derivations to demonstrate the validity of arguments. This course covers symbolization, proofs, counter-examples and truth trees.