English
Related papers

Related papers: Assisted Specification of Code Using Search

200 papers

The research applies AI-driven code assistants to analyze a selection of influential computer code that has shaped modern technology, including email, internet browsing, robotics, and malicious software. The original contribution of this…

Machine Learning · Computer Science 2023-01-10 David Noever , Kevin Williams

Specification synthesis, the task of automatically inferring formal specifications from program implementations and natural language, is important for refactoring, transpilation, optimization, and verification, yet remains an open challenge…

Programming Languages · Computer Science 2026-05-28 Tarun Suresh , David Korczynski , Julien Vanegue

This work is concerned with the generation of formal specifications from code, using Large Language Models (LLMs) in combination with symbolic methods. Concretely, in our study, the programming language is C, the specification language is…

Software Engineering · Computer Science 2025-05-01 George Granberry , Wolfgang Ahrendt , Moa Johansson

Reactive synthesis is the task of automatically deriving a correct implementation from a specification. It is a promising technique for the development of verified programs and hardware. Despite recent advances in terms of algorithms and…

Logic in Computer Science · Computer Science 2021-12-17 Bernd Finkbeiner , Gideon Geier , Noemi Passing

Using an AI assistant, we developed a method for systematically constructing controlled natural language for requirements based on formal specification patterns containing logical attributes. The method involves three stages: 1) compiling a…

Software Engineering · Computer Science 2026-01-01 Natalia Garanina , Vladimir Zyubin , Igor Anureev

We present a method for synthesizing recursive functions that provably satisfy a given specification in the form of a polymorphic refinement type. We observe that such specifications are particularly suitable for program synthesis for two…

Programming Languages · Computer Science 2016-04-22 Nadia Polikarpova , Ivan Kuraj , Armando Solar-Lezama

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

Many universities have courses and projects revolving around compiler or interpreter implementation as part of their degree programmes in computer science. In such teaching activities, tool support can be highly beneficial. While there are…

Programming Languages · Computer Science 2022-09-21 Georgian-Vlad Saioc , Hans Hüttel

Increasing demands in software industry and scarcity of software engineers motivates researchers and practitioners to automate the process of software generation and configuration. Large scale automatic software generation and configuration…

Software Engineering · Computer Science 2023-05-31 Shantanu Mandal

Interactive proof assistants are computer programs carefully constructed to check a human-designed proof of a mathematical claim with high confidence in the implementation. However, this only validates truth of a formal claim, which may…

Programming Languages · Computer Science 2023-10-09 Colin S. Gordon , Sergey Matskevich

Many programmers, when they encounter an error, would like to have the benefit of automatic fix suggestions---as long as they are, most of the time, adequate. Initial research in this direction has generally limited itself to specific…

Software Engineering · Computer Science 2015-03-18 Yu Pei , Yi Wei , Carlo A. Furia , Martin Nordio , Bertrand Meyer

TextFormats is a software system for efficient and user-friendly creation of text format specifications, accessible from multiple programming languages (C/C++, Python, Nim) and the Unix command line. To work with a format, a specification…

Programming Languages · Computer Science 2023-02-01 Giorgio Gonnella

Writing specifications for computer programs is not easy since one has to take into account the disparate conceptual worlds of the application domain and of software development. To bridge this conceptual gap we propose controlled natural…

cmp-lg · Computer Science 2008-02-03 Norbert E. Fuchs , Rolf Schwitter

In this paper, we describe Function Assistant, a lightweight Python-based toolkit for querying and exploring source code repositories using natural language. The toolkit is designed to help end-users of a target API quickly find information…

Computation and Language · Computer Science 2018-07-12 Kyle Richardson , Jonas Kuhn

Software configurations play a crucial role in determining the behavior of software systems. In order to ensure safe and error-free operation, it is necessary to identify the correct configuration, along with their valid bounds and rules,…

The quality of software produced by students is often poor. How to teach students to develop good quality software has long been a topic in computer science education and research. We must conclude that we still do not have a good answer to…

Software Engineering · Computer Science 2023-09-06 Arno Broeders , Ruud Hermans , Sylvia Stuurman , Lex Bijlsma , Harrie Passier

Specifying and implementing flexible human-computer dialogs, such as those used in kiosks and smart phone apps, is challenging because of the numerous and varied directions in which each user might steer a dialog. The objective of this…

Programming Languages · Computer Science 2015-12-22 Saverio Perugini

Program synthesis from incomplete specifications (e.g. input-output examples) has gained popularity and found real-world applications, primarily due to its ease-of-use. Since this technology is often used in an interactive setting,…

Programming Languages · Computer Science 2017-03-13 Vu Le , Daniel Perelman , Oleksandr Polozov , Mohammad Raza , Abhishek Udupa , Sumit Gulwani

In the task of automatic program synthesis, one obtains pairs of matching inputs and outputs and generates a computer program, in a particular domain-specific language (DSL), which given each sample input returns the matching output. A key…

Machine Learning · Computer Science 2023-03-14 Aran Carmon , Lior Wolf

Developers spend a significant amount of time searching their local codebase. To help them search efficiently, researchers have proposed novel tools that apply state-of-the-art information retrieval algorithms to retrieve relevant code…

Software Engineering · Computer Science 2014-01-28 Xi Ge , David Shepherd , Kostadin Damevski , Emerson Murphy-Hill