English
Related papers

Related papers: SynRG: Syntax Guided Synthesis of Expressions with…

200 papers

We present a neural program synthesis approach integrating components which write, execute, and assess code to navigate the search space of possible programs. We equip the search process with an interpreter or a read-eval-print-loop (REPL),…

Programming Languages · Computer Science 2019-06-12 Kevin Ellis , Maxwell Nye , Yewen Pu , Felix Sosa , Josh Tenenbaum , Armando Solar-Lezama

The problem of automatically generating a computer program from some specification has been studied since the early days of AI. Recently, two competing approaches for automatic program learning have received significant attention: (1)…

Artificial Intelligence · Computer Science 2017-03-23 Jacob Devlin , Jonathan Uesato , Surya Bhupatiraju , Rishabh Singh , Abdel-rahman Mohamed , Pushmeet Kohli

In this paper, we present a novel approach to synthesize invariant clusters for polynomial programs. An invariant cluster is a set of program invariants that share a common structure, which could, for example, be used to save the needs for…

Systems and Control · Computer Science 2022-03-16 Qiuye Wang , Lihong Zhi , Naijun Zhan , Bai Xue , Zhi-hong Yang

In this paper we describe SYNERGY, which is a highly parallelizable, linear planning system that is based on the genetic programming paradigm. Rather than reasoning about the world it is planning for, SYNERGY uses artificial selection,…

Artificial Intelligence · Computer Science 2007-05-23 Ion Muslea

In formal synthesis of reactive systems an implementation of a system is automatically constructed from its formal specification. The great advantage of synthesis is that the resulting implementation is correct by construction; therefore…

Logic in Computer Science · Computer Science 2019-01-04 Hadas Kress-Gazit , Hazem Torfah

Software engineers mainly write code by editing existing programs. In contrast, language models (LMs) autoregressively synthesize programs in a single pass. One explanation for this is the scarcity of sequential edit data. While…

Machine Learning · Computer Science 2025-02-12 Ulyana Piterbarg , Lerrel Pinto , Rob Fergus

Program synthesis techniques offer significant new capabilities in searching for programs that satisfy high-level specifications. While synthesis has been thoroughly explored for input/output pair specifications (programming-by-example),…

Human-Computer Interaction · Computer Science 2019-09-27 Will Crichton

Software implementations of controllers for physical systems are at the core of many embedded systems. The design of controllers uses the theory of dynamical systems to construct a mathematical control law that ensures that the controlled…

Systems and Control · Computer Science 2012-04-16 Rupak Majumdar , Indranil Saha , Majid Zamani

Every program should be accompanied by a specification that describes important aspects of the code's behavior, but writing good specifications is often harder than writing the code itself. This paper addresses the problem of synthesizing…

Programming Languages · Computer Science 2024-02-06 Kanghee Park , Loris D'Antoni , Thomas Reps

Template-based synthesis, also known as sketching, is a localized approach to program synthesis in which the programmer provides not only a specification, but also a high-level ``sketch'' of the program. The sketch is basically a partial…

Programming Languages · Computer Science 2024-03-04 Amir Kafshdar Goharshady , S. Hitarth , Fatemeh Mohammadi , Harshit J Motwani

We explore and formalize the task of synthesizing programs over noisy data, i.e., data that may contain corrupted input-output examples. By formalizing the concept of a Noise Source, an Input Source, and a prior distribution over programs,…

Programming Languages · Computer Science 2021-04-29 Shivam Handa , Martin Rinard

Our goal is to build systems which write code automatically from the kinds of specifications humans can most easily provide, such as examples and natural language instruction. The key idea of this work is that a flexible combination of…

Artificial Intelligence · Computer Science 2019-06-06 Maxwell Nye , Luke Hewitt , Joshua Tenenbaum , Armando Solar-Lezama

Inspired by a concrete industry problem we consider the input synthesis problem for hybrid systems: given a hybrid system that is subject to input from outside (also called disturbance or noise), find an input sequence that steers the…

Systems and Control · Computer Science 2016-02-22 Takumi Akazaki , Ichiro Hasuo , Kohei Suenaga

Automated synthesis of reactive systems from specifications has been a topic of research for decades. Recently, a variety of approaches have been proposed to extend synthesis of reactive systems from proposi- tional specifications towards…

Software Engineering · Computer Science 2018-03-23 Andreas Katis , Grigory Fedyukovich , Huajun Guo , Andrew Gacek , John Backes , Arie Gurfinkel , Michael W. Whalen

We describe techniques for synthesis and verification of recursive functional programs over unbounded domains. Our techniques build on top of an algorithm for satisfiability modulo recursive functions, a framework for deductive synthesis,…

Programming Languages · Computer Science 2013-04-23 Etienne Kneuss , Viktor Kuncak , Ivan Kuraj , Philippe Suter

In program synthesis there is a well-known trade-off between concise and strong specifications: if a specification is too verbose, it might be harder to write than the program; if it is too weak, the synthesised program might not match the…

Programming Languages · Computer Science 2020-01-30 Andreea Costea , Amy Zhu , Nadia Polikarpova , Ilya Sergey

We introduce the first program synthesis engine implemented inside an SMT solver. We present an approach that extracts solution functions from unsatisfiability proofs of the negated form of synthesis conjectures. We also discuss novel…

Logic in Computer Science · Computer Science 2015-06-24 Andrew Reynolds , Morgan Deters , Viktor Kuncak , Cesare Tinelli , Clark Barrett

Asynchronous programming is widely adopted for building responsive and efficient software, and modern languages such as C# provide async/await primitives to simplify the use of asynchrony. In this paper, we propose an approach for…

Programming Languages · Computer Science 2022-09-15 Sidi Mohamed Beillahi , Ahmed Bouajjani , Constantin Enea , Shuvendu Lahiri

This work introduces (1) a technique that allows large language models (LLMs) to leverage user-provided code when solving programming tasks and (2) a method to iteratively generate modular sub-functions that can aid future code generation…

Machine Learning · Computer Science 2023-12-05 Patrick Hajali , Ignas Budvytis

Program synthesis with language models (LMs) has unlocked a large set of reasoning abilities; code-tuned LMs have proven adept at generating programs that solve a wide variety of algorithmic symbolic manipulation tasks (e.g. word…

Computation and Language · Computer Science 2024-11-05 Nathaniel Weir , Muhammad Khalifa , Linlu Qiu , Orion Weller , Peter Clark