DCS: 702 – Advanced Theoretical Computer Science

Wishlist Share
Share Course
Page Link
Share On Social Media

About Course

  • This core course delves into advanced topics in theoretical computer science, including formal languages, automata theory, and computational complexity.
  • It provides a deep understanding of the theoretical limits of computation and prepares students to tackle complex algorithmic challenges.
  • The course is designed for students who are pursuing advanced research in computer science and wish to gain a rigorous understanding of the foundational theories that underpin modern computing.

Course Objectives

  • Develop an in-depth understanding of formal languages, automata theory, and computational complexity.
  • Analyze the theoretical limits of computation and their implications for practical computing problems.
  • Explore advanced algorithmic techniques and their applications in solving complex problems.
  • Engage with current research topics in theoretical computer science.
  • Prepare for advanced research in algorithm design and analysis.

 

Show More

Course Content

Live Session Recording

  • Live Session 1
    35:07
  • Live Session 2
    35:17
  • Live Session 3
    46:06

Week 1: Introduction to Formal Languages

Week 2: Automata Theory

Week 3: Context-free Grammars and Pushdown Automata

Week 4: Turing Machines

Week 5: Undecidability and the Halting Problem

Week 6: Computational Complexity

Week 7: The P vs NP Problem

Week 8: Midterm Test

Week 9: Advanced Topics in Complexity Theory

Week 10: Approximation Algorithms

Week 11: Randomized Algorithms

Week 12: Advanced Automata Theory

Week 13: Cryptographic Complexity

Week 14: Future Directions in Theoretical Computer Science

Week 15: Course Review

Week 16: Final Test

Want to receive push notifications for all major on-site activities?