This course provides an introduction to the languages used to program computer networks. It will examine recent proposals based on logic, functional, and distributed languages, as well as tools for establishing correctness using automatic solvers, model checkers, and proof assistants.


  • The first lecture will be held on Tuesday, August 28th.
  • Homework 1 is out!
  • Homework 2 is out!
  • Homework 3 is out!
  • Homework 4 is out!