Principal Investigators
Visitors
Staff and Students
Additional Affiliates
Abhik Roychoudhury is a Provost's Chair Professor of Computer Science at the National University of Singapore, where he has been since 2001 after receiving his Ph.D. in Computer Science from the State University of New York at Stony Brook in 2000. He is the Director of the National Satellite of Excellence in Trustworthy Software Systems at Singapore (2019-23). He has previously led the TSUNAMi research center (2015-20), a large five-year long targeted research effort funded by National Research Foundation in the domain of trust-worthy software. He has also helped set up the Singapore Cyber-security Consortium (2016-22), which is a consortium of 25 companies in the cyber-security space engaging with academia for research and collaboration. Abhik's research focuses on software testing and analysis, software security and trust-worthy software construction. His research on automatically repairing programs at a large scale contributes to the vision of self-healing software. His research team is known for contributions to program repair, and fuzz testing.
Ilya Sergey is an Associate Professor at the 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 from St Petersburg University and PhD from KU Leuven. Before joining NUS, he was a postdoctoral researcher at IMDEA Software Institute and a faculty at University College London. 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 a recipient of distinguished paper awards at POPL and PLDI, the 2019 Dahl-Nygaard Junior Prize, the 2021 Yale-NUS Distinguished Researcher Award, and a Google Faculty Research Award.
Wei-Ngan Chin received the BSc and MSc degree in computer science from the University of Manchester and the PhD degree in computing from Imperial College, London. He is presently an associate professor with the Department of Computer Science, National University of Singapore. His research interests are in programming languages and software engineering. He has worked on various program analyses and verification techniques that are aimed at clarity, dependability, and reusability. His recent research topics include software dependability, resource bounds analysis for embedded systems, and OO genericity.
Andreea Costea's primary research interests revolve around the programming language design and implementation. She is particularly interested in the area of software verification for critical code, program synthesis and repair. More specifically, she has been involved in a series of verification projects which target the memory safety of heap-manipulating programs.
Ridwan Shariffdeen's main research focus is on automated program repair, software security and software engineering automation. In particular, he contributed to the field of security patch transplantation and backporting in the context of the Linux Kernel project.
Yahui Song has been working on automated temporal verification for several domains, including reactive Systems, time-critical systems, and algebraic effects/handlers. Her recent research focuses and interests are temporal-property guided repair, formal verification, and logic.
Yuntong Zhang is a second-year PhD Student and Research Assistant in the Department of Computer Science at the School of Computing, National University of Singapore, advised by Prof. Abhik Roychoudhury.
Zhiyu Fan is a fourth-year PhD student in the Department of Computer Science at the School of Computing, National University of Singapore, advised by Prof. Abhik Roychoudhury. His research interests lie in the areas of automated program repair, large language models, with a focus on intelligent tutoring for programming education.
LI Wenhua is a third-year PhD student in the Department of Computer Science at the School of Computing, National University of Singapore. He is under the supervision of Prof. Wei-Ngan Chin. His research focuses on program logic, automated bug finding/verification and program repair.
Ruan Haifeng is a second-year PhD Student in the Department of Computer Science at the School of Computing, National University of Singapore, advised by Prof. Abhik Roychoudhury.
Ernest Guok is a second-year PhD Student in the Department of Computer Science at the School of Computing, National University of Singapore, advised by Prof. Wei-Ngan Chin. His current research focuses around verification of security protocols. Other research interests include security vulnerabilities identification/repair, data visualisation, human-computer interaction and computer graphics techniques.
Yu Liu is a third-year PhD Student in the Department of Computer Science at the School of Computing, National University of Singapore, advised by Prof. Abhik Roychoudhury, Prof. Sergey Mechtaev, and Prof. Emmanuel Letier.
Kiran Gopinathan is a fourth-year PhD Student in the Department of Computer Science at the School of Computing, National University of Singapore, advised by Prof. Ilya Sergey. The primary focus of Kiran's research is on techniques for scalable formal verification of programs in interactive theorem provers (such as Coq).
Martin Mirchev is a first-year PhD Student in the Department of Computer Science at the School of Computing, National University of Singapore, advised by Prof. Abhik Roychoudhury. His main research interest is static program analysis, automated program repair, and type systems.
Sung Yong Kim is a first-year Master Student in the Department of Computer Science at the School of Computing, National University of Singapore, advised by Prof. Abhik Roychoudhury. He is in the NUS French Double Degree Programme and his research interests are software security, automated program repair, and network security.
Gregory is a Research Assistant Professor at the National University of Singapore and currently serves as the Assistant Director of the National Satellite of Excellence in Trustworthy Software Systems (Singapore).
Previously, Gregory received his BSc (Mathematics), BEng (Software) and Phd (Computer Science) from the University of Melbourne. From 2011 Gregory works at the National University of Singapore.
Gregory's research interests include: systems, security, binary rewriting, programming languages, constraint programming, functional programming and rewrite systems.
Xiang Gao is a Pre-tenure Associate Professor at Beihang University. Before joining Beihang, he was a postdoc at National University of Singapore under the supervision of Abhik Roychoudhury. He has been a PhD student in the same group. He got his bachelor degree of Computer Science (Elite Class) from ShanDong University in 2016.
His research is focused on using program analysis, test generation and formal method to aid users in fixing software bugs and writing programs. He designs techniques to improve the quality of automatically generated programs.
Umair Z. Ahmed is a Research Fellow at the National University of Singapore with Dr. Ben Leong and Dr. Abhik Roychoudhury. He obtained his PhD from IIT-Kanpur in 2019, where he is supervised by Dr. Amey Karkare and Dr. Sumit Gulwani. His research interests include intelligent tutoring systems and automated program repair.
Yannic Noller is an Assistant Professor in the Information Systems Technology and Design (ISTD) pillar at Singapore University of Technology and Design (SUTD). Before joining SUTD in August 2023, Yannic was a Research Assistant Professor in the Department of Computer Science at the National University of Singapore (NUS), and served as the Assistant Director of the Ministry of Education (MoE) Tier 3 program on Automated Program Repair. He pursued his Ph.D. in Computer Science in the Software Engineering group (Prof. Lars Grunske) at the Humboldt-Universität zu Berlin, Germany.
Yannic's general research interests are automated software engineering, software testing, program repair, intelligent tutoring systems, and human-aspects in software engineering.