Program Repair via Direct State Manipulation

03/20/2018
by   Qinheping Hu, et al.
0

The goal of program repair is to automatically fix programs to meet a specification. We propose a new specification mechanism, direct manipulation, in which the programmer can visualize the trace of a buggy program on a failing input and convey the intended program behavior by manipulating variable values at some location. The repair problem is to find a program that, on the same input, reaches the location identified by the programmer with variable values equal to the manipulated ones. Since a single program execution under-specifies the overall program behavior, we augment our repair problem with quantitative objectives to find the program that agrees with the specification and is closest to the original one with respect to some distance. We formalize the repair problem, build a program repair tool JDial based on the Sketch synthesizer, and show the effectiveness of JDial on representative buggy benchmarks from introductory programming assignments.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
03/28/2019

Connecting Program Synthesis and Reachability: Automatic Program Repair using Test-Input Generation

We prove that certain formulations of program synthesis and reachability...
research
08/17/2022

Input Repair via Synthesis and Lightweight Error Feedback

Often times, input data may ostensibly conform to a given input format, ...
research
01/29/2020

TarTar: A Timed Automata Repair Tool

We present TarTar, an automatic repair analysis tool that, given a timed...
research
07/09/2018

Execution-Guided Neural Program Decoding

We present a neural semantic parser that translatesnatural language ques...
research
03/24/2023

The First Computer Program

In 1837, the first computer program in history was sketched by the renow...
research
01/19/2021

Program Repair for Hyperproperties

We study the repair problem for hyperproperties specified in the tempora...
research
07/24/2023

Graph Neural Networks For Mapping Variables Between Programs – Extended Version

Automated program analysis is a pivotal research domain in many areas of...

Please sign up or login with your details

Forgot password? Click here to reset