Many problem domains, including program synthesis and rewrite-based optimization, require searching astronomically large spaces of programs. Existing approaches often rely on building specialized data structures—version-space algebras, finite tree automata, or e-graphs—to compactly represent such spaces. At their core, all these data structures exploit independence of subterms; as a result, they cannot efficiently represent more complex program spaces, where the choices of subterms are entangled.
We introduce equality-constrained tree automata (ECTAs), a new data structure, designed to compactly represent large spaces of programs with entangled subterms. We present efficient algorithms for extracting programs from ECTAs, implemented in a performant Haskell library, ecta
. Using the ecta
library, we construct Hectare
, a type-driven program synthesizer for Haskell. Hectare
significantly outperforms a state-of-the-art synthesizer Hoogle+
— providing an average speedup of 8x — despite its implementation being an order of magnitude smaller.
Tue 13 SepDisplayed time zone: Belgrade, Bratislava, Budapest, Ljubljana, Prague change
13:40 - 15:20 | Program Verification & SynthesisICFP Papers and Events at Linhart Chair(s): Arthur Azevedo de Amorim Boston University | ||
13:40 20mTalk | Verified Symbolic Execution with Kripke Specification Monads (and no Meta-Programming) ICFP Papers and Events Steven Keuchel Vrije Universiteit Brussel, Sander Huyghebaert Vrije Universiteit Brussel, Georgy Lukyanov Newcastle University, UK, Dominique Devriese KU Leuven DOI | ||
14:00 20mTalk | Safe Couplings: Coupled Refinement Types ICFP Papers and Events Lisa Vasilenko IMDEA Software Institute, Niki Vazou IMDEA Software Institute, Gilles Barthe MPI-SP, Germany / IMDEA Software Institute, Spain DOI | ||
14:20 20mTalk | Aeneas: Rust Verification by Functional Translation ICFP Papers and Events DOI | ||
14:40 20mTalk | Searching Entangled Program Spaces ICFP Papers and Events James Koppel Massachusetts Institute of Technology, USA, Zheng Guo University of California, San Diego, Edsko de Vries Well-Typed LLP, Armando Solar-Lezama Massachusetts Institute of Technology, Nadia Polikarpova University of California at San Diego DOI | ||
15:00 20mTalk | Iterating on multiple collections in synchronyJFP Presentation ICFP Papers and Events Stefano Perna , Val Tannen University of Pennsylvania, USA, Limsoon Wong National University of Singapore |