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:
- State and prove soundness and completeness of first order logic
- Carry out formal proofs in various logics discussed in the course
Text Books:
- Michael Huth and Mark Ryan, Logic in Computer Science: Modelling and Reasoning about Systems, Cambridge University Press (2nd edition).ISBN-13: 978-0521543101.
References
- Arindama Singh, Logics for Computer Science, Second edition, PHI Learning, 2018. ISBN- 13: 978-9387472433.
- Raymond M. Smullyan, What is the Name of This Book?: The Riddle of Dracula and Other Logical Puzzles, Dover Publications. ISBN-13: 978-0486481982.
- Irving M. Copi, Introduction to Logic, Pearson Education (14th edition). ISBN-13: 978- 9332539617.
- Jean-YvesGirard, Linear Logic: its syntax and semantics, Cambridge University Press, 1995.
- 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 |