Hole Refinements for Polymorphic Type-and-Example Driven Synthesis

Research output: Chapter in Book/Report/Conference proceedingConference contributionAcademicpeer-review

Abstract

Many synthesizers implicitly benefit from using polymorphic types, since parametric polymorphism reduces the search space. Additional synthesis constraints may interfere with parametricity. In particular, a polymorphic type may cause otherwise feasible input-output examples to contradict each other. We present Taxi (type-and-example based inferencer), a tool for efficiently reasoning about the feasibility of polymorphic programs specified by input-output examples, and Driver, a tactic language for top-down program synthesis that uses feasibility reasoning to prune the search space. Taxi guarantees that every search state corresponds to a correct (albeit possibly partial) implementation. In addition, it allows for shortcutting the synthesis when a subspecification covers all cases. We show that these techniques have the potential to speed up top-down enumerative type-and-example driven synthesizers.
Original languageEnglish
Title of host publicationProceedings of the 2026 ACM SIGPLAN International Workshop on Partial Evaluation and Program Manipulation (PEPM ’26)
PublisherAssociation for Computing Machinery
Pages17-30
Number of pages14
ISBN (Print)979-8-4007-2357-5
DOIs
Publication statusPublished - 8 Jan 2026

Bibliographical note

Publisher Copyright:
© 2026 Owner/Author.

Keywords

  • container functors
  • example propagation
  • feasibility
  • parametricity
  • program synthesis

Fingerprint

Dive into the research topics of 'Hole Refinements for Polymorphic Type-and-Example Driven Synthesis'. Together they form a unique fingerprint.

Cite this