DCS: MCS 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

Week 1: Introduction to Formal Languages

  • Introduction to Formal Languages
    00:00
  • LO1: Define the concepts of Formal languages and Regular Expressions
    00:00
  • LO2: Explain the role of Finite Automata in Language Recognition
    00:00
  • LO3: Illustrate examples of simple Regular Expressions and Equivalent Automata
    00:00
  • Multiple Choice Questions
  • True/False Questions
  • Scenario-Based Multiple Choice Questions
  • Key Terms and Concepts Questions
  • Short Answer Questions
  • Written Assignment
  • Presentation Task
  • Role-Playing Activity
  • Peer Review Task
  • Exercises and Activities Adaptation

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?