English
Related papers

Related papers: Synthesizing Specifications

200 papers

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

In many sequence learning tasks, such as program synthesis and document summarization, a key problem is searching over a large space of possible output sequences. We propose to learn representations of the outputs that are specifically…

Machine Learning · Computer Science 2021-08-09 Joey Hong , David Dohan , Rishabh Singh , Charles Sutton , Manzil Zaheer

Self-composition provides a powerful theoretical approach to prove relational properties, i.e. properties relating several program executions, that has been applied to compare two runs of one or similar programs (in secure dataflow…

Software Engineering · Computer Science 2017-02-07 Lionel Blatter , Nikolai Kosmatov , Pascale Le Gall , Virgile Prevosto

Large Language models (LLMs) have shown promise as generators of symbolic control policies, producing interpretable program-like representations through iterative search. However, these models are not capable of separating the functional…

Machine Learning · Computer Science 2025-10-02 Carlo Bosio , Matteo Guarrera , Alberto Sangiovanni-Vincentelli , Mark W. Mueller

The pursuit of diverse, complex, and large-scale instruction data is crucial for automatically aligning large language models (LLMs). While there are methods capable of generating synthetic instructions at scale, they either suffer from…

Computation and Language · Computer Science 2025-06-05 Chiwei Zhu , Benfeng Xu , Xiaorui Wang , Zhendong Mao

A challenging problem for autonomous systems is to synthesize a reactive controller that conforms to a set of given correctness properties. Linear temporal logic (LTL) provides a formal language to specify the desired behavioral properties…

Formal Languages and Automata Theory · Computer Science 2019-10-08 Rayna Dimitrova , Mahsa Ghasemi , Ufuk Topcu

Synthesizers are powerful tools that allow musicians to create dynamic and original sounds. Existing commercial interfaces for synthesizers typically require musicians to interact with complex low-level parameters or to manage large…

Human-Computer Interaction · Computer Science 2024-02-22 Stephen Brade , Bryan Wang , Mauricio Sousa , Gregory Lee Newsome , Sageev Oore , Tovi Grossman

Existing plan synthesis approaches in artificial intelligence fall into two categories -- domain independent and domain dependent. The domain independent approaches are applicable across a variety of domains, but may not be very efficient…

Artificial Intelligence · Computer Science 2009-09-25 B. Srivastava , S. Kambhampati

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

Context: Specification mining techniques are typically used to extract the specification of a software in the absence of (up-to-date) specification documents. This is useful for program comprehension, testing, and anomaly detection.…

Software Engineering · Computer Science 2019-05-09 Mohammad Jafar Mashhadi , Taha R. Siddiqui , Hadi Hemmati , Howard Loewen

Attribute grammars allow the association of semantic actions to the production rules in context-free grammars, providing a simple yet effective formalism to define the semantics of a language. However, drafting the semantic actions can be…

Programming Languages · Computer Science 2022-08-16 Pankaj Kumar Kalita , Miriyala Jeevan Kumar , Subhajit Roy

Developing critical components, such as mission controllers or embedded systems, is a challenging task. Reactive synthesis is a technique to automatically produce correct controllers. Given a high-level specification written in LTL,…

Logic in Computer Science · Computer Science 2023-12-15 Matías Brizzio , César Sánchez

Despite being an essential step in software development, writing requirements specifications is frequently performed in natural language, leading to issues like inconsistency, incompleteness, or ambiguity. The ITLingo initiative has…

Software Engineering · Computer Science 2023-12-19 Andre Rodrigues , Alberto Rodrigues da Silva

Program synthesis is the task of constructing a program conforming to a given specification. We focus on deductive synthesis, and in particular on synthesis problems with specifications given as $\forall\exists$-formulas, expressing the…

Logic in Computer Science · Computer Science 2025-08-15 Márton Hajdu , Petra Hozzová , Laura Kovács , Andrei Voronkov , Eva Maria Wagner , Richard Steven Žilinčík

Service providers of large language model (LLM) applications collect user instructions in the wild and use them in further aligning LLMs with users' intentions. These instructions, which potentially contain sensitive information, are…

Cryptography and Security · Computer Science 2024-07-03 Da Yu , Peter Kairouz , Sewoong Oh , Zheng Xu

Declarative specifications have a vital role to play in developing safe and dependable software systems. Writing specifications correctly, however, remains particularly challenging. This paper presents a controlled experiment on using large…

Software Engineering · Computer Science 2025-07-22 Yang Hong , Shan Jiang , Yulei Fu , Sarfraz Khurshid

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

Component-based synthesis seeks to build programs using the APIs provided by a set of libraries. Oftentimes, these APIs have effects, which make it challenging to reason about the correctness of potential synthesis candidates. This is…

Programming Languages · Computer Science 2022-09-08 Ashish Mishra , Suresh Jagannathan

Program verification is a formal technique to rigorously ensure the correctness and fault-freeness of software systems. However, constructing comprehensive interprocedural specifications for full verification obligations is time-consuming…

Software Engineering · Computer Science 2026-04-24 Lezhi Ma , Shangqing Liu , Yi Li , Qiong Wu , Han Wang , Lei Bu

We present new techniques for automatically constructing probabilistic programs for data analysis, interpretation, and prediction. These techniques work with probabilistic domain-specific data modeling languages that capture key properties…

Programming Languages · Computer Science 2019-07-16 Feras A. Saad , Marco F. Cusumano-Towner , Ulrich Schaechtle , Martin C. Rinard , Vikash K. Mansinghka