Welcome to the course homepage.
Your instructor is Uday
Khedker. We will meet online in slot 11 (every Tuesday and
Friday from 15:30 to 17:00). A brief motivation behind
the course and a tentative
lecture schedule is available. We will use the book Data Flow
Analysis: Theory and Practice as our text book. We have an
Indian edition too. The TAs of the course are Mehul Jain, Rasesh
Tongia, and Mudra Sahu.
Announcements
(16 Aug 2020). I have consolidated the
course material (videos, slides, tutorials, quizzes, and
experiments) in this page outside of moodle for the time
being. This page will move to moodle after the course
registration is finalized.
(15 Aug 2020). All
lectures will now be available on the youtube
channel for cs618. You can begin by visiting the
playlists of the lectures. Each playlist represents one
lecture and each lecture has been divided into multiple videos
for convenience of downloading.
(10 Aug 2020). Join the
course on MS Teams using the code 0vj8vqe. Note that you can
join the course only if you log using your IITB LDAP id using
SSO. For this week, we meet at 4:05 pm to 5:00 pm on Thursday
13 Aug. In the subsequent weeks, we meet at 3:30 to 5:00 pm on
Tuesdays and Fridays.
(10 Aug 2020). Videos
of the introductory lecture of the course and the associated
slides are available.
(10 Aug 2020). All announcements will soon be made on the moodle page of the course. This page will then not be updated.
The course begins with why and what of program analysis by presenting examples of optimizations and motivating the need for systematic analysis. As the course progresses, the following running theme emerges: Program analysis requires building the right abstractions. Here by abstractions we mean both an abstract view of the program being analyzed and a systematic analysis technique to build such a view. The course shows this by introducing a series of analyses from simple analyses to more general and advanced analyses. Each analysis is chosen with a specific goal in mind. As a new analysis is introduced, it: