The overfitting problem in automatic program repair

Those who are familiar with machine learning may have heard about overfitting, it is when the the machine learning model overfits the training data and does not generalize. But did you know that in automatic program repair, we have a different kind of overfitting problem. It is when the patch that the program repair tool generates does not generalize. In this blog post I will explain what it is and our current progress on solving this problem. In the text below, the word “overfitting” is only referring to the overfitting problem in automatic program repair.

Presidential election time series models from ckcd, https://xkcd.com/1122/
Presidential election time series models from ckcd, https://xkcd.com/1122/
Read More

Explaining automatic program repair using concrete example

When I started working with automatic program repair (Feb 2018). My first question was: “How the heck can we automatically repair bugs?”. Much like other technologies, once you understand what is going on under the hood. You realize that it is nothing magical, we can solve the problem by simplifying the problem with empirically verified assumptions. So this blog post is intended for people that are interesting in the question, “How the heck can we automatically repair bugs?”. This by no means the state-of-the-art solution in the field, rather than just a very simple approach to illustrate the idea.

Read More