subjectId
Discipline Name
Subject Name
Coordinators
Type
Institute
Content
106101007
Computer Science and Engineering
Natural Language Processing
Prof. Pushpak Bhattacharyya
Video
IIT Bombay
Select
L1-Introduction
L2-Stages of NLP
L3-Stages of NLP Continue…
L4-Two approaches to NLP
L5-Sequence Labelling and Noisy Channel
L6-Noisy Channel: Argmax Based Computation
L7-Argmax Based Computation
L8-Noisy Channel Application to NLP
L9-Brief on Probabilistic Parsing & Start of Part of Speech Tagging
L10-Part of Speech Tagging
L11-Part of Speech Tagging counted…
L12-Part of Speech Tagging counted… & Indian Language in Focus; Morphology Analysis
L13-PoS Tagging contd… , Indian Language Consideration; Accuracy Measure
L14-PoS Tagging; Fundamental Principle; Why Challenging; accuracy
L15-PoS Tagging; Accuracy Measurement; Word categories
L16-AI and Probability; HMM
L17-HMM
L18-HMM, Viterbi, Forward Backward Algorithm
L19-HMM, Viterbi, Forward Backward Algorithm Contd..
L20-HMM, Forward Backward Algorithms, Baum Welch Algorithm
L21-HMM, Forward Backward Algorithms, Baum Welch Algorithm Contd...
L22-Natural Language Processing and Informational Retrieval
L23-CLIA; IR Basics
L24-IR Models: Boolean Vector
L25-IR Models: NLP and IR Relationship
L26-NLP and IR: How NLP has used IR, Toward Latent Semantic
L27-Least Square Method; Recap of PCA; Towards Latent Semantic Indexing(LSI)
L28-PCA; SVD; Towards Latent Semantic Indexing(LSI)
L29-Wordnet and Word Sense Disambiguation
L30-Wordnet and Word Sense Disambiguation(contd…)
L31-Wordnet; Metonymy and Word Sense Disambiguation
L32-Word Sense Disambiguation
L33-Word Sense Disambiguation; Overlap Based Method; Supervised Method
L34-Word Sense Disambiguation: Supervised and Unsupervised methods
L35-Word Sense Disambiguation: Semi - Supervised and Unsupervised method; resource - constrained WSD
L36-Resource Constrained WSD; Parsing
L37-Parsing
L38-Parsing Algorithm
L39-Parsing Ambiguous Sentences; Probabilistic Parsing
L40-Probabilistic Parsing Algorithms
106101059
Computer Science and Engineering
Design and Analysis of Algorithms
Prof. Abhiram G Ranade
Web
IIT Bombay
Select
Part I
106101060
Computer Science and Engineering
Design and Analysis of Algorithms
Prof. Abhiram G Ranade
Video
IIT Bombay
Select
Overview of the course
Framework for Algorithms Analysis
Algorithms Analysis Framework - II
Asymptotic Notations
Algorithm Design Techniques : Basics
Divide And Conquer-I
Divide And Conquer -II Median Finding
Divide And Conquer -III Surfing Lower Bounds
Divide And Conquer -IV Closest Pair
Greedy Algorithms -I
Greedy Algorithms - II
Greedy Algorithms - III
Greedy Algorithms - IV
Pattern Matching - I
Pattern Matching - II
Combinational Search and Optimization I
Combinational Search and Optimization II
Dynamic Programming
Longest Common Subsequences
Matrix Chain Multiplication
Scheduling with Startup and Holding Costs
Average case Analysis of Quicksort
Bipartite Maximum Matching
Lower Bounds for Sorting
Element Distinctness Lower Bounds
NP-Completeness-I -Motivation
NP - Completeness - II
NP-Completeness - III
NP-Completeness - IV
NP-Completeness - V
NP-Completeness - VI
Approximation Algorithms
Approximation Algorithms
Approximation Algorithms for NP
106101061
Computer Science and Engineering
Software Engineering
Prof. Rushikesh K Joshi
Video
IIT Bombay
Select
Introduction to Software Engineering-Challenges
Introduction to Software Engineering
Overview of Phases
Overview of Phases
Requirements Engineering / Specification
Formal Specification
Algebraic Specification Methods
Systems Modeling Overview
Process Modeling - DFD , Function Decomp
Process Modeling - DFD, Function Decomp
Data Modeling - ER Diagrams, Mapping
Data Modeling - ER Diagrams, Mapping
Production Quality Software - Introduction
Software Design - Primary Consideration
Design Patterns
Class and Component Level Design
Architectural Design
Software Testing - I
Software Testing - II
Structural Programming and Some implementation
Software Metrics and Quality
Verification and Validation
Case Study
Case Study
Software Evolution
Agile Development
Software Reuse CBSE
Reuse Continued
Introduction to Project Management
Project Scope Management
Project Time Management
Estimation - I
Estimation - II
Project Quality Management
Quality Management Systems - I
Quality Management Systems
Project Configuration Management
Project Risk Management
Other PM Processes
106101163
Computer Science and Engineering
NOC:Software testing
Prof. Meenakshi D'souza
Video
IIITB
Select
Lecture 49_Testing of Object-Oriented Applications
Lecture 48_Testing of Object-Oriented Applications
Lecture 47_Testing of web Applications and Web Services
Lecture 46_Testing of web Applications and Web Services
Lecture 45_Testing of web Applications and Web Services
Lecture 44:Software Testing Course: Summary after Week 9
Lecture 43:Mutation testing : Grammars and inputs
Lecture 42:Mutation Testing:Mutation for integration
Lecture 41:Mutation testing
Lecture 40:Assignment Solving for Week8
Lecture 6 - Structural Graph Coverage Criteria
Lecture 9 - Algorithms: Structural Graph Coverage Criteria
Graph Coverage and Finite state Machines
Assignment 4: Graph Coverage Criteria
Logic: Basics Needed for Software Testing
Logic: Coverage Criteria
Coverage Criteria, Contd.
Logic Coverage Criteria
Logic Coverage Criteria: Applied to Test Code_1
Logic Coverage Criteria: Applied to Test Code_2
Logic Coverage Criteria: Issues in Applying to Test Code
Logic Coverage Criteria: Applied to Test Specifications
Logic Coverage Criteria: Applied to Finite State Machines
Lecture 30_Week 6 Assignment Solving
Lecture 31_Functional Testing
Lecture 32_Input Space Partitioning
Lecture 33_Input Space Partitioning: Coverage Criteria
Lecture 34_Input Space Partitioning Coverage Criteria: Example
Design Integration Testing and Graph Coverage
Specification Testing and Graph Coverage
Data Flow Graph Coverage Criteria : Applied to Test Code
Software Design and Integration Testing
Algorithms: Data Flow Graph Coverage Criteria
Graph Coverage Criteria: Applied to Test Code
Testing Source Code: Classical Coverage Criteria
Assignment 2: Structural Coverage Criteria
Data Flow Graphs
Lecture 7 - Elementary Graph Algorithms
Lecture 8 - Elementary Graph Algorithms - Part 2
Lecture 4 -Automation - JUnit as an example
Lecture 5 - Basics of Graphs: As used in testing
Lecture 1 - Motivation
Lecture 2 - Terminologies
Lecture 3 - Testing based on Models and Criteria
Syntax-Based Testing
Mutatioon Testing
Mutation Testing for Programs
Mutation Testing: Mutation Operators for Source Code
Mutation Testing Vs. Graphs and Logic Based Testing
Symbolic Testing
Symbolic Testing 2
DART: Directed Automated Random Testing
DART: Directed Automated Random Testing - 2
DART: Directed Automated Random Testing 3
Testing of Object-Oriented Applications
Testing of Mobile Applications
Non-Functional System Testing
Regression Testing
Assignment: Week 11 Solving
Software Testing: Summary at the End of the Course
106102011
Computer Science and Engineering
Computational Geometry
Prof. Sandeep Sen
Video
IIT Delhi
Select
Introduction
Visibility Problems
2D Maxima
Line Sweep Method
Segment Intersection Problem
Line Sweep: Rectangle Union
Convex Hull
Convex Hull Contd
Quick Hull
More Convex Hull Algorithms
Intersection of Half Planes and Duality
Intersection of Half Planes and Duality Contd
Lower Bounds
Planar Point Location
Point Location and Triangulation Contd...
Triangulation of Arbitrary Polygon.
Voronoi Diagram : Properties
Voronoi Diagram Construction
Delaunay Triangulation.
Quick sort and Backward Analysis
Generalized RIC
RIC Continued
Arrangements
Zone Theorem and Application
Levels
Range Searching : Introduction
Orthogonal Range searching
Priority Search Trees
Non - Orthogonal Range Searching
Half - Plane Range Query
Well Separated Partitioning
Quadtrees Epsilon -WSPD
Construction of Epsilon - WSPD
Epsilon - WSPD to Geometric Spanner
Epsilon-Nets & VC Dimension
Epsilon-Nets & VC Dimension contd
Geometric Set Cover
Geometric Set Cover (with Bounded VC Dimension)
Shape Representation
Shape Comparison
106102013
Computer Science and Engineering
Logic for CS
Prof. S. Arun Kumar
Video
IIT Delhi
Select
Introduction
Propositional Logic Syntax
Semantics of Propositional Logic
Logical and Algebraic Concepts
Identities and Normal forms
Tautology Checking
Propositional Unsatisfiability
Analytic Tableaux
Consistency and Completeness
The Completeness Theorem
Maximally Consistent Sets
Formal Theories
Proof Theory : Hilbert-style
Derived Rules
The Hilbert System : Soundness
The Hilbert System :Completeness
Introduction to Predicate Logic
The Semantic of Predicate Logic
Subsitutions
Models
Structures and Substructures
First - Order Theories
Predicate Logic: Proof Theory (Contd..)
Existential Quantification
Normal Forms
Skalemization
Substitutions and Instantiations
Unification
Resolution in FOL
More on Resolution in FOL
Resolution : Soundness and Completeness
Resolution and Tableaux
Completeness of Tableaux Method
Completeness of the Hilbert System
First -Order Theories
Towards Logic Programming
Verification of Imperative Programs
Verification of WHILE Programs
References
106102062
Computer Science and Engineering
Computer Architecture
Prof. Anshul Kumar
Video
IIT Delhi
Select
Introduction to Computer Architecture
History of Computers
Instruction Set Architecture - I
Instruction Set Architecture - II
Instruction Set Architecture - III
Recursive Programs
Architecture Space
Architecture Examples
Performance
Performance
Binary Arithmetic, ALU Design
ALU Design, Overflow
Multiplier Design
Divider Design
Fast Addition , Multiplication
Floating Point Arithmetic
Processor Design - Introduction
Processor Design
Processor Design - Simple Design
Processor Design - Multi Cycle Approach
Processor Design - Control for Multi Cycle
Processor Design Micro programmed Control
Processor Design Exception Handling
Pipelined Processor Design Basic Idea
Pipelined Processor Design: Data path
Pipelined Processor Design: Handling Data
Pipelined Processor Design
Memory Hierarchy : Basic Idea
Memory Hierarchy : Cache Organization
Memory Hierarchy : Cache Organization
Memory Hierarchy : Virtual Memory
Memory Hierarchy : Virtual Memory
Input / Output Subsystem: Introduction
Input / Output Subsystem: Interfaces and buses
Input / Output Subsystem: Interfaces and buses
Input / Output Subsystem: I/O Operations
Input / Output Subsystem: Designing I/O Systems
Concluding Remarks
106102063
Computer Science and Engineering
Computer Graphics
Prof. Prem K Kalra
Web
IIT Delhi
Select
Definition
Basic elements
History
Application
Graphic rendering pipeline
Input devices
Line Drawing Algorithm
Midpoint Circle Algorithm
Ellipse drawing algoritm
Point Clipping
Line Clipping
Polygon Clipping
Two - Dimensional
Three - Dimensional
3D Viewing
Parametric Curves
Introduction
Generation of Fractals
Geometric fractals
Recapitulation
Random Fractals
Applications
Conventional Animation
Real time vs Image
Animation Techniques
Rotoscopy
Key Framing
Spline Driven Animation
Morphing
Particle Systems
Illumination Model
Polygon Shading
Solid Models
106102064
Computer Science and Engineering
Data Structures And Algorithms
Prof. Naveen Garg
Video
IIT Delhi
Select
Introduction to Data Structures and Algorithms
Stacks
Queues and Linked Lists
Dictionaries
Hashing
Trees
Tree Walks / Traversals
Ordered Dictionaries
Deletion
Quick Sort
AVL Trees
AVL Trees
Trees
Red Black Trees
Insertion in Red Black Trees
Disk Based Data Structures
Case Study: Searching for Patterns
Tries
Data Compression
Priority Queues
Binary Heaps
Why Sorting
More Sorting
Graphs
Data Structures for Graphs
Two Applications of Breadth First Search
Depth First Search
Applications of DFS
DFS in Directed Graphs
Applications of DFS in Directed Graphs
Minimum Spanning Trees
The Union
Prims Algorithm for Minimum Spanning Trees
Single Source Shortest Paths
Correctness of Dijkstras Algorithm
Single Source Shortest Paths
106102065
Computer Science and Engineering
Introduction to Computer Graphics
Prof. Prem K Kalra
Video
IIT Delhi
Select
Introduction
Raster Graphics
Raster Graphics (Contd.)
Clipping
Polygon Clipping and Polygon Scan Conversion
Transformations
Transformations (contd.)
3D Viewing
3D Viewing (Contd.)
Curves
Assignment - I
Curves (Contd.)
Curves (Contd.)
Curves (Contd.)
Curves (Contd.)
Surfaces
Surfaces(Contd.)
Surfaces(Contd.)
Surfaces(Contd.)
Hierarchical Models
Rendering
Rendering(Contd.)
Rendering(Contd.)
Ray Tracing
Ray Tracing(Contd.)
Ray Tracing(Contd.)
Assignment: Ray Tracing
Hidden Surface Elimination
Hidden Surface Elimination(Contd.)
Hidden Surface Elimination(Contd.)
Fractals
Fractals(Contd.)
Computer Animation
Animation(Contd.)
Animation(Contd.)
106102066
Computer Science and Engineering
Introduction to Problem Solving and Programming
Prof. S. Arun Kumar
Web
IIT Delhi
Select
Introduction to computing
Our computing tool
Primitives: Integer & Real
Example : Fibonacci
Primitives: Booleans
Technical completeness & Algorithms
Algorithm Refinement
Variations: Algorithms & code
Names,Scopes & Recursion
Floating point
Root Finding,Composition and Recursion
Termination and space complexity
Efficiency measures and Speed-ups
Invariance & Correctness
Tuples, Lists & the Generation of Primes
Compound Data & Lists
Compound Data & Lists Algorithms
Higher order Functions
Structured data
user defined structured data types
Introducing a memory model
Imperative programming
Arrays
Large Example : Tautology Checking
Tautology Checking contd
106102067
Computer Science and Engineering
Principles of Programming Languages
Prof. S. Arun Kumar
Video
IIT Delhi
Select
Introduction
Syntax
Grammars
Ambiguity
PLO:Syntax
Semantics
Syntactic Classes
Transition Systems
PL0 : Expressions
Binding
Environments
Declarations
Commands
Stores
Summary
Declarations and Commands
Blocks
Qualification
Pragmatics
Data
Structured Data
Sequences
Control
Non- Determinacy
Programming Languages
Programming Languages
Programming Languages
Data as Functions
Data and Fixpoints
Normal Forms
Programming Languages
Monomorphism
Polymorphism
Type Checking
Contexts
Abstracts
Procedures
Meanings
Parameters
The Future
106102114
Computer Science and Engineering
Parallel Computing
Dr. Subodh Kumar
Video
IIT Delhi
Select
Introduction
Parallel Programming Paradigms
Parallel Architecture
Parallel Architecture (case studies)
Open MP
Open MP(Contd.)
Open MP(Contd..)
Open MP&PRAM Model of Computation
PRAM
Models of Parallel Computation,Complexity
Memory Consistency
Memory Consistency & Performance Issues
Parallel Program Design
Shared Memory & Message Passing
MPI
MPI(Contd.)
MPI(Contd..)
Algorithmic Techniques
Algorithmic Techniques(Contd.)
Algorithmic Techniques(Contd..)
CUDA
CUDA(Contd.)
CUDA(Contd..)
CUDA(Contd...)
CUDA(Contd....)
CUDA(Contd.....)
CUDA(Contd......)
Algorithms,Merging & Sorting
Algorithms,Merging & Sorting(Contd.)
Algorithms,Merging & Sorting(Contd..)
Algorithms,Merging & Sorting(Contd...)
Algorithms,Merging & Sorting(Contd....)
Lower Bounds Lock Free Synchronization,Load Stealing
Lock Free Synchronization,Graph Algorithms
106102157
Computer Science and Engineering
NOC:Computer Architecture
Prof. Smruti R.Sarangi
Video
IIT Delhi
Select
Introduction to Computer Architecture
The Language of Bits Part-I
The Language of Bits Part-II
The Language of Bits Part-III
Assembly Language Part-I
Assembly Language Part-II
Assembly Language Part-III
ARM Assembly Language Part-I
ARM Assembly Language Part-II
x86 Assembly Language Part-I
x86 Assembly Language Part-II
x86 Assembly Language Part-III
x86 Assembly Language Part-IV
A Primer on Digital Logic Part-I
A Primer on Digital Logic Part-II
A Primer on Digital Logic Part-III
Computer Arithmetic Part-I
Computer Arithmetic Part-II
Computer Arithmetic Part-III
Computer Arithmetic Part-IV
Computer Arithmetic Part-V
Computer Arithmetic Part-VI
Processor Design Part-I
Processor Design Part-II
Processor Design Part-III
Principles of Pipelining Part-I
Principles of Pipelining Part-II
Principles of Pipelining Part-III
Principles of Pipelining Part-IV
The Memory Systems Part-I
The Memory Systems Part-II
The Memory Systems Part-III
The Memory Systems Part-IV
106102163
Computer Science and Engineering
NOC:Introduction to Parallel Programming in OpenMP
Dr. Yogish Sabharwal
Video
IIT Delhi
Select
Manual distribution of work and critical sections
Distributing for loops and reduction
Vector-Vector operations (Dot product)
Matrix-Vector operations (Matrix-Vector Multiply)
Matrix-Matrix operations (Matrix-Matrix Multiply)
Introduction to tasks
Task queues and task execution
Accessing variables in tasks
Completion of tasks and scoping variables in tasks
Recursive task spawning and pitfalls
Understanding LU Factorization
Parallel LU Factorization
Locks
Advanced Task handling
Matrix Multiplication using tasks
The OpenMP Shared Memory Consistency Model
Shared Memory Consistency Models and the Sequential Consistency Model
Computing sum: first attempt at parallelization
OpenMP: thread private variables and more constructs
Race Conditions
OpenMP: Scoping variables and some race conditions
Context Switching
OpenMP: Basic thread functions
Program with Single thread
Program Memory with Multiple threads and Multi-tasking
OpenMP: A parallel Hello World Program
Interconnection networks in Distributed Memory architectures
Intuition for Shared and Distributed Memory architectures
Shared and Distributed Memory architectures
OpenMP: About OpenMP
Cache and Temporal Locality
Cache, Memory bandwidth and Spatial Locality
Parallel Architectures and Programming Models
Pipelining
Superpipelining and VLIW
Memory Latency
Introduction to Parallel Programming
106103015
Computer Science and Engineering
Computational Number Theory & Cryptography
Dr. Pinaki Mitra
Web
IIT Guwahati
Select
Complexity of Computation & Complexity Classes
Encoding Scheme
Elementary Number-Theory
Euclid's Algorithm
Modular Arithmetic Groups
Subgroups
Primitive Roots
Generator Computation
Solving modular linear equations
Modular exponentiation
Chinese Remainder Theorem
Discrete Logarithm Problem
Quadratic Residues
Diffie Hellman key Exchange
Cryptosystems Based on Discrete Log
Public Key Cryptosystem & RSA
Choice of the Public Key
Attacks on RSA & Remedies
Rabin Cryptosystem
Pollard-Rho Method
Pollard Rho Analysis
Current state of the art
Large prime variant
Dixon's factorization method
Primality Testing
Fermat Primality Test
AKS PRIMALITY TEST
Elliptic Curve Cryptography
Zero Knowledge Proof
Elliptic Curves
Elgamal Digital Signature Scheme
Blind & Prony Signature
Short signature scheme I
Short signature scheme II
Video Data Cippers
Cryptographic Hash Function
Quadratic-Sieve Factoring
Elliptic Curves(contd.) and Finite Fields
ECDLP
106103016
Computer Science and Engineering
VLSI Design Verification and Test
Prof. Jatindra Kumar Deka
Web
IIT Guwahati
Select
Introduction to Digital VLSI Design Flow
High Level Design Representation
Transformations for High Level Synthesis
Introduction to HLS: Scheduling, Allocation and Binding Problem
Scheduling Algorithms
Binding and Allocation Algorithms
Two level Boolean Logic Synthesis
Heuristic Minimization of Two-Level
Finite State Machine Synthesis
Multilevel Implementation
Introduction and construction
Ordered Binary Decision Diagram
Operations on Ordered Binary Decision Diagram
Ordered Binary Decision Diagram for Sequential Circuits
Introduction and Basic Operations on Temporal Logic
Syntax and Semantics of CLT
Equivalence between CTL Formulas
Verification Techniques
Model Checking Algorithm
Symbolic Model Checking
Introduction to Digital VLSI Testing
Functional and Structural Testing
Fault Equivalence
Fault Simulation
Testability Measures (SCOAP)
Introduction to Automatic Test Pattern Generation (ATPG) and ATPG Algebras
D-Algorithm
ATPG for Synchronous Sequential Circuits
Scan Chain based Sequential Circuit Testing
Built in Self Test
Memory Testing
106103068
Computer Science and Engineering
Computer Organization and Architecture
Prof. Jatindra Kumar Deka
Web
IIT Guwahati
Select
Introduction to computer System and its submodules
Number System and Representation of information
Brief History of Computer Evolution
Problems-Introduction
Arithmetic and logical operation and Hardware implementation
Implementation issues of some operation
Problems-Arithmatic and Logic Unit
Concept of Memory
Cache Memory
Memory Management
Virtual Memory
Problems-Memory
Various Addressing Modes
Machine Instruction
Instruction Format
Problems-Instruction Set & Addressing
Introduction to CPU Design
Processor Organization
Execution of complete Instruction
Design of control unit
Microprogrammed Control - I
Microprogrammed Control - II
Problems-CPU Design
Introduction to I/O
Program Controlled I/O
Interrupt Controlled I/O
Direct Memory Access
Problems-Input / Output
I/O Buses
External Storage Devices
Disk Performance
Problems-I/O Device Connection
Introduction to RISC
Design issues of RISC
Problems-Reduced Instruction Set Programming
Introduction to Pipeline Processor
Performance Issues
Branching
Problems-Pipelining Processor
Introduction to Parallel Processing
Interconnection Networks
Cache Coherence
Problems-Multi-Processor / Parallel Processing
Organization of Intel 8085 Micro-Processor
Instruction set of Intel 8085 Micro-Processor
Organization of Intel 8086 Micro-Processor
Instruction formats of Intel 8086
Programming of Micro-processor
Problems-Intel 8085/8086 Micro-Processor
106103069
Computer Science and Engineering
Data Structures and Program Methodology
Dr. S.V. Rao
Web
IIT Guwahati
Select
What is Data Structure
Methods of Interpreting bit Setting
Type of Data Structure
Introductions to Algorithms
Time Complexity
Recurrence
Linear Data Structures
Linked Lists
Introduction to Sorting
Sink Sort
Selection Sort
Merge Sort
Quick Sort
Radix Sort
Searching
Graphs I : Representation and Traversal
Graphs II: Basic Algorithms
Binary Tree
Heap sort
AVL-tree
B-Tree
Hashing Techniques
Introduction
String Algorithm
String copy
Pattern Matching
Life cycle
Problems-Introduction to Data Structures
Example 1-Introduction to Algorithms
Example 2-Introduction to Algorithms
Problems-Introduction to Algorithms
Example-Introduction to Stack
Example-Introduction to Queue
Problems-Linear Data Structures
Example-Inserting and Removing Nodes from a List
Example-Linked Implemented of Stacks
Example-Getnode and Freenode Operation
Example-Linked Implemented of queues
Example-List Implementation of Priority queue
Example-Header Nodes
Example-Circular Lists
Example-Doubly Linked List
Problems-Linked list
Example-Linear Search
Example-Binary Search
Example-k nigsberg bridge problem
Problems-GRAPHS Representation
Example-Minimum Spanning tree
Example-Single Source Shortest Path
Problems
Example-Array Representation of Binary Tree
Example-Linked Representation of Binary Tree
Example-Examples-Heap sort
Problems-Heap sort
Problems-Search Trees
Problems-Tables
Problems-Sets
Problems-STRING ALGORITHM
Example-Code Designing
Example-Coding
Example-Programming Style
Examples-Program devlopment
Problems-Program devlopment
Example-Testing Method
Example-Verification Procedures
Problems-Program Testing and Verification
106103070
Computer Science and Engineering
Theory of Automata and Formal Languages
Dr. Diganta Goswami
Web
IIT Guwahati
Select
Alphabets, Strings and languages
Automata and Grammars
Finite Automata
Removing Transition
Nondeterministic Finite Automata (NFA)
Regular Expression
Regular Grammars
Pumping Lenma-Description
Minimization of Deterministic Finite Automata
Some decision properties of Regular Languages
Description-Context-free Grammars
Formal Definition ,behavior -PDA
Equivalence of PDAs and CFGs
PDAs and CFGs
Description-Deterministic PDA
Description-DPDA and DCFLs
Description-Simplification of CFG
Description-Context Free Language(CFL)
Description- Closure Property of CFLs
Description-Decision Algorithms for CFLs
Description-Turing Machines
Description-Recursively Enumerable Language
Description- Post's Correspondence Problem (PCP)
Description-Chomsky Hierarchy
106103115
Computer Science and Engineering
Human-Computer Interaction
Dr.Samit Bhattacharya
Web
IIT Guwahati
Select
Course objective and overview
Historical evolution of the field
Concept of usability - definition and elaboration
HCI and software engineering
GUI design and aesthetics
Prototyping techniques
Introduction to different types of models
Keystroke Level Model -I
Keystroke Level Model - II
(CMN)GOMS
Individual Models of Human Factors - I
Individual Models of Human Factors - II
A Case Study on Model-Based Design - I
A Case Study on Model-Based Design - II
Shneiderman’s eight golden rules
Norman’s seven principles
Norman’s model of interaction
Nielsen’s ten heuristics with example of its use
Heuristic evaluation
Contextual inquiry
Cognitive walkthrough
Introduction to Empirical Research - I
Introduction to Empirical Research - II
Analysis of Empirical Data
Empirical Research Case Study
Hierarchical task analysis (HTA)
Engineering Task Models and CTT
CTT Example
Introduction to formalism in dialog design, design using FSM
StateCharts
Petri Nets
Use of Formalism
Introduction
Model Human Processor - I
Model Human Processor - II
OOP- Introduction
OOM- Object Oriented Modeling of User Interface Design
Case Study 1- Multi-Key press Hindi Text Input Method on a Mobile Phone
Case Study 2 - GUI design for a mobile phone based Matrimonial application.during emergency
Case Study 3 - Employment Information System for unorganised construction workers on a Mobile Phone.
106103116
Computer Science and Engineering
Design Verification and Test of Digital VLSI Circuits
Prof. Jatindra Kumar Deka
Video
IIT Guwahati
Select
Introduction to Digital VLSI Design Flow
High Level Design Representation
Transformations for High Level Synthesis
Introduction to HLS: Scheduling, Allocation and Binding Problem
Scheduling Algorithms-1
Scheduling Algorithms-2
Binding and Allocation Algorithms
Two level Boolean Logic Synthesis-1
Two level Boolean Logic Synthesis-2
Two level Boolean Logic Synthesis-3
Heuristic Minimization of Two-Level Circuits
Finite State Machine Synthesis
Multilevel Implementation
Introduction to formal methods for design verification
Temporal Logic: Introduction and Basic Operators
Syntax and Semantics of CTL
Syntax and Semantics of CTL – Continued
Equivalence between CTL Formulas
Introduction to Model Checking
Model Checking Algorithms I
Model Checking Algorithms II
Model Checking with Fairness
Binary Decision Diagram: Introduction and construction
Ordered Binary Decision Diagram
Operation on Ordered Binary Decision Diagram
Ordered Binary Decision Diagram for State Transition Systems
Symbolic Model Checking
Introduction to Digital VLSI Testing
Functional and Structural Testing
Fault Equivalence
Fault Simulation-1
Fault Simulation-2
Fault Simulation-3
Testability Measures (SCOAP)
Introduction to Automatic Test Pattern Generation (ATPG) and ATPG Algebras
D-Algorithm-1
D-Algorithm-2
ATPG for Synchronous Sequential Circuits
Scan Chain based Sequential Circuit Testing-1
Scan Chain based Sequential Circuit Testing-2
Built in Self Test-1
Built in Self Test-2
Memory Testing-1
Memory Testing-2
106104019
Computer Science and Engineering
Computer Algorithms - 2
Prof. Shashank K. Mehta
Video
IIT Kanpur
Select
Lecture-01-Graph_Basics
Lecture-02-Breadth_First_Search
Lecture-03-Dijkstra_Algo
Lecture-04-All Pair Shortest Path
Lecture-05-Matriods
Lecture-06-Minimum Spanning Tree
Lecture-07-Edmond's Matching Algo I
Lecture-08-Edmond's Matching Algo II
Lecture-09-Flow Networks
Lecture-10-Ford Fulkerson Method
Lecture-11-Edmond Karp Algo
Lecture-12-Matrix Inversion
Lecture-13-Matrix Decomposition
Lecture-14-Knuth Morris Pratt Algo
Lecture-15-Rabin Karp Algo
Lecture-16-NFA Simulation
Lecture-17-Integer-Polynomial OpsI
Lecture-18-Integer-Polynomial OpsII
Lecture-19-Integer-Polynomial OpsIII
Lecture-20-Chinese RemainderI
Lecture-21-Chinese RemainderII
Lecture-22-Chinese RemainderIII
Lecture-23-:Discrete Fourier TransformI
Lecture-24-Discrete Fourier TransformII
Lecture-25-Discrete Fourier TransformIII
Lecture-26-Schonhage Strassen Algo
Lecture-27-Linear ProgrammingI
Lecture-28-Linear ProgrammingII
Lecture-29-GeometryI
Lecture-30-GeometryII
Lecture-31-GeometryIII
Lecture-32-Approximation AlgoI
Lecture-33-Approximation AlgoII
Lecture-34-Approximation AlgoIII
Lecture-35-General: Dynamic Programming
106104021
Computer Science and Engineering
Indexing and Searching Techniques in Databases
Dr. Arnab Bhattacharya
Web
IIT Kanpur
Select
Basic Database Queries
Advanced Database Queries
Error Measures
Memory and Disk Accesses
Vector and Metric Spaces
Distance Functions
Earth Mover's Distance (EMD)
Earth Mover's Distance (EMD)
Static and Dynamic Hashing
Linear hashing
Locality Sensitive Hashing and Grid File
One-dimensional Orderings
Index structure
Quadtrees and k-d-trees
Range Trees and Interval Trees
Voronoi Diagrams and Tries
Disk-based Index Structures
General Framework
R-trees
R-trees
R-tree Variants
SS-trees,SR-trees,P-trees
X-tree
Analysis of High Dimensional Data
Analysis of Index Structures
Pyramid Technique and VA-files
M-trees
Dimensionality Reduction
Singular Value Decomposition (SVD)
Principal Component Analysis (PCA)
FastMap
Embedding
Embedding
DFT and DCT
Wavelets
V-optimal Histograms
Aggregation
Incremental Nearest Neighbor
Skyline Queries
Skyline Queries
Reading Material
106104024
Computer Science and Engineering
Parallel Computer Architecture
Dr. Mainak Chaudhuri
Web
IIT Kanpur
Select
Evolution of Processor Architecture
Moore's Law and Multi-cores
Evaluating Performance
Shared Memory Multiprocessors
Pipelining and Hazards
Instruction Issue Algorithms
Virtual Memory, TLB, and Caches
Cache Hierarchy and Memory-level Parallelism
MIPS R10000: A Case Study
Communication Architecture
Design Issues in Parallel Computers
Steps in Writing a Parallel Program
Parallelizing a Sequential Program
Load Balancing and Domain Decomposition
Locality and Communication Optimizations
Multiprocessor Organizations and Cache Coherence
Introduction to Cache Coherence Protocols
Introduction to Cache Coherence
Sequential Consistency and Cache Coherence Protocols
Performance of Coherence Protocols
Introduction to Synchronization
Scalable Locking Primitives
Barriers and Speculative Synchronization
Write Serialization in a Simple Design
Protocols for Split-transaction Buses
Case Studies
Scalable Snooping and AMD Hammer Protocol
Scalable Multiprocessors
Basics of Directory
SGI Origin 2000
Managing Directory Overhead
Protocol Occupancy and Directory Controllers
SCI Protocol
Sequential Consistency and Relaxed Models
Release Consistency and Delayed Consistency
Software Distributed Shared Memory Multiprocessors
Introduction to Routers
Routing Algorithms
Simultaneous Multithreading and Chip-multiprocessing
Case Studies: IBM Power4 and IBM Power5
Case Studies: Intel Montecito and Sun Niagara
106104025
Computer Science and Engineering
Program Optimization for Multi-core Architectures
Prof. Sanjeev K Aggarwal
Web
IIT Kanpur
Select
Evolution of Processor Architecture
Introduction to Multi-core Architecture
Virtual Memory and Caches
Cache Hierarchy and Memory-level Parallelism
Communication Architectures and Communication Costs
Preliminaries of Parallel Programming
Examples of Shared Memory and Message Passing Programming
Optimizing Shared Memory Performance
Performance Issues in Shared Memory
Introduction to Coherence
Introduction to Snoopy Coherence
Cache Coherence Protocols
Introduction to Atomic Primitives
Scalable Locks and Barriers
Memory Consistency Models and Case Studies of Multi-core
Case Studies of Multi-core
Multiprocessor Organizations and Cache Coherence
Sharing Patterns and Cache Coherence Protocols
What is Parallelization?
The “omp sections” Directive
Clause and Routines
Intel Compilers and Threading Tools
Intel Compilers and Threading Tool
Code Optimization
Supercomputing Applications
SIMD Architecture
Algorithm and Interval
Structural Analysis
Reaching Definition
Analysis
Data Dependence Analysis
Iteration
Data Dependence in Parallel Loops
Symbolic Analysis
Amdahl’s Law
Cycle Shrinking
Multi-core computing CPU Scheduling
Priority and Schedule
Multi-processor Scheduling
Multi-core Computing Synchronization
Solution to Critical Section Problem
Multi-core ComputingInter-process Communication
Multiprocessor Techniques
Cryptography and ECB
106104028
Computer Science and Engineering
Theory of Computation
Prof. Somenath Biswas
Video
IIT Kanpur
Select
Lecture-01 What is theory of computation? Set membership problem, basic notions like alphabet, strings, formal languages.
Lecture-02-Introduction to finite automaton.
Lecture-03-Finite automata continued, deterministic finite automata(DFAs), language accepted by a DFA.
Lecture-04-Regular languages, their closure properties.
Lecture-05-DFAs solve set membership problems in linear time, pumping lemma.
Lecture-06-More examples of nonregular languages, proof of pumping lemma, pumping lemma as a game, converse of pumping lemma does not hold.
Lecture-07-A generalization of pumping lemma, nondeterministic finite automata (NFAs), computation trees for NFAs.
Lecture-08-Formal description of NFA, language accepted by NFA, such languages are also regular.
Lecture-09-'Guess and verify' paradigm for nondeterminism.
Lecture-10-NFA's with epsilon transitions.
Lecture-11-Regular expressions, they denote regular languages.
Lecture-12-Construction of a regular expression for a language given a DFA accepting it. Algebraic closure properies of regular languages.
Lecture-13-Closure properties continued.
Lecture-14-Closure under reversal, use of closure properties.
Lecture-15-Decision problems for regular languages.
Lecture-16-About minimization of states of DFAs. Myhill-Nerode theorem.
Lecture-17-Continuation of proof of Myhill-Nerode theorem.
Lecture-18-Application of Myhill-Nerode theorem. DFA minimization.
Lecture-19-DFA minimization continued.
Lecture-20-Introduction to context free languages (cfls) and context free grammars (cfgs). Derivation of strings by cfgs.
Lecture-21-Languages generated by a cfg, leftmost derivation, more examples of cfgs and cfls.
Lecture-22-Parse trees, inductive proof that L is L(G). All regular languages are context free.
Lecture-23-Towards Chomsky normal forms: elimination of useless symbols, analysis of reachable symbols, generating nonterminals, order of substeps matter.
Lecture-24-Simplification of cfgs continued, Removal of epsilon productions: algorithm and its correctness.
Lecture-25-Elimination of unit productions. Converting a cfg into Chomsky normal form. Towards pumping lemma for cfls
Lecture-26-Pumping lemma for cfls. Adversarial paradigm.
Lecture-27-Completion of pumping lemma proof. Examples of use of pumping lemma. Converse of lemma does not hold. Closure properties of cfls.
Lecture-28-Closure properties continued. cfls not closed under complementation.
Lecture-29-Another example of a cfl whose complement is not a cfl. Decision problems for cfls.
Lecture-30-More decision problems. CYK algorithm for membership decision.
Lecture-31-Introduction to pushdown automata (pda).
Lecture-32-pda configurations, acceptance notions for pdas. Transition diagrams for pdas
Lecture-33-Equivalence of acceptance by empty stack and acceptance by final state.
Lecture-34-Turing machines (TM): motivation, informal definition, example, transition diagram.
Lecture-35-Execution trace, another example (unary to binary conversion).
Lecture-36-Example continued. Finiteness of TM description, TM configuration, language acceptance, definition of recursively enumerable (r.e.) languages.
Lecture-37-Notion of non-acceptance or rejection of a string by a TM. Multitrack TM, its equivalence to standard TM. Multitape TMs.
Lecture-38-Simulation of multitape TMs by basic model. Nondeterministic TM (NDTM). Equivalence of NDTMs with deterministic TMs.
Lecture-39-Counter machines and their equivalence to basic TM model.
Lecture-40-TMs can simulate computers, diagonalization proof.
Lecture-41-Existence of non-r.e. languages, recursive languages, notion of decidability.
Lecture-42-Separation of recursive and r.e. classes, halting problem and its undecidability.
106104072
Computer Science and Engineering
Compiler Design
Prof. Sanjeev K Aggarwal
Web
IIT Kanpur
Select
Introduction to the course
Introduction to Compilers
Lexical Analysis
Syntax Analysis
Semantic Analysis
Runtime System
Intermediate Representation and Symbol Table
Intermediate Code Generation
Code Generation
Questions
106104073
Computer Science and Engineering
Computer Organisation and Architecture
Prof. Bhaskaran Raman
Web
IIT Kanpur
Select
Computer Architecture
Performance Comparison
Amdahl's Law
Instruction Set
DLX
DLX Unpipelined Implementation
Data Hazards
Exceptions and Pipelining
Pipelining Multi-cycle Opns
Handling WAW Hazards
Instruction Level Parallelism
Handling Control Dependence
Dynamic Scheduling
Branch Prediction Buffer
Superscalar DLX
Hardware Support for Speculation
Speculation
Block Placement
Cache Performance
Prioritize Read Misses over Writes
Small and Simple Caches
Main Memory
Multiprocessors
Multiprocessing: Classification
Cache Coherence
Snooping-Based Protocols
Synchronization
Sequential Consistency
Interconnection Networks
Buses for Communication
I/O Performance
Log-Structured File System
Vector Processing
Key Take-Away Ideas
106104074
Computer Science and Engineering
Introduction to Problem Solving and Programming
Prof. D. Gupta
Video
IIT Kanpur
Select
Lecture 1
Lecture 2
Lecture 3
Lecture 4
Lecture 5
Lecture 6
Lecture 7
Lecture 8
Lecture 9
Lecture 10
Lecture 11
lecture 12
Lecture 13
Lecture 14
Lecture 15
Lecture 16
Lecture 17
Lecture 18
Lecture 19
Lecture 20
Lecture 21
Lecture 21
Lecture 23
Lecture 24
106104118
Computer Science and Engineering
Riemann Hypothesis and its Applications
Prof. Manindra Agrawal
Video
IIT Kanpur
Select
Lecture-01
Lecture-02
Lecture-03
Lecture-04
Lecture-05
Lecture-06
Lecture-07
Lecture-08
Lecture-09
Lecture-10
Lecture-11
Lecture-12
Lecture-13
Lecture-14
Lecture-15
Lecture-16
Lecture-17
Lecture-18
Lecture-19
Lecture-20
Lecture-21
Lecture-22
Lecture-23
Lecture-24
Lecture-25
Lecture-26
Lecture-27
Lecture-28
Lecture-29
Lecture-30
106104119
Computer Science and Engineering
Biometrics
Prof. Phalguni Gupta
Video
IIT Kanpur
Select
Lecture-01 Biometrics
Lecture-02 Biometrics
Lecture-03 Biometrics
Lecture-04 Biometrics
Lecture-05 Biometrics
Lecture-06 Biometrics
Lecture-07 Biometrics
Lecture-08 Biometrics
Lecture-09 Biometrics
Lecture-10 Biometrics
Lecture-11 Biometrics
Lecture-12 Biometrics
Lecture-13 Biometrics
Lecture-14 Biometrics
Lecture-15 Biometrics
Lecture-16 Biometrics
Lecture-17 Biometrics
Lecture-18 Biometrics
Lecture-19 Biometrics
Lecture-20 Biometrics
Lecture-21 Biometrics
Lecture-22 Biometrics
Lecture-23 Biometrics
Lecture-24 Biometrics
Lecture-25 Biometrics
Lecture-26 Biometrics
106104120
Computer Science and Engineering
Parallel Algorithm
Prof. Phalguni Gupta
Video
IIT Kanpur
Select
Lecture-21 Parallel Algorithm
Lecture-20 Parallel Algorithm
Lecture-19 Parallel Algorithm
Lecture-18 Parallel Algorithm
Lecture-17 Parallel Algorithm
Lecture-16 Parallel Algorithm
Lecture-15 Parallel Algorithm
Lecture-14 Parallel Algorithm
Lecture-13 Parallel Algorithm
Lecture-12 Parallel Algorithm
Lecture-11 Parallel Algorithm
Lecture-10 Parallel Algorithm
Lecture-09 Parallel Algorithm
Lecture-08 Parallel Algorithm
Lecture-07 Parallel Algorithm
Lecture-06 Parallel Algorithm
Lecture-05 Parallel Algorithm
Lecture-04 Parallel Algorithm
Lecture-01 Parallel Algorithm
Lecture-02 Parallel Algorithm
Lecture-03 Parallel Algorithm
Lecture-22 Parallel Algorithm
Lecture-23 Parallel Algorithm
Lecture-24 Parallel Algorithm
Lecture-25 Parallel Algorithm
106104122
Computer Science and Engineering
Computer Architecture
Dr. Mainak Chaudhuri
Video
IIT Kanpur
Select
Lecture-01-Introduction, Amdahl's law, CPI equation
Lecture-02-CPI equation, research practices, instruction set architecture
Lecture-03-Instruction set architecture
Lecture-04-Instruction set architecture
Lecture-05-Instruction set architecture, case study with MIPS-I
Lecture-06-Case study with MIPS-I
Lecture-07-Case study with MIPS-I
Lecture-08-Binary instrumentation for architectural studies: PIN
Lecture-09-Binary instrumentation for architectural studies: PIN
Lecture-10-Basic pipelining, branch prediction
Lecture-11-Basic pipelining, branch prediction
Lecture-12-Basic pipelining, branch prediction
Lecture-13-Basic pipelining, branch prediction
Lecture-14-Basic pipelining, branch prediction
Lecture-15-Basic pipelining, branch prediction
Lecture-16-Basic pipelining, branch prediction
Lecture-17-Basic pipelining, branch prediction
Lecture-18-Basic pipelining, branch prediction
Lecture-19-Basic pipelining, branch prediction
Lecture-20-Dynamic scheduling, speculative execution
Lecture-21-Dynamic scheduling, speculative execution
Lecture-22-Dynamic scheduling, speculative execution
Lecture-23-Dynamic scheduling, speculative execution
Lecture-24-Dynamic scheduling, speculative execution
Lecture-25-Virtual memory and caches
Lecture-26-Virtual memory and caches
Lecture-27-Virtual memory and caches
Lecture-28-Topics in memory system, DRAM and SRAM technology
Lecture-29-Topics in memory system, DRAM and SRAM technology
Lecture-30-Topics in memory system, DRAM and SRAM technology
Lecture-31-Case study: MIPS R10000
Lecture-32-Case study: MIPS R10000
Lecture-33-Case study: Alpha 21264
Lecture-34-Case study: Intel Pentium 4
Lecture-35-Input/Output
Lecture-36-Simultaneous multithreading, multi-cores
106104123
Computer Science and Engineering
Compiler Design
Prof. Sanjeev K Aggarwal
Video
IIT Kanpur
Select
Lecture-01
Lecture-02-Compiler Design
Lecture-03-Compiler Design
Lecture-04-Compiler Design
Lecture-05-Compiler Design
Lecture-06-Compiler Design
Lecture-07-Compiler Design
Lecture-08-Compiler Design
Lecture-09-Compiler Design
Lecture-10-Compiler Design
Lecture-11-Compiler Design
Lecture-12-Compiler Design
Lecture-13-Compiler Design
Lecture-14-Compiler Design
Lecture-15-Compiler Design
Lecture-16-Compiler Design
Lecture-17-Compiler Design
Lecture-18-Compiler Design
Lecture-19-Compiler Design
Lecture-20-Compiler Design
Lecture-21-Compiler Design
Lecture-22-Compiler Design
Lecture-23-Compiler Design
Lecture-24-Compiler Design
Lecture-25-Compiler Design
Lecture-26-Compiler Design
Lecture-27-Compiler Design
Lecture-28-Compiler Design
Lecture-29-Compiler Design
Lecture-30-Compiler Design
106104128
Computer Science and Engineering
NOC:Introduction to programming in C
Prof.Satyadev Nandakumar
Video
IIT Kanpur
Select
Intro - Process of programming
Intro - GCD
Intro - Programming cycle
Intro - Tracing a simple program
Intro - Variables
Intro - Operators
Loops - While
Loops - While example
Loops - While GCD example
Loops - Longest 1
Loops - Longest 2
Loops - Longest 3
Loops - Do-while
Loops - Matrix using nested loops
Loops - For
Loops - Matrix using nested for loops
Loops - Break statement
Loops - Continue statement
Loops - Continue statement example
Data types in C
ASCII code
Operators Expressions Associativity
Precedence of operators
Expression evaluation
Functions - Introduction
Functions - How functions are executed
Functions - Examples - 1
Functions - Examples - 2
Arrays in C
Initializing arrays
Initializing character arrays
Pointers in C
Pointer arithmetic
Function with pointer arguments
Example - copy a subarray
Programming using arrays and pointers
Sizeof operator
Returning pointers from functions
Example - return duplicate of a string
Recursion - Linear Recursion
Recursion - Linear Recursion - 2
Recursion - Two-way Recursion
Multidimensional Arrays
Multidimensional Arrays and Pointers
Multidimensional Arrays and Pointers - continued (2)
Multidimensional Arrays and Pointers - continued (3)
File Handling
Some other file-handling functions
Structures in C - 1
Structures in C - 2
Singly Linked Lists
Doubly Linked Lists - introduction
Organizing code into multiple files - 1
Organizing code into multiple files - 2
Pre and post increment
106104135
Computer Science and Engineering
NOC:Fundamentals of Database Systems(Course sponsored by Aricent)
Dr. Arnab Bhattacharya
Video
IIT Kanpur
Select
Introduction to Databases
Relational Data Model
Relational Algebra Basic Operators
Relational Algebra Composition of Operators
Relational Algebra Additional Operators
Relational Algebra Extended Relational Algebra
Relational Algebra: Database Modifications
SQL: Introduction and Data Definition
SQL: Basic Queries
SQL: Advanced Queries
SQL: Updates, Joins, Views and Triggers
Normalization Theory: Motivation
Normalization Theory: 1 NF and 2NF
Normalization Theory: 3NF
Normalization Theory: BCNF
Normalization Theory: MVD
Physical Design
Database Indexing: Hashing
Database Indexing: Tree-based Indexing
Query Processing: Selection
Query Processing: Sorting
Query Processing: Nested-Loop joins and Merge join
Query Processing: Hash join and other Operations
Query Optimization: Equivalent Expressions and Simple Equivalance Rules
Query Optimization: Complex Equivalence Rules
Query Optimization: Join Order
Query Optimization: Heuristics and Sizes
Database Transactions: Properties and Failures
Database Transactions: States and Systems
Recovery Systems: Deferred Database Modification
Recovery Systems: Immediate Database Modification.
Recovery Systems: Checkpointing and Shadow Paging
Schedules: Introduction
Schedules: Conflict Serializability
Schedules: View Serializability
Schedules: Result Equivalence and Testing for Serializability
Schedules: Recoverability
Concurrency Control: Locks
Concurrency Control: Two-phase Locking Protocol
Concurrency Control: Timestamp Ordering Protocol
Concurrency Control: Validation-based Protocol
Concurrency Control: Multiple Granularity for Locks
Concurrency Control: Deadlock Prevention and Deadlock Detection
Concurrency Control: Deadlock Recovery and Update Operations
NoSQL: Introduction and Properties
NoSQL: Columnar Families
NoSQL: Different NoSQL Systems
Big Data
106104148
Computer Science and Engineering
NOC:Theory of Computation
Prof. Raghunath Tewari
Video
IIT Kanpur
Select
Examples of non- CFLs
Non-CFLs, pumping lemma
Deterministic Context Free Languages
Turing Machine
More on Turing Machine
Pushdown Automata - Examples and Relation with CFGs
Pushdown Automata - Definition and Example
Closure Properties of CFLs
Introduction to CFGs
DFA minimization
Equivalence of NFA and DFA, Closure properties
Regular expressions
Algebraic properties, RE to NFA conversion
GNFA to RE conversion
More closure properties of regular languages
Non-regular languages and pumping lemma
Examples of CFGs, Reg subset of CFL
Pushdown Automata
Basic Notation and Convention, DFA Edit Lesson
Introduction to Finite Automata
Normal forms, Chomsky normal form
Parse tree, derivation, ambiguity
Examples of non-regular languages
More on Undecidability
Applications of Reduction
Example of DFAs
Non deterministic Turing Machine Edit Lesson
Configuration Graphs
Closure Properties of Decidable and Turing recognizable languages
Decidability properties of Regular and Context Free Languages
Undecidability
NFA, definition and examples
Introduction to Nondeterminism
Reduction
Rice's theorem
Introduction to Computational Complexity Theory
More on the class NP
NP-Completeness
Computation by DFA and Regular operation
More on NP-Completeness
106104149
Computer Science and Engineering
NOC:Modern Algebra
Prof. Manindra Agrawal
Video
IIT Kanpur
Select
Lecture 15 - Cauchy sequences and real numbers
Lecture 14 - Fields
Lecture 13 - Rings: Quotient Rings
Lecture 12 - Rings: Dedekind Domains
Lecture 11 - Rings: Special Ideals
Lecture 10 - Rings: Ideal Arithmetic
Lecture 3 - Groups: Isomorphism
Lecture 16 - Properties of Fields
Lecture 8 - Rings: Failure of Unique Factorization
Lecture 9 - Rings: Birth of Ideals
Lecture 7 - Rings: Introduction
Lecture 6 - Groups: Applications
Lecture 5 - Groups: Structure Theorem
Lecture 4 - Groups: Quotienting
Lecture 2 - Groups: Subgroups and homomorphism
Lecture 17 - Finite Fields
Lecture 1 - Groups: Introduction to abstraction
Lecture 18 - Application of Fields
106105031
Computer Science and Engineering
Cryptography and Network Security
Dr. Debdeep Mukhopadhyay
Video
IIT Kharagpur
Select
Introduction
Overview on Modern Cryptography
Introduction to Number Theory
Probability and Information Theory
Classical Cryptosystems
Cryptanalysis of Classical Ciphers
Shannons Theory
Shannons Theory (Contd...1)
Shannons Theory (Contd...2)
Symmetric Key Ciphers
Block Cipher Standards (DES)
Block Cipher Standards (AES)
Block Cipher Standards (AES) (Contd.)
Linear Cryptanalysis
Differential Cryptanalysis
Few other Cryptanalytic Techniques
Overview on S-Box Design Principles
Modes of Operation of Block Ciphers
Stream Ciphers
Stream Ciphers (Contd...1)
Stream Ciphers (Contd...2)
Pseudorandomness
Cryptographic Hash Functions
Cryptographic Hash Functions (Contd...1)
Cryptographic Hash Functions (Contd...2)
Message Authentication Codes
More Number Theoretic Results
The RSA Cryptosystem
Primality Testing
Factoring Algorithms
Some Comments on the Security of RSA
Discrete Logarithm Problem (DLP)
The Diffie-Hellman Problem and Security of ElGamal Systems
An Introduction to Elliptic Curve Cryptography
Application of Elliptic Curves to Cryptography
Implementation of Elliptic Curve Cryptography
Secret Sharing Schemes
A Tutorial on Network Protocols
System Security
Firewalls and Intrusion Detection Systems
Side Channel Analysis of Cryptographic Implementations
106105032
Computer Science and Engineering
Digital Image Processing
Dr. G. Harit
Web
IIT Kharagpur
Select
Introduction
Introduction (Contd.)
Introduction (Contd.)
Spatial Domain Filtering
Spatial Domain Filtering (Contd)
Spatial Domain Filtering (Continued)
Spatial Domain Filtering (Contd.)
Spatial Domain Filtering (Contd.)
Filtering in the Frequency Domain
Filtering in the Frequency Domain(Contd.)
Filtering in the Frequency Domain (Contd.)
Filtering in the Frequency Domain (Contd.)
Filtering in the Frequency Domain (Contd.)
Filtering in the Frequency Domain (Contd.)
Image Restoration
Image Restoration (Contd.)
Image Restoration(Contd.)
Image Restoration (Contd.)
Image Restoration (Contd.)
Image Compression
Image Compression (Contd.)
Image Compression(Contd.)
Image Compression (Contd.)
Image Compression (Contd.)
Image Compression (Contd.)
Image Compression (Contd. )
Image Compression ( Contd.)
Wavelet based Image Compression
Wavelet based Image Compression (Contd.)
Wavelet based Image Compression (Contd.)
Morphological Image Processing
Morphological Image Processing (Contd.)
Morphological Image Processing (Contd. )
Morphological Image Processing ( Contd. )
Morphological Image Processing (Contd.)
Image Segmentation
Image Segmentation (Contd.)
Image Segmentation (Contd.)
Image Segmentation (Contd.)
Image Segmentation (Contd .)
Image Segmentation(Contd.)
106105033
Computer Science and Engineering
High Performance Computer Architecture
Prof. Ajit Pal
Video
IIT Kharagpur
Select
Introduction and Course Outline
Performance
Instruction Set Architecture
MIPS ISA Processor
MIPS ISA Processor (Contd.)
Pipelining Introduction
Instruction Pipelining
Pipeline Hazards
Data Hazards
Software Pipelining
In Quest of Higher ILP
In Quest of Higher ILP (Contd.)
Dynamic Instruction Scheduling
Dynamic Instruction Scheduling (Contd.)
Control Hazards
Branch Prediction
Branch Prediction (Contd.)
Dynamic Instruction Scheduling with Branch Prediction
Hardware Based Speculation
Tutorial - I
Hierarchical Memory Organization
Hierarchical Memory Organization (Contd.)
Hierarchical Memory Organization (Contd.)
Hierarchical Memory Organization (Contd.)
Cache Optimization Techniques (Contd.)
Cache Optimization Techniques (Contd.)
Main Memory Organization
Main Memory Optimizations
Virtual Memory
Virtual Memory (Contd.)
Virtual Machines
Storage Technology
Storage Technology (Contd.)
Case Studies
Case Studies (Contd.)
Case Studies (Contd.)
Multithreading and Multiprocessing
Simultanoues Multithreading
Symmetric Multiprocessors
Distributed Memory Multiprocessors
Cluster, Grid and Cloud Computing
106105034
Computer Science and Engineering
Low Power VLSI Circuits & Systems
Prof. Ajit Pal
Video
IIT Kharagpur
Select
Introduction & Course Outline
MOS Transistors - I
MOS Transistors - II
MOS Transistors - III
MOS Transistors - IV
MOS Inverters - I
MOS Inverters - II
MOS Inverters - III
MOS Inverters - IV
Static CMOS Circuits - I
Static CMOS Circuits -II
MOS Dynamic Circuits -I
MOS Dynamic Circuits -II
Pass Transistor Logic Circuits - I
Pass Transistor Logic Circuits - II
MOS Memories
Finite State Machines
Switching Power Dissipation
Tutorial - I
Dynamic Power Dissipation
Leakage Power Dissipation
Supply Voltage Scaling - I
Supply Voltage Scaling - II
Supply Voltage Scaling - III
Supply Voltage Scaling - IV
Tutorial - II
Minimizing Switched Capacitance - I
Minimizing Switched Capacitance - II
Minimizing Switched Capacitance - III
Minimizing Switched Capacitance - IV
Minimizing Switched Capacitance - V
Minimizing Leakage Power - I
Minimizing Leakage Power - II
Minimizing Leakage Power - III
Variation Tolerant Design
Adiabatic Logic Circuits
Battery-Driven System Design
CAD Tools for Low Power
Tutorial - III
Course Summary
106105036
Computer Science and Engineering
Real Time Systems
Prof. Rajib Mall
Video
IIT Kharagpur
Select
Introduction
Real - Time System Characteristics
Few Basic Issues
Modelling Timing Constraints
Modelling Timing Constraints (Contd.)
Basics of Real - Time Task Scheduling
Cyclic Scheduler
Event - Driven Scheduling
Rate Monotonic Scheduler
RMA Scheduling : Further Issues
Deadline Monotonic Scheduling and Other Issues
Few Issues in Use of RMA
Resource Sharing Among Real-Time Tasks
Highest Locker and Priority Ceiling Protocols
An Analysis of Priority Ceiling Protocol
Handling Task Dependencies
Real-Time Task Scheduling on Multiprocessors and Distributed Systems
Real-Time Task Scheduling on Multiprocessors and Distributed Systems (Contd.)
Clock Synchronization in Distributed Real-Time Systems
Internal Clock Synchronization in Presence of Byzantine Clocks
A Few Basic Issues in Real-Time Operating Systems
Tutorial - I
A Few Basic Issues in Real-Time Operating Systems (Contd.)
Unix and Windows as RTOS
Real - Time POSIX
Real - Time POSIX (Contd.)
Open Source and Commercial RTOS
Open Source and Commercial RTOS (Contd.)
Benchmarking Real - Time Computer & Operating Systems
Benchmarking Real - Time Computer & Operating Systems (Contd.)
Real - Time Communications
Few Basic Issues in Real - Time Communications
Review of Computer Networking
Real - Time Communication in a LAN
Real - Time Communication in a LAN (Contd.)
Performance of Two Real -Time Communication Protocols
Real - Time Communication over Packet Switched Networks
Real - Time Communication over Packet Switched Networks (Contd.)
Real - Time Communication over Packet Switched Networks (Contd.)
Real - Time Databases
106105077
Computer Science and Engineering
Artificial Intelligence
Prof. Anupam Basu
Video
IIT Kharagpur
Select
Introduction to Artificial Intelligence
Intelligent Agents
State Space Search
Uninformed Search
Informed Search
Informed Search - 2
Two Players Games - I
Two Players Games - II
Constraint Satisfaction Problems - 1
Constraint Satisfaction Problems 2
Knowledge Representation and Logic
Interface in Propositional Logic
First Order Logic
Reasoning Using First Order Logic
Resolution in FOPL
Rule Based System
Rule Based Systems II
Semantic Net
Reasoning in Semantic Net
Frames
Planning - 1
Planning - 2
Planning - 3
Planning - 4
Rule Based Expert System
Reasoning with Uncertainty - I
Reasoning with Uncertainty - II
Reasoning with Uncertainty III
Reasoning with Uncertainty - IV
Fuzzy Reasoning - I
Fuzzy Reasoning - II
Introduction to Learning - I
Introduction to Learning - II
Rule Induction and Decision Trees - I
Rule Induction and Decision Trees - II
Learning Using neural Networks - I
Learning Using Neural Networks - II
Probabilistic Learning
Natural Language Processing - I
Natural Language Processing II
106105078
Computer Science and Engineering
Artificial Intelligence
Prof. S. Sarkar
Web
IIT Kharagpur
Select
Introduction to AI
Introduction to Agent
Introduction to State Space Search Version two
Uninformed Search
Informed Search Strategies-I
Informed Search Strategies-II
Adversarial Search
Two agent games : alpha beta pruning
Constraint satisfaction problems - I
Constraint satisfaction problems - II
Propositional Logic
Propositional Logic inference rules
First Order Logic - I
First Order Logic - II
Inference in FOL - I
Inference in FOL - II
Rule based Systems - I
Rule based Systems - II
Semantic nets
Frames - I
Frames II
Logic based planning
Planning systems
Planning algorithm - I
Planning algorithm - II
Reasoning with Uncertain information
Probabilistic Inference
Bayes Networks
A Basic Idea of Inferencing with Bayes Networks
Other Paradigms of Uncertain Reasoning
Fuzzy Set Representation
Fuzzy Reasoning - Continued
Learning : Introduction
Learning From Observations
Rule Induction and Decision Tree - I
Rule Induction and Decision Tree - II
Learning and Neural Networks - I
Neural Networks - II
Neural Networks - III
Issues in NLP
Parsing
106105079
Computer Science and Engineering
Artificial Intelligence(Prof.P.Dasgupta)
Prof. P. Dasgupta
Video
IIT Kharagpur
Select
Introduction to Artificial Intelligence
Problem Solving by Search
Searching with Costs
Informed State Space Search
Heuristic Search: A* and Beyond
Problem Reduction Search: AND/OR Graphs
Searching Game Trees
Knowledge Based Systems: Logic and Deduction
First Order Logic
Inference in First Order Logic
Resolution - Refutation Proofs
Resolution Refutation Proofs
Logic Programming : Prolog
Prolog Programming
Prolog: Exercising Control
Additional Topics
Introduction to Planning
Partial Order Planning
GraphPLAN and SATPlan
SATPlan
Reasoning under uncertainty
Bayesian Networks
Reasoning with Bayes Networks
Reasoning with Bayes networks (Contd.)
Reasoning under uncertainty: Issues
Learning : Decision Trees
Learning : Neural Networks
Back Propagation Learning
106105080
Computer Science and Engineering
Computer Networks
Prof. Ajit Pal
Web
IIT Kharagpur
Select
Introduction and Course Outline
Layered Network Architecture
Data and Signal
Transmission Media
Transmission Impairments and Channel Capacity
Transmission of Digital Signal
Analog Data to Analog Signal
Digital Data, Analog Signals
Multiplexing of Signals
Interfacing to the media and synchronization
Error Detection and Correction
Flow Control and Error Control
HDLC
Switching Techniques: Circuit Switching
Switching Techniques: Circuit Switching
Synchronous Optical Network (SONET)
X.25
Frame Relay
Asynchronous Transfer Mode Switching (ATM)
Network Topology
Medium Access Control (MAC) Techniques
IEEE CSMS/CD based LANs
IEEE Ring LANs
High Speed LANs ? Token Ring Based
High Speed LANs ? CSMA/CD based
Wireless LANs
Bluetooth
Cellular Telephone Networks
Satellite Networks
Internetworking Devices
Internet Protocol (IP)
Transport and Application Layer Protocols
Basics of Routing
RIP ? Routing Information Protocol
Open Shortest Path First (OSPF)
Border Gateway Protocol (BGP)
Congestion Control
Cryptography
Secured Communication
Firewalls
106105081
Computer Science and Engineering
Computer Networks
Prof. Sujoy Ghosh
Video
IIT Kharagpur
Select
Emergence of Networks & Reference Models
Network Topology
Physical Medium - I
Physical Medium - II
Multiplexing (Sharing a Medium)
Telecom Networks
Switches - I
Pocket Switches
SONET/SDH
Fiber Optic Components
Routing and Wavelength Assignment
Protection and Restoration
Multiple Access
Token Based Mac
Data Link Protocols
Error Control
Stop & Wait Protocol
Satellite Communication
Ethernet - CSMA/CD
Modern Ethernet
Local Internetworking
Cellular Networks
Wireless Network
ATM : Asynchronous Transfer Mode
ATM Signaling, Routing and LAN Emulation
Introduction to Routing
RIP - Distance Vector Routing
IP version 4
IP Version 6 & Mobile IP
UDP & Client Server
TCP
IP Multicasting
DHCP and ICMP
DNS & Directory
Congestion Control
QOS & Multimedia
Network Management
Security
FTP - SMTP
HTTP
106105082
Computer Science and Engineering
Data Communication
Prof. Ajit Pal
Video
IIT Kharagpur
Select
Introduction and Course Outline - Data Communication
Layered Architecture
Data and Signal
Transmission Impairments and Channel Capacity
Guided Transmission Media
Unguided Media
Transmission of Digital Signal - I
Transmission of Digital Signal - II
Transmission of Analog Signal - I
Transmission of Analog Signal - II
Multiplexing
Multiplexing
Multiplexing Applications - I
Multiplexing Applications - II
Interfacing to the Media
Error Detection and Correction
Flow and Error Control
Data Link Control
Switching Techniques Circuit Switching
Switching Techniques Packet Switching
Routing - I
Routing - II
Congestion Control
X.25 and Frame Relay
ATM
Medium Access Control - I
Medium Access Control - II
Medium Access Control - III
IEEE 802 LANs
High Speed LANs
Wireless LANs
Cellular Telephone Systems
Satellite Communications
Internet and Internetworking
TCP/IP - I
TCP/IP - II
Multimedia Networks
Audio and Video Compression
Multimedia Services
Secured Communication - I
Secured Communication - II
106105083
Computer Science and Engineering
Electronic Design Automation
Prof. Indranil Sengupta
Video
IIT Kharagpur
Select
Introduction
Verilog: Part - I
Verilog: Part - II
Verilog: Part - III
Verilog: Part - IV
Verilog: Part - V
Verilog: Part - VI
Synthesis: Part - I
Synthesis: Part - II
Synthesis: Part - III
Synthesis: Part - IV
Synthesis: Part - V
Synthesis: Part - VI
Synthesis: Part - VII
Backend Design: Part - I
Backend Design: Part - II
Backend Design: Part - III
Backend Design: Part - IV
Backend Design Part - V
Backend Design Part - VI
Backend Design Part - VII
Backend Design Part - VIII
Backend Design Part - IX
Backend Design Part - X
Backend Design Part - XI
Backend Design Part - XII
Backend Design Part - XIII
Backend Design Part - XIV
Backend Design Part - XV
Testing Part - I
Testing Part - II
Testing Part - III
Testing Part - IV
Testing Part - V
Testing Part - VI
106105084
Computer Science and Engineering
Internet Technology
Prof. Indranil Sengupta
Video
IIT Kharagpur
Select
Introduction To Internet
Review Of Network Technologies
TCP/IP - Part-1
TCP/IP-Part-II
TCP/IP-Part-III
IP Subnetting and Addressing
Internet Routing Protocol Part -I
Internet Routing Protocol- Part-II
Client Server Concepts DNS,Telnet,Ftp
Electronic Mail
World Wide Web Part-I
World Wide Web - Part-II
HTML-Part-I
HTML-Part-II
HTML-Part-III
Extensible Markup Language (XML)
Html Forms
Image Maps
CGI Scripts
Other Technologies
PERL Part-I
PERL - Part II
PERL-Part III
PERL-Part IV
Javascript -Part :I
Javascript Examples (Continued)
Using Cookies
Java Applets -Part:I
Java Applets - Part:2
Client-Server Programming In Java
Intranet, Extranet,Firewall
Basic Cryptographic Concepts Part - I
Basic Cryptographic Concepts Part - II
Basic Cryptographic Concepts Part - III
Electronic Commerce
Streaming Multimedia Applications
Internet Telephony
Search Engine And Web Crawler - Part-I
Search Engine And Web Crawlers: Part-II
Course Summary And Conclusion
106105085
Computer Science and Engineering
Programming and Data Structure
Dr. P.P.Chakraborty
Video
IIT Kharagpur
Select
Introduction
C Programming - I
C Programming - II
C Programming - III
Data Structuring: Case Study - I
Data Structuring: Case Study - II
Data Structuring: Case Study - III
Problem Decomposition By Recursion - I
Problem Decomposition By Recursion - II
Problem Decomposition By Recursion - III
Merge sort And Quick sort
Characters And Strings
Arrays: Addresses And Contents
Structures - I
Structures - II
Dynamic Allocation Part - I
Linked Lists - I
Complexity (Efficiency) of Algorithms
Asymptotic Growth Functions
Asymptotic Analysis of Algorithms
Data Structuring
Search Trees
Search Trees - II
Search Trees - III
2-3 Trees
Algorithm Design - I
Algorithm Design - II
Algorithm Design - III
Graphs - I
Graphs - II
Graphs - III
Conclusions
106105086
Computer Science and Engineering
Real Time Systems
Prof. Rajib Mall
Web
IIT Kharagpur
Select
Introduction
Real-Time Task Scheduling
Handling Resource Sharing and Dependencies Among Real-Time Tasks
Scheduling Real-Time Tasks in Multiprocessor and Distributed Systems
Commercial Real-Time Operating Systems
Real-Time Communication
Real-Time Databases
106105087
Computer Science and Engineering
Software Engineering
Prof. Rajib Mall
Web
IIT Kharagpur
Select
Basic Issues in Software Engineering
Structured Programming
Basics of Software Life Cycle and Waterfall Model
Prototyping and Spiral Life Cycle Models
Basic concepts in Requirements Analysis and Specification
Formal Requirements Specification
Algebraic Specification
Basic Concepts in Software Design
An Overview of Current Design Approaches
Data Flow Diagrams
DFD Model of a System
Structured Design
Structured Design
Basic Ideas on UML
Use Case Model
Class and Interaction diagrams
Activity and State Chart Diagram
Design Patterns
Domain Modeling
Basic Concepts in User Interface Design
Types of User Interfaces
Component-Based GUI Development
Code Review
Black-Box Testing
White-Box Testing
Debugging, Integration and System Testing
Project Planning and Project Estimation Techniques
COCOMO Model
Staffing Level Estimation and Scheduling
Organization and Team Structures
Risk Management and Software Configuration Management
Software Reliability Issues
Statistical Testing and Software Quality Management
ISO 9000
SEI CMM
Characteristics of Software Maintenance
Basic Ideas on CASE Tools
Different Characteristics of CASE Tools
Basic Ideas on Software Reuse
Reuse Approach
Basic Ideas on Client-Server Software Development and Client-Server Architecture
CORBA and COM/DCOM
106105150
Computer Science and Engineering
NOC:Software Testing
Prof. Rajib Mall
Video
IIT Kharagpur
Select
Lecture 04 : Basic Concepts in Testing (Contd.)
Lecture 05 : Unit Testing
Lecture 14: Dataflow and Mutation Testing
Lecture 13: Path Testing
Lecture 6: Equivalence and BV Testing
Lecture 7: Special Value Testing
Lecture 8: Combinatorial Testing
Lecture 9: Pairwise Testing
Lecture 10: White Box Testing
Lecture 11: MC/DC Testing
Lecture 12: MC/DC Testing (Contd.)
Lecture 02 : Levels of Testing
Lecture 01 : Introduction
Lecture 15: Mutation Testing
Lecture 16: Integration Testing
Lecture 17: System Testing
Lecture 18: Regression Testing
Lecture 19: Testing Object-Oriented Program - Part 1
Lecture 20: Testing Object-Oriented Program - Part 2
Lecture 03 : Basic Concepts in Testing
106105151
Computer Science and Engineering
NOC:Programming in C++
Prof. Partha Pratim Das
Video
IIT Kharagpur
Select
Module 40 : Closing Comments (Lecture 56)
Module 28 : Dynamic Binding (Polymorphism) : Part III (Lecture 43)
Module 29 : Dynamic Binding (Polymorphism) Part IV (Lecture 44)
Module 30 : Dynamic Binding (Polymorphism) : Part V (Lecture 45)
Module 31: Virtual Function Table (Lecture 46)
Module 32: Type casting and cast operators : Part I (Lecture 47)
Module 33: Type casting and cast operators : Part II (Lecture 48)
Module 34: Type casting and cast operators : Part III (Lecture 49)
Module 16: Static Members (Lecture 31)
Module 17: friend Function and friend Class (Lecture 32)
Module 18: Overloading Operator for User Defined Types: Part - I (Lecture 33)
Module 19: Overloading Operator for User Defined Types: Part - II (Lecture 34)
Module 20: Namespace (Lecture 35)
Module 21: Inheirtnace : Part I (Lecture 36)
Module 22: Inheritance : Part II (Lecture 37)
Module 23: Inheritance : Part III (Lecture 38)
Module 24: Inheritance : Part IV (Lecture 39)
Module 25: Inheritance : Part V (Lecture 40)
Module 26 : Dynamic Binding : Part I (Lecture 41)
Module 27: Dynamic Binding (Polymorphism) : Part II (Lecture 42)
Module 01: Recap of C (Lecture 02)
Module 02: Programs with IO and Loop (Lecture 04)
Module 01: Recap of C (Lecture -03)
Module 06: Constants and Inline Functions(Lecture 08)
Module 05: Stack and its Applications (Lecture 07)
Module 06: Constants and Inline Functions (Contd.) (Lecture 09)
Module 07 : Reference and Pointer ( Lecture 10)
Module 07: Reference and Pointer (Contd.) ( Lecture 11)
Module 08: Default Parameters and Function Overloading (Contd.) (Lecture 13)
Module 09: Operator Overloading (Contd.) (Lecture 16)
Module 10: Dynamic Memory Management (Lecture 17)
Module 10: Dynamic Memory Management (Contd.) (Lecture 18)
Module 38 : Template (Function Template) : Part I (Lecture 54)
Module 14: Copy Constructor and Copy Assignment Operator (Contd.) (Lecture 27)
Module 14: Copy Constructor and Copy Assignment Operator (Contd.) (Lecture 28)
Module 15: Const-ness (Lecture 29)
Module 15 : Const-ness (Contd.) (Lecture 30)
Module 13: Constructors, Destructors and Object Lifetime (Contd.) (Lecture 25)
Module 14: Copy Constructor and Copy Assignment Operator (Lecture 26)
Module 1: Recap of C (Lecture 01)
Module 35: Multiple Inheritance (Lecture 50)
Module 39 : Template (Function Template) : Part II (Lecture 55)
Module 37 : Exceptions (Error Handling in C) : Part II (Lecture 53)
Module 36: Exceptions (Error Handling in C) : Part I (Lecture 52)
Module 35: Multiple Inheritance (Contd.) (Lecture 51)
Module 09: Operator Overloading (lecture 15)
Module 08: Default Parameters and Function Overloading (Contd.) (Lecture 14)
Module 08: Default Parameters and Function Overloading (Lecture 12)
Module 03: Arrays and Strings (Lecture 05)
Module 04 : Sorting and Searching (Lecture 06)
Module 11: Classes and Objects (Lecture 19)
Module 11 Classes and Objects (Contd.) (Lecture 20)
Module 12: Access Specifiers (Lecture 21)
Module 12 : Access Specifiers (Contd.) (lecture 22)
Module 13 : Constructors, Destructors and Object Lifetime (Lecture 23)
Module 13: Constructors, Destructors and Object Lifetime (Contd.) (Lecture 24)
106105152
Computer Science and Engineering
NOC:Introduction to Machine Learning
Prof. S. Sarkar
Video
IIT Kharagpur
Select
Lecture 18: Bayesian Learning
Lecture 17: Tutorial III
Lecture 16: Python Exercise on kNN and PCA
Lecture 15: Collaborative Filtering
Lecture 14: Feature Extraction
Lecture 13: Feature Selection
Lecture 24: Introduction Support Vector Machine
Lecture 25: SVM : The Dual Formulation
Lecture 04: Evaluation and Cross-Validation
Lecture 37: Sample Complexity : Finite Hypothesis Space
Lecture 26: SVM : Maximum Margin with Noise
Lecture 28: SVM : Solution to the Dual Problem
Lecture 29: Python Exercise on SVM
Lecture 30: Introduction
Lecture 31: Multilayer Neural Network
Lecture 32 : Neural Network and Backpropagation Algorithm
Lecture 03: Hypothesis Space and Inductive Bias
Lecture 33: Deep Neural Network
Lecture 27: Nonlinear SVM and Kernel Function
Lecture 22: Tutorial IV
Lecture 21: Python Exercise on Naive Bayes
Lecture 20 : Bayesian Network
Lecture 19: Naive Bayes
Lecture 12: k-Nearest Neighbour
Lecture 36: Introduction to Computational Learning Theory
Lecture 34: Python Exercise on Neural Network
Lecture 35: Tutorial VI
Lecture 38: VC Dimension
Lecture 02: Different Types of Learning
Lecture 23 : Logistic Regression
Lecture 44: Python Exercise on kmeans clustering
Lecture 39 : Introduction to Ensembles
Lecture 40 : Bagging and Boosting
Lecture 41 : Introduction to Clustering
Lecture 42 : Kmeans Clustering
Lecture 43: Agglomerative Hierarchical Clustering
Tutorial I
Tutorial II
Lecture 9: Python Exercise on Decision Tree and Linear Regression
Lecture 08 : Overfitting
Lecture 05 : Linear Regression
Lecture 06 : Introduction to Decision Trees
Lecture 07 : Learning Decision Tree
Lecture 01: Introduction
106105153
Computer Science and Engineering
NOC:Object-Oriented Analysis and Design
Prof. Partha Pratim Das
Video
IIT Kharagpur
Select
Module 37 : State Machine Diagrams : Part II (Lecture 49)
Module 36 : State Machine Diagrams : Part I (Lecture 48)
Lecture 29: Identification of Classes, Objects and Relationship in LMS
Lecture 04: Structure and Attributes of a Complex System
Lecture 03: Complexity of Software (Contd.)
Lecture 02 : Complexity of Software
Module 29: Sequence Diagrams : Part 1 (Lecture 41)
Module 08: Elements of Object Model (Major) : Abstraction and Encapsulation (Lecture 12)
Module 15: How to Build Quality Classes and Objects (Lecture 26)
Lecture 27: Tutorial : LMS
Lecture 28: How to Identify Classes and Objects ?
Module 13: Nature of a class : Interface and Implementation (Contd.) (Lecture 23)
Module 14: Relationships among classes (Lecture 24)
Module 14: Relationships among classes (Contd.) (Lecture 25)
Module 12: Relationships among objects (Lecture 20)
Module 12: Relationships among objects (Contd.) (Lecture 21)
Module 13: Nature of a class: Interface and Implementation (Lecture 22)
Module 11: Nature of an object : State, Behavior and Identity (Lecture 18)
Module 11: Nature of an object: State, Behavior and Identity (Contd.) (Lecture 19)
Module 10: Elements of the Object Model (Minor) : Typing, Concurrency and Persistence (Contd.) (Lecture 17)
Module 10: Elements of the Object Model (Minor) : Typing, Concurrency and Persistence (Lecture 16)
Module 09: Elements of the Object Model (Major) : Modularity and Hierarchy (Contd.) (Lecture 15)
Module 08: Elements of Object Model (Major) : Abstraction and Encapsulation (Contd.)(Lecture 13)
Lecture 05: Structure and Attributes of a Complex System (Contd.)
Module 07: Foundations of the Object Model - OOA, OOD and OOP (Contd.) (Lecture 11)
Module 25: Use-Case Diagrams : Part III (Lecture 37)
Module 21: Overview of UML (Lecture 33)
Module 22: SDLC Phases and UML Diagrams (Lecture 34)
Module 23: Use-Case Diagrams : Part I (Lecture 35)
Module 24: Use-Case Diagrams : Part II (Lecture 36)
Lecture 32: Identification of Classes, Objects and Relationship in LMS (Contd.)
Lecture 30: Identification of Classes, Objects and Relationship in LMS (Contd.)
Module 26: Class Diagrams : Part 1 (Class, Property and Operation) (Lecture 38)
Module 27 : Class Diagrams : Part 2 (Association, Weak and Strong Aggregation) (Lecture 39)
Module 28: Class Diagrams : Part 3 (Generalization, Dependency and Constraints) (Lecture 40)
Lecture 31: Identification of Classes, Objects and Relationship in LMS (Contd.)
Module 35: Interaction Overview Diagram (Lecture 47)
Module 34: Activity Diagrams : Part III (Lecture 46)
Module 33: Activity Diagrams : Part II (Lecture 45)
Module 32: Activity Diagrams : Part II (Lecture 44)
Module 31 : Communication Diagram (Lecture 43)
Module 30 : Sequence Diagrams : Part 2 (Lecture 42)
Module 07: Foundations of the Object Model - OOA, OOD and OOP (Lecture 10)
Module 09: Elements of the Object Model (Major) : Modularity and Hierarchy (Lecture 14)
Module 06: Evolution of Object Models - Programming Languages and Paradigms (Lecture 09)
Lecture 08: Bringing Order to Chaos (Contd.)
Lecture 07 : Bringing Order to Chaos
Lecture 06: Object-Oriented Analysis and Design
Lecture 01: Challanges in Software Engineering
Module 38 : State Machine Diagrams : Part III (Lecture 50)
Module 39 : Various UML Diagrams (Lecture 51)
Module 40 : Closing Comments (Lecture 52)
106105154
Computer Science and Engineering
NOC:Complex Network : Theory and Application
Prof. Animesh Mukherjee
Video
IIT Kharagpur
Select
Lecture 20: Citation Analysis - III
Lecture 21: Citation Analysis - IV
Lecture 19: Citation Analysis - II
Lecture 18: Citation Analysis - I
Lecture 17: Community Analysis - VI
Lecture 16: Community Analysis - V
Lecture 15: Community Analysis - IV
Lecture 14: Community Analysis - III
Lecture 13: Community Analysis - II
Lecture 12: Community Analysis - I
Lecture 11: Social Network Principles - IV
Lecture 10: Social Network Principles - III
Lecture 9: Social Network Principles - II
Lecture 8: Social Network Principles - I
Lecture 7: Network Analysis - VI
Lecture 6: Network Analysis - V
Lecture 5: Network Analysis - IV
Lecture 4: Network Analysis - III
Lecture 3: Network Analysis - II
Lecture 2: Network Analysis - I
Lecture 1: Introduction
106105157
Computer Science and Engineering
Fundamental Algorithms:Design and Analysis
Prof.Sourav Mukhopadhyay
Video
IIT Kharagpur
Select
Lecture 08: Order Statistics
Lecture 12: Augmenting Data Structure
Lecture 11: Red-Black Tree
Lecture 10: Universal Hashing, BST Sort
Lecture 09: Hashing
Lecture 14: Van Emde Boas Data Structure
Lecture 15: Dynamic Programming
Lecture 16 : Graph Algorithm
Lecture 05 : Heap Sort
Lecture 06: Decision Tree
Lecture 07: Linear Time Sorting
Lecture 17 : BFS and DFS
Lecture13: Computational Geometry
Lecture 04: Quick Sort
Lecture 03: Divide and Conquer Paradigm
Lecture 02: Solving Recurrences
Lecture 01 : Insertion Sort and Asymptotic Analysis
Lecture 18 : Dijkstra
Lecture 19 : Bellman Ford
Lecture 20 : Floyd Marshall
106105158
Computer Science and Engineering
NOC:Natural Language Processing
Prof. Pawan Goyal
Video
IIT Kharagpur
Select
Lecture 44 : Gibbs Sampling for LDA, Applications
Lecture 45 : LDA Variants and Applications - I
Lecture 28 : Transition Based Parsing : Formulation
Lecture 29 : Transition Based Parsing : Learning
Lecture 30 : MST-Based Dependency Parsing
Lecture 22: Syntax - Introduction
Lecture 24: Syntax - CKY, PCFGs
Lecture 25: PCFGs - Inside-Outside Probabilities
Lecture 26: Inside-Outside Probabilities
Lecture 49 : Information Extraction - Introduction
Lecture 50 : Relation Extraction
Lecture 41 : Novel Word Sense detection
Lecture 42 : Topic Models : Introduction
Lecture 43 :Latent Dirichlet Allocation : Formulation
Lecture 4: Empirical Laws
Lecture 5: Text Processing: Basics
Lecture 6: Spelling Correction: Edit Distance
Lecture 7: Weighted Edit Distance, Other Variations
Lecture 64 : Computing with Affective Lexicons
Lecture 65 : Aspect - Based Sentiment Analysis
Lecture 48 : Entity Linking - II
Lecture 39 : Word Sense Disambiguation - I
Lecture 58 : Tutorial III
Lecture 55 : Text Classification - I
Lecture 56 : Text Classification - II
Lecture 54 : Summarization Evaluation
Lecture 53 : Optimization based Approaches for Summarization
Lecture 52 : Text Summarization - LEXRANK
Lecture 34: Distributional Semantics : Applications, Structured Models
Lecture 63 : Learning Affective Lexicons
Lecture 62 : Sentiment Analysis - Affective Lexicons
Lecture 61 : Sentiment Analysis - Introduction
Lecture 60 : Tutorial V
Lecture 59 : Tutorial IV
Lecture 57 : Tutorial II
Lecture 47 : Entity Linking - I
Lecture 40 : Word Sense Disambiguation - II
Lecture 32: Distributional Semantics - Introduction
Lecture 27: Dependency Grammars and Parsing - Introduction
Lecture 15: Introduction to POS Tagging
Lecture 1: Introduction to the Course
Lecture 46:LDA Variants and Applications - II
Lecture 16: Hidden Markov Models for POS Tagging
Lecture 17: Viterbi Decoding for HMM, Parameter Learning
Lecture 18: Baum Welch Algorithm
Lecture 19: Maximum Entropy Models - I
Lecture 20: Maximum Entropy Models - II
Lecture 21: Conditional Random Fields
Lecture 9 : N-Gram Language Models
Lecture 10: Evaluation of Language Models, Basic Smoothing
Lecture 11: Tutorial I
Lecture 12: Language Modeling: Advanced Smoothing Models
Lecture 13: Computational Morphology
Lecture 14: Finite - State Methods for Morphology
Lecture 38: Lexical Semantics - Wordnet
Lecture 36 : Word Embeddings - Part II
Lecture 31: MST-Based Dependency Parsing : Learning
Lecture 35: Word Embeddings - Part I
Lecture 33: Distributional Models of Semantics
Lecture 8: Noisy Channel Model for Spelling Correction
Lecture 2: What Do We Do in NLP
Lecture 3: Why is NLP hard
Lecture 23: Syntax - Parsing I
Lecture 37: Lexical Semantics
Lecture 51 : Distant Supervision
106105159
Computer Science and Engineering
NOC:Embedded Systems Design
Prof. Anupam Basu
Video
IIT Kharagpur
Select
Lecture 30 : Priority Inversion and Priority Inheritance Protocol
Lecture 49 : Formal Verification
Lecture 48 : Simulation
Lecture 46 : Optimization - I
Lecture 44 : Digital Camera - Iterative Design
Lecture 45 : HW-SW Partitioning
Lecture 35 : Statecharts (Contd.)
Lecture 36 : Program State Machines
Lecture 2: Processors
Lecture 3: General Purpose and ASIPs Processor
Lecture 4: Designing a Single Purpose Processor
Lecture 5: Optimization Issues
Lecture 6: Introduction to FPFA
Lecture 7: FPGA Contd.
Lecture 8: Behaviour Synthesis on FPGA using VHDL
Lecture 9: Tutorial - I
Lecture 10: Tutorial - II
Lecture 11: Tutorial - III
Lecture 12: Tutorial - IV
Lecture 13: Sensors and Signals
Lecture 14: Discretization of Signals and A/D Converter
Lecture 15: Quantization Noise, SNR and D/A Converter
Lecture 16: Arduino Uno
Lecture 17: Arduino Uno (Contd.), Serial Communication and Timer
Lecture 41 : Hardware Synthesis - II
Lecture 39 : Data Flow Model - II
Lecture 40 : Hardware Synthesis - I
Lecture 47 : Optimization - II
Lecture 43 : Digital Camera Design
Lecture 42 : Scheduling
Lecture 34 : Statechart and Statemate Semantics
Lecture 21: Power Aware Embedded System - II
Lecture 18: Controller Design using Arduino
Lecture 1: Introduction
Lecture 23: Parallel Operations and VLIW
Lecture 24: Code Efficiency
Lecture 25: DSP Application and Address Generation Unit
Lecture 26: Real Time O.S - I
Lecture 22: SD and DD Algorithm
Lecture 33 : FSM and Statechart
Lecture 19: Tutorial - V
Lecture 20:Power Aware Embedded System - I
Lecture 29 : EDF Algorithm and Resource Constraint Issue
Lecture 28: RMS Algorithm
Lecture 37 : SDL
Lecture 38 : Data Flow Model - I
Lecture 27: Real Time O.S - II
Lecture 31 : Modeling and Specification - I
Lecture 32 : Modeling and Specification - II
106105160
Computer Science and Engineering
NOC:Wireless Ad Hoc and Sensor Networks
Prof. Sudip Misra
Video
IIT Kharagpur
Select
Lecture 36 : Underwater Sensor Networks- Part- IV
Lecture 35: Underwater Sensor Networks- Part- III
Lecture 10: Routing in MANETs- Part- III
Lecture 8: Routing in MANETs- Part- I
Lecture 29: Routing in Wireless Sensor Networks- Part- I
Lecture 30: Routing in Wireless Sensor Networks- Part- II
Lecture 31: Congestion and Flow Control- Part- I
Lecture 32: Congestion and Flow Control- Part- II
Lecture 16: Opportunistic Mobile Networks- Part- II
Lecture 17: Opportunistic Mobile Networks- Part- III
Lecture 18: UAV Networks- Part- I
Lecture 19: UAV Networks- Part- II
Lecture 20: UAV Networks- Part- III
Lecture 21: Introducation: Wireless Sensor Networks- Part- I
Lecture 22: Introducation: Wireless Sensor Networks- Part- II
Lecture 33: Underwater Sensor Networks- Part- I
Lecture 27: Medium Access Control in Wireless Networks- Part-I
Lecture 23: WSN Coverage & Placement- Part-I
Lecture 24: Topology Mangement in Wireless Sensor Network
Lecture 25: Mobile Wireless Sensor Networks
Lecture 26: Mobile Wireless Sensor Networks
Lecture 7: MAC Protocols in MANETs- Part- II
Lecture 11: Multicasting in MANETs
Lecture 12: Mobility Models for MANETs
Lecture 13: Transport Protocols for MANETs- Part- I
Lecture 14: Transport Protocols for MANETs- Part- II
Lecture 15: Opportunistic Mobile Networks- Part- I
Lecture 5: Cooperation in Mobile Ad Hoc Networks- Part- II
Lecture 9: Routing in MANETs- Part- II
Lecture 6: MAC Protocols in MANETs- Part- I
Lecture 4: Cooperation in Mobile Ad Hoc Networks- Part- I
Lecture 3: Self-organizing Behaviour of Wireless Ad Hoc Networks
Lecture 2: Introduction: Wireless Ad Hoc Networks- Part- II
Lecture 34: Underwater Sensor Networks- Part- II
Lecture 28: Medium Access Control in Wireless Networks- Part-II
Lecture 1: Introduction: Wireless Ad Hoc Networks- Part- I
Lecture 37 : Security of Wireless Sensor Networks- Part- I
Lecture 38 : Security of Wireless Sensor Networks- Part- II
Lecture 39 : Hardware Design of Sensor Node
Lecture 40 : Real Life Deployment of WSN
106105161
Computer Science and Engineering
NOC:VLSI Physical Design
Prof. Indranil Sengupta
Video
IIT Kharagpur
Select
Lecture 41: Performance-Driven Design Flow
Lecture 45 : Design Rule Check
Lecture 46 : Layout Compaction (Part 1)
Lecture 47 : Layout Compaction (Part 2)
Lecture 48 :
Lecture 8: Floorplanning
Lecture 9: "Floorplanning Algorithms
Lecture 15: Grid Routing (Part 1)
Lecture 20 : Detailed Routing (Part 1)
Lecture 21: Detailed Routing (Part 2)
Lecture 22: Detailed Routing (Part 3)
Lecture 63 : Algorithmic Level Techniques for Low Power Design
Lecture 61 : Gate Level Design for Low Power (Part 2)
Lecture 60 : Gate Level Design for Low Power (Part 1)
Lecture 56: Built-in Self-Test (Part 1)
Lecture 55: Boundary Scan Standard
Lecture 54: Design for Testability
Lecture 53 : Test Pattern Generation
Lecture 52 :
Lecture 35: Time Closure (Part 4)
Lecture 51 :
Lecture 43 :Interconnect Modeling (Part 1)
Lecture 44 : Interconnect Modeling (Part 2)
Lecture 27: CLOCK NETWORK SYNTHESIS (PART 1)
Lecture 11: Placement (Part 1)
Lecture 12: Placement (Part 2)
Lecture 13: Placement (Part 3)
Lecture 14: Placement (Part 4)
Lecture 39: Physical Synthesis (Part 1)
Lecture 40 : Physical Synthesis (Part 2)
Lecture 25 : Clock Design (Part 2)
Lecture 29: CLOCK NETWORK SYNTHESIS (PART 3)
Lecture 64 : Summarization of the Course
Lecture 37: Timing Driven Placement
Lecture 36: Time Closure (Part 5)
Lecture 34: Time Closure (Part 3)
Lecture 32: Time Closure (Part 1)
Lecture 31: POWER AND GROUND ROUTING
Lecture 30: CLOCK NETWORK SYNTHESIS (PART 4)
Lecture 33: Time Closure (Part 2)
Lecture 28: CLOCK NETWORK SYNTHESIS (PART 2)
Lecture 19: Global Routing (Part 2)
Lecture 10: Pin Assignment
Lecture 1: Introduction
Lecture 2: Design Representation
Lecture 3: VLSI Design Styles (Part 1)
Lecture 4: VLSI Design Styles (Part 2)
Lecture 5: VLSI Physical Design Automation (Part 1)
Lecture 6: VLSI Physical Design Automation (Part 2)
Lecture 7: Partitioning
Lecture 49 :
Lecture 38: Timing Driven Routing
Lecture 50 :
Lecture 59 : Techniques to Reduce Power
Lecture 58 : Low Power VLSI Design
Lecture 57: Built-in Self-Test (Part 2)
Lecture 62 : Other Low Power Design Techniques
Lecture 26 : Clock Design (Part 3)
Lecture 24 : Clock Design (Part 1)
Lecture 16: Grid Routing (Part 2)
Lecture 17: Grid Routing (Part 3)
Lecture 23 : Detailed Routing (Part 4)
Lecture 18: Global Routing (Part 1)
Lecture 42 : Miscellaneous Approaches to Timing Optimization
106105162
Computer Science and Engineering
NOC:Cryptography And Network Security
Prof. Sourav Mukhopadhyay
Video
IIT Kharagpur
Select
Lecture 38 : Key Management.
Lecture 45 : More on Key Exchange Protocol
Lecture 22: Advanced Encryption Standard (AES) (Contd.)
Lecture 23: Introduction to Public Key Cryptosystem, Diffie-Hellman Key Exchange.
Lecture 24: Knapsack Cryptosystem.
Lecture 25: RSA Cryptosystem
Lecture 26: More on RSA
Lecture 41 : Universal Hashing.
Lecture 7: DES (Contd.).
Lecture 8: Triple DES and Modes of Operation.
Lecture 53 : Shamir's secret sharing and BE
Lecture 51 : Cryptanalysis on Stream Cipher
Lecture 50 : Linear Cryptanalysis
Lecture 35: Jacobi Symbol (Contd.)
Lecture 36: Message Authentication.
Lecture 32: Chinese Remainder Theorem
Lecture 47 : Time- Memory Trade- off Attack
Lecture 43 : Secure Hash Algorithm (SHA).
Lecture 42 : Cryptographic Hash Function
Lecture 40 : Hash Function
Lecture 44 : Digital Signature Standard (DSS)
Lecture 34: Legendre and Jacobi Symbol
Lecture 54 : Identity based Encryption (IBE)
Lecture 55 : Attribute based Encryption (ABE)
Lecture 10: Pseudorandom Sequence
Lecture 11: LFSR based Stream Cipher
Lecture 12: Mathematical background.
Lecture 13: Abstract algebra (contd.)
Lecture 14: Number Theory
Lecture 15: Modular Inverse.
Lecture 46 : Cryptanalysis
Lecture 29: Elliptic Curve over the Reals
Lecture 28: ElGamal Cryptosystem.
Lecture 27: Primarily Testing
Lecture 16: Modular Inverse
Lecture 17: Extended Euclid Algorithm
Lecture 18: Fermat's Little Theorem, Eular PhiFunction
Lecture 19: Eular's theorem, Quadratic Residue
Lecture 20: Polynomial Arithmetic.
Lecture 21: Advanced Encryption Standard (AES)
Lecture 3: Cryptanalysis on Substitution Cipher (Frequency Analysis ).
Lecture 4: Play Fair Cipher.
Lecture 5: Block Cipher
Lecture 6: Data Encryption Standard (DES).
Lecture 2: Classical Cryptosystem.
Lecture 9: Stream Cipher.
Lecture 52 : Modern Stream Ciphers
Lecture 49 : More on Differential Cryptanalysis
Lecture 48 : Time-Memory Trade-off Attack
Lecture 39 : Key Exchange
Lecture 37: Digital Signature.
Lecture 33: Rabin Cryptosystem
Lecture 31: Generalised ElGamal Public Key Cryptosystem
Lecture 30: Elliptic curve Modulo a Prime.
Lecture 1: Introduction to Cryptography.
Lecture 56:Functional Encryption
Lecture 57:Solving discrete log problem
Lecture 58:Implementation Attacks
Lecture 59:The Secure Sockets Layer
Lecture 60:Pretty Good Privacy
106105163
Computer Science and Engineering
NOC:Computer architecture and organization
Prof. Indranil Sengupta
Video
IIT Kharagpur
Select
Lecture 5 : Instruction Set Architecture
Lecture 4 : Software and Architecture Types
Lecture 3 : Memory Addressing and Languages
Lecture 2 : Basic Operation of a Computer
Lecture 1 : Evolution of Computer Systems
Lecture 9 : MIPS32 Instruction Set
Lecture 37 : DESIGN OF DIVIDERS
Lecture 36 : DESIGN OF MULTIPLIERS (PART 2)
Lecture 35 : DESIGN OF MULTIPLIERS (PART 1)
Lecture 34 : DESIGN OF ADDERS (PART 2)
Lecture 33 : DESIGN OF ADDERS (PART 1)
Lecture 32 : IMPROVING CACHE PERFORMANCE
Lecture 31 : CACHE MEMORY (PART 2)
Lecture 30 : CACHE MEMORY (PART 1)
Lecture 29 : MEMORY HIERARCHY DESIGN (PART 2)
Lecture 28 : MEMORY HIERARCHY DESIGN (PART 1)
Lecture 25 : ASYNCHRONOUS DRAM
Lecture 21 : MIPS IMPLEMENTATION (PART 1)
Lecture 19 : DESIGN OF CONTROL UNIT (PART 3)
Lecture 18 :DESIGN OF CONTROL UNIT (PART 2)
Lecture 17 : DESIGN OF CONTROL UNIT (PART 1)
Lecture 16 : AMADAHL’S LAW (PART 2)
Lecture 14 : SUMMARIZING PERFORMANCE RESULTS
Lecture 12 : MEASURING CPU PERFORMANCE
Lecture 11 : SPIM – A MIPS32 SIMULATOR
Lecture 24 : STATIC AND DYNAMIC RAM
Lecture 15 : AMADAHL’S LAW (PART 1)
Lecture 6 : Number Representation
Lecture 10 MIPS Programming Examples
Lecture 27 :MEMORY INTERFACING AND ADDRESSING
Lecture 26 : SYNCHRONOUS DRAM
Lecture 23 : PROCESSOR MEMORY INTERACTION
Lecture 20 : DESIGN OF CONTROL UNIT (PART 4)
Lecture 13 : CHOICE OF BENCHMARKS
Lecture 48 : DIRECT MEMORY ACCESS
Lecture 49 : SOME EXAMPLE DEVICE INTERFACING
Lecture 50: EXERCISES ON I/O TRANSFER
Lecture 51 : BUS STANDARDS
Lecture 52 : BUS STANDARDS
Lecture 53: PIPELINING THE MIPS32 DATA PATH
Lecture 54: MIPS PIPELINE (Contd.)
Lecture 55: PIPELINE HAZARDS (PART 1)
Lecture 56: PIPELINE HAZARDS (PART 2)
Lecture 57: PIPELINE HAZARDS (PART 3)
Lecture 58: PIPELINE HAZARDS (PART 4)
Lecture 47 : INTERRUPT HANDLING (PART 2)
Lecture 46 : INTERRUPT HANDLING (PART 1)
Lecture 45 : DATA TRANSFER TECHNIQUES
Lecture 44 : INPUT-OUTPUT ORGANIZATION
Lecture 43 : SECONDARY STORAGE DEVICES
Lecture 42 : ARITHMETIC PIPELINE
Lecture 41 : PIPELINE SCHEDULING
Lecture 40 : BASIC PIPELINING CONCEPTS
Lecture 39 : FLOATING-POINT ARITHMETIC
Lecture 38 : FLOATING-POINT NUMBERS
Lecture 7 : Instruction Format and Addressing Modes
Lecture 8 : CISC and RISC Architecture
Lecture 59 : MULTICYCLE OPERATIONS IN MIPS32
Lecture 60 : EXPLOITING INSTRUCTION LEVEL PARALLELISM
Lecture 61 : VECTOR PROCESSORS
Lecture 62: MULTI-CORE PROCESSORS
Lecture 63 : SOME CASE STUDIES
Lecture 64 : SUMMARIZATION OF THE COURSE
106105164
Computer Science and Engineering
NOC:Introduction to algorithms and analysis
Prof. Sourav Mukhopadhyay
Video
IIT Kharagpur
Select
Lecture 56 : Network Flow (cont...)
Lecture 59 : Computational Complexity
Lecture 60 : Computational Complexity (cont...)
Lecture 58 : More on Dynamic Programming (cont...)
Lecture 52: Union-Find
Lecture 53: Augmented disjoint set data structure
Lecture 57 : More on Dynamic Programming
Lecture 54: Network flow
Lecture 48
Lecture 49
Lecture 50
Lecture 51: Disjoint set data structure
Lecture 44
Lecture 45
Lecture 46
Lecture 41
Lecture 42
Lecture 39 : Prim's Algorithms
Lecture 40 : Graph Search
Lecture 38 : Graphs
Lecture 26 : Randomly build BST
Lecture 27 : Red Black Tree
Lecture 28 : Red Black Tree (Contd.)
Lecture 29 : Augmentation of data structure
Lecture 30 : Interval trees
Lecture 31 : Fixed universe successor
Lecture 32 : Van Emde Boas data structure
Lecture 33 : Amortized analysis
Lecture 34 : Computational Geometry
Lecture 25 : Binary Search Tree (BST) Sort
Lecture 24 : Perfect Hashing
Lecture 5 : Substitution Method
Lecture 6 : The Master Method
Lecture 2 : Analysis of Insertion Sort
Lecture 3 : Asymptotic Analysis
Lecture 4 : Recurrence of Merge Sort
Lecture 43
Lecture 37 : Longest common subsequence
Lecture 55 Network Flow (contd...)
Lecture 47
Lecture 35 : Computational Geometry (cont....)
Lecture 23 : Universal Hashing
Lecture 22 : Open Addressing
Lecture 21 : Hash Function
Lecture 20 : Worst case linear time order statistics
Lecture 19 : Randomised Order Statistics
Lecture 16 : Linear time Sorting
Lecture 18 : Order Statistics
Lecture 17 : Radix Sort & Bucket Sort
Lecture 14 : Heap Sort
Lecture 15 : Decision Tree
Lecture 13 : Heap
Lecture 12 : Randomized Quicksort
Lecture 10 : QuickSort
Lecture 11 : Analysis of Quicksort.
Lecture 7 : Divide-and-Conquer
Lecture 8 : Divide-and-Conquer (Contd.)
Lecture 9 : Straseen's Algorithms
Lecture 1 : Insertion sort
Lecture 36 : Dynamic Programming
106105165
Computer Science and Engineering
NOC:Hardware modeling using verilog
Prof. Indranil Sengupta
Video
IIT Kharagpur
Select
Lecture 19:BLOCKING / NON-BLOCKING ASSIGNMENTS (PART 4)
Lecture 15: PROCEDURAL ASSIGNMENT (EXAMPLES)
Lecture 36: SWITCH LEVEL MODDELING (PART 2)
Lecture 36: SWITCH LEVEL MODDELING (PART 2)
Lecture 36: SWITCH LEVEL MODDELING (PART 2)
Lecture 35: SWITCH LEVEL MODELING (PART 1)
Lecture 35: SWITCH LEVEL MODELING (PART 1)
Lecture 35: SWITCH LEVEL MODELING (PART 1)
Lecture 34: PIPELINE MODELING (PART 2)
Lecture 34: PIPELINE MODELING (PART 2)
Lecture 34: PIPELINE MODELING (PART 2)
Lecture 33: PIPELINE MODELING (PART 1)
Lecture 33: PIPELINE MODELING (PART 1)
Lecture 33: PIPELINE MODELING (PART 1)
Lecture 32: BASIC PIPELINING CONCEPTS
Lecture 32: BASIC PIPELINING CONCEPTS
Lecture 32: BASIC PIPELINING CONCEPTS
Lecture 31: MODELING REGISTER BANKS
Lecture 31: MODELING REGISTER BANKS
Lecture 31: MODELING REGISTER BANKS
Lecture 30: MODELING MEMORY
Lecture 30: MODELING MEMORY
Lecture 30: MODELING MEMORY
Lecture 29 : SOME RECOMMENDED PRACTICES
Lecture 28 : SYNTHESIZABLE VERILOG
Lecture 27: DATAPATH AND CONTROLLER DESIGN (PART 3)
Lecture 26 : DATAPATH AND CONTROLLER DESIGN (PART 2)
Lecture 25 : DATAPATH AND CONTROLLER DESIGN (PART 1)
Lecture 7: VERILOG LANGUAGE FEATURES (PART 2)
Lecture 24 : MODELING FINITE STATE MACHINES (Contd.)
Lecture 23 : MODELING FINITE STATE MACHINES
Lecture 22 : WRITING VERILOG TEST BENCHES
Lecture 21 : VERILOG TEST BENCH
Lecture 20:USER DEFINED PRIMITIVES
Lecture 17:BLOCKING / NON-BLOCKING ASSIGNMENTS (PART 2)
Lecture 18:BLOCKING / NON-BLOCKING ASSIGNMENTS (PART 3)
Lecture 17: BLOCKING / NON-BLOCKING ASSIGNMENTS (PART 2)
Lecture 14: PROCEDURAL ASSIGNMENT (Contd.)
Lecture 13: PROCEDURAL ASSIGNMENT
Lecture 12: VERILOG DESCRIPTION STYLES
Lecture 10:VERILOG MODELING EXAMPLES
Lecture 11: VERILOG MODELING EXAMPLES (Contd)
Lecture 8: VERILOG LANGUAGE FEATURES (PART 3)
Lecture 9: VERILOG OPERATORS
Lecture 6: VERILOG LANGUAGE FEATURES (PART 1)
Lecture 5:
Lecture 1:
Lecture 2:
Lecture 3:
Lecture 4 :
Lecture 37 : PIPELINE IMPLEMENTATION OF A PROCESSOR (PART 1)
Lecture 38 : PIPELINE IMPLEMENTATION OF A PROCESSOR (PART 2)
Lecture 39 : PIPELINE IMPLEMENTATION OF A PROCESSOR (PART 3)
Lecture 40 : VERILOG MODELING OF THE PROCESSOR (PART 1)
Lecture 41 : VERILOG MODELING OF THE PROCESSOR (PART 1)
106105166
Computer Science and Engineering
NOC:Introduction to internet of things
Prof. Sudip Misra
Video
IIT Kharagpur
Select
Lecture 1 : Introduction to IoT- Part-I
Lecture 7 : Basics of IoT Networking-Part- III
Lecture 8 : Basics of IoT Networking- Part-IV
Lecture 9 : Connectivity Technologies- Part-I
Lecture 10 : Connectivity Technologies- Part-II
Lecture 11:
Lecture 12:
Lecture 13:
Lecture 14:
Lecture 15:
Lecture 16:
Lecture 17:
Lecture 18:
Lecture 19 :
Lecture 20 :
Lecture 21:
Lecture 22:
Lecture 23:
Lecture 24:
Lecture 25:
Lecture 26 : Introduction to Python Programming- I
Lecture 27 : Introduction to Python Programming- II
Lecture 4 : Actuation
Lecture 5 : Basics of IoT Networking- Part- I
Lecture 34:
Lecture 35 :
Lecture 29 : Introduction to Raspberry Pi- II
Lecture 30 : Implementation of IoT with Raspberry Pi- I
Lecture 6 : Basics of IoT Networking-Part II
Lecture 31
Lecture 32:
Lecture 28 : Introduction to Raspberry Pi- I
Lecture 3: Sensing
Lecture 2 : Introduction to IoT- Part-II
Lecture 33:
Lecture 46 : Smart Cities and Smart Homes- I
Lecture 47 : Smart Cities and Smart Homes- II
Lecture 48 : Smart Cities and Smart Homes- III
Lecture 49 : Connected Vehicles- I
Lecture 50 : Connected Vehicles- II
Lecture 51: Smart Grid- I
Lecture 52: Smart Grid- II
Lecture 53: Industrial Internet of Things- I
Lecture 54: Industrial Internet of Things- II
Lecture 55: Data Handling and Analytics- I
Lecture 56: Data Handling and Analytics- II
Lecture 56: Data Handling and Analytics- II
Lecture 56: Data Handling and Analytics- II
Lecture 57: Case Study: Agriculture
Lecture 57: Case Study: Agriculture
Lecture 57: Case Study: Agriculture
Lecture 58: Case Study: Healthcare
Lecture 58: Case Study: Healthcare
Lecture 58: Case Study: Healthcare
Lecture 59: Case Study: Activity Monitoring - I
Lecture 59: Case Study: Activity Monitoring - I
Lecture 59: Case Study: Activity Monitoring - I
Lecture 60: Case Study: Activity Monitoring - II
Lecture 60: Case Study: Activity Monitoring - II
Lecture 60: Case Study: Activity Monitoring - II
Lecture 45 : Fog Computing- II
Lecture 44 : Fog Computing- I
Lecture 43 : Sensor-Cloud- II
Lecture 42 : Sensor-Cloud- I
Lecture 41 : Cloud Computing- Practical
Lecture 40 : Cloud Computing- Case Studies
Lecture 39 : Cloud Computing-Service Management and Security
Lecture 38 : Cloud Computing-Service Model
Lecture 37 : Cloud Computing-Fundamental
Lecture 36 : Software Defined IoT Networking- II
106105167
Computer Science and Engineering
NOC:Cloud computing
Prof. Soumya Kanti Ghosh
Video
IIT Kharagpur
Select
Lecture 16
Lecture 8
Lecture 21 : SLA-Tutorial
Lecture 35:Use Case-Geo-spatial Cloud
Lecture 35:Use Case-Geo-spatial Cloud
Lecture 34: Fog Computing-II
Lecture 34: Fog Computing-II
Lecture 33: Fog Computing-I
Lecture 33: Fog Computing-I
Lecture 32: Mobile Cloud Computing -II
Lecture 32: Mobile Cloud Computing -II
Lecture 31: Mobile Cloud Computing -I
Lecture 31: Mobile Cloud Computing -I
Lecture 30; Cloud Computing: Broker for Cloud Marketplace
Lecture 29: Cloud Computing: Security Issues in Collaborative SaaS Cloud
Lecture 28: Cloud Computing: Security III
Lecture 27: Cloud Computing: Security II
Lecture 26: Cloud Computing: Security I
Lecture 25 : ResourceMgmt-II
Lecture 23 : MapReduce-Tutorial
Lecture 24 : ResourceMgmt-I
Lecture 22 : Cloudonomics-Tutorial
Lecture 17:
Lecture 18:
Lecture 19:
Lecture 20:
Lecture 9
Lecture 10
Lecture 11:
Lecture 12:
Lecture 13 :
lecture 14 :
Lecture 15 :
Lecture 5:
Lecture 6
Lecture 7
Lecture 1:
Lecture 2:
Lecture 3:
Lecture 4:
Lecture 36 : Introduction to DOCKER Container
Lecture 37 : Green Cloud
Lecture 38 : Sensor Cloud Computing
Lecture 39 : IoT Cloud
Lecture 40 : Course Summary and Research Areas
Lecture 36 : Introduction to DOCKER Container
Lecture 37 : Green Cloud
Lecture 38 : Sensor Cloud Computing
Lecture 39 : IoT Cloud
Lecture 40 : Course Summary and Research Areas
106106046
Computer Science and Engineering
Pattern Recognition
Prof. Sukhendu Das
Video
IIT Madras
Select
Principles of Pattern Recognition I (Introduction and Uses)
Principles of Pattern Recognition II (Mathematics)
Principles of Pattern Recognition III (Classification and Bayes Decision Rule)
Clustering vs. Classification
Relevant Basics of Linear Algebra, Vector Spaces
Eigen Value and Eigen Vectors
Vector Spaces
Rank of Matrix and SVD
Types of Errors
Examples of Bayes Decision Rule
Normal Distribution and Parameter Estimation
Training Set, Test Set
Standardization, Normalization, Clustering and Metric Space
Normal Distribution and Decision Boundaries I
Normal Distribution and Decision Boundaries II
Bayes Theorem
Linear Discriminant Function and Perceptron
Perceptron Learning and Decision Boundaries
Linear and Non-Linear Decision Boundaries
K-NN Classifier
Principal Component Analysis (PCA)
Fisher’s LDA
Gaussian Mixture Model (GMM)
Assignments
Basics of Clustering, Similarity/Dissimilarity Measures, Clustering Criteria.
K-Means Algorithm and Hierarchical Clustering
K-Medoids and DBSCAN
Feature Selection : Problem statement and Uses
Feature Selection : Branch and Bound Algorithm
Feature Selection : Sequential Forward and Backward Selection
Cauchy Schwartz Inequality
Feature Selection Criteria Function: Probabilistic Separability Based
Feature Selection Criteria Function: Interclass Distance Based
Principal Components
Comparison Between Performance of Classifiers
Basics of Statistics, Covariance, and their Properties
Data Condensation, Feature Clustering, Data Visualization
Probability Density Estimation
Visualization and Aggregation
Support Vector Machine (SVM)
FCM and Soft-Computing Techniques
Examples of Uses or Application of Pattern Recognition; And When to do clustering
Examples of Real-Life Dataset
106106048
Computer Science and Engineering
Performance Evaluation of Computer Systems
Prof. Krishna Moorthy Sivalingam
Video
IIT Madras
Select
Introduction to performance evaluation of computer systems
How to avoid common mistakes
Selection of techniques and metrics
Case study: Selection of techniques and metrics
Random Variables and probability distributions
Probability distributions-I
Probability distributions-II
Probability distributions-III
Stochastic process
Markov Chain
Slotted Aloha protocol model and discrete-time birth death process
Continuous time Markov chain and queuing theory-I
Queuing theory – I (Continued)
Queuing theory-II
Queuing theory-III
Queuing theory-IV
Queuing theory-V
Queuing theory-VI
Queuing networks-I
Queuing networks-II
Slotted Aloha Markov model
Simulations-I
Simulations-II
Simulations-III
Operational laws-I
Operational laws-II
Open and closed queuing networks
Approximate MVA
Convolution algorithm-I
Convolution algorithm-II
Load-dependent service centers
Hierarchical decomposition
Balanced Job Bounds
Confidence interval for propotions and introduction to experimental design
2k factorial design
2k r factorial design and 2k-p fractional factorial design
Programming aspects of discrete-event simulations-I
Programming aspects of discrete-event simulations-II
Discrete-event simulations-III
PetriNets-I
PetriNets-II
PetriNets-III
106106049
Computer Science and Engineering
Theory of Automata, Formal Languages and Computation
Prof. Kamala Krithivasan
Video
IIT Madras
Select
GRAMMARS AND NATURAL LANGUAGE PROCESSING
GRAMMARS AND LANGUAGES GENERATED
GRAMMARS AND LANGUAGES GENERATED (Contd)
AMBIGUITY IN CFG
SIMPLICATION OF CFG
REMOVAL OF UNIT PRODUCTIONS , CHOMSKY NORMAL FORM FOR CFG
GREIBACH NORMAL FORM FOR CFG
FINAL STATE AUTOMATA
NON DETERMINISTIC FSA
NON DETERMINISTIC FSA (Contd)
NON DETERMINISTIC FSA WITH E(Epsilon)- MOVES
EQUIVALENCE BETWEEN FSA AND TYPE 3 GRAMMARS
REGULAR EXPRESSIONS , REGULAR EXPRESSIONS TO NFSA
DFSA TO REGULAR EXPRESSIONS
PROBLEMS AND SOLUTIONS-I
PUMPING LEMMAS FOR REGULAR SETS AND CFL
MYHILL - NERODE THEOREM
MINIMIZATION OF DFSA
FSA WITH OUTPUT MOORE AND MEALY MACHINES
PUSHDOWN AUTOMATA
PUSHDOWN AUTOMATA , EQUIVALENCE BETWEEN ACCEPTANCE BY EMPTY STORE AND ACCEPTANCE BY FINAL STATE
PUSHDOWN AUTOMATA CFG TO PDA
PUSHDOWN AUTOMATA PDA TO CFG
PROBLEMS AND SOLUTIONS-II
PROBLEMS AND SOLUTIONS - III
TURING MACHINES
TURING MACHINES (Contd)
TURING MACHINE AS ACCEPTOR , TECHNIQUES FOR TM CONSTRUCTION
GENERALIZED VERSIONS OF TURING MACHINES
TURING MACHINE AS A GENERATING DEVICE
RECURSIVE SETS , RECURSIVELY INNUMERABLE SETS , ENCODING OF TM , HALTING PROBLEM
PROBLEMS AND INSTANCES , UNIVERSAL TM , DECIDABILITY
RICE'S THEOREM , LINEAR BOUNDED AUTOMATA , PROPERTIES OF TM
POST'S CORRESPONDENCE PROBLEMS
POST'S CORRESPONDENCE PROBLEMS (Contd), TIME AND TAPE COMPLEXITY OT TM
NP - COMPLETE PROBLEMS , COOK'S THEOREM
NP - COMPLETE PROBLEMS (Contd)
REGULATED REWRITING
L - SYSTEMS
GRAMMAR SYSTEMS
DNA COMPUTING
MEMBRANE COMPUTING
106106088
Computer Science and Engineering
CAD for VLSI Design I
Prof. Shankar Balachandran
Web
IIT Madras
Select
Evolution of CAD Tools
Importance of Design Automation
Basic Transistor Fundamentals
Gate Level Modeling
Higher Levels of Modeling
Types of CAD Tools
Verilog Quick Starter
Introduction to Simulators
Verilog Syntax
Verilog - Operators and expressions
Hierarchical Design and methodology
Delay modeling
Delay Modeling (contd)
Blocking and Non Blocking Assignments
Behavioural Modeling
Verilog Tasks and Functions
Memory Modeling
Advanced Delay Modeling
Advanced Delay Modeling (Contd)
Verilog Tricks
Introduction to Logic Synthesis
Logic Synthesis (Contd)
Logic Synthesis (Contd)
Synthesis: Assignment Statements
Synthesis: Arithmetic Operators
Synthesis: Bit Selects
Synthesis: Conditional Statements
Synthesis: Case Statements
Synthesis: Case Statements (Contd)
Synthesis: Loops
Synthesis: Local & Integer Variables
Synthesis: Flip Flops with preset / clear
Synthesis: Blocking Vs Non Blocking Assignments
Synthesis: Unknowns and High Impedance
Optimization in Synthesis
Optimization in Synthesis (Contd)
Introduction to Reconfigurable Computing
Introduction to FPGAs
Introduction to FPGAs (Contd)
The Altera Quartus Flow
106106089
Computer Science and Engineering
CAD for VLSI Design II
Prof. Shankar Balachandran
Web
IIT Madras
Select
Transistor Theory
Introduction to MOSFET
CMOS Transistor Fundamentals
Transistor Theory (Contd)
CMOS Transistor Theory - Delay Issues
CMOS Transistor Theory - Delay Issues (Contd)
CMOS Transistor Theory - Delay Models
Delay Elements in CMOS Circuits
Delay Elements in CMOS Circuits (Contd)
Estimating Delays in a circuit, Issues in Dynamic and Staic Timing analysis
Synthesis
Synthesis - Synthesizable and Non Synthesizable constructs
Synthesis - Logic Optimization, Resource Sharing
Synthesis - Logic Optimization, Resource Sharing (Contd)
Flip Flop and Latch optimaztion
Introduction to Logical Effort
Multistage Logic Networks
Logical effort - Optimizing performance
Logical Effort and Gain based Synthesis
Logical Effort and Gain based Synthesis (Contd)
106106090
Computer Science and Engineering
Computer Graphics
Prof. Sukhendu Das
Video
IIT Madras
Select
Introduction
CRT Display Devices
CRT Display Devices (Contd)
CRT Display Devices (Contd)
CRT Display Devices (Contd)
Transformations in 2D
Transformations in 2D (Contd)
Three Dimensional Graphics
Three Dimensional Graphics (Contd)
Three Dimensional Graphics (Contd)
Projection Transformations And Viewing Pipeline
3D Viewing - Projection Transformations And Viewing Pipeline
Scan Converting Lines, Circles And Ellipses
Scan Converting Lines, Circles And Ellipses (Contd)
Scan Converting Lines, Circles And Ellipses (Contd)
Scan Converting Lines, Circles And Ellipses (Contd)
Scan Converting Lines, Circles And Ellipses (Contd)
Polyfill- Scan Conversion Of A Polygon
Scan Conversion Of A Polygon (Contd)
Clipping - Lines And Polygons
Clipping Lines And Polygons
Clipping Lines
Solid Modelling
Solid Modelling
Solid Modelling- (Contd)
Visible Surface Detection
Visible Surface Detection- (Contd)
Visible Surface Detection- (Contd)
Visible Surface Detection- (Contd)
Visible Surface Detection- (Contd)
Visible Surface Detection (Contd)
Visible Surface Detection (Contd)
Illumination And Shading
Illumination And Shading (Contd)
Illumination And Shading (Contd)
Curve Representation
Curve Representation (Contd)
Curves And Surface Representation
Graphics Programming Using Open GL
Graphics Programming Using Open GL (Contd)
Advanced Topics: Anti Aliasing,Color,Soft Objects,Animation,Visual Effects,System Architectures
Digital Image Processing Image Compression-Jpeg-Enhancements
Digital Image Processing (Contd)
106106091
Computer Science and Engineering
Computer Networks
Prof. Hema A Murthy
Web
IIT Madras
Select
Introduction on Computer Networks
Data Sharing
Packetised File Transmission
Layering
Performance Metrics
Basic Building blocks
Modulation
Physical Media
Transmission
DLL Framing
Error Detection
Error Control / Reliable Transmission
Stop and Wait Analysis
Sliding Window
SW Analysis
Medium Access sublayer
Aloha Ethernet
Ethernet
Collision Free Protocol
ATM
Token bus
Token ring
FDDI
FDDI Analysis
Wireless LAN
Bridge and Switches
Connectionless Networks
Network Layer
IP Packets / Fragmentation
Router Forwarding
Congestion control networks
Routing Algorithm - DV
Virtual Networks
Routing Algorithm - LSR
CIDR / BGP
Transport Layer
TCP Connection Management
TCP Protocol
TCP Miscellaneous
Application Layer Protocols
SNMP
SMTP
Network Security
106106092
Computer Science and Engineering
Computer Organization
Prof. S. Raman
Video
IIT Madras
Select
Introduction To Computing
Introduction To System : Software
Introduction To System : Hardware
Processor Activities
Processor As a State Machine
Data Path Architecture
Data Path Controller : Micro Programmed
State Machine Design
Controller Design: Microprogrammed and Hardwired
Controller Design (Contd)
Typical Micro Instructions
Addressing Modes
Problem Exercise
Problem Exercise
Introduction to memory system
CPU - Memory Interaction
Cache Organization
Cache Organization
Virtual Memory
Virtual Memory
Performance Calculation
Segmentation
Address Translation and Protection
Programmed I/O
Interrupt Driven I/O
DMA : Direct Memory Access
Device Service Routines
Evolution Of I/O
I/O Devices
I/O Devices - Contd
Buses
Buses Contd
Conclusion
106106093
Computer Science and Engineering
Database Design
Prof. D. Janaki Ram
Video
IIT Madras
Select
Introduction to Database Management System
Conceptual Designs
Conceptual Designs
Relational Model
Relational Model
Structured Query Language
Structured Query Language II
ER Model to Relational Mapping
Functional Dependencies and Normal Form
ER Model to Relational Model Mapping
Storage Structures
Indexing Techniques Single Level
Indexing Techniques Multi-Level
Constraints and Triggers
Query Processing and Optimization
Query Processing and Optimization II
Query Processing and Optimization - III
Transaction Processing Concepts
Transaction Processing and Database Manager
Foundation for Concurrency Control
Concurrency Control Part - I
Concurrency Control Part - 2
Concurrency Control Part - 3
Concurrency Control Part - 4
Distributed Transaction Models
Basic 2-Phase and 3-phase commit protocol
Concurrency Control for Distributed Transaction
Introduction to Transaction Recovery
Recovery Mechanisms II
Recovery Mechanisms III
Introduction to Data Warehousing and OLAP
Introduction to Data Warehousing and OLAP
Case Study : MYSQL
Case Study ORACLE and Microsoft Access
Data Mining and Knowledge Discovery
Data Mining and Knowledge Discovery Part II
Object Oriented Databases
Object Oriented Databases II
XML - Introductory Concepts
XML Advanced Concepts
XML Databases
Case Study - Part One Database Design
Case Study - Part 2 Database Design
106106094
Computer Science and Engineering
Discrete Mathematical Structures
Prof. Kamala Krithivasan
Video
IIT Madras
Select
Propositional Logic
Propositional Logic (Contd.)
Predicates & Quantifiers
Predicates & Quantifiers (Contd.)
Logical Inference
Resolution Principles & Application to PROLOG
Methods of Proof
Normal Forms
Proving programs correct (Contd.)
Sets
Induction
Set Operations On Strings
Relations
Graphs
Graphs (Continued)
Trees
Trees And Graphs
Special Properties Of Relations
Closure Of Relations
Closure Properties Of Relations
Order Relations
Order Relations And Equivalence Relations
Equivalence Relations And Partitions
Functions
Functions (Continued)
Functions (Continued)
Pigeonhole Principle
Permutations And Combinations
Permutations And Combinations (Continued)
Generating Functions
Generating Functions (Continued)
Recurrence Relations
Recurrence Relations (Continued)
Recurrence Relations (Continued)
Algebras
Algebras (Continued)
Algebras (Continued)
Finite State Automaton
Finite State Automaton (Continued)
Lattices
106106095
Computer Science and Engineering
Introduction to Database Systems and Design
Prof. P.Sreenivasa Kumar
Web
IIT Madras
Select
Introduction to database Systems
Entity Relationship Model
Relational Model
Tuple Relational Calculus
The SQL Standard
File Organizing and Indexing
Database design and Normal forms
106106097
Computer Science and Engineering
Principles of Communication
Prof. Hema A Murthy
Web
IIT Madras
Select
Introduction to Principles of Communication
Signal Spaces
Signal Spaces Continued
Fourier Series
Properties of Fourier Transform
Some Examples: Continuous Fourier Transform
Continuous Fourier Transforms of Periodic functions
Sampling Theorem
Discrete Time Signals
Z Transforms
Properties of Z Transform
Examples of Z Transform
Basics of Probability Theory and Random Processes
Random Process
Random Process - Some examples
Random Process - Some examples
Random Process through a linear filter
Bandwidth
Amplitude Modulation - Double Side Band- Supressed Carrier
SSB - VSB Modulation
Angle Modulation
Noise Analysis AM, FM
Digital Modulation
Uncertainity, Information and Entropy
Information Theory and Source Coding
Mutual Information
Source coding
Channel Coding
Error Control Coding
Appendix- Miscellaneous
106106107
Computer Science and Engineering
Distributed Computing Systems
Prof. Ananthanarayana V.S
Web
IIT Madras
Select
Basic Concepts
Distributed Coordination
Process Synchronization
Interprocess Communication
Distributed Deadlocks
load Balancing
106106112
Computer Science and Engineering
Parallel Algorithms
Dr. N. Sairam
Web
IIT Madras
Select
Need for Parallel computers
Parallel Algorithm Models
Performance Analysis
Introduction to Processor Arrays
Matrix Multiplication using Mesh Networks
Matrix Multiplication using Hypercube Networks
Block Matrix Multiplication
Parallel Query Processing
The 15 puzzle Problem
Parallel Discrete Event Simulation
Image Dithering
Dense LU Factorization
Enumeration Sort
Odd Even Transposition Sort
Parallel Merge Sort
Hyper Quick Sort
Searching in a Sorted Sequence in Parallel
Searching on a random sequence in parallel
Sequential Selection Algorithm
Parallel Selection algorithm
Graph Coloring
Minimal Spanning Tree
Shortest Path Algorithm
106106126
Computer Science and Engineering
Artificial Intelligence
Prof. Deepak Khemani
Video
IIT Madras
Select
1. Artificial Intelligence: Introduction
2. Introduction to AI
3. AI Introduction: Philosophy
4. AI Introduction
5. Introduction: Philosophy
6. State Space Search - Introduction
7. Search - DFS and BFS
8. Search DFID
9. Heuristic Search
10. Hill climbing
11. Solution Space Search,Beam Search
12. TSP Greedy Methods
13. Tabu Search
14. Optimization - I (Simulated Annealing)
15. Optimization II (Genetic Algorithms)
16. Population based methods for Optimization
17. Population Based Methods II
18. Branch and Bound, Dijkstra's Algorithm
19. A* Algorithm
20. Admissibility of A*
21. A* Monotone Property, Iterative Deeping A*
22. Recursive Best First Search, Sequence Allignment
23. Pruning the Open and Closed lists
24. Problem Decomposition with Goal Trees
25. AO* Algorithm
26. Game Playing
27. Game Playing- Minimax Search
28. Game Playing - AlphaBeta
29. Game Playing-SSS *
30. Rule Based Systems
31. Inference Engines
32. Rete Algorithm
33. Planning
34. Planning FSSP, BSSP
35. Goal Stack Planning. Sussman's Anomaly
36. Non-linear planning
37. Plan Space Planning
38. GraphPlan
39. Constraint Satisfaction Problems
40. CSP continued
41. Knowledge-based systems
42. Knowledge-based Systems, PL
43. Propositional Logic
44. Resolution Refutation for PL
45. First-order Logic (FOL)
46. Reasoning in FOL
47. Backward chaining
48. Resolution for FOL
106106127
Computer Science and Engineering
NOC:Programming, Data Structures and Algorithms
Dr. N S. Narayanaswamy
Video
IIT Madras
Select
Introduction to Computers and Programming
Writing your first program
Variables, Operators and Expressions
Variable declarations, more operators and precedence
Input and Output Statements
Conditionals
Loops
Video Solution to Digital Root Programming Assignment
Introduction to arrays
Working with 1D arrays
Find prime numbers
Debugging demo
Multi-dimensional arrays
Pointers
More on pointers
Arrays and pointer arithmetic
Introduction to Strings
More on Strings
Video Solution to Print Elements of a Matrix in Spiral Order Programming Assignment
Introduction to functions
More details on functions
Arguments, variables and parameters
Pass parameters by reference
Recursive functions
Running time of a program
Computing time complexity
Video Solution to Palindrome Checker Programming Assignment
Algorithms and Powering
Polynomial evaluation and multiplication
Linear and Binary Search Analysis
Analysis of minimum and maximum in an array
Sorting I: Insertion, Merge
Sorting II: Counting, Radix
Finding i-th smallest number
Video Solution to Sorting words Programming Assignment
Structures
More on structures
Using structures and pointers to structures
Dynamic memory allocation
Linked Lists
Brief introduction to C++: Classes and objects
Data Structures: Abstract Data Type
Lists
Supplementary Lesson
Video Solution to Implementing a Hash Table ADT Programming Assignment
Stacks: Last In First Out
Queues: First In First Out
Trees
Tree traversal
Binary Search Trees
Heaps
Graphs and Representation
Supplementary Lesson
Video Solution to the Queue in a Hospital Programming Assignment
Greedy Algorithms
Dynamic Programming
Matrix Chain Multiplication
Dijkstra's Algorithm
Boyer-Moore String Matching Algorithm
File I/O
Modular Programming
106106129
Computer Science and Engineering
NOC:Introduction to Information Security I
Prof. V. Kamakoti
Video
IIT Madras
Select
Part0 - Introduction to the Course
Part1 - Definition of Information Security
Part2 - Information Security Terminologies
Part3 - Goals of Information Security
Part4 - Implementation Issues of the Goals of Information Security - I
part5 - Implementation Issues of the Goals of Information Security - II
Part6 - Control Mechanisms for Information Security - I
Part 7 - Access Control - Administrative and Technical
Part 8 - Passwords - Are they secure? - I
Part 9 - Access Control - Administrative and Technical
Part 10 - Passwords - Are they secure? - III
Part 11 - Multifactor Authentication - Challenges
Part 12 - Application Level Control and Information Security Planning
Part 13 - Information Security - Policy, Standard and Practice
Part 14 - Policies governing Issues, Roles and Responsibilities
Part 15 - Managing changes in Information Security Policies
Part 16 - Spheres of Information Security
Part 01 - Protecting your Personal Computer - I
part 02 - Protecting your Personal Computer - II
Part 03 - Protecting your Personal Computer - III
Part 04 - Cloud Computing (Basic Definitions) - I
Part 05 - Cloud Computing (Deployment) - II
Part 06 - Cloud Computing (Security Issues) - III
Part 07 - Cloud Computing (Trust and Risk) - IV
Part 08 - Cloud Computing (Security and Privacy Issues) - V
Part 09 - Cloud Computing (Security and Privacy Issues) - VI
Part 10 - Cloud Computing (Application and Data level security) - VII
Part 11 - Cloud Computing (Summary) - VIII
Part 12 - Standard I
Part 13 - Standard II
Part 14 - Standard III
Module 3 - Part 01
Module 3 - Part 02
Module 3 - Part 03
Module 3 - Part 04
Module 3 - Part 05
Module 3 - Part 06
Module 3 - Part 07
Module 3 - Part 08
Module 3 - Part 09
Module 4 - Part 01
module 4 - Part 02
Module 4 - Part 03
Module 4 - Part 04
Module 4 - Part 05
Module 4 - Part 06
Module 4 - Part 07
Module 4 - Part 08
Module 4 - Part 09
Module 4 - Part 10
Module 5 - Part 01
Module 5 - Part 02
Module 5 - Part 03
Module 5 - Part 04
Module 5 - Part 05
Module 5 - Part 06
Module 5 - Part 07
Module 6 - Part 01
Module 6 - Part 02
Module 6 - Part 03
Module 6 - Part 04
Module 6 - Part 05
Module 6 - Part 06
Module 6 - Part 07
Module 6 - Part 08
106106130
Computer Science and Engineering
NOC:Programming and Data structures (PDS)
Dr. N S. Narayanaswamy
Video
IIT Madras
Select
Video Lecture - A Simple C Program for Sorting
Video Lecture- Review of Structures, Pointers, and Functions
Video Lecture - Recursion
Video Lecture-Abstract Data Types-Data + Methods.
Video Lecture-List Data Type
Video Lecture - Access and update methods
Video Lecture:Doubly Linked List Data Type
Video Lecture-Doubly Linked Lists and Arrays
Video Lecture - ADT Stacks
Video Lecture:Checking of Balanced Parenthesis
Video Lecture:Infix and Postfix expressions and Expression evaluation
Queue ADT Definition and Implementation
Merging using Queue ADT and Queue types
Tree ADT and Traversals
Binary Tree ADT and traversals
Tree Applications
Binary Search Trees
Heaps
106106131
Computer Science and Engineering
NOC:Design and Analysis of Algorithms
Prof. Madhavan Mukund
Video
IIT Madras
Select
Course Outline
Example: Air Travel
Example: Xerox shop
Example: Document similarity
Introduction and motivation
Input size, worst case, average case
Quantifying efficiency: O( ), Omega( ), Theta( )
Examples: Analysis of iterative and recursive algorithms
Arrays and lists
Searching in an array
Selection Sort
Insertion sort
Merge sort
Merge sort - analysis
Quicksort
Quicksort - analysis
Sorting - Concluding remarks
Introduction to graphs
Representing graphs
Breadth first search (BFS)
Depth first search (DFS)
Applications of BFS and DFS
Directed acylic graphs: topological sort
Directed acylic graphs: longest paths
Single source shortest paths: Dijkstras algorithm
Dijkstras algorithm: analysis
Negative edge weights: Bellman-Ford algorithm
All pairs shortest paths
Minimum Cost Spanning Trees
Prims Algorithm
Kruskals algorithm
Union-Find using arrays
Union-Find using pointers
Priority queues
Heaps
Heaps: Updating values, sorting
Counting inversions
Closest pair of points
Binary Search Trees
Balanced search trees
Interval scheduling
Scheduling with deadlines: minimizing lateness
Huffman codes
Introduction to dynamic programming
Memoization
Grid Paths
Common subwords and subsequences
Edit distance
Matrix multiplication
Linear Programming
LP modelling: Production Planning
LP modelling: Bandwidth allocation
Network Flows
Reductions
Checking Algorithms
P and NP
106106133
Computer Science and Engineering
NOC:2016: Programming, Data structures and Algorithms
Prof. Hema A Murthy
Video
IIT Madras
Select
Introduction to Computers and Programming
Writing your first program
Variables, Operators and Expressions
Variable declarations, more operators and precedence
Input and Output Statements
Conditionals
Loops
Introduction to arrays
Working with 1D arrays
Find prime numbers
Debugging demo
Multi-dimensional arrays
Pointers
More on pointers
Arrays and pointer arithmetic
Introduction to Strings
More on Strings
Introduction to functions
More details on functions
Arguments, variables and parameters
Pass parameters by reference
Recursive Functions
C control structures, functional specification of programs
Complexity Analysis using Sum and Product Rule
Complexity Analysis of Recursive Functions
Algorithms and Powering
Polynomial evaluation and multiplication
Linear and Binary Search Analysis
Analysis of minimum and maximum in an array
Sorting I: Insertion, Merge
Sorting II: Counting, Radix
Finding i-th smallest number
Structures
More on Structures
Using structures and pointers to structures
Dynamic memory allocation
Linked List
Brief introduction to C++: Classes and objects
Abstract Data Types
More on ADT
Stacks : Last In First Out
Queues: First In First
Trees
Tree Traversal
Binary Search
Heaps
Graphs and Representations
Greedy Algorithms
Dynamic Programming
Matrix Chain Multiplication
Hash Tables
Graph Algorithms: Dijkstras Algorithm and Prims Algorithm
Graph Traversals : BFS,DFS and Articulation Points
File I/O
Modular Programming
106106134
Computer Science and Engineering
NOC:Computer Architecture(Course sponsored by Aricent)
Prof.Madhu Mutyam
Video
IIT Madras
Select
Introduction to Computer Architecture
Quantitative Principles of Computer Design
Instruction Set Principles-Part 1
Instruction Set Principles-Part 2
Instruction Set Principles-Part 3
Cache Memory Hierarchy - Part 1
Cache Memory Hierarchy - Part 2
Cache Memory Hierarchy - Part 3
Cache Memory Hierarchy - Part 4
Main Memory Design - Part 1
Main Memory Design - Part 2
Main Memory Design - Part 3
Fundamentals of Pipelining - Part 1
Fundamentals of Pipelining - Part 2
Fundamentals of Pipelining - Part 3
Fundamentals of Pipelining - Part 4
Fundamentals of Pipelining - Part 5
Scalar to Superscalar pipeline
Instruction Dependencies
Compiler optimizations for Exposing ILP
Advanced Branch Prediction Techniques - Part 1
Advanced Branch Prediction Techniques - Part 2
Superscalar Organization
Register Renaming
Tomasulo Algorithm
Dynamic Execution Core
Multi threading
Multicore Processor Architecture
Cache Coherence
Cache Coherence Protocol Design
Synchronization
Memory Consistency - Part 1
Memory Consistency - Part 2
106106136
Computer Science and Engineering
NOC:Model Checking
Prof. B. Srivathsan
Video
IIT Madras
Select
Course Overview
Module 1: Modeling code behaviour
Module 2: Modeling hardware circuits
Module 3: Modeling data-dependent programs
Module 4: Modeling concurrent systems
Summary
Module 1: Model checking tools
Module 2: Simple models in NuSMV
Module 3: Hardware verification using NuSMV
Module 4: Modeling concurrent systems in NuSMV
Summary.
Module 1: A problem in concurrency
Module 2: What is a property?
Module 3: Invariants
Module 4: Safety properties
Module 5: Liveness properties
Summary..
Module 1: Road map
Module 2: A gentle introduction to automata
Module 3: Simple properties of finite automata
Module 4: Safety properties described by automata
Summary...
Module 1: Specifying properties
Module 2: Omega-regular expressions
Module 3: Bchi automata
Module 4: Simple properties of Bchi automata
Summary....
Module 1: Overview
Module 2: Omega-regular expressions to NBA
Module 3: Checking emptiness of NBA
Module 4: Generalized NBA
Summary.....
Concluding remarks
Timed transition systems
Summary .....
Module 3: Representing transition systems as OBDDs
Module 2: Ordered BDDs
Module 1: Introduction to BDDs
Module 1: Introduction to LTL
Module 2: Semantics of LTL
Module 3: A puzzle
Summary .
Module 1: Automata based LTL model-checking
Module 2: LTL to NBA
Module 3: Automaton construction
Summary ..
Module 1: Tree view of a transition system
Module 2: CTL*
Module 3: CTL
summary ...
Module 1: Adequate CTL formulae
Module 2: EX, EU, EG
Module 3: Final algorithm
Module 4: State-space explosion
Summary ....
106106137
Computer Science and Engineering
NOC:Functional Programming in Haskell
Prof. S P Suresh
Video
IIT Madras
Select
Functions
Types
Haskell
Running Haskell programs
Currying
Examples
Lists
Functions on lists
Characters and strings
Tuples
Computation as rewriting
Polymorphism and higher-order functions
Map and filter
List comprehension
Folding through a list
Measuring efficiency
Sorting
Using infinite lists
Conditional polymorphism
Defining functions in ghci
Input/Output
Arrays
User-defined datatypes
Abstract datatypes
Modules
Recursive data types
Binary search trees
Balanced search trees
106106138
Computer Science and Engineering
Virtual Reality
Prof Steven LaValle
Video
IIT Madras
Select
Course mechanics
Goals and VR definitions
Historical perspective
Birds-eye view (general)
Birds-eye view (general), contd
Birds-eye view (hardware)
Birds-eye view (software)
Birds-eye view (sensation and perception)
Geometric modeling
Transforming models
Matrix algebra and 2D rotations
3D rotations and yaw, pitch, and roll
3D rotations and yaw, pitch, and roll, contd
Axis-angle representations
Quaternions
Converting and multiplying rotations
Converting and multiplying rotations, contd
Homogeneous transforms
The chain of viewing transforms
Eye transforms
Eye transforms, contd
Canonical view transform
Viewport transform
Viewport transform, contd
Three interpretations of light
Refraction
Simple lenses
Diopters
Imaging properties of lenses
Lens aberrations
Optical system of eyes
Photoreceptors
Sufficient resolution for VR
Light intensity
Eye movements
Eye movements, contd
Eye movement issues for VR
Neuroscience of vision
Depth perception
Depth perception, contd
Motion perception
Frame rates and displays
Frame rates and displays contd
Overview
Orientation tracking
Tilt drift correction
Yaw drift correction
Tracking with a camera
Perspective n-point problem
Filtering
Lighthouse approach
Visual Rendering-Overview
Visual Rendering-overview, contd
Shading models
Rasterization
Pixel shading
VR-specific problems
Distortion shading
Post-rendering image warp
Physics and physiology
Auditory perception
Auditory localization
Rendering
Spatialization and display
Combining other senses
Interfaces -overview
Locomotion
Manipulation
System control
Social interaction
Evaluation of VR Systems
106106139
Computer Science and Engineering
NOC:Introduction to Machine Learning(Course sponsored by Aricent)
Dr. Balaraman Ravindran
Video
IIT Madras
Select
A brief introduction to machine learning
Supervised Learning
Unsupervised Learning
Reinforcement Learning
Probability Basics - 1
Probability Basics - 2
Linear Algebra - 1
Linear Algebra - 2
Statistical Decision Theory - Regression
Statistical Decision Theory - Classification
Bias-Variance
Linear Regression
Multivariate Regression
Subset Selection 1
Subset Selection 2
Shrinkage Methods
Principal Components Regression
Partial Least Squares
Linear Classification
Logistic Regression
Linear Discriminant Analysis 1
Linear Discriminant Analysis 2
Linear Discriminant Analysis 3
Optimization
Perceptron Learning
SVM - Formulation
SVM - Interpretation & Analysis
SVMs for Linearly Non Separable Data
SVM Kernels
SVM - Hinge Loss Formulation
Weka Tutorial
Early Models
Backpropogation I
Backpropogation II
Initialization, Training & Validation
Maximum Likelihood Estimate
Priors & MAP Estimate
Bayesian Parameter Estimation
Introduction
Regression Trees
Stopping Criteria & Pruning
Loss Functions for Classification
Categorical Attributes
Multiway Splits
Missing Values, Imputation & Surrogate Splits
Instability, Smoothness & Repeated Subtrees
Tutorial
Evaluation Measures I
Bootstrapping & Cross Validation
2 Class Evaluation Measures
The ROC Curve
Minimum Description Length & Exploratory Analysis
Introduction to Hypothesis Testing
Basic Concepts
Sampling Distributions & the Z Test
Student\'s t-test
The Two Sample & Paired Sample t-tests
Confidence Intervals
Bagging, Committee Machines & Stacking
Boosting
Gradient Boosting
Random Forest
Naive Bayes
Bayesian Networks
Undirected Graphical Models - Introduction
Undirected Graphical Models - Potential Functions
Hidden Markov Models
Variable Elimination
Belief Propagation
Partitional Clustering
Hierarchical Clustering
Threshold Graphs
The BIRCH Algorithm
The CURE Algorithm
Density Based Clustering
Gaussian Mixture Models
Expectation Maximization
Expectation Maximization Continued
Spectral Clustering
Learning Theory
Frequent Itemset Mining
The Apriori Property
Introduction to Reinforcement Learning
RL Framework and TD Learning
Solution Methods & Applications
Multi-class Classification
106106140
Computer Science and Engineering
NOC:Artificial Intelligence: Knowledge Representation and Reasoning
Prof. Deepak Khemani
Video
IIT Madras
Select
Introduction
Introduction to Knowledge Representation and Reasoning
An Introduction to Formal Logics
Propositional Logic: Language, Semantics and Reasoning
Propositional Logic: Syntax and Truth Values
Propositional Logic: Valid Arguments and Proof Systems
Propositional Logic: Rules of Inference and Natural Deduction
Propositional Logic: Axiomatic Systems and Hilbert Style Proofs
Propositional Logic: The Tableau Method
Propositional Logic: The Resolution Refutation Method
Syntax
Semantics
Entailment and Models
Proof Systems
Forward Chaining
Unification
Forward Chaining Rule Based Systems
The Rete Algorithm
Rete Algorithm - Example
Programming in a Rule Based Language
The OPS5 Expert System Shell
Skolemization
Terminological Facts
Properties and Categories
Reification and Abstract Entities
Resource Description Framework (RDF)
The Event Calculus: Reasoning About Change
Natural Language Semantics
CD Theory
CD Theory (contd)
English to CD Theory
Backward Chaining
Logic Programming
Prolog
Search in Prolog
Controlling Search
The Cut Operator in Prolog
Incompleteness
The Resolution Method for FOL
Clause Form
FOL with Equality
Complexity of Resolution Refutation
Semantic Nets and Frames
Scripts
Applying Scripts
Goals, Plans and Actions
Plan Applier Mechanism
Top Down and Bottom Up Reasoning
Introduction
Normalisation
Structure Matching
Structure Matching - Example
Classification
A-box reasoning
DL: Extensions
DL: ALC
ALC examples
Taxonomies and Inheritance
Beliefs
Inheritance Hierarchies:
Introduction.
Circumscription
Circumscription (contd)
Minimal Models
Event Calculus Revisited
Circumscription in EC
Defaul Logic
Autoepistemc Logic
Epistemic Logic
The Muddy Children Puzzle
106106141
Computer Science and Engineering
NOC:Information Security - II(Course sponsored by Aricent)
Prof. V. Kamakoti
Video
IIT Madras
Select
Experimental Setup: Video Tutorial
Need for Secure Systems
Ignorance of A is Sin of B
Function calls and Stacks
Stack Smashing
Virtual Machine Based Rootkits
Security and Architecture: Introduction
Structured Computer Organization Completed
X86 ISA Part1
X86 ISA Part 2
X86 Protected Mode
X86 Memory Segmentation
Process Isolation using Segmentation
Paging and Virtual Memory
Task Switching and Interrupt Service
Memory Segmentation Deep dive P1
Memory Segmentation Deep dive P2
Memory Segmentation Deep dive P3 - Week 4
Memory Segmentation Deep dive P4 - Week 4
Segmentation Recap - Week 4
Lab1 Part 1 - Week 4
Lab1 Part 2 - Week 4
Lab 1 Part 3 - Week4
ISR Recap - Week 5
Lab2 Part 1 - Week 5
Lab2 Part 2 - Week 5
Memory Management Recap - Week 5
Lab3 Part 1 - Week 5
Lab3 Part 2 - Week 5
Task Switch recap - Week 6
Lab4 Part 1 - Week 6
Lab4 Part 2 - Week 6
Lab4 Part 3 - Week 6
Lab4 Part 4 - Week 6
Introduction to Basic Cryptography - Week7
Public Key Cryptography - Week 7
Freescale ARM iMX6 Processor- Week 7
High Assurance Boot in iMX6 - Week 7
Case Study - Week 7
Basics of Networking - Week 8
Network Processor Vs General Purpose Processor - Week 8
Network Processor Architecture - Week 8
106106142
Computer Science and Engineering
NOC:Algorithms for Big Data
Prof. John Augustine
Video
IIT Madras
Select
Lesson 4 - Graph streaming algorithms: Matching
Lesson 5 - Graph streaming algorithms: Graph sparsification
Lesson 1 - MapReduce
Lesson 2 - Property testing framework
Lesson 3 - Testing Connectivity
Lesson 4 - Enforce & Test Introduction
Lesson 1 - Estimating frequency moments
Problem solving video - Cat And Mouse
Problem solving video - Lollipop Graph
Problem solving video - Random Walks on Linear Structures
Lesson 3 - Graph streaming algorithms: Introduction
Lesson 5 : Pairwise independence
Lesson 3 : Chain hashing, SUHA, Power of Two choices
Lesson 1 : Overview
Lesson 9 - Approximate Median
Lesson 8 - Reservoir Sampling
Lesson 7 - Intro to Streaming, Morris Algorithm
Lesson 5 - Celebrities Case Study
Lesson 2 - SAT Problem
Lesson 1 - Intro to Big Data Algorithms
Lesson 4 - Application of Chebyshev's inequality
Lesson 3 - Application of Chernoff bound
Lesson 2 - Tail Bounds
Lesson 1 - Bernoulli, Binomial, and Geometric distributions
Lesson 7 - Randomized quicksort
Lesson 6 - Random variables
Lesson 4 - Karger's mincut algorithm
Lesson 2 - Conditional probability
Lesson 2 - Testing if a graph is bipartite (using random walks)
Lesson 1 - Property testing and random walk algorithms
Lesson 6 - Testing bipartiteness
Lesson 1 - Universal hash functions
Lesson 2 - Perfect hashing
Lesson 3 - Count-min filter for heavy hitters in data streams
Lesson 6 : Estimating expectation of continuous function
Lesson 2 - K-Machine Model (aka Pregel Model)
Lesson 5 - Testing if a graph is a biclique
Problem solving video - Doubly Stochastic Transition Matrix
Lesson 4 : Bloom filter
Lesson 2 : Balls, bins, hashing
Lesson 6 - Random Walks on Undirected Graphs
Lesson 4 - Stationary Distribution of a Markov Chain
Lesson 3 - Classification of States
Problem solving video - Monty Hall problem
Problem solving video - The rich get richer
Lesson 5 - Analysis of Karger's mincut algorithm
Lesson 3 - Example problems
Lesson 1 - Basic definitions
106106143
Computer Science and Engineering
NOC:Reinforcement Learning
Dr. B. Ravindran
Video
IIT Madras
Select
TD(0)
Returns, Value Functions and MDPs
REINFORCE
Introduction to Immediate RL
Policy Iteration
Dynamic Programming
Bellman Optimality Equation
Cauchy Sequence and Green's Equation
Banach Fixed Point Theorem
Convergence Proof
Lpi Convergence
Value Iteration
MDP Modelling
Bellman Equation
Tutorial 1-Probability basics2
Solving POMDP
POMDP Introduction
MAXQ Value Function Decomposition
Option Discovery
Hierarchical Abstract Machines
MAXQ
Options
Learning with Options
Semi Markov Decision Processes
LSTD and LSTDQ
LSPI and Fitted Q
DQN and Fitted Q-Iteration
Policy Gradient Approach
Actor Critic and REINFORCE
REINFORCE (cont'd)
UCB 1
Concentration Bounds
UCB 1 Theorem
PAC Bounds
Median Elimination
Thompson Sampling
Policy Search
Monte Carlo
RL Framework and applications
Introduction to RL
Tutorial 2-Linear algebra-2
Contextual Bandits
Full RL Introduction
Backward View of Eligibility Traces
Eligibility Trace Control
Thompson Sampling Recap
Function Approximation
Linear Parameterization
State Aggregation Methods
Function Approximation and Eligibility Traces
Value function based methods
Bandit Optimalities
Eligibility Traces
Afterstate
Q-Learning
TD(0) Control
UCT
Control in Monte Carlo
Off Policy MC
Policy Gradient with Function Approximation
Hierarchical Reinforcement Learning
Types of Optimality
Tutorial 2-Linear algebra-1
Tutorial 1 - Probability Basics 1
106106144
Computer Science and Engineering
NOC:Introduction to Operating Systems
Prof. Chester Rebeiro
Video
IIT Madras
Select
PC Booting
PC Hardware
From Programs to Processes
Memory Management in xv6
Introduction
Virtual Memory
MMU Mapping
Segmentation
Preventing Buffer Overflow Attacks
System Calls for Process Management
Interrupts
Interrupt Handling
Software Interrupts and System calls
CPU Context switching
Software solutions for critical sections
Bakery Algorithm
Hardware Locks
Mutexes
Semaphores
Dining Philosophers Problem
Deadlocks
Dealing with Deadlocks
Threads Part 1
Threads Part 2
Operating system security
Information Flow policies
Scheduling in Linux
Completely Fair Scheduling
Inter Process Communication
Synchronization
Priority Based Scheduling Algorithms
Introduction to OS
Buffer Overflows
Multi-Processor Scheduling
CPU Scheduling
Create Execute and Exit from Processes
Week 3 Introduction
Sharing the CPU
Intro to the Course
106106145
Computer Science and Engineering
NOC:Programming, Data Structures and Algorithms in Python
Prof. Madhavan Mukund
Video
IIT Madras
Select
Lecture 4: String functions
Lecture 3: Handling files
Lecture 2:Standard input and output
Lecture 5:Formatting printed output
Lecture 6: pass, del() and None
Lecture 1: Backtracking, N queens
Lecture 2: Global scope, nested functions
Lecture 3: Generating permutations
Lecture 4: Sets, stacks, queues
Lecture 5: Priority queues and heaps
Lecture 1: Abstract datatypes, classes and objects
Lecture 2: Grid paths
Lesson 3: Longest common subsequence
Lecture 4: Matrix multiplication
Lecture 5: Wrap-up, Python vs other languages
Lecture 4: Downloading and installing Python
Lecture 5: Tuples and dictionaries
Lecture 1: Assignment statement, basic types - int, float, bool
Lecture 6: Selection Sort
Lecture 6: Examples
Lecture 5: Functions
Lecture 4: Control Flow
Lecture 2: Strings
Lecture 8: Recursion
Lecture 1: Mergesort
Lecture 2: Mergesort, analysis
Lecture 3: Quicksort
Lecture 4: Quicksort analysis
Lecture 7: List Comprehension
Lecture 1: Exception Handling
Lecture 2: Classes and objects in Python
Lecture 3: User defined lists
Lecture 3: Euclid's algorithm for gcd
Lecture 2: Improving naive gcd
Lecture 1: Memoization and dynamic programming
Lecture 4: Search trees
Lecture 6: Function definitions
Lecture 7: Insertion Sort
Lecture 5: Efficiency
Lecture 4: Arrays vs lists, binary search
Lecture 3: Breaking out of a loop
Lecture 2: Manipulating lists
Lecture 1: More about range()
Lecture 3: Lists
Lecture 1: Algorithms and programming: simple gcd
106106146
Computer Science and Engineering
NOC:Privacy and Security in Online Social Networks
Prof. Ponnurangam Kumaraguru
Video
IIT Madras
Select
Week-4.1 Privacy and Pictures on Online Social Media
Tutorial 3 Part 1 Twitter API
Week 3.1 Misinformation on Social Media
Week 5.3 Policing and Online Social Media
Week-5.1 Policing and Online Social Media
Week-5.2 Policing and Online Social Media
Week 9.1: Privacy in Location Based Social Networks Part 1
Week 8.2: Anonymous Networks
Week 8.1: Profile Linking on Online Social Media
Tutorial 5: Analyzing text using Python NLTK
Week-7.3: Semantic attacks: Spear phishing
Week-7.2: Nudges
Week-7.1: Link Farming in Online Social Media
Tutorial 4 Social Network Analysis
Week 6.2 eCrime on Online Social Media
Week 1.2 IntroToCourse
Tutorial 1 Part 1 Ubuntu
Week 1.3 Incidents
Tutorial 1 Part 2 Python
Week 2.1 OSM APIs and tools for data collection
Tutorial 2 Part 1 Facebook API
Week 3.2 Privacy and Social Media
Week 9.2: Privacy in Location Based Social Networks Part 2
Tutorial 2 Part 2 Facebook API
Week-2.2 Trust and Credibility on OSM
Tutorial 6: Gephi Network Visualization
Week 6.1: eCrime on Online Social Media
Tutorial 3 Part 3 MongoDB
Tutorial 3 Part 2 MySQL
Week 1.1 Intro to Course
Tutorial 7: Visualization - Highcharts
Week 10.1: Beware of What You Share Inferring Home Location in Social Networks
Week 10.2: On the dynamics of username change behavior on Twitter
Week 10.3: Boston Marathon Analyzing Fake Content on Twitter
106106147
Computer Science and Engineering
NOC:Mobile Computing
Prof. Pushpendra Singh
Video
IIT Madras
Select
Saving Data - I
Saving Data - II
Security and System Permissions
Services
Processes and threads
Working with Fragments
Working with Fragments - II
Working with Fragments - III
Application Fundamentals
Java: Classes, Exceptions, Threads
Java: Interfaces
Java: Strings, OOP principles
Java: Primitive Data Types, Strings, Loops, Conditional Statements
RecyclerView, Adapter, ViewHolder
Implicit Intents
Fragment Basic Programming Example
Fragments - II
Debugging
Intents - I
Intents - II
Observer Pattern
RecyclerView, Adapter
ViewPager
Dialogues
Fragments - Advanced Example
Extending the application
Activity Lifecycle I
Activity Lifecycle II
Activity LifeCycle III
Adding Icon, Layout, Handling Rotation - I
Adding Icon, Layouts, Handling Rotation - II
Java Basics
Fragments - I
Introduction to Android Studio
Your First App
Deploying your App to a Phone
Extending app - Buttons, Toast
Android Development Environment
User Interface
106106156
Computer Science and Engineering
NOC:Introduction to Modern Application Development
Tanmai Gopal
Video
IIT Madras
Select
Module 16 - Introduction to Mobile Application Development Part 2
Module 17 - Introduction to Android
Module P12 - Getting started with Android Application Development
Module 15: Introduction to mobile apps
Module P11: Introduction to authentication, hashing, curl & sessions
Module 13: Authentication with HTTP
Module 14: Understanding security, and some best practices for webapps
Module 17: SQL & NoSQL systems
Module P10: Module P10: Connecting your webapp to your database & SQL Injection
Module 10: Database security, backup & recovery
Module 11: Analytics & Views
Module 9: Transactions & ACID properties
Module P9: Introduction to SQL
Module 8: Understanding database performance
Module P8: Practical: Deeper exploration of a DBMS (column types and more)
Module 6: Introduction to databases
Module 7: Data modelling & constraints
Module P7: Interacting with a DBMS
Module P5: Introduction to client-side Javascript
Module P6: Practical: APIs and mobile apps use web-servers
Module P3: Practical: Building a webapp with nodejs and using git. Introduction to reverse proxies.
Module P4: Module P4: Practical: Introduciton to server-side javascript and HTML/CSS
Building a web-app
Networks
P1: Practical: Running your own web-server
Protocols
Module P2: Practical: SSH + Network experiments
Introduction to the course
Introduction to a web-app
Introduction to a web-app
Module P13 - Building Custom UI using XML and Logs
Module P14 - Building a Blog App
Module 18: Deploying an app to the Google Play Store
Module 19: Introduction to iOS
Module 19: The API Economy
106106157
Computer Science and Engineering
NOC:Information Security-3
Prof. V. Kamakoti
Video
IIT Madras
Select
Operating System Introduction
Storage Hierarchy , Exceptions, Interrupts and traps
Review II
Snort
Review I
Wireshark
Security in Practise (contd.)
Security in Practise
Digital Signatures
Public Key Cryptography
Public Key Cryptography
An Introduction
Structure of a Network
Network Core - Definition
Network Access and Physical Media
Structure of ISP and Packet Delays
Network Protocol Layers
Network Devices
File Systems 1
File Systems-1
Unix Filesystem
Unix Filesystem (Contd.)
Linux : Basic Commands
Linux : Basic Commands (Contd.)
Linux : Users and Permissions
Linux : I/O Redirection and Pipes
Linux : Task Control
Linux : Shell Environment
Linux: Text Editors
Linux : Compression / Archiving
Linux: Print & Sync Commands
Linux: File Comparison
Basic Networking Administration
Network Security- An Introduction
Shell Script Variations
Shell Pattern Matching
Shell Case Statements
Shell Co-routines
Shell Signals and Traps
Shell Subshell
Shell Declarations
Shell Examples 2
OS Management Services
OS Security Issues
Process And Threads
Process Scheduling
Scheduling Algorithm
Process Synchronization
Memory Management - 1
Shell Review
Shell Comments and Variables
Shell Variables
Shell Arrays and Arithmetic
Shell Condition and Relation
Shell Examples
Shell Functions
Shell File Test
Shell Loop Control
Shell Introduction
Filesystems and Devices
Memory Management - 2
106106158
Computer Science and Engineering
NOC:AI:Constraint Satisfaction
Prof. Deepak Khemani
Video
IIT Madras
Select
Constraint Satisfaction Problems
CSP Examples: Map colouring, N-Queens, Classroom scheduling
CSP Examples: Huffman-Clowes Labelling, Waltz Algorithm, Crosswords
Model Based Diagnosis - An application of CSP
Constraint Networks - An Introduction
Binary Constraint Networks (BCN), Equivalent Networks
Projection Networks
Constraint Propagation
Algorithms AC1 and AC3
Can we do better than AC3?
Algorithm AC4
Generalized AC, Path-Consistency
i-Consistency, Algorithm PC1
Algorithm PC2, Strong i-Consistency
Directional Consistency and Graph Ordering
Min-Width and Min-Induced-Width Ordering
Directional Arc-Consistency and Tree CSPs
Directional Path-Consistency and Directional i-Consistency
Backtrack-Free search and Adaptive Consistency
Adaptive Consistency: Bucket Elimination
Search Methods for Solving CSPs
Algorithm Backtracking
Look-Ahead Methods in Search
Look-Ahead Search: Examples
Combining Search with Reasoning: Algorithm DPLL
Algorithm Backmarking
Dynamic Value Ordering, Dynamic Variable Ordering
Look-Back Methods - Definitions
Gaschnig’s Backjumping: The Culprit Variable
Gaschnig’s Backjumping, Graph-Based Backjumping
Graph-Based Backjumping: Internal and Relevant Dead-Ends
Conflict-Directed Backjumping: Definitions
Algorithm Conflict-Directed Backjumping
Combining Look-Ahead and Look-Back: FC-CBJ
Learning During Search
Model Based Systems
Model Based Diagnosis
Truth Maintenance Systems
Planning as Constraint Satisfaction
Planning as Constraint Satisfaction (cont.)
Planning as Satisfiability
Wrapping Up and Further Study
106106166
Computer Science and Engineering
NOC:Computer Organization and Architecture
Prof. V. Kamakoti
Video
IIT Madras
Select
Shared Memory Architecture, Cache Coherence
Shared Memory Architecture, Cache Coherence
Shared Memory Architecture, Cache Coherence
Concurrent Programming in Hardware
Concurrent Programming in Hardware
Concurrent Programming in Hardware
Concurrent Programming in Hardware-Part II
Concurrent Programming in Hardware-Part II
Concurrent Programming in Hardware-Part II
Conclusion : Recent Trends in Computer Organization & Architecture
Conclusion : Recent Trends in Computer Organization & Architecture
Conclusion : Recent Trends in Computer Organization & Architecture
Page Frame Allocation, Beledy's Anomaly
Paging, Cache
Cache
Cache Organisation
Cache - Cache Coherency, Dual Ported Cache
Multilevel Caching, Multitasking
Cache, Degree of Multiprogramming
Shared Memory Architecture
Shared Memory Architecture-Part I
Virtually Indexed - Virtually Tagged and Physically Tagged Caches
Pipelining
Data Hazards
Lab 2: Instruction Scheduling - Static and Dynamic
Dynamic Instruction Scheduling
Dynamic Instruction Scheduling (Contd..)
Control Hazard, Branch Prediction
Process Management
Branch prediction
Global Branch Prediction
Structural Hazard, Architectural Enhancements
Lab 3: Virtual Memory
Locality of Reference, Demand paging
Page Replacement Algorithm
Multilevel Paging, Translational Lookaside Buffer
Multilevel Paging
Orthogonal ISA, C Constructs Mapping, Addressing Modes
Atomic and Predicated Instructions
Atomic and Predicated Instructions ( Contd.)
General Purpose Registers
Expanding opcodes
Lab 4 : Task Switching ( Contd)
Lab 4 : Task Switching ( Contd)
Lab 4 : Task Switching ( Contd)
Multilevel Paging-Part 1
Lab 2 : Segmentation-Part II
Lab 2 : Segmentation
Floating point - Precision and Accuracy
Floating Point - Addition, Subtraction and Multiplication
Instruction Set Architecture
Fast Multiplier Circuit
Fast Multiplier Circuit (Contd.)
Programming using X86 ISA - Addressing Modes
Programming using X86 ISA - Addressing Modes
Introduction High Speed Circuit - Design Recursive Doubling
High Speed Circuit Design - Fast Adder Circuits
Lab 1 : Introduction
Fast Adder Circuits (Contd.)
Introduction to Pipelining
Lab 2 : Segmentation-Part III
Instruction Set Architecture (Continued)
106106167
Computer Science and Engineering
NOC:Introduction to Wireless and Cellular Communications
Prof. David Kovil Pillai
Video
IIT Madras
Select
Statistical Characterization of Antenna Diversity, Optimal Diversity Combining
Lecture 44
Lecture 43
Channel State Information, Optimum Power Allocation
Capacity of fading Channels, Capacity with Outage
Alamouti Scheme – Part II, Channel Capacity
Array Gain, Diversity Gain, Alamouti Scheme
BER in fading, Equal Gain Combining
Lecture 39
Lecture 40
Lecture 41
Lecture 42
WSSUS – Classification of Fading Channels
Shadowing, Outage, Multipath
Rayleigh Fading and Statistical Characterization
Introduction to Diversity, Antenna selection diversity
Jakes’ Method properties
Rayleigh Fading simulation - Clark and Gans Method, Jakes’ Method
Practical Channel Models (ITU, COST), Computer generation of Rayleigh fading
WSSUS – Characterization of Time Dispersive Fading Channels
Doppler, Temporal Characteristics of Fading Channels
WSSUS Part II, Coherence Time, Doppler Spectrum
MGF Part II, WSSUS Model
Ricean and Nakagami Fading, Moment Generating Function (MGF)
BER in Fading - Part II, Ricean Fading
Review of Lec 1-19
Coherent vs Differential Detection - Part II and BER in Fading
Coherent versus Differential Detection
Choice of Modulation
Characterization of Multipath Fading Channels
Properties of Rayleigh Distribution
BER in Fading, Narrowband vs Wideband Channels
Overview of Cellular Systems - Part 1
Overview of Cellular Systems - Part 2
Overview of Cellular Systems - Part 3
5G and other Wireless Technologies
Basic Cellular Terminology
Introduction to Antennas and Propagation Models
Link budget, Fading margin, Outage
Handoff & Mobility
Handoff Part 2, Classification of Signal Variation
Cellular Geometry & System Design
Cellular System Capacity, Trunking
Cellular Concept
Cellular system design and analysis
Lecture 52
Lecture 53
Lecture 54
Lecture 55
Rake Receiver for multipath channels
Multiuser environment
CDMA system Capacity
CDMA Multiuser Detectors – Part 1
CDMA Multiuser Detectors – Part 2
106106168
Computer Science and Engineering
NOC:Distributed Systems
Dr. Rajiv Misra
Video
IIT Patna
Select
Lecture 01 - Introduction to Distributed Systems
Lecture 02 - Basic Algorithms in Message Passing System
Lecture 03 - Leader Election in Rings
Lecture 04 - Distributed Models of Computation, Causality & Logical Time
Lecture 05 - Size of Vector Clock, Matrix Clocks, Virtual Time and Physical Clock Synchronization
Lecture 06 - Global State and Snapshot Recording Algorithms
Lecture 07 - Distributed Mutual Exclusion and Non-Token based Approaches
Lecture 08 - Quorum Based Distributed Mutual Exclusion Approaches
Lecture 9 - Token Based Distributed Mutual Exclusion Approaches
Lecture 10 : Consensus and Agreement Algorithms
Lecture 11 - Checkpointing & Rollback Recovery
Lecture 12 - Deadlock Detection in Distributed Systems
Lecture 13 - Distributed Shared Memory
Lecture 14 - Distributed Minimum Spanning Tree
Lecture 15 - Termination Detection in Distributed System
Lecture 16 - Message Ordering and Group Communication
Lecture 17 - Self-Stabilization
Case Study 01 - Distributed Randomized Algorithms
Case Study 02 - Peer-to-Peer Computing and Structured Overlay Network
Case Study 03 - The Google File System (GFS)
Case Study 04 - MapReduce
Case Study 05 - HDFS
Case Study 06 - Spark
Case Study 07 - Distributed Algorithms for Sensor Networks
Case Study 08 - Authentication in Distributed Systems
Case Study 09 - Bitcoin: A Peer-to-Peer Electronic Cash System
Case Study 10 - BlockChain Technology
Lecture 08 - Quorum Based Distributed Mutual Exclusion Approaches
Lecture 07 - Distributed Mutual Exclusion and Non-Token based Approaches
Lecture 06 - Global State and Snapshot Recording Algorithms
Lecture 05 - Size of Vector Clock, Matrix Clocks, Virtual Time and Physical Clock Synchronization
106106169
Computer Science and Engineering
NOC:Social Networks
Prof. Sudarshan Iyengar
Video
IIT Ropar
Select
Modeling Diffusion
The Base Code
Coding the First Big Idea - Increasing the Payoff
Coding the Second Big Idea - Key People
Coding the Third Big Idea- Impact of Communities on Cascades
Coding the Fourth Big Idea - Cascades and Clusters
Impact of Commmunities on Diffusion
Cascade and Clusters
Knowledge, Thresholds and the Collective Action
An Introduction to the Programming Screencast (Coding 4 major ideas)
Implementing PageRank Using Points Distribution Method-2
Implementing PageRank Using Points Distribution Method-3
Implementing PageRank Using Points Distribution Method-4
Implementing PageRank Using Random Walk Method -1
Implementing PageRank Using Random Walk Method -2
DegreeRank versus PageRank
We Follow
Why do we Follow?
Diffusion in Networks
The Web Graph
Collecting the Web Graph
Equal Coin Distribution
Random Coin Dropping
Google Page Ranking Using Web Graph
Forming two coalitions
Forming two coalitions contd
ENEMY'S ENEMY IS A FRIEND
Characterizing the structure of balanced networks
BALANCE THEOREM
PROOF OF BALANCE THEOREM
Introduction to positive and negative edges
Outline of implemantation
Creating graph, displaying it and counting unstable triangles
Moving a network from an unstable to stable state
Schelling Model Implementation-1(Introduction)
Schelling Model Implementation-2 (Base Code)
Schelling Model Implementation-3 (Visualization and Getting a list of boundary and internal nodes)
Schelling Model Implementation-4 (Getting a list of unsatisfied nodes)
Schelling Model Implementation-5 (Shifting the unsatisfied nodes and visualizing the final graph)
CHAPTER - 5 POSITIVE AND NEGATIVE RELATIONSHIPS (INTRODUCTION)
Fatman Evolutionary Model- The Base Code (Adding Social Foci)
Fatman Evolutionary Model- Implementing Homophily
Quantifying the Effect of Triadic Closure
Fatman Evolutionary Model- Implementing Closures
Fatman Evolutionary Model- Implementing Social Influence
Fatman Evolutionary Model- Storing and analyzing longitudnal data
Spatial Segregation: An Introduction
Spatial Segregation: Simulation of the Schelling Model
Spatial Segregation: Conclusion
Betweenness Measures and Graph Partitioning
Foci Closure and Membership Closure
Introduction to Fatman Evolutionary model
Fatman Evolutionary Model- The Base Code (Adding people)
Selection and Social Influence
Interplay between Selection and Social Influence
Homophily - Definition and measurement
Implementing PageRank Using Points Distribution Method-1
Strong and Weak Relationship - Summary
Introduction to Homophily - Should you watch your company ?
Visualising Communities using Gephi
Tie Strength, Social Media and Passive Engagement
Granovetter's Strength of weak ties
Triads, clustering coefficient and neighborhood overlap
Structure of weak ties, bridges, and local bridges
Validation of Granovetter's experiment using cell phone data
Embededness
Structural Holes
Social Capital
Finding Communities in a graph (Brute Force Method)
Datasets : How to Download?
Datasets: Analysing Using Networkx
Datasets: Analysing Using Gephi
Introduction : Emergence of Connectedness
Advanced Material : Emergence of Connectedness
Programming Illustration : Emergence of Connectedness
Social Network Datasets
Datasets: Different Formats
Marketing on Social Networks
Introduction to Datasets
Ingredients Network
Searching in a Network
Link Prediction
The Contagions
Google Page Rank
Community Detection Using Girvan Newman Algorithm
Summary to Datasets
Synonymy Network
Social Networks: The Challenge
Modeling Diffusion (continued)
Visualizing coalitions and the evolution
Introduction
Web Graph
Importance of Acquaintances
Introduction to Python-2
Introduction to Networkx-2
Introduction to Python-1
Introduction
Answer to the puzzle
Introduction to Networkx-1
Analyzing basic reproductive number 5
Analyzing basic reproductive number 4
Analyzing basic reproductive number 3
Analyzing basic reproductive number 2
Analysis of basic reproductive number in branching model (The problem statement)
Percolation model
Basic Reproductive Number Revisited for Complex Networks
Comparison between SIR and SIS spreading models
SIR and SIS spreading models
Modeling epidemics on complex networks
Basic Reproductive Number
Simple Branching Process for Modeling Epidemics (contd..)
Simple Branching Process for Modeling Epidemics
Introduction to epidemics (contd..)
Epidemics- An Introduction
Rich Get Richer - The Long Tail
Rich Get Richer - A Possible Reason
Forced Versus Random Removal of Nodes (Attack Survivability)
Implementing a Random Graph (Erdos- Renyi Model)-2
Implementing a Random Graph (Erdos- Renyi Model)-1
Implementing Rich-getting-richer Phenomenon (Barabasi-Albert Model)-2
Implementing Rich-getting-richer Phenomenon (Barabasi-Albert Model)-1
Summary So Far
Rich Get Richer Phenomenon
Detecting the Presence of Powerlaw
Power Law emerges in WWW graphs
Why do Normal Distributions Appear?
Introduction to Powerlaw
PageRank Explained
PageRank as a Matrix Operation
Convergence in Repeated Matrix Multiplication- The Details
Addition of Two Vectors (Pre-requisite 2)
Convergence in Repeated Matrix Multiplication (Pre-requisite 1)
Matrix Multiplication (Pre-requisite 1)
PageRank, conservation and convergence - Another example
PageRank Revisited - Conservation and Convergence
PageRank Revisited - Convergence in the Example
PageRank Revisited - An example
Hubs and Authorities
Principle of Repeated Improvement (An example)
Principle of Repeated Improvement (A story)
Introduction to Hubs and Authorities (A Story)
STRUCTURAL BALANCE
Small World Effect - An Introduction
Milgram's Experiment
The Reason
The Generative Model
Decentralized Search - I
Decentralized Search - II
Decentralized Search - III
Programming illustration- Small world networks : Introduction
Base code
Making homophily based edges
Adding weak ties
Plotting change in diameter
Programming illustration- Myopic Search : Introduction
Myopic Search
Myopic Search comparision to optimal search
Time Taken by Myopic Search
PseudoCores : Introduction
How to be Viral
Who are the right key nodes?
finding the right key nodes (the core)
Coding K-Shell Decomposition
Coding cascading Model
Coding the importance of core nodes in cascading
Pseudo core
106107155
Computer Science and Engineering
NOC:Introduction to Cryptology
Dr. Sugata Gangopadhyay
Video
IIT Roorkee
Select
Efficien Computation of Jacobi Symbol Primality Testing:Solovay-Stassen Algorithm
Iterated Hash Functions
Lecture 05- Problem Discussion on Affine cipher and Perfect Secrecy
Problem Discussionn
Randomized Algorithm and its application on Preimage resistance and collision resistance
Cryptographic hash function: Introduction
Random Oracle model, Security of hash functions
Problem Discussion on Jacobi Symbol Calculation and RSA Cryptosystem
Primality testing: Miler-Rabin Algorithm, Legendre Symbol and Jacobi Symbol
Complexity analysis of Euclidian Algorithm and RSA Cryptosystem square and multiply algorithm
Public Key Cryptology Introduction RSA Cryptosystem
Cryptanalysis and its Variants, Linear Attack
Problem Discussion
Substitution Permutation network, Fiestel Cipher
S-Box Theory
Product Cipher, Block Cipher, Modes of Operation for Block Cipher
Lecture 03- Affine Cipher, Vigenere Cipher
Lecture 04- Prefect secrecy, Application of Shift Cipher
Lecture 02- Modular arithmetic, shift cipher
Lecture 01-Introduction Caeser cipher
106108051
Computer Science and Engineering
Combinatorics
Dr. L. Sunil Chandran
Video
IISc Bangalore
Select
Pigeon hole principle - (Part 1)
Pigeon hole principle - (Part 2)
Pigeon hole principle - (Part 3)
Pigeon hole principle - (Part 4)
Elementary concepts and basic counting principles
Elementary concepts; Binomial theorem; Bijective proofs - Part (1)
Bijective proofs – Part (2)
Bijective proofs - Part (3); Properties of binomial coefficients; Combinatorial identities - Part (1)
Combinatorial identities - Part (2); Permutations of multisets – Part (1)
Permutations of multisets – Part (2)
Multinomial Theorem, Combinations of Multisets – Part (1)
Combinations of Multisets - Part (2)
Combinations of Multisets – Part (3), Bounds for binomial coefficients
Sterling’s Formula, Generalization of Binomial coefficients - Part (1)
Generalization of Binomial coefficients - Part (2)
Generalization of Binomial coefficients - Part (3); Double counting - Part (1)
Double counting - Part (2)
Hall’s Theorem for regular bipartite graphs; Inclusion exclusion principle - Part (1)
Inclusion exclusion principle - Part (2)
Inclusion exclusion principle - Part (3)
Inclusion exclusion principle - Part (4)
Inclusion exclusion principle - Part (5)
Recurrence Relations - Part (1)
Recurrence Relations - Part (2)
Recurrence Relations - Part (3)
Recurrence Relations - Part (4)
Recurrence Relations - Part (5)
Generating functions - Part (1)
Generating functions - Part (2)
Solving recurrence relations using generating functions - Part (1)
Solving recurrence relations using generating functions - Part (2)
Exponential generating functions - Part (1)
Exponential generating functions - Part (2), Partition Number - Part (1)
Partition Number - Part (2)
Partition Number - Part (3)
Partition Number - Part (4); Catalan Numbers - Part (1)
Catalans Numbers - Part (2)
Catalan Numbers - Part (3), Sterling numbers of the 2nd kind
Difference Sequences
Sterling Numbers
Summary
106108052
Computer Science and Engineering
Compiler Design
Prof. Y.N. Srikanth
Video
IISc Bangalore
Select
An Overview of a Compiler - Part 1
An Overview of a Compiler - Part 2 and Run-Time Environments - Part 1
An Overview of a Compiler Part 2 and Run-Time Environments - Part 1
Run-Time Environments - Part 2
Run-Time Environments - Part 3 and Local Optimizations - Part 1
Run-Time Environments Part 3 and Local Optimizations - Part 1
Local Optimizations - Part 2 and Code Generation Part 1
Local Optimizations - Part 2 and Code Generation - Part 1
Code Generation - Part 1
Code Generation - Part 2
Code Generation - Part 3 and Global Register Allocation - Part 1
Code Generation - Part 3 and Global Register Allocation Part 1
Global Register Allocation - Part 2
Global Register Allocation - Part 3 and Implementing Object-Oriented Languages - Part 1
Global Register Allocation - Part 3 and Implementing Object-Oriented Languages Part 1
Implementing Object-Oriented Languages - Part 2 and Introduction to Machine-Independent Optimizations - Part 1
Implementing Object-Oriented Languages - Part 2 and Introduction to Machine-Independent Optimizations Part 1
Introduction to Machine-Independent Optimizations - Part 2 and Data-Flow Analysis - Part 1
Introduction to Machine-Independent Optimizations - Part 2 and Data-Flow Analysis Part 1
Data-Flow Analysis - Part 2
Data-Flow Analysis - Part 3 and Control-Flow Analysis - Part 1
Data-Flow Analysis - Part 3 and Control-Flow Analysis Part 1
Control-Flow Analysis - Part 2
Machine-Independent Optimizations - Part 1
Machine-Independent Optimizations - Part 2
Machine-Independent Optimizations - Part 3 and Data-Flow Analysis: Theoretical Foundation - Part 1
Machine-Independent Optimizations - Part 3 and Data-Flow Analysis: Theoretical Foundation Part 1
Data-Flow Analysis: Theoretical Foundation - Part 2 and Partial Redundancy Elimination - Part 1
Data-Flow Analysis: Theoretical Foundation - Part 2 and Partial Redundancy Elimination Part 1
Partial Redundancy Elimination - Part 2
The Static Single Assignment Form: Construction and Application to Program Optimizations - Part 1
The Static Single Assignment Form: Construction and Application to Program Optimizations - Part 2
The Static Single Assignment Form: Construction and Application to Program Optimizations - Part 3
Automatic Parallelization - Part 1
Automatic Parallelization - Part 2
Automatic Parallelization - Part 3
Automatic Parallelization - Part 4
Instruction Scheduling - Part 1
Instruction Scheduling - Part 2
Instruction Scheduling - Part 3
Software Pipelining
Energy-Aware Software Systems - Part 1
Energy-Aware Software Systems - Part 2
Energy-Aware Software Systems - Part 3
Energy-Aware Software Systems - Part 4
Just-In-Time Compilation and Optimizations for .NET CLR
Garbage Collection
Interprocedural Data-Flow Analysis
Worst Case Execution Time - Part 1
Worst Case Execution Time - Part 2
106108054
Computer Science and Engineering
Graph Theory
Dr. L. Sunil Chandran
Video
IISc Bangalore
Select
Introduction: Vertex cover and independent set
Matchings: Konig’s theorem and Hall’s theorem
More on Hall’s theorem and some applications
Tutte’s theorem on existence of a perfect matching
More on Tutte’s theorem
More on Matchings
Dominating set, path cover
Gallai – Millgram theorem, Dilworth’s theorem
Connectivity: 2-connected and 3- connected graphs
Menger’s theorem
More on connectivity: k- linkedness
Minors, topological minors and more on k- linkedness
Vertex coloring: Brooks theorem
More on vertex coloring
Edge coloring: Vizing’s theorem
Proof of Vizing’s theorem, Introduction to planarity
5- coloring planar graphs, Kuratowsky’s theorem
Proof of Kuratowsky’s theorem, List coloring
List chromatic index
Adjacency polynomial of a graph and combinatorial Nullstellensatz
Chromatic polynomial, k - critical graphs
Gallai-Roy theorem, Acyclic coloring, Hadwiger’s conjecture
Perfect graphs: Examples
Interval graphs, chordal graphs
Proof of weak perfect graph theorem (WPGT)
Second proof of WPGT, Some non-perfect graph classes
More special classes of graphs
Boxicity,Sphericity, Hamiltonian circuits
More on Hamiltonicity: Chvatal’s theorem
Chvatal’s theorem, toughness, Hamiltonicity and 4-color conjecture
Network flows: Max flow mincut theorem
More on network flows: Circulations
Circulations and tensions
More on circulations and tensions, flow number and Tutte’s flow conjectures
Random graphs and probabilistic method: Preliminaries
Probabilistic method: Markov’s inequality, Ramsey number
Probabilistic method: Graphs of high girth and high chromatic number
Probabilistic method: Second moment method, Lovasz local lemma
Graph minors and Hadwiger’s conjecture
More on graph minors, tree decompositions
106108055
Computer Science and Engineering
High Performance Computing
Prof. Mathew Jacob
Video
IISc Bangalore
Select
Programs and Data
Data Representation
Registers and Memory
Instructions, Addressing Modes
A RISC Instruction Set
A RISC Instruction Set (contd)
Function Call and Return
Function Call and Return (contd)
Instruction Execution
Instruction Execution (contd)
Software organization
System Calls
Virtual memory
Virtual memory (contd)
Virtual Memory (cont)
Process
Process scheduling
Process lifetime
Interprocess communication
Concurrent programming
Pipelining
Pipeline hazards
Pipeline hazards (contd)
Pipeline hazards (contd.)
Cache memory
Memory hierarchy
Cache operation
Cache operation (contd)
Cache aware programming
Cache aware programming (contd)
More on cache
Measuring time
Program Profiling
Secondary storage
Files and disks
Directories
Protection and Performance
Parallel architecture
Cache coherence
MPI programming
MPI programming (contd)
106108056
Computer Science and Engineering
Numerical Optimization
Dr. Shirish K. Shevade
Video
IISc Bangalore
Select
Introduction
Mathematical Background
Mathematical Background (contd)
One Dimensional Optimization - Optimality Conditions
One Dimensional Optimization (contd)
Convex Sets
Convex Sets (contd)
Convex Functions
Convex Functions (contd)
Multi Dimensional Optimization - Optimality Conditions, Conceptual Algorithm
Line Search Techniques
Global Convergence Theorem
Steepest Descent Method
Classical Newton Method
Trust Region and Quasi-Newton Methods
Quasi-Newton Methods - Rank One Correction, DFP Method
i) Quasi-Newton Methods - Broyden Family ii) Coordinate Descent Method
Conjugate Directions
Conjugate Gradient Method
Constrained Optimization - Local and Global Solutions, Conceptual Algorithm
Feasible and Descent Directions
First Order KKT Conditions
Constraint Qualifications
Convex Programming Problem
Second Order KKT Conditions
Second Order KKT Conditions (contd)
Weak and Strong Duality
Geometric Interpretation
Lagrangian Saddle Point and Wolfe Dual
Linear Programming Problem
Geometric Solution
Basic Feasible Solution
Optimality Conditions and Simplex Tableau
Simplex Algorithm and Two-Phase Method
Duality in Linear Programming
Interior Point Methods - Affine Scaling Method
Karmarkar\'s Method
Lagrange Methods, Active Set Method
Active Set Method (contd)
Barrier and Penalty Methods, Augmented Lagrangian Method and Cutting Plane Method
Summary
106108057
Computer Science and Engineering
Pattern Recognition
Prof. M. Narasimha Murty
Web
IISc Bangalore
Select
Background
Introduction
Statistical Pattern Recognition
Different Representation Schemes
Tree-Based Representations
Dissimilarity Measures
Distance Between Pattern Collections
Fisher’s Discriminant
Principal Components as Features
Branch and Bound Schemes
Sequential Feature Selection
Nearest Neighbour Classifier
Soft Nearest Neighbour Classifiers
Efficient Nearest Neighbour Classifier
Ordered Partitions
Minimal Distance Classifier
Condensed Nearest Neighbour Classifier
Modified Condensed Nearest Neighbour Classifier
Bayes Classifier
Naive Bayes Classifier
Bayesian Belief Networks
Introduction to Decision Trees
Construction of Decision Trees
Axis-Parallel and Oblique Decision Trees
Learning Decision Trees
Introduction to Discriminant Functions
Characterization of the Decision Boundary
Learning the Discriminant Function
Introduction to Support Vector Machines
Training Support Vector Machines
What is Clustering?
Representation of Patterns and Clusters
Clustering Process
Clustering Algorithms
Incremental Clustering
Divide-and-Conquer Clustering
Introduction to Combining Classifiers
AdaBoost for Classification
Schemes for Combining Classifiers
Combination of Homogeneous Classifiers
Document Processing
Document Classification and Retrieval
106108058
Computer Science and Engineering
Storage Systems
Dr. K. Gopinath
Video
IISc Bangalore
Select
Overview
Storage, Processing, Networking
Naming and Storing
Storage Filesystems
Access Architecture, Hard Disks
SCSI
Fibre Channel Protocol (FCP)
FCP, 10Gb Ethernet, iSCSI, TCP
NFS, NFSv2
NFSv2, NFSv3, NFSv4, CIFS
USB Storage
Tiering
Mobile/Personal/Organizational - type Storage
Parallel/Cloud/Web-scale Storage
Long-term Storage
Storage interfaces
User-Memory-CPU interactions
Spinlock, Concurrency
Block Layer design
FAT, TFAT, F2FS, LFS, FTL
Data Structures
Abstractions
Link & Write Operations
ZFS
RAID in Filesystems
RAID-Z, NetApp RAID4, Flash Filesystems
Reliability
Performance
Security
CAP Theorem
POSIX/NFS/S3/Zookeeper, ACID Vs. BASE
Consistency & Commit problems
Paxos
Group Communication problem
Message Ordering
Ordering Models
Orderings in Filesystems
Semantics of highly scalable filesystems
GFS
GFS Model
GFS functions and operations
GFS problems, BigTable
Lessons to learn
106108098
Computer Science and Engineering
Data Communications
Prof. H.S. Jamadagni
Web
IISc Bangalore
Select
Digital Communication Systems
ISDN
AsymetricDigital Subscriber Line
Communication Systems
DSL
Q.931 Message format
modelling of basic and supplementary
106108099
Computer Science and Engineering
Digital Systems
Prof. N.J. Rao
Web
IISc Bangalore
Select
Number Systems and Codes
Boolean Algebra and Logic Functions
Logic Families
Combinational Functions
Analysis of Sequential Circuits
Designing with Sequential MSIs
PLDs
Design of Digital Systems
106108100
Computer Science and Engineering
Microprocessors and Microcontrollers
Prof. Krishna Kumar
Web
IISc Bangalore
Select
General definitions of mini & micro computers,Overview of 8085 & 8086microprocessor
Description of Instructions,Assembly directives,Assembly programs with algorithms
Interfacing with RAMs,ROMs and with peripheral ICS and Key boards
Architecture of 8087,interfacing with 8086.Data types,instructions and programming
Overview of architecture of 8051 microcontroller & overview of architecture of 8096 16 bit controller
Description of Instructions,Assembly directives,Assembly programs with algorithms
Interfacing with LEDs,ADCs and with DACs
Introduction to 80386 and 80486
106108101
Computer Science and Engineering
Operating Systems
Prof. P.C.P. Bhatt
Web
IISc Bangalore
Select
Introduction to Operating System
File Systems and Management
Process and Process Management
Memory Management
Input Output (IO) Management
Resource Sharing and Management
Interprocess communication
Real time Operating Systems and Microkernels
OS and Security
Unix Primer
Search and Sort Tools
AWK Tool in Unix
Shell Scripts in UNIX
Unix Kernel Architecture
Make Tool In UNIX
Some Other Tools in UNIX
Source Code Control System in UNIX
X Windows in UNIX
System Administration in UNIX
More on LINUX
106108102
Computer Science and Engineering
System Analysis and Design
Prof. V. Rajaraman
Video
IISc Bangalore
Select
Lecture 1
Lecture 2
Lecture 3
Lecture 4
Lecture 5
Lecture 6
Lecture 7
Lecture 8
Lecture 9
Lecture 10
Lecture 11
Lecture 12
Lecture 13
Lecture 14
Lecture 15
Lecture 16
Lecture 17
Lecture 18
Lecture 19
Lecture 20
Lecture 21
Lecture 22
Lecture 23
Lecture 24
Lecture 25
Lecture 26
Lecture 27
Lecture 28
Lecture 29
Lecture 30
Lecture 31
Lecture 32
Lecture 33
Lecture 34
Lecture 35
Lecture 36
Lecture 37
Lecture 38
Lecture 39
Lecture 40
106108103
Computer Science and Engineering
System Analysis and Design
Prof. V. Rajaraman
Web
IISc Bangalore
Select
Data and Information
Systems Analysis and Design Life Cycle
Information gathering
Feasibility analysis
Data Flow Diagrams
Process Specification
Data input methods
Logical Database Design
Object oriented systems modeling
Designing outputs
Document on Web
Control ? audit and security of information systems
Electronic Commerce
Case Tools
106108113
Computer Science and Engineering
Principles of Compiler Design
Prof. Y.N. Srikanth
Video
IISc Bangalore
Select
An Overview of a Compiler
Lexical Analysis - Part 1
Lexical Analysis - Part 2
Lexical Analysis - Part 3
Syntax Analysis: Context-free Grammars, Pushdown Automata and Parsing Part - 1
Syntax Analysis: Context-free Grammars, Pushdown Automata and Parsing Part - 2
Syntax Analysis: Context-free Grammars, Pushdown Automata and Parsing Part - 3
Syntax Analysis: Context-free Grammars, Pushdown Automata and Parsing Part - 4
Syntax Analysis: Context-free Grammars, Pushdown Automata and Parsing Part - 5
Syntax Analysis: Context-free Grammars, Pushdown Automata and Parsing Part - 6
Syntax Analysis: Context-free Grammars, Pushdown Automata and Parsing Part - 7
Semantic Analysis with Attribute Grammars Part 1
Semantic Analysis with Attribute Grammars Part 2
Semantic Analysis with Attribute Grammars Part 3
Semantic Analysis with Attribute Grammars Part 4
Semantic Analysis with Attribute Grammars Part 5
Intermediate code generation Part 1
Intermediate code generation Part 2
Intermediate code generation Part 3
Intermediate code generation Part 4 (first half of lecture)
Run-time environments - 1 (second half of lecture)
Run-time environments - 2
Run-time environments - 3
Run-time environments - 4 (first half of lecture)
Control-Flow Graph and Local Optimizations - Part 1 (second half of lecture)
Control-Flow Graph and Local Optimizations - Part 2 (first half of lecture)
Machine code generation - 1 (second half of lecture)
Machine code generation - 2
Machine code generation - 3
Machine code generation - 4 (first half of lecture), Implementing object-oriented languages 1 (second half of lecture)
Implementing object-oriented languages 2 (first half of lecture)
Global register allocation - 1 (second half of lecture)
Global register allocation - 2
Global register allocation - 3
Introduction to Machine-Independent Optimizations - 1
Introduction to Machine-Independent Optimizations - 2
Introduction to Machine-Independent Optimizations - 3
Introduction to Machine-Independent Optimizations - 4
Introduction to Machine-Independent Optimizations - 5
Introduction to Machine-Independent Optimizations - 6
Introduction to Machine-Independent Optimizations - 7 (first half of lecture)
Instruction Scheduling and Software Pipelining - 1 (second half of lecture)
Instruction Scheduling and Software Pipelining - 2
Instruction Scheduling and Software Pipelining - 3 (first part of lecture)
Automatic parallelization - 1 (second half of lecture)
Automatic parallelization - 2