Autor: |
Heinz Riener, Rüdiger Ehlers, Görschwin Fey |
Jazyk: |
angličtina |
Rok vydání: |
2015 |
Předmět: |
|
Zdroj: |
Electronic Proceedings in Theoretical Computer Science, Vol 178, Iss Proc. FESCA 2015, Pp 22-32 (2015) |
Druh dokumentu: |
article |
ISSN: |
2075-2180 |
DOI: |
10.4204/EPTCS.178.3 |
Popis: |
We propose a path-based approach to program repair for imperative programs. Our repair framework takes as input a faulty program, a logic specification that is refuted, and a hint where the fault may be located. An iterative abstraction refinement loop is then used to repair the program: in each iteration, the faulty program part is re-synthesized considering a symbolic counterexample, where the control-flow is kept concrete but the data-flow is symbolic. The appeal of the idea is two-fold: 1) the approach lazily considers candidate repairs and 2) the repairs are directly derived from the logic specification. In contrast to prior work, our approach is complete for programs with finitely many control-flow paths, i.e., the program is repaired if and only if it can be repaired at the specified fault location. Initial results for small programs indicate that the approach is useful for debugging programs in practice. |
Databáze: |
Directory of Open Access Journals |
Externí odkaz: |
|