English
Related papers

Related papers: Hierarchical Neural Program Synthesis

200 papers

We present a framework that takes a concurrent program composed of unsynchronized processes, along with a temporal specification of their global concurrent behaviour, and automatically generates a concurrent program with synchronization…

Logic in Computer Science · Computer Science 2012-07-05 Roopsha Samanta

Toward combining inductive reasoning with perception abilities, we develop techniques for neurosymbolic program synthesis where perceptual input is first parsed by neural nets into a low-dimensional interpretable representation, which is…

Artificial Intelligence · Computer Science 2023-06-02 Hao Tang , Kevin Ellis

High-level synthesis, source-to-source compilers, and various Design Space Exploration techniques for pragma insertion have significantly improved the Quality of Results of generated designs. These tools offer benefits such as reduced…

Software Engineering · Computer Science 2025-03-04 Stéphane Pouget , Louis-Noël Pouchet , Jason Cong

Today's programmers, especially data science practitioners, make heavy use of data-processing libraries (APIs) such as PyTorch, Tensorflow, NumPy, Pandas, and the like. Program synthesizers can provide significant coding assistance to this…

Software Engineering · Computer Science 2022-05-19 Daye Nam , Baishakhi Ray , Seohyun Kim , Xianshan Qu , Satish Chandra

A typical way in which a machine acquires knowledge from humans is by programming. Compared to learning from demonstrations or experiences, programmatic learning allows the machine to acquire a novel skill as soon as the program is written,…

Artificial Intelligence · Computer Science 2023-10-19 Leonardo Hernandez Cano , Yewen Pu , Robert D. Hawkins , Josh Tenenbaum , Armando Solar-Lezama

Learning to solve long horizon temporally extended tasks with reinforcement learning has been a challenge for several years now. We believe that it is important to leverage both the hierarchical structure of complex tasks and to use expert…

Machine Learning · Computer Science 2022-10-18 Bharat Prakash , Nicholas Waytowich , Tim Oates , Tinoosh Mohsenin

We present a new framework and associated synthesis algorithms for program synthesis over noisy data, i.e., data that may contain incorrect/corrupted input-output examples. This framework is based on an extension of finite tree automata…

Programming Languages · Computer Science 2021-03-15 Shivam Handa , Martin Rinard

We propose a novel method for automatic program synthesis. P-Tree Programming represents the program search space through a single probabilistic prototype tree. From this prototype tree we form program instances which we evaluate on a given…

Artificial Intelligence · Computer Science 2017-07-13 Christian Oesch

Programming by example is the problem of synthesizing a program from a small set of input / output pairs. Recent works applying machine learning methods to this task show promise, but are typically reliant on generating synthetic examples…

Machine Learning · Computer Science 2019-11-11 Judith Clymo , Haik Manukian , Nathanaël Fijalkow , Adrià Gascón , Brooks Paige

A major bottleneck in search-based program synthesis is the exponentially growing search space which makes learning large programs intractable. Humans mitigate this problem by leveraging the compositional nature of the real world: In…

Artificial Intelligence · Computer Science 2024-12-25 Jonas Witt , Sebastijan Dumančić , Tias Guns , Claus-Christian Carbon

Programs that respond to asynchronous events are challenging to write; they are difficult to reason about and tricky to test and debug. Because these programs can have a huge space of possible input timings and interleaving, the programmer…

Programming Languages · Computer Science 2019-09-26 Julie L Newcomb , Rastislav Bodik

In this thesis we look into programming by example (PBE), which is about finding a program mapping given inputs to given outputs. PBE has traditionally seen a split between formal versus neural approaches, where formal approaches typically…

Software Engineering · Computer Science 2020-09-18 Kiara Grouwstra

The current trends in next-generation exascale systems go towards integrating a wide range of specialized (co-)processors into traditional supercomputers. Due to the efficiency of heterogeneous systems in terms of Watts and FLOPS per…

Programming Languages · Computer Science 2017-01-26 Guillermo Vigueras , Manuel Carro , Salvador Tamarit , Julio Mariño

In this paper, we identify a fragment of second-order logic with restricted quantification that is expressive enough to capture numerous static analysis problems (e.g. safety proving, bug finding, termination and non-termination proving,…

Logic in Computer Science · Computer Science 2015-09-01 Cristina David , Daniel Kroening , Matt Lewis

This paper proposes an adaptive neural-compilation framework to address the problem of efficient program learning. Traditional code optimisation strategies used in compilers are based on applying pre-specified set of transformations that…

Artificial Intelligence · Computer Science 2016-05-27 Rudy Bunel , Alban Desmaison , Pushmeet Kohli , Philip H. S. Torr , M. Pawan Kumar

We develop an approach to estimate the probability that a program sampled from a large language model is correct. Given a natural language description of a programming problem, our method samples both candidate programs as well as candidate…

Software Engineering · Computer Science 2023-10-11 Darren Key , Wen-Ding Li , Kevin Ellis

Synthesizing a program that realizes a logical specification is a classical problem in computer science. We examine a particular type of program synthesis, where the objective is to synthesize a strategy that reacts to a potentially…

Artificial Intelligence · Computer Science 2020-01-01 Alberto Camacho , Sheila A. McIlraith

Automatically constructing a program based on given specifications has been studied for decades. Despite the advances in the field of Program Synthesis, the current approaches still synthesize a block of code snippet and leave the task of…

Software Engineering · Computer Science 2022-01-26 Ali Shokri

Program synthesis -- the automatic generation of code given a specification -- is one of the most fundamental tasks in artificial intelligence (AI) and the dream of many programmers. Numerous synthesizers have been developed for program…

Syntax-guided synthesis is commonly used to generate programs encoding policies. In this approach, the set of programs, that can be written in a domain-specific language defines the search space, and an algorithm searches within this space…

Machine Learning · Computer Science 2024-06-14 Rubens O. Moraes , Levi H. S. Lelis