Ilya SERGEYAssociate Professor
Yale-NUS College, Singapore
Ph.D. (Computer Science, Katholieke Universiteit Leuven, Belgium, 2012)
M.Sc. (Mathematics and Computer Science, Saint Petersburg State University, Russia, 2008)
- Programming Languages & Software Engineering
- Systems & Networking
- Algorithms & Theory
Research Sub Areas
- Design and Implementation of Programming Languages
- Applied Logic for Software Verification
- Concurrent and Distributed Systems
Ilya Sergey is an Associate Professor at School of Computing of National University of Singapore, where he leads the Verified Systems Engineering lab. He also holds a joint appointment at Yale-NUS College and is a lead language designer at Zilliqa, a Singapore FinTech start-up. Ilya received his MSc in Mathematics from St Petersburg University and his PhD in Computer Science from KU Leuven. He was a postdoctoral researcher at IMDEA Software Institute and a faculty at University College London. He joined NUS in 2018, and was promoted to an Associate Professor with Tenure in 2021. Prior to starting his academic career, he worked as a software developer at JetBrains. Ilya does research in programming language design and implementation, software verification, distributed systems, program synthesis and repair. He is the recipient of the 2019 Dahl-Nygaard Junior Prize and Google Faculty Research Award 2017. He designed and co-developed Scilla, a functional programming language for safe smart contracts, used by Zilliqa blockchain. Ilya was an organiser of the ICFP Programming Contest in 2019. He is a Programme Committee Chair for ESOP'22 and APLAS'22, and a member of the steering committees for POPL, PLDI, and ICFP.
Verified Systems Engineering
Collaborators: Mirela Andreea COSTEA
We do research in the design and implementation of programming languages (PL), mathematical models of computation, and computer-assisted formal reasoning. We investigate the theoretical foundations of programming and build tools for ensuring that certain kinds of costly software errors and vulnerabilities never occur in the real-world code, which many people rely upon in their everyday lives.
Collaborators: Mirela Andreea COSTEA
Synthesis of Heap-Manipulating Programs from Separation Logic specifications
A functional language for safe smart contracts
Collaborators: Abhishek TIWARI Abhik ROYCHOUDHURY Abhik ROYCHOUDHURY Abhishek TIWARI Mirela Andreea COSTEA
Static automated concurrency repair at scale
- Cyclic Program Synthesis. Shachar Itzhaky, Hila Peleg, Nadia Polikarpova, Reuben Rowe, and Ilya Sergey. 42nd ACM SIGPLAN conference on Programming Language Design and Implementation PLDI 2021
- Practical Smart Contract Sharding with Ownership and Commutativity Analysis. George Pîrlea, Amrit Kumar, and Ilya Sergey. 42nd ACM SIGPLAN conference on Programming Language Design and Implementation PLDI 2021
- Certifying Certainty and Uncertainty in Approximate Membership Query Structures. Kiran Gopinathan, and Ilya Sergey. 32nd International Conference on Computer-Aided VerificationCAV 2020.
- Safer Smart Contract Programming with Scilla. Ilya Sergey, Vaivaswatha Nagaraj, Jacob Johannsen, Amrit Kumar, Anton Trunov, Ken Chan. 34th ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages and Applications OOPSLA 2019
- Structuring the Synthesis of Heap-Manipulating ProgramsNadia Polikarpova and Ilya Sergey46th ACM SIGPLAN Symposium on Principles of Programming Languages POPL’19
- Programming and Proving with Distributed ProtocolsIlya Sergey, James R. Wilcox, and Zachary Tatlock45th ACM SIGPLAN Symposium on Principles of Programming Languages POPL'18
- RacerD: Compositional Static Race DetectionSam Blackshear, Nikos Gorogiannis, Peter O’Hearn, and Ilya Sergey33rd ACM SIGPLAN Conference on Object-Oriented Programming Systems, Languages and Applications OOPSLA’18
Awards & Honours
- PLDI 2021 Distinguished Paper Award for the work "Cyclic Program Synthesis"
- Yale-NUS Distinguished Researcher Award for 2021
- AITO Dahl-Nygaard Junior Prize for 2019
- OOPSLA 2019 Distinguished Artifact Award, “Safer Smart Contract Programming with Scilla”
- POPL 2019 Distinguished Paper Award for the work "Structuring the Synthesis of Heap-Manipulating Programs"
- Google Faculty Research Award recipient (2017). Google Inc
- CS4215: Programming Language Implementation
- YSC4230: Programming Language Design and Implementation (Yale-NUS College)
- YSC4231 Parallel, Concurrent and Distributed Programming (Yale-NUS College)
- YSC2229: Introductory Data Structures and Algorithms (Yale-NUS College)