English
Related papers

Related papers: Programming Not Only by Example

200 papers

Probabilistic programs are key to deal with uncertainty in e.g. controller synthesis. They are typically small but intricate. Their development is complex and error prone requiring quantitative reasoning over a myriad of alternative…

Software Engineering · Computer Science 2019-04-30 Milan Češka , Christian Hensel , Sebastian Junges , Joost-Pieter Katoen

When a model makes a consequential decision, e.g., denying someone a loan, it needs to additionally generate actionable, realistic feedback on what the person can do to favorably change the decision. We cast this problem through the lens of…

Artificial Intelligence · Computer Science 2022-06-22 Goutham Ramakrishnan , Yun Chan Lee , Aws Albarghouthi

This paper describes a way to improve the scalability of program synthesis by exploiting modularity: larger programs are synthesized from smaller programs. The key issue is to make each "larger-created-from-smaller" synthesis sub-problem be…

Programming Languages · Computer Science 2023-08-15 Kanghee Park , Keith J. C. Johnson , Loris D'Antoni , Thomas Reps

The advent of increasingly powerful language models has raised expectations for language-based interactions. However, controlling these models is a challenge, emphasizing the need to be able to investigate the feasibility and value of their…

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

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

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

Program synthesis is the task of automatically generating expressions that satisfy a given specification. Program synthesis techniques have been used to automate the generation of loop invariants in code, synthesize function summaries, and…

Logic in Computer Science · Computer Science 2020-10-13 Elizabeth Polgreen , Sanjit A. Seshia

When writing programs, people have the ability to tackle a new complex task by decomposing it into smaller and more familiar subtasks. While it is difficult to measure whether neural program synthesis methods have similar capabilities, what…

Machine Learning · Computer Science 2023-10-31 Kensen Shi , Joey Hong , Manzil Zaheer , Pengcheng Yin , Charles Sutton

In component-based program synthesis, the synthesizer generates a program given a library of components (functions). Existing component-based synthesizers have difficulty synthesizing loops and other control structures, and they often…

Programming Languages · Computer Science 2018-11-27 Kensen Shi , Jacob Steinhardt , Percy Liang

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

This paper addresses the problem of preference learning, which aims to align robot behaviors through learning user specific preferences (e.g. "good pull-over location") from visual demonstrations. Despite its similarity to learning factual…

Robotics · Computer Science 2025-01-16 Sadanand Modak , Noah Patton , Isil Dillig , Joydeep Biswas

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

Large language models can perform various reasoning tasks by using chain-of-thought prompting, which guides them to find answers through step-by-step demonstrations. However, the quality of the prompts depends on the demonstrations given to…

Computation and Language · Computer Science 2023-02-02 Zhihong Shao , Yeyun Gong , Yelong Shen , Minlie Huang , Nan Duan , Weizhu Chen

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

Neural models excel at extracting statistical patterns from large amounts of data, but struggle to learn patterns or reason about language from only a few examples. In this paper, we ask: Can we learn explicit rules that generalize well…

Computation and Language · Computer Science 2021-06-15 Saujas Vaduguru , Aalok Sathe , Monojit Choudhury , Dipti Misra Sharma

For software interacting directly with real-world end-users, it is common practice to script scenario tests validating the system's compliance with a number of its features. However, these do not accommodate the replication of the type of…

Software Engineering · Computer Science 2022-08-26 Pasquale Salza , Marco Edoardo Palma , Harald C. Gall

Speech synthesis has significantly advanced from statistical methods to deep neural network architectures, leading to various text-to-speech (TTS) models that closely mimic human speech patterns. However, capturing nuances such as emotion…

Sound · Computer Science 2025-01-14 Shaozuo Zhang , Ambuj Mehrish , Yingting Li , Soujanya Poria

Inductive program synthesis, from input/output examples, can provide an opportunity to automatically create programs from scratch without presupposing the algorithmic form of the solution. For induction of general programs with loops (as…

Artificial Intelligence · Computer Science 2018-11-28 Christopher D. Rosin

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