From 0589fc3faa295aa155e8ec9c971af4e0fccfa0b8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marcel=20B=C3=B6hme?= Date: Thu, 19 Dec 2019 09:33:07 +1100 Subject: [PATCH] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index adb465a..165da04 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ # Learn2Fix -Learn2Fix is a human-in-the-loop automatic repair technique for programs that take numeric inputs. Given a test input that reproduces the bug, Learn2Fix uses mutational fuzzing to generate alternative test inputs, and presents some of those to the human to ask whether they also reproduce the bug. Meanwhile, Learn2Fix uses the [Incal](https://github.com/ML-KULeuven/incal) constraint learning tool to construct a Satisfiability Modulo Linear Real Arithmetic SMT(LRA) constraint that is satisfied only by test inputs labeled as reproducing the bug. SMT provides a natural representation of program semantics and is a fundamental building block of symbolic execution and semantic program repair. The learned SMT constraint serves as an automatic bug oracle that can predict the label of new test inputs. Iteratively, the oracle is trained to predict the user’s responses with increasing accuracy. Using the trained oracle, the user can be asked more strategically. The key challenge that Learn2Fix addresses is to maximize the oracle’s accuracy, given only a limited number of queries to the user. +Learn2Fix is a human-in-the-loop automatic repair technique for programs that take numeric inputs. Given a test input that reproduces the bug, Learn2Fix uses mutational fuzzing to generate alternative test inputs, and presents some of those to the human to ask whether those test inputs also reproduce the bug. Meanwhile, Learn2Fix uses the [Incal](https://github.com/ML-KULeuven/incal) constraint learning tool to construct a Satisfiability Modulo Linear Real Arithmetic SMT(LRA) constraint that is satisfied only by test inputs labeled as reproducing the bug. SMT provides a natural representation of program semantics and is a fundamental building block of symbolic execution and semantic program repair. The learned SMT constraint serves as an automatic bug oracle that can predict the label of new test inputs. Iteratively, the oracle is trained to predict the user’s responses with increasing accuracy. Using the trained oracle, the user can be asked more strategically. The key challenge that Learn2Fix addresses is to maximize the oracle’s accuracy, given only a limited number of queries to the user. * You can find the technical details in our ICST'20 paper: https://arxiv.org/abs/1912.07758 * To cite our paper, you can use the following bibtex entry: