|
Todd MillsteinProfessor and Chair UCLA Computer Science Department476 Engineering VI Los Angeles, CA 90095-1596 todd@cs.ucla.edu |
For more than a decade I have focused much of my work on network verification: developing programming languages and software verification techniques to obtain provable guarantees on the security and reliability of computer networks. Our open source Batfish network configuration analyzer is used by major tech companies (e.g., ebay) to ensure the security and reliability of their networks; Batfish is the technology underlying Oracle Cloud's Network Path Analyzer tool for their customers; and Batfish is now becoming an AWS-managed open source project.
In my current research I'm continuing to work on network reliability, for example developing techniques for verifying and testing parts of the Domain Name System (DNS). Outside of networking, I'm working to reduce the burden of interactive program verification through lemma synthesis and developing scalable reasoning methods for probabilistic programming languages.
SCALE: Automatically Finding RFC Compliance Bugs in DNS Nameservers (NSDI 2022)
Siva Kesava Reddy Kakarla, Ryan Beckett, Todd Millstein, George Varghese
How Complex is DNS? (HotNets 2021)
Siva Kesava Reddy Kakarla, Ryan Beckett, Todd Millstein, George Varghese
Safe-by-default Concurrency for Modern Programming Languages (TOPLAS)
Lun Liu, Todd Millstein, Madanlal Musuvathi
CS30: Principles and Practices of Computing
an introduction to computing for computer-science majors with no prior
programming experience
CS231:
Types and Programming Languages
an introductory graduate course on
programming language theory and static type systems
CS239: Current Topics in Programming Languages and Systems
a graduate research seminar with varying topics