Foundations of Computing Science

CS60005, Autumn 2023, LTP: 3-1-0


Class Slots MON: 10:00-10:55; TUE: 08:00-09:55; THUR: 10:00-10:55
Venue NC141
Instructor Somindu Chaya Ramanna
Teaching assistants Subhadeep Dalui, Shruti Pandey, Ritik Vinod Thool

Notices and Announcements

Syllabus

References

  1. Discrete and Combinatorial Mathematics by Ralph P Grimaldi, Pearson Education, 2006.

  2. Discrete Mathematical Structures with Applications to Computer Science by Jean-Paul Tremblay and R Manohar, 1st Edition, Tata McGraw-Hill Education, 2017.

  3. Logic in Computer Science – Modelling and Reasoning about Systems by Michael Huth and Mark Ryan, 2nd Edition, Cambridge University Press, 2004.

  4. Automata and Computability by Dexter Kozen.

  5. Computational Complexity by S. Arora and B. Barak.

  6. Introduction to Automata Theory, Languages and Computation by John E. Hopcroft and Jeffrey D. Ullman.

  7. Introduction to the Theory of Computation by Michael Sipser.

  8. Elements of the Theory of Computation by H. Lewis and C. Papadimitriou.

  9. Computational Complexity by C. H. Papadimitriou.

  10. Computers and Intractability: A Guide to the Theory of NP-Completeness by Michael Garey and David S. Johnson.

  11. Models of Computation – Exploring the Power of Computing by John E. Savage, Pearson Education, 1997.

Evaluation Plan (Tentative)

The evaluation for this course will be based on

Tutorials

Tutorial 1     Solutions to Selected Questions

Tutorial 2     Solutions to Selected Questions

Tutorial 3     Solutions to Selected Questions

Tutorial 4

Tutorial 5

Tutorial 6     Solutions

Tutorial 7     Solutions

Tutorial 8

Tutorial 9

Tests/Exams

Class Test 1 - Questions with Solutions

Mid-Semester Examination - Questions with Solutions

Class Test 2 - Questions with Solutions