Keynote - Program Repair and Trusted Automatic Programming
Automated program repair can be seen as automated code generation at a micro-scale. The research done in automated program repair is thus particularly relevant today with the movement towards automatic programming using tools like Github Copilot. Since automatically generated code from natural language descriptions lack understanding of program semantics, using semantic analysis techniques to auto-correct or rectify the code is of value. In our work we have proposed the use of semantic or symbolic program analysis techniques to automatically rectify code. Effectively symbolic analysis is used to generalize tests into specifications of intent. These techniques can be employed on manually written code as well as automatically generated code. The techniques have been used for security vulnerability repair in software (thereby achieving autonomous cybersecurity) as well as for supporting intelligent tutoring systems. Apart from the practical value of such techniques, conceptually this gave a new direction to use symbolic reasoning. We use symbolic reasoning to derive a logical constraint which would capture what it means for the program to be “correct” thereby inferring specification about intended program behavior. We will conclude with a forward looking perspective on last mile repair of code generated from large language models, as well as acceptable evidences of correctness for such automatically generated code.
Abhik Roychoudhury is a Provost’s Chair Professor of Computer Science at the National University of Singapore, where he has been working since 2001 after receiving his Ph.D. in Computer Science from the State University of New York at Stony Brook in 2000. Abhik’s research focuses on software testing and analysis, software security and trust-worthy software construction. His research was honored with IEEE TCSE New Directions Award in 2022 (jointly with Cristian Cadar) for contributions to symbolic execution, as well as with International Conference on Software Engineering (ICSE) 2023 Most Influential Paper Award for an ICSE 2013 paper suggesting semantic approaches towards program repair. His former doctoral students have been placed all over the world as academics (University College London, Max-Planck Institute, University of Melbourne and other places). He has chaired the major conferences in software engineering as Program co-chair of ICSE 2024, General Chair of FSE 2022 in Singapore, and Program chair of ISSTA 2016. His research group is known for contributions to automatic programming, program repair, fuzzing and symbolic execution.
Fri 23 FebDisplayed time zone: Chennai, Kolkata, Mumbai, New Delhi change
09:00 - 10:00 | |||
09:00 60mKeynote | Keynote - Program Repair and Trusted Automatic Programming Invited Talk |