CS719: Topics in Mathematical Foundations of Formal Verification
Autumn 2010


Instructor Supratik Chakraborty email: supratik [AT] cse ...
Friendly Teaching Assistant Rahul Srinivasan email: rahulsrini [AT] cse ...

Announcements

  • Please subscribe to CS719 on moodle to stay updated with the latest discussions, postings etc. related to this course.
  • No class on Thurs, Oct 15. Please post your convenient slots for compensation classes over the next two weeks on moodle.
  • Homework 3 has been posted. Your solutions are due by Tue, Oct 19, 5pm.
  • A quiz is scheduled on Mon, Oct 17, during normal class hours.

Course Information

The purpose of this course is to provide students with a moderately in-depth exposure to a selection of mathematical topics that are needed as prerequisites for an advanced course or project in formal verification. This course is intended to become a prerequisite for CS615 "Formal Specification and Verification of Programs" . The exposure provided by this course is also intended to benefit students not necessarily working in the area of formal verification, but in related areas like programming languages, program analysis and optimization and logic. Some topics, especially in automata theory, overlap to some extent with the contents of CS712: Special Topics in Automata and Logics . CS712 is recommended to students who want to explore this area further.
Course overview slides

This is a graduate level course recommended for students with a serious interest in formal methods and related areas. Good working knowledge of propositional and first order logics, automata theory and undergraduate level discrete mathematics is required for crediting/auditing the course. Students are also required to put in 4 to 5 hours of reading per week beyond the contact hours in class.

Hours

What When Where
Lectures Mon 14:00-15:25,
Thurs 14:00-15:25
SIC 205, KReSIT building
Office hour Wed 17:00-18:00 CFDVS Lab 1 (Maths basement)
(by email appointment)

Grading

Midsem 30%
Endterm 40%
Graded homeworks 15%
Quizes 15%

Some more logistics ...

  • All exams/quizes will be open book, notes and any material brought to the exam hall.
  • If you miss an exam/quiz for a genuine reason, meet the instructor after setting up an appointment.
  • Each graded homework/quiz will carry equal weightage.
  • Informal discussion among students for the purpose of clarification is strongly encouraged.
  • There will be zero tolerance for dishonest means like copying solutions from others in quizzes, projects and end-term exam. Anybody found indulging in such activities will be summarily awarded an FR grade. The onus will be on the supposed offender to prove his or her innocence.
  • Problems for solving ...

    Homework 1 Due Fri, Aug 13, 5pm
    Homework 2 Due Mon, Aug 30, 5pm
    Homework 3 Due Tue Oct 19, 5pm
    Quiz 1
    Quiz 2
    Midterm Exam

    Reading Material and References

    • Shawn Hedman, A First Course in Logic: An Introduction to Model Theory, Proof Theory, Computability and Complexity , Reprinted in 2006, Oxford Texts in Logic, Oxford University Press (Text for course) .
    • Peter B. Andrews, An Introduction to Mathematical Logic and Type Theory: To Truth Through Proof, 2nd edition, Springer, 2002 (Reference)
    • B. A. Davey and H. A. Priestley, Introduction to Lattices and Orders, Second edition, Cambridge University Press, 2001 (Text for course)
    • L. Libkin, Elements of Finite Model Theory, Springer, 2004 (Reference)
    • D. Kroening and O. Strichman, Decision Procedures: An Algorithmic Point of View , Springer, 2008 (Reference)

    Current Reading List

    • Chapters 1, 2 and 3 of A First Course in Logic: ... by Shawn Hedman.

    Lecture Schedule

    Date Topics details
    Jul 22 Course overview, prerequisites and logistics. Quick introduction to propositional logic and a proof system for propositional logic. Clarification from lecture
    Jul 26 Notions of soundness and completeness of a proof system for propositional logic. Compactness theorem for propositional logic, its proof and an application  
    Jul 29 Revisiting compactness theorem for propositional logic, introduction to first order logic syntax and semantics, notion of structures in semantics of first order logic.  
    Aug 2 Tutorial session by Rahul Srinivasan  
    Aug 5 Structures and semantics of first order logic, validity and satisfiability of first order logic formulae and sentences, inherent difficulty in checking validity/satisfiability in first order logic vis-a-vis propositional logic. Resolution as a technique for proving unsatisfiability: soundness and completeness of resolution for propositional logic  
    Aug 9 Notion of equisatisfiability. Prenex and Skolem normal forms (PNF and SNF) in first order logic. Skolem functions and constants. Equisatisfiability of a formula and its SNF variant, relations between their models. Use of SNF in resolution techniques for first order logic.  
    Aug 12 Lecture by Abhisekh Sankaran: Computing most general unifiers: existence, algorithm and proof of the unifier being most general, use in first order logic resolution  
    Aug 16 Resolution in first order logic, role of unifiers in finding resolvents. Soundness of resolution in first order logic. Herbrand structures and models.  
    Aug 19 More on Herbrand structures, models and unsatisfiable first order sentences. A procedure for checking unsatisfiability of first order sentences based on Herbrand's theorem. Completeness of resolution for first order logic.  
    Aug 23 Compactness Theorem for first order logic: proof and applications. Using compactness theorem to prove 4-colorability of infinite planar graphs from 4-colorability result of finite planar graphs. Using compactness theorem to show that certain properties of graphs are not expressible in first order logic.  
    Aug 24 Compensation class for Aug 26: Completeness Theorem for FOL. Compactness, completeness and Herbrand's unsatisfiability theorems: moving from one to the other. Embeddings and elementary embeddings of first-order structures, onto embeddings as elementary embeddings, illustrations.