Courses
Browse the CSE course catalogue by course code, title, level, program, credit count, and semester format.
Featured course resources
Selected public resources are linked to their corresponding course catalogue entries.

Machine Learning @ IIT Gandhinagar 2024
Recorded lectures by Nipun Batra.

Probabilistic Machine Learning
Recorded lectures by Nipun Batra.

Operating Systems Fall 2018 IITGN
Recorded lectures by Nipun Batra.

balu/toc
Repository of Theory of Computation course material and references by Balagopal Komarath.

Parameterized Algorithms
NPTEL course on Parameterized Algorithms by Neeldhara Misra and Saket Saurabh, closely aligned with the Advanced Algorithms course.

Introduction to Competitive Programming
NPTEL course on Competitive Programming by Neeldhara Misra and Arjun Arul, closely aligned with the Competitive Programming elective.

Scalable Data Science
A NPTEL course by Anirban Dasgupta and Souransghu Bhattacharya, closely aligned with the Introduction to Data Science Course.

Probability and Random Processes Lecture Notes
Lecture notes by Shanmuganathan Raman.
Showing 112 of 112 catalogue entries
5G and Beyond: An Introduction
Evolution, standardization, application potential in IoT,AR/VR, Smart infra and Autonomous Vehicles. Core, RAN and air interface, protocol stack andlayers; 5G physical layer, air interface and RAN: Millimeter wave propagation characteristics,Modulation and dem...
Advance Topics In Cryptology
Pseudorandomness and the Blum-Micali generator; Pseudorandom function, GGMand cascade constructions; Number-theoretic constructions of pseudorandom functions; Privateinformation retrieval; Oblivious transfer; Garbled circuits and Yao' s 2-party protocol; B...
Advanced Algorithms
Advanced Algorithms
Advanced Computer Architecture and Systems
al context and evolution. Performance metrics and measurements, benchmarking techniques, Amdhal's law, Gustafson-Barsis law, Little's law and their implication. Instruction set Architecture, MIPS/RISC-V and CISC. Parallel Architecture: Instruction Level Parall...
Advanced Computer Networks
This course will introduce advanced topics and recent trends in Computer Networks, Data CenterNetworks and Future Internet.Network Softwarization: SDN and NFV:Software Defined Networking (SDN): Control and Data plane separation. Network Operating System(SDN Co...
Advanced Data Structures
CS 609 Advanced Data Structures
Advanced Data Visualization Techniques
Detailed syllabus text is not available in the current catalogue extract.
Advanced Probability and Statistics
Detailed syllabus text is not available in the current catalogue extract.
Algorithm Analysis and Design
Detailed syllabus text is not available in the current catalogue extract.
Algorithms
Algorithms
Algorithms for Data Science
Detailed syllabus text is not available in the current catalogue extract.
Big Data Modeling and Management Systems
Detailed syllabus text is not available in the current catalogue extract.
Combinatorics with Applications in Computer Science
Detailed syllabus text is not available in the current catalogue extract.
Compilers
Compilers
Computational Complexity Theory
Course contents:Fundamentals: Definition of Turing Machines, Time and Space, Diagonalization, Hierarchy Theorems.Poly-time (P), Nondeterministic poly-time (NP), and completeness: Definitions of P and NP, Turing reductions and many-one reductions, NP-completene...
Computational Photography
Detailed syllabus text is not available in the current catalogue extract.
Computer and Network Security
Detailed syllabus text is not available in the current catalogue extract.
Computer Graphics
Fundamentals: Review of Linear Algebra and Calculus, Projective Geometry - Coordinates and Transformations.Techniques: Graphics Pipeline, Rendering, Ray Casting, Ray Tracing, Shading and Shaders, Sampling, Anti-aliasing, Animation - Particle Systems and Collis...
Computer Networks
Introduction to Computer Networks: Layered Network Protocol Architectures: OSI and TCP/IP reference models. Overview of Telecommunications, Cellular networks & Internet Architecture; Physical and Link Layers: Basics of communications; Delay, Loss and Throughpu...
Computer Networks
Introduction to Computer Networks: Layered Network Protocol Architectures: OSI and TCP/IP reference models. Overview of Telecommunications, Cellular networks & Internet Architecture. Physical and Link Layers: Basics of communications; Delay, Loss and Throughpu...
Computer Organization & Architecture
Introduction to Computer Organization; Introduction to Instruction Set Architecture (ISA); RISC vs. CISC; Performance Metrics; Instruction Representation in Computers; Addressing Modes; Computer Arithmetic; Introduction to Assembly Programming; Processor Archi...
Computer Organization and Architecture
Computer Organization and Architecture
Computer Programming and Utilization
Detailed syllabus text is not available in the current catalogue extract.
Computer Systems
Computer Systems
Computing
Elementary Programming TechniquesBuilding familiarity with instruction driven task completion using Scratch or CS Unplugged.Von Neumann architecture, the translation process for a program (Source code -> Interpreter/Compiler -> Machine code)Expressions: values...
CS Theory Toolkit
Logic: Propositions, connectives, quantifiers, rules of inference, induction, strong induction, structural induction.Combinatorics: Definition of graphs and various structures in graphs. Koenig, Hall, and Menger theorems. The TONCAS (The obvious necessary cond...
Data Management
Detailed syllabus text is not available in the current catalogue extract.
Data Mining
Detailed syllabus text is not available in the current catalogue extract.
Data Structures and Algorithms I
Data Structures and Algorithms - I
Data Structures and Algorithms I
C/C++: Arrays, Pointers and Structures, Multidimensional Arrays, Dynamic memory allocation. Quicksort, Mergesort, Heapsort; Basic notions of asymptotics, Stacks, Simulation of Recursive algorithms using stacks; Queues, Priority queues; Linked lists; Trees. Bin...
Data Structures and Algorithms II
Asymptotic notation (review); Recurrences; Divide and conquer : Quick sort, Merge sort, Linear-time Median finding, Strassen's matrix multiplication, Closest Pair; Greedy and Dynamic Programming, Graph Algorithms : Network flows and applications; Introduction...
Databases
Databases
Deep Learning
Fundamentals of Deep Learning: Mathematics for Deep Learning - Calculus, Matrices, and Probability. Classification and Regression Problems. Multi-Layer Perceptron (MLP), Deep MLP and Backpropagation Algorithm. Implementation - Training, Validation, and Testing...
Deep Learning
Mathematics for Deep Learning - Calculus, Matrices, and Probability. Classification and Regression Problems. Basics of Deep Learning: Multi-Layer Perceptron (MLP), Universal Approximation Theorem, Deep MLP and Backpropagation Algorithm. Implementation - Traini...
Devising Interactive Web Applications
Detailed syllabus text is not available in the current catalogue extract.
Digital Systems
Digital Systems for EE & CSE
Discrete Mathematics
Discrete Mathematics
Discrete Mathematics
cs 3222 of 2Context:ZO10 Replaces the course CS 322 Discrete Mathematics approved in the 4th Senate Discrete Mathematics
Distributed Systems and Cloud Computing
Detailed syllabus text is not available in the current catalogue extract.
Ethics of AI
Introduction to AI Ethics and Accountabilityo Discuss the critical role ethics play in AI research and deployment, emphasizing the potential societal impactsand the necessity for responsible innovation to prevent harm and promote trust.o Identify stakeholders...
Ethics of AI
Algorithmic Fairness and Accountability, where students study operationalized fairness criteria, constrained optimization for fair models, and the socio-technical dimensions of bias through case studies in vision and NLP; the Interpretability and Explainabilit...
Foundations of AI: Multiagent Systems
Introduction to AI. Flavors of AI: strong and weak, neat and scruffy, symbolicand subsymbolic, knowledge-based and data-driven. The computational metaphor. What iscomputation? Church-Turing thesis. The Turing test. Searle's Chinese room argument; Representing...
Foundations of State Estimation
Introduction to inferencing: Statistical models, likelihood function, Fisher information, Unbiasedness, Sufficiency conditions, Hypothesis testing basics: Assessing evidence, Decision Rules, parametric and nonparametric testsBayesian parameter estimation: Baye...
Generative AI with Large Language Models
Detailed syllabus text is not available in the current catalogue extract.
History of Computing and its Applications to Domains
Introduction: A Historical Perspective of Computer Systems - Hardware, Firmware and Software. Key inventions and Proliferations. Development of computer networks, Internet and computing platforms - the philosophy of computers, necessity and innovations, includ...
Human-Computer Interaction
Introduction: Human-Computer Interaction (HCI); the role of an effective design(example of good and bad design) in the interaction design process; Concepts:describes major design principles associated with HCI e.g., visibility, flow,affordance, metaphors, feed...
Incentives and Machine Learning
Course contents: 1. Introduction to Incentives a. Multi-agent Interactions and Equilibriumb. Mechanism Design - VCGc. Optimal Auctionsd. Ad Auctions2. Machine Learning in Incentive Design a. Automated Mechanism Design (AMD) - Optimal Auctions through Deep Lear...
Information Security
Detailed syllabus text is not available in the current catalogue extract.
Integrated Circuit Fabrication Lab
Overview of cleanroom environment and classifications, Cleanroom utilities and infrastructure requirements, Standard Operating Procedures (SOPs), Safety protocols and best practices, Gowning procedures, Laboratory documentation and in-lab record keeping; Micro...
Interface Design
Interface Design
Introduction to Applied Cryptography
Detailed syllabus text is not available in the current catalogue extract.
Introduction to Computer Graphics
Detailed syllabus text is not available in the current catalogue extract.
Introduction to Computer Networking
Introduction To Computer Networking
Introduction to Data Science
Introduction to Data Science
Introduction to Data Structures and Algorithms
Basics of C and Data Structures: Data types: primitive and user-defined data types in C/C++, including those portabletypes used in embedded systems; Arrays, Pointers and Strings, Functions; Stacks, Queues, Linked List; MemoryManagement: Allocation, De-allocati...
Machine Learning
Introduction to learning: Learning as a combination of representation, evaluationand optimization; applications of machine learningCategorization of learning (with at least one algorithm for each) regression, classification; supervised,unsupervised, semi-super...
Machine Learning
Machine Learning
Machine Learning
Learning Foundations: Introduction and applications, learning paradigms, bias-variance tradeoff, empirical risk minimization, generalization, overfitting; Supervised Learning: linear and logistic regression, SVMs, decision trees, ensemble methods; Optimization...
Machine Learning for Predictive Analysis
Detailed syllabus text is not available in the current catalogue extract.
Markov Chains and Queueing Models
Detailed syllabus text is not available in the current catalogue extract.
Mathematical Foundations for AI
1. Refresher Module; Data representation (floating point arithmetic, underflow, overflow); Linear Algebra; Calculus (univariate calculus); basic probability2. Multivariate Calculus and Automatic Differentiation; Gradient, Jacobian, Hessian; Finite difference m...
Mathematical Models for Data Science
Detailed syllabus text is not available in the current catalogue extract.
Microprocessors and Embedded Systems
Microprocessors and Embedded Systems
Natural Language Processing
Natural Language Processing
Operating Systems
Operating Systems
Operating Systems
Operating systems basics: Evolution, history and design principles; Processes and threads: Kernel/user level operation, thread/process synchronization, system calls and APIs, interrupt handling, CPU scheduling; Memory management: virtual memory, address spaces...
Optimization for Data Science and Machine Learning
Detailed syllabus text is not available in the current catalogue extract.
Optimization Methods For Machine Learning
Optimization Methods for Machine Learning
Optimization Methods for Machine Learning
Optimization Methods for Machine Learning
Pattern Recognition And Machine Learning
Pattern Recognition and Machine Learning
Principles of Artificial Intelligence
Introduction: Historical Perspectives, Computational Complexity and Computational Infeasibility, Problem Solving, Sorting and Searching, Games and Adversarial Search; Stochastic Systems and Decision Making: Uncertainty in AI, Bayesian Networks, Learning & Infe...
Probabilistic Machine Learning
Probability refresher: Probability theory, discrete distributions, continuous distributions, joint probability distributions, sampling from different distributions (e.g. using Box-Muller transform), uncertainty modelling, information theoretic concepts: (KL-di...
Programming for Data Science
Detailed syllabus text is not available in the current catalogue extract.
Randomized and Approximation Algorithms
Detailed syllabus text is not available in the current catalogue extract.
Reliability Engineering
Detailed syllabus text is not available in the current catalogue extract.
Risk and Decision Analysis
Detailed syllabus text is not available in the current catalogue extract.
Semiconductor Foundry Engineering
Business Imperatives: CMOS Technology motivation & impact, the foundry ecosystem, value chain, Node Power/Performance/Area requirements; customer engagement (timeline, Ground Rule Validation and Design Rule Validation, Process Design Kit, Intellectual Property...
Sensors, Phones and Cloud Computation applied to Hazard Mitigation
Detailed syllabus text is not available in the current catalogue extract.
Software Engineering and Testing
Basics of software engineering: software versus product; why software engineering; developmentstyles; Software development life cycle: models; classic; waterfall; agile; scrum; devOps; Phases:requirement analysis; feasibility study; software design; software a...
Software Tools & Techniques for AI
Data collection and labeling: collecting data: tools for logging/instrumenting sources (e.g. website) to collect usage data; validating data; labeling data: tools such as label studio to annotate datasets, methods such as Cohen Kappa inter-annotator agreement,...
Software Tools and Techniques for CSE
Version controlling local, centralized, distributed; Agile development methods: Continuous integration/delivery/deployment. e.g., Git workflow, actions etc.; Makefiles and build tools: Dependency rules, macros, suffix rules etc. build tools e.g., Gradle, Apach...
Spatial Data Science and Applications
Detailed syllabus text is not available in the current catalogue extract.
Special Topics
Special Topics
Special Topics in Computer Science
Special Topics in Computer Science
Special Topics in Computer Science and Engineering
Detailed syllabus text is not available in the current catalogue extract.
Special Topics in Computer Science: Advanced Machine Learning
Learning Theory Reinforcement Learning Deep Learning Bayesian optimization Graphical models
Special Topics in Computer Science: AI for Social Good
Topics will span a wide array of AI domains such as but limited to:- Healthcare: AI for diagnosis, personalised medicine, public health monitoring, and remote care- Environment and Sustainability: AI in climate modelling, pollution monitoring, energy efficienc...
Special Topics in Computer Science: Algebraic Complexity Theory
Special Topics in Computer Science: Algebraic Complexity Theory
Special Topics in Computer Science: Applications of Linear Algebra to Combinatorics
This course explores applications of tools from linear algebra in combinatorics, geometry, algorithms, and graph theory. We will emphasize proofs and proof techniques. The goal is to use the applications as a backdrop to practice and review linear algebra skil...
Special Topics in Computer Science: Combinatorial and Computational Aspects of Games
Combinatorial Games: Game Trees, Zermelo's Theorem, StrategyNormal-Play Games: Positions and Their Types, Sums of Positions, EquivalenceImpartial Games: Nim, The Sprague-Grundy Theorem, Applying the MEX PrincipleHackenbush and Partizan Games: Hackenbush, Dyadi...
Special Topics in Computer Science: Complexity Theory
Special Topics in Computer Science: Complexity Theory
Special Topics in Computer Science: Computer Algebra
Special Topics in Computer Science: Computer Algebra
Special Topics in Computer Science: Congestion Control
Summary of the course:A current and concise exposition of some of the most important topics in the area of congestion control for computer networks, with special emphasis on analytical modeling of congestion control systemsAccessible coverage of the advanced t...
Special Topics in Computer Science: Cyber Physical Systems for Industrial Applications
The course provides an overview of the underlying principles of this future evolution towards cyber-physical networks, whilealso discussing open research problems and societal implications of such networks.1. Cyber-Physical Systems (CPS) in the real world, CPS...
Special Topics in Computer Science: Deep Learning
Special Topics in Computer Science: Deep learning
Special Topics in Computer Science: Graph Theory and Graph Algorithms
Special Topics in Computer Science: Graph theory and graph algorithms
Special Topics in Computer Science: Introduction to Competitive Programming
This is a course focused on teaching algorithms and data structures through problem solving. Students will be solving andcoding up solutions to various basic algorithmic and data structure related problems, from the lens of competitiveprogramming. Familiarizin...
Special Topics in Computer Science: Learning from Data
The course will involve reading of the book by Gilbert Strang on the topic followed by presentations on individual topics for evaluation.
Special Topics in Computer Science: Learning with Graphs
Graph clustering: spectral clustering, clustering for streaming graphsRandom walks: convergence properties, connections with eigenvalues, Pagerank and its variants, personalized PageRank, MCMC, clustering using random walksGraph sampling and estimation: estima...
Special Topics in Computer Science: Parameterized Algorithms
Special Topics in Computer Science: Parameterized Algorithms
Special Topics in Computer Science: Probabilistic Machine Learning
Detailed syllabus text is not available in the current catalogue extract.
Special Topics in Computer Science: Social Networks
Introduction Handling Real-world Network DatasetsStrength of Weak TiesStrong and Weak Relationships (Continued) & Homophily Homophily Continued and +Ve / -Ve Relationships Link Analysis Cascading Behaviour in NetworksLink Analysis (Continued) Power Laws and Ri...
Special Topics in Computer Science: Transformers and GNNs
Course contents:Word Representation in Vector Space- Representation of words and phrases, Negative Sampling; Algebraic structure of Word Sense - Dimensionality of Word EmbeddingsAnatomy of a Transformers - attention mechanism. Text Generation: Greedy Search De...
Special Topics in Computer Science: Ubiquitous Computing
The aim of this class will be to introduce the students to ubiquitous computing. We will focus on howtraditional topics of computing have evolved to support the vision of a connected, portable, and a human-centric computing environment. Thus, this course will...
Special Topics in Computer Science: Understanding Large Language Models
Introduction:1. Word Representation in Vector Space 1.1. Representation of words and phrases 1.2. Algebraic structure of Word Sense 1.3. Dimensionality of Word Embeddings2. Text Generation 2.1 Greedy Search Decoding 2.2 Beam Search Decoding 2.3 Sampling Method...
Special Topics in Computer Science: Usable Privacy and Security
The aim of this course is to provide a user-focused view of security and privacy in systems. This wouldinclude topics related to secure systems and their usability analysis. We will discuss the state-of-the-artworks in the area of usable security to understand...
Special Topics in Computer Science: User Studies for Privacy & Security
The aim of this course is to perform field studies to understand the normal users' view of security and privacy in systems. The students would perform user studies involving institute personnel for different problem statements as part of the course. There woul...
Special Topics in Computer Science: Verification and Validation of Safety-Critical Software Systems
Introduction to Safety Critical Systems and Industry 5.0: Fundamental concepts of safety criticalsystems along with examples (aerospace, automotive, medical devices, nuclear, industrial automation).The evolution from Industry 4.0 to Industry 5.0 - core princip...
Special Topics in Computer Science: Virtual & Augmented Reality Systems
The course intends to build foundation in the area of Extended Reality, covering virtual, augmented and mixed reality. The topics to be covered include introduction to the field, the hardware and software used to build and deploy such systems, understanding an...
Theoretical Foundations of Machine Learning
Concentration of measure - various concentration inequalities; PAC learning,VC dimension, Rademacher complexity, generalization bounds, sample complexity.Generalization in deep learning setting - double descent; Optimization - random projection,randomized nume...
Theory of Computing
Finite Automata and Regular Languages: Deterministic and Nondeterministicfinite automata and their equivalence, Pumping lemma, the Myhill-Nerode Theorem; PushdownAutomata (PDA) and Context free languages (CFL): Context free grammars (CFG), normal forms,variant...
Time Series Analysis
Detailed syllabus text is not available in the current catalogue extract.