English
Related papers

Related papers: Herb.jl: A Unifying Program Synthesis Library

200 papers

Writing complex computer programs to study scientific problems requires careful planning and an in-depth knowledge of programming languages and tools. In this chapter the importance of using the right tool for the right problem is…

Computational Physics · Physics 2010-06-17 Helmut G. Katzgraber

This paper proposes relational program synthesis, a new problem that concerns synthesizing one or more programs that collectively satisfy a relational specification. As a dual of relational program verification, relational program synthesis…

Programming Languages · Computer Science 2018-09-12 Yuepeng Wang , Xinyu Wang , Isil Dillig

Automatic software generation based on some specification is known as program synthesis. Most existing approaches formulate program synthesis as a search problem with discrete parameters. In this paper, we present a novel formulation of…

Artificial Intelligence · Computer Science 2023-04-04 Shantanu Mandal , Todd A. Anderson , Javier Turek , Justin Gottschlich , Abdullah Muzahid

We introduce transductive program synthesis, a new formulation of the program synthesis task that explicitly leverages test inputs during synthesis. While prior approaches to program synthesis--whether based on natural language descriptions…

Artificial Intelligence · Computer Science 2025-10-22 Kang-il Lee , Jahyun Koo , Seunghyun Yoon , Minbeom Kim , Hyukhun Koh , Dongryeol Lee , Kyomin Jung

Program synthesis and repair have emerged as an exciting area of research, driven by the potential for revolutionary advances in programmer productivity. Among most promising ideas emerging for synthesis are syntax-driven search,…

Programming Languages · Computer Science 2017-07-14 Manos Koukoutos , Mukund Raghothaman , Etienne Kneuss , Viktor Kuncak

When giving automated feedback to a student working on a beginner's exercise, many programming tutors run into a completeness problem. On the one hand, we want a student to experiment freely. On the other hand, we want a student to write…

Human-Computer Interaction · Computer Science 2020-11-17 Niek Mulleners , Johan Jeuring , Bastiaan Heeren

Synthesis is the automatic construction of a system from its specification. In classical synthesis algorithms, it is always assumed that the system is "constructed from scratch" rather than composed from reusable components. This, of…

Logic in Computer Science · Computer Science 2015-07-01 Sumit Nain , Yoad Lustig , Moshe Y Vardi

Program synthesis aims to {\it automatically} find programs from an underlying programming language that satisfy a given specification. While this has the potential to revolutionize computing, how to search over the vast space of programs…

Neural and Evolutionary Computing · Computer Science 2022-03-01 Yuan Yuan , Wolfgang Banzhaf

This paper focuses on automated synthesis of divide-and-conquer parallelism, which is a common parallel programming skeleton supported by many cross-platform multithreaded libraries. The challenges of producing (manually or automatically) a…

Programming Languages · Computer Science 2017-01-31 Azadeh Farzan , Victor Nicolet

Fast numerical libraries have been a cornerstone of scientific computing for decades, but this comes at a price. Programs may be tied to vendor specific software ecosystems resulting in polluted, non-portable code. As we enter an era of…

Programming Languages · Computer Science 2019-10-10 Bruce Collie , Philip Ginsbach , Michael F. P. O'Boyle

Scientific computing is increasingly incorporating the advancements in machine learning and the ability to work with large amounts of data. At the same time, machine learning models are becoming increasingly sophisticated and exhibit many…

Programming Languages · Computer Science 2019-07-19 Mike Innes , Alan Edelman , Keno Fischer , Chris Rackauckas , Elliot Saba , Viral B Shah , Will Tebbutt

Generalized sampling is a numerically stable framework for obtaining reconstructions of signals in different bases and frames from their samples. In this paper, we will introduce a carefully documented toolbox for performing generalized…

Mathematical Software · Computer Science 2016-11-24 Robert Dahl Jacobsen , Morten Nielsen , Morten Grud Rasmussen

Despite great advances in program synthesis techniques, they remain algorithmic black boxes. Although they guarantee that when synthesis is successful, the implementation satisfies the specification, they provide no additional information…

Programming Languages · Computer Science 2024-03-07 Amirmohammad Nazari , Souti Chattopadhyay , Swabha Swayamdipta , Mukund Raghothaman

JuMP is an open-source modeling language that allows users to express a wide range of optimization problems (linear, mixed-integer, quadratic, conic-quadratic, semidefinite, and nonlinear) in a high-level, algebraic syntax. JuMP takes…

Optimization and Control · Mathematics 2017-05-08 Iain Dunning , Joey Huchette , Miles Lubin

Since time immemorial an old adage has always seemed to ring true: you cannot use a high-level productive programming language like Python or R for real-time control and embedded-systems programming, you must rewrite your program in C. We…

Systems and Control · Electrical Eng. & Systems 2025-02-10 Fredrik Bagge Carlson , Cody Tapscott , Gabriel Baraldi , Chris Rackauckas

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 is the task of generating a program from a provided specification. Traditionally, this has been treated as a search problem by the programming languages (PL) community and more recently as a supervised learning problem by…

Artificial Intelligence · Computer Science 2018-06-11 Riley Simmons-Edler , Anders Miltner , Sebastian Seung

In this paper we present BilevelJuMP, a new Julia package to support bilevel optimization within the JuMP framework. The package is a Julia library that enables the user to describe both upper and lower-level optimization problems using the…

Optimization and Control · Mathematics 2022-12-21 Joaquim Dias Garcia , Guilherme Bodin , Alexandre Street

In many problems that involve multiple decision making agents, optimal choices for each agent depend on the choices of others. Differential game theory provides a principled formalism for expressing these coupled interactions and recent…

Multiagent Systems · Computer Science 2020-04-07 Lasse Peters , Zachary N. Sunberg

Modern semantic parsers suffer from two principal limitations. First, training requires expensive collection of utterance-program pairs. Second, semantic parsers fail to generalize at test time to new compositions/structures that have not…

Computation and Language · Computer Science 2021-09-07 Inbar Oren , Jonathan Herzig , Jonathan Berant