English
Related papers

Related papers: Mason: Type- and Name-Guided Program Synthesis

200 papers

This article presents resource-guided synthesis, a technique for synthesizing recursive programs that satisfy both a functional specification and a symbolic resource bound. The technique is type-directed and rests upon a novel type system…

Programming Languages · Computer Science 2019-04-19 Tristan Knoth , Di Wang , Nadia Polikarpova , Jan Hoffmann

This paper develops a new framework for program synthesis, called semantics-guided synthesis (SemGuS), that allows a user to provide both the syntax and the semantics for the constructs in the language. SemGuS accepts a recursively defined…

Programming Languages · Computer Science 2020-11-12 Jinwoo Kim , Qinheping Hu , Loris D'Antoni , Thomas Reps

Design patterns are distilled from many real systems to catalog common programming practice. However, some object-oriented design patterns are distorted or overly complicated because of the lack of supporting programming language constructs…

Programming Languages · Computer Science 2019-06-03 Gerald Baumgartner , Konstantin Läufer , Vincent F. Russo

Throughout the history of functional programming, recursion has emerged as a natural method for describing loops in programs. However, there does often exist a substantial cognitive distance between the recursive definition and the simplest…

Programming Languages · Computer Science 2020-02-17 Satoshi Egi , Yuichi Nishiwaki

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…

Programming Languages · Computer Science 2015-10-29 Jonathan Frankle

A key challenge in program synthesis is the astronomical size of the search space the synthesizer has to explore. In response to this challenge, recent work proposed to guide synthesis using learned probabilistic models. Obtaining such a…

Programming Languages · Computer Science 2020-10-20 Shraddha Barke , Hila Peleg , Nadia Polikarpova

JSON (JavaScript Object Notation) is a data encoding that allows structured data to be used in a standardized and straightforward manner across systems. Schemas for JSON-formatted data can be constructed using the JSON Schema standard,…

Programming Languages · Computer Science 2025-08-13 Jack Stanek , Daniel Killough

Program synthesis is challenging largely because of the difficulty of search in a large space of programs. Human programmers routinely tackle the task of writing complex programs by writing sub-programs and then analyzing their intermediate…

Programming Languages · Computer Science 2023-10-31 Augustus Odena , Kensen Shi , David Bieber , Rishabh Singh , Charles Sutton , Hanjun Dai

Multi-modal program synthesis refers to the task of synthesizing programs (code) from their specification given in different forms, such as a combination of natural language and examples. Examples provide a precise but incomplete…

Artificial Intelligence · Computer Science 2021-09-08 Kia Rahmani , Mohammad Raza , Sumit Gulwani , Vu Le , Daniel Morris , Arjun Radhakrishna , Gustavo Soares , Ashish Tiwari

The goal of constraint-based sequence mining is to find sequences of symbols that are included in a large number of input sequences and that satisfy some constraints specified by the user. Many constraints have been proposed in the…

Artificial Intelligence · Computer Science 2015-02-26 Benjamin Negrevergne , Tias Guns

Non-free data types are data types whose data have no canonical forms. For example, multisets are non-free data types because the multiset $\{a,b,b\}$ has two other equivalent but literally different forms $\{b,a,b\}$ and $\{b,b,a\}$.…

Programming Languages · Computer Science 2019-05-28 Satoshi Egi , Yuichi Nishiwaki

In recent years, researchers have explored component-based synthesis, which aims to automatically construct programs that operate by composing calls to existing APIs. However, prior work has not considered efficient synthesis of methods…

Programming Languages · Computer Science 2021-04-09 Sankha Narayan Guria , Jeffrey S. Foster , David Van Horn

We present a method for synthesizing recursive functions that provably satisfy a given specification in the form of a polymorphic refinement type. We observe that such specifications are particularly suitable for program synthesis for two…

Programming Languages · Computer Science 2016-04-22 Nadia Polikarpova , Ivan Kuraj , Armando Solar-Lezama

Syntax-guided synthesis is a paradigm in program synthesis in which the search space of candidate solutions is constrained by a syntactic template in the form of a grammar. These syntactic constraints serve two purposes: constraining the…

Software Engineering · Computer Science 2023-06-06 Yixuan Li , Federico Mora , Elizabeth Polgreen , Sanjit A. Seshia

A type system is introduced for a generic Object Oriented programming language in order to infer resource upper bounds. A sound andcomplete characterization of the set of polynomial time computable functions is obtained. As a consequence,…

Programming Languages · Computer Science 2018-02-20 Emmanuel Hainry , Romain Péchoux

We present a new domain-agnostic synthesis technique for generating programs from input-output examples. Our method, called metric program synthesis, relaxes the well-known observational equivalence idea (used widely in bottom-up…

Programming Languages · Computer Science 2022-10-12 John Feser , Isil Dillig , Armando Solar-Lezama

A key challenge for reinforcement learning is solving long-horizon planning problems. Recent work has leveraged programs to guide reinforcement learning in these settings. However, these approaches impose a high manual burden on the user…

Artificial Intelligence · Computer Science 2021-11-03 Yichen David Yang , Jeevana Priya Inala , Osbert Bastani , Yewen Pu , Armando Solar-Lezama , Martin Rinard

Effective program synthesis requires a way to minimise the number of candidate programs being searched. A type signature, for example, places some small restrictions on the structure of potential candidates. We introduce and motivate a…

Programming Languages · Computer Science 2019-07-15 Bruce Collie , Michael O'Boyle

In today's software world with its cornucopia of reusable software libraries, when a programmer is faced with a programming task that they suspect can be completed through the use of a library, they often look for code examples using a…

Software Engineering · Computer Science 2021-10-08 Geert Heyman , Rafael Huysegems , Pascal Justen , Tom Van Cutsem

Program synthesis is the process of automatically translating a specification into computer code. Traditional synthesis settings require a formal, precise specification. Motivated by computer education applications where a student learns to…

Artificial Intelligence · Computer Science 2018-06-05 Evan Hernandez , Ara Vartanian , Xiaojin Zhu
‹ Prev 1 2 3 10 Next ›