Write a Blog >>
Wed 22 Jan 2020 12:07 - 12:30 at Ile de France III (IDF III) - Synthesis Chair(s): Mohsen Lesani

We present a new technique for automatically synthesizing replacement classes. The technique starts with an original class O and a potential replacement class R, then uses R to synthesize a new class that implements the same interface and provides the same functionality as O. Critically, our technique works with a synthesized inter-class equivalence predicate between the states of O and R. It uses this predicate to ensure that original and synthesized methods leave corresponding O and R objects in equivalent states. The predicate therefore enables the technique to synthesize individual replacement methods in isolation while still obtaining a replacement class that leaves the original and replacement objects in equivalent states after arbitrarily long method invocation sequences. We have implemented the technique and evaluated it using popular Java classes from open-source libraries such as JDK and apache. The results from this implementation highlight the effectiveness of the technique in synthesizing replacement classes.

Slides (POPL-20-final.key)5.33MiB

Wed 22 Jan

Displayed time zone: Saskatchewan, Central America change

11:45 - 12:30
SynthesisResearch Papers at Ile de France III (IDF III)
Chair(s): Mohsen Lesani University of California, Riverside
11:45
22m
Talk
Program Synthesis by Type-Guided Abstraction Refinement
Research Papers
Zheng Guo University of California, San Diego, Michael B. James University of California, San Diego, David Justo University of California, San Diego, Jiaxiao Zhou University of California, San Diego, Ziteng Wang University of California, San Diego, Ranjit Jhala University of California, San Diego, Nadia Polikarpova University of California, San Diego
Link to publication DOI Media Attached File Attached
12:07
22m
Talk
Synthesizing Replacement Classes
Research Papers
Malavika Samak CSAIL, MIT, Deokhwan Kim CSAIL, MIT, Martin C. Rinard MIT
Link to publication DOI Media Attached File Attached