Courses offered by the theoretical computer science group at IMSc

Graduate level courses covering various aspects of theoretical computer science are offered at IMSc in various formats: lecture-based courses, seminar-based courses, reading courses, etc. Here is a list of courses that have been offered in the last few years. Current courses (Jan-May 2015 semester) are marked with an asterisk.

Discrete Mathematics | Programming Languages Theory |

Algorithms and Data Structures | Advanced Topics in Algorithms |

Automata Theory and Computability | Theory of Computation - 2 |

Introduction to Logic | Logic-2 |

Introduction to Computational Complexity* | Computational Complexity-2 |

Randomized Algorithms | Computational Geometry |

Algebra and Computation | Algebra and Computation - 2 |

Distributed Algorithms | Games and Computation |

Automata and Concurrency | Verification |

Probability and Randomness | Algebraic Theory of Automata |

Circuit Complexity | Parameterized Complexity* |

Kernelization | Infinite Discrete Structures* |

Concurrency | Communication Complexity |

Linear Programming and Combinatorial Optimization | Mathematical Foundations of Computer Science |

Graph Theory | Algorithms for solving polynomial equations |

Algorithms for special classes of graphs | Advanced Graph Agorithms |

Approximation Algorithms | Dynamic Graph Algorithms* |