Save Big on Coursera Plus. 7,000+ courses at $160 off. Limited Time Only!
Explore a 19-minute video presentation from POPL 2024 on semantic code refactoring for abstract data types. Delve into a novel method for automating semantic code refactoring tasks, presented by researchers from the University of Texas at Austin and Simon Fraser University. Learn about their approach, which takes an original ADT implementation, a new data representation, and a relational representation invariant to generate a semantically equivalent new ADT implementation. Discover key techniques like counterexample-guided inductive synthesis, reduction to programming-by-example problems, symbolic reasoning with logical abduction, and partial equivalence for effective inductive synthesis. Gain insights into the Revamp tool for refactoring Java classes and its impressive performance in evaluations on real-world GitHub projects.