Ilya Sergey

Ilya Sergey (born 1986) is a Russian computer scientist and an Associate Professor at the School of Computing at the National University of Singapore, where he leads the Verified Systems Engineering lab. Sergey does research in programming language design and implementation, software verification, distributed systems, program synthesis, and program repair. He is known for designing the Scilla programming language for smart contracts. He is the author of the free online book Programs and Proofs: Mechanizing Mathematics with Dependent Types, Lecture notes with exercises, which introduce the basic concepts of mechanized reasoning and interactive theorem proving using Coq.

Sergey holds a joint appointment at Yale-NUS College and is a lead language designer at Zilliqa. He received his MSc in 2008 at Saint Petersburg State University and his PhD in 2012 at KU Leuven. Before joining NUS, he was a postdoctoral researcher at IMDEA Software Institute and on the faculty of University College London. Prior to starting an academic career, he worked as a software developer at JetBrains.

Awards and honors

 * 2019 Dahl-Nygaard Junior Prize
 * OOPSLA 2019 Distinguished Artifact Award for the artifact Scilla discussed in article
 * POPL 2019 Distinguished Paper Award for the paper Structuring the synthesis of heap-manipulating programs
 * PLDI 2021 Distinguished Paper Award for the paper Cyclic Program Synthesis
 * Yale-NUS 2021 Distinguished Researcher award