Program Synthesis Using Example Propagation

Niek Mulleners*, Johan Jeuring, Bastiaan Heeren

*Corresponding author for this work

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

Abstract

We present scrybe, an example-based synthesis tool for a statically-typed functional programming language, which combines top-down deductive reasoning in the style of λ2 with SMYTH-style live bidirectional evaluation. During synthesis, example constraints are propagated through sketches to prune and guide the search. This enables SCRYBE to make more effective use of functions provided in the context. To evaluate our tool, it is run on the combined, largely disjoint, benchmarks of λ2    and MYTH. SCRYBE is able to synthesize most of the combined benchmark tasks.

Original languageEnglish
Title of host publicationPractical Aspects of Declarative Languages
Subtitle of host publication25th International Symposium, PADL 2023, Proceedings
EditorsMichael Hanus, Daniela Inclezan
PublisherSpringer, Cham
Pages20-36
Number of pages17
Edition1
ISBN (Electronic)978-3-031-24841-2
ISBN (Print)9783031248405
DOIs
Publication statusPublished - Jan 2023
Event25th International Symposium on Practical Aspects of Declarative Languages, PADL 2023 - Boston, United States
Duration: 16 Jan 202317 Jan 2023
https://popl23.sigplan.org/home/PADL-2023

Publication series

SeriesLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume13880 LNCS
ISSN0302-9743

Symposium

Symposium25th International Symposium on Practical Aspects of Declarative Languages, PADL 2023
Country/TerritoryUnited States
CityBoston
Period16/01/2317/01/23
Internet address

Keywords

  • Constraint propagation
  • Functional programming
  • Input-Output examples
  • Program synthesis

Fingerprint

Dive into the research topics of 'Program Synthesis Using Example Propagation'. Together they form a unique fingerprint.

Cite this