Course Objective

Logic is the systematic study of reasoning. Much like its role in providing a basis for reasoning in other areas of mathematics and philosophy, logic is the basis for reasoning about computational systems like programming languages, databases, etc. In turn, these applications in Computer Science has lead to formulation of deeper and wider forms of logic. This course aims at exposing the student into the broad area of Logic and its applications to Computer Science.

Course Contents

Preliminaries: Why study formal logic? Reasoning about Logic and its circularity. The idea of meta language and models. Validity, Judgements and rules of inference. Soundness and Completeness. (10 lectures)

Classical logic:Propositional logic, predicate logic, notions of models, soundness, completeness. First order logic, Proof systems for first order logic and its soundness. Completeness of a given proof system for first order logic. Compactness for first order logic. (22 lectures)

Selected Advanced Topics: A subset of the following topics may be covered based on the instructor’s choice. (10 lectures)

Learning Outcomes:

  1. State and prove soundness and completeness of first order logic
  2. Carry out formal proofs in various logics discussed in the course

Text Books:

  1. Michael Huth and Mark Ryan, Logic in Computer Science: Modelling and Reasoning about Systems, Cambridge University Press (2nd edition).ISBN-13: 978-0521543101.

References

  1. Arindama Singh, Logics for Computer Science, Second edition, PHI Learning, 2018. ISBN- 13: 978-9387472433.
  2. Raymond M. Smullyan, What is the Name of This Book?: The Riddle of Dracula and Other Logical Puzzles, Dover Publications. ISBN-13: 978-0486481982.
  3. Irving M. Copi, Introduction to Logic, Pearson Education (14th edition). ISBN-13: 978- 9332539617.
  4. Jean-YvesGirard, Linear Logic: its syntax and semantics, Cambridge University Press, 1995.
  5. Simon Thompson, Type Theory and Functional Programming, Addison-Wesley, 1991. ISBN-13: 978-0201416671.

Past Offerings

  • Offered in Jan-May, 2021 by Piyush

Course Metadata

Item Details
Course Title Logic
Course Code CS6004
Course Credits 3-0-0-3
Course Category PME
Proposing Faculty Piyush P Kurur
Approved on Senate 11 of IIT Palakkad
Course status NEW