Course Structure of M.Tech. in Theoretical Computer Science
SEMESTER – 1
Course No. | Course Name | L-T-P-C |
CS512 | Data Structures and Algorithms | 3-0-0-6 |
CS519 | Probability and Linear Algebra | 3-0-0-6 |
CS533 | Discrete Mathematical Structures | 4-0-0-8 |
CSxxx | Elective – 1 | 3-0-0-6* |
CS513 OR CS596 |
Programming Lab OR Seminar-1 |
0-0-3-3 OR 0-0-3-3 |
Total | 13-0-3-29* OR 13-0-3-29* |
SEMESTER – 2
Course No. | Course Name | L-T-P-C |
CS515 | Theory of Computation | 3-0-0-6 |
CS520 | Combinatorial Optimization | 3-0-0-6 |
CSxxx | Elective – 2 | 3-0-0-6* |
CSxxx | Elective – 3 | 3-0-0-6* |
CS597 | Seminar-2 | 0-0-3-3 |
Total | 12-0-0-27* |
SEMESTER – 3
Course No | Course Name | L-T-P-C |
CS698 | Thesis | 0-0-24-24 |
Total | 0-0-24-24 |
SEMESTER – 4
Course No | Course Name | L-T-P-C |
CS699 | Thesis | 0-0-24-24 |
Total | 0-0-24-24 |
* Indicates minimum required credits
Electives:
Each student is required to register for three elective courses. If a student wants to opt for electives that are outside following list, the student is required to take permission from DPPC.
Course No | Course Name | L-T-P-C |
CS501 | Parallel Algorithms | 3-0-0-6 |
CS502 | Computational Geometry | 3-0-0-6 |
CS503 | Randomized Algorithms | 3-0-0-6 |
CS505 | Structural Complexity | 3-0-0-6 |
CS506 | Hierarchical Memory Algorithms | 3-0-0-6 |
CS507 | Logic in Computer Science | 3-0-0-6 |
CS508 | Optimization Methods | 3-0-0-6 |
CS509 | Computational Number Theory and Cryptography | 3-0-0-6 |
CS510 | Information and Randomness | 3-0-0-6 |
CS511 | Learning with Kernels | 3-0-0-6 |
CS517 | Self-stabilizing Algorithms | 3-0-0-6 |
CS518 | Algorithmic Game Theory | 3-0-0-6 |
Seminar-1, Seminar-2 and Thesis:
The courses CS 596, CS 597, CS 698 and CS 699 should be opted in the area of Theoretical Computer Science or related topics.