Type-Directed Synthesis of Products
Jonathan Frankle

TL;DR
This paper extends a type-directed program synthesis system to handle product types, improving its expressiveness and efficiency by integrating logical conjunctions and focusing techniques, while maintaining performance.
Contribution
The thesis introduces the handling of product types into the synthesis engine, enhancing its theoretical foundation and practical implementation for more expressive program synthesis.
Findings
Successfully integrated product types into the synthesis system.
Maintained performance competitiveness with the original synthesizer.
Enhanced the system's extensibility for future improvements.
Abstract
Software synthesis - the process of generating complete, general-purpose programs from specifications - has become a hot research topic in the past few years. For decades the problem was thought to be insurmountable: the search space of possible programs is far too massive to efficiently traverse. Advances in efficient constraint solving have overcome this barrier, enabling a new generation of effective synthesis systems. Most existing systems compile synthesis tasks down to low-level SMT instances, sacrificing high-level semantic information while solving only first-order problems (i.e., filling integer holes). Recent work takes an alternative approach, using the Curry-Howard isomorphism and techniques from automated theorem proving to construct higher-order programs with algebraic datatypes. My thesis involved extending this type-directed synthesis engine to handle product types,…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsLogic, programming, and type systems · Formal Methods in Verification · Model-Driven Software Engineering Techniques
