JFIX: Semantics-Based Repair of Java Programs via Symbolic PathFinder
Mon 10 Jul 2017 15:05 - 16:00 at Bren 1424 - Demonstrations 1
Recently there has been a proliferation of automated program repair (APR) techniques, targeting various programming languages. Such techniques can be generally classified into two families: syntactic- and semantics-based. Semantics-based APR, on which we focus, typically uses symbolic execution to infer semantic constraints and then program synthesis to construct repairs conforming to them. While syntactic-based APR techniques have been shown successful on bugs in real-world programs written in both C and Java, semantics-based APR techniques mostly target C programs. This leaves empirical comparisons of the APR families not fully explored, and developers without a Java-based semantics APR technique. We present JFix, a semantics-based APR framework that targets Java, and an associated Eclipse plugin. JFix is implemented atop Symbolic PathFinder, a well-known symbolic execution engine for Java programs. It extends one particular APR technique (Angelix), and is designed to be sufficiently generic to support a variety of such techniques. We demonstrate that semantics-based APR can indeed efficiently and effectively repair a variety of classes of bugs in large real-world Java programs. This supports our claim that the framework can both support developers seeking semantics-based repair of bugs in Java programs, as well as enable larger scale empirical studies comparing syntactic- and semantics-based APR targeting Java. The demonstration of our tool is available via the project website at: https://xuanbachle.github.io/semanticsrepair/
Mon 10 JulDisplayed time zone: Tijuana, Baja California change
14:35 - 15:05 | Lightning TalksDemonstrations at Bren 1414 Chair(s): Yuriy Brun University of Massachusetts, Amherst, Neha Rungta Amazon Web Services | ||
14:35 2mDemonstration | Phriky-Units: A Lightweight, Annotation-Free Physical Unit Inconsistency Detection Tool Demonstrations John-Paul Ore University of Nebraska-Lincoln, USA, Carrick Detweiler University of Nebraska-Lincoln, USA, Sebastian Elbaum University of Nebraska-Lincoln, USA DOI | ||
14:37 2mDemonstration | A Suite of Tools for Making Effective Use of Automatically Generated Tests Demonstrations DOI | ||
14:39 2mDemonstration | ReDeCheck: An Automatic Layout Failure Checking Tool for Responsively Designed Web Pages Demonstrations Thomas Walsh University of Sheffield, UK, Gregory Kapfhammer Allegheny College, USA, Phil McMinn University of Sheffield DOI | ||
14:41 2mDemonstration | CUT: Automatic Unit Testing in the Cloud Demonstrations Alessio Gambi Saarland University, Germany, Sebastian Kappler Saarland University, Germany, Johannes Lampel Saarland University, Germany, Andreas Zeller Saarland University DOI | ||
14:43 2mDemonstration | XFix: An Automated Tool for the Repair of Layout Cross Browser Issues Demonstrations Sonal Mahajan University of Southern California, USA, Abdulmajeed Alameer University of Southern California, USA, Phil McMinn University of Sheffield, William G.J. Halfond University of Southern California DOI | ||
14:45 2mDemonstration | THEMIS: A Tool for Decentralized Monitoring Algorithms Demonstrations Antoine El-Hokayem Grenoble Alpes University, France / Inria, France / CNRS, France, Yliès Falcone Univ. Grenoble Alpes, Inria DOI | ||
14:47 2mDemonstration | JFIX: Semantics-Based Repair of Java Programs via Symbolic PathFinder Demonstrations Xuan-Bach D. Le Singapore Management University, Singapore, Duc-Hiep Chu National University of Singapore, David Lo Singapore Management University, Claire Le Goues Carnegie Mellon University, Willem Visser Stellenbosch University DOI | ||
14:49 2mDemonstration | ArtForm: A Tool for Exploring the Codebase of Form-Based Websites Demonstrations Ben Spencer University of Oxford, Michael Benedikt University of Oxford, UK, Anders Møller Aarhus University, Franck van Breugel York University, Canada DOI | ||
14:52 2mDemonstration | ParTeCL: Parallel Testing using OpenCL Demonstrations Vanya Yaneva University of Edinburgh, UK, Ajitha Rajan University of Edinburgh, UK, Christophe Dubach University of Edinburgh DOI | ||
14:54 2mDemonstration | Verifying Digital Systems with MATLAB Demonstrations Lennon Chaves Federal University of Amazonas, Brazil, Iury Bessa Federal University of Amazonas, Brazil, Lucas C. Cordeiro University of Oxford, UK, Eddie Lima Samsung Electronics, Brazil, Daniel Kroening University of Oxford DOI | ||
14:56 2mDemonstration | SealTest: A Simple Library for Test Sequence Generation Demonstrations Sylvain Hallé Université du Québec à Chicoutimi, Canada, Raphael Khoury Université du Québec à Chicoutimi, Canada DOI | ||
14:58 2mDemonstration | GitcProc: A Tool for Processing and Classifying GitHub Commits Demonstrations Casey Casalnuovo University of California at Davis, USA, Yagnik Suchak University of California at Davis, USA, Baishakhi Ray , Cindy Rubio-González University of California, Davis DOI | ||
15:00 2mDemonstration | Caret-HM: Recording and Replaying Android User Sessions with Heat Map Generation using UI State Clustering Demonstrations DOI | ||
15:02 2mDemonstration | LabPal: Repeatable Computer Experiments Made Easy Demonstrations Sylvain Hallé Université du Québec à Chicoutimi, Canada DOI |
15:05 - 16:00 | |||
15:05 55mDemonstration | GitcProc: A Tool for Processing and Classifying GitHub Commits Demonstrations Casey Casalnuovo University of California at Davis, USA, Yagnik Suchak University of California at Davis, USA, Baishakhi Ray , Cindy Rubio-González University of California, Davis DOI | ||
15:05 55mDemonstration | ArtForm: A Tool for Exploring the Codebase of Form-Based Websites Demonstrations Ben Spencer University of Oxford, Michael Benedikt University of Oxford, UK, Anders Møller Aarhus University, Franck van Breugel York University, Canada DOI | ||
15:05 55mDemonstration | LabPal: Repeatable Computer Experiments Made Easy Demonstrations Sylvain Hallé Université du Québec à Chicoutimi, Canada DOI | ||
15:05 55mDemonstration | CUT: Automatic Unit Testing in the Cloud Demonstrations Alessio Gambi Saarland University, Germany, Sebastian Kappler Saarland University, Germany, Johannes Lampel Saarland University, Germany, Andreas Zeller Saarland University DOI | ||
15:05 55mDemonstration | A Suite of Tools for Making Effective Use of Automatically Generated Tests Demonstrations DOI | ||
15:05 55mDemonstration | Caret-HM: Recording and Replaying Android User Sessions with Heat Map Generation using UI State Clustering Demonstrations DOI | ||
15:05 55mDemonstration | JFIX: Semantics-Based Repair of Java Programs via Symbolic PathFinder Demonstrations Xuan-Bach D. Le Singapore Management University, Singapore, Duc-Hiep Chu National University of Singapore, David Lo Singapore Management University, Claire Le Goues Carnegie Mellon University, Willem Visser Stellenbosch University DOI |