Logic: Lecture 1, 04 August 2015 -------------------------------- What are we going to do in this course? Structure of logical arguments Syntax and semantics All men are mortal. Socrates is a man. Therefore, Socrates is mortal. What words are important? "All"? "Mortal"? Borogoves are mimsy whenever it is brillig. It is now brillig and this thing is a borogove. Hence this thing is mimsy. Validity of the whole statement is independent of the meaning of the parts. ---------- Two broad streams of study in logic Proof theory: Study of formal systems of reasoning, structure of proofs Model theory: Logic as a language to describe properties of mathematical properties are algorithmically verifiable etc e.g. Forall x, exists y, x < y) : there must be infnitely many elements (assuming < is irreflexive) Forall x, exists y, x != y : only guarantees two elements We will do some basic proof theory (sound and complete axiomizations), but the focus of this course will primarily be model theory. Our main focus will be first-order logic (with quantifiers, relations etc) that talks about mathematical structures. To set the stage, we start with a simpler logic of "atomic facts". ---------- Propositional logic; Syntax Infinite set P of atomic propositions/statements/facts Formulas: p in P, not a, a or b [Notation: ~a for not a] Derived connectives and, implies (->), iff (<->), .. Truth tables and "functional completeness" of not and or Semantics Valuation: v: P -> {tt, ff} Extend v (uniquely) to all formulas - defines our interpretation of not and or Principle of structural induction: Any function/predicate defined on P and, by induction, for "not" and "or", extends uniquely to a function over all formilas. Definition: satisfiability and validity a is valid if for every valuation v, v(a) = tt a is satisfiable if there is a valuation v such that v(a) = tt Fact: a is valid iff ~a is not satisfiable Vocabulary Voc(a) = set of propositions appearing in a Valuations that agree on Voc(a) assign same value to a Hence, can build finite truth table to decide if a given formula a is valid/satisifiable --- effective algorithm Validity is not always algorithmically decidable, but we may be able to enumerate all valid formulas using axioms and inference rules. Preview of axiomatizations ======================================================================