Nick Giannarakis

About me

I am a fifth year PhD student in the Computer Science department of Princeton University, advised by Professor David Walker. My research interests revolve around programming languages and verification. In my current work, I am applying techniques from these fields (language design, static analysis tools etc.) to help network operators keep calm. The main outcome of this work is a new intermediate verification language for network control planes called NV. On top of NV, we've built Origami a network compression tool to scale fault tolerance analysis to very large networks.

Previously I worked with Professor Andrew Appel on the design of an operational semantics for concurrent languages suitable for end-to-end verification. We used these semantics to prove:

  • the soundness of VST's concurrent separation logic
  • the correctness of CompCert with respect to a concurrent C program
  • and the absence of data-races in the resulting assembly program

You can find my (likely outdated) CV here.



May 2019 - September 2019

Applied Scientist Intern @

June 2017 - September 2017

Research Intern @ Microsoft Research

March 2015 - August 2015

Research Intern @ MPI-SWS

April 2014 - September 2014

Research Intern @ INRIA


2015 -

PhD in Computer Science @ Princeton University


Bachelor/Master in Electrical and Computer Engineering @ National Technical University of Athens