I am Andrew K. Hirsch, a Postdoctoral Researcher at the Max Planck Institute for Software Systems in Saarbrücken, Germany. I work with Deepak Garg in the Foundations of Computer Security group on applying programming-language theory to computer security.

I earned my Ph.D. in 2019 from Cornell University in Ithaca, NY, USA. There, I worked with Ross Tate on programming-language foundations, focusing on the theory of computational effects. Before that, I attended The George Washington University in Washington, DC, where I earned a Bachelor’s of Science degree in Computer Science and Pure Mathematics.

My Work at a Glance


My research involves applying methods from the theory of programming languages and mathematical logic to computer security. I’m especially focused on static information-flow control and authorization logic. I’m also interested in the theory of effects more broadly, especially reasoning about effects in lazy programming.


I have acted as a teaching assistant in several courses, both at Cornell and at George Washington. I have helped develop several of these courses, including the Programming Languages course at George Washington and a unit on Coq for the Functional Programming course at Cornell.


In my role as a computer scientist, I have acted in service to both my research community and my local community. On the research side, I have acted as a reviewer and have organized several meetings, including a regional meeting which attracted researchers from Cornell, Rochester Institute of Technology, Carnegie Mellon, and more.

Locally, I worked with the Ithaca School District to teach mathematics and computer science in elementary schools, giving young students a positive experience with both.

Research Areas

Information-Flow Control

Computational Effects

Authorization Logic

Papers By Date