English
Related papers

Related papers: Verifiable Source Code Documentation in Controlled…

200 papers

Test or prove? These two approaches to software verification have long been presented as opposites. One is dynamic, the other static: a test executes the program, a proof only analyzes the program text. A different perspective is emerging,…

Software Engineering · Computer Science 2026-02-10 Li Huang , Bertrand Meyer , Manuel Oriol

Background: Developers spend a lot of their time on understanding source code. Static code analysis tools can draw attention to code that is difficult for developers to understand. However, most of the findings are based on non-validated…

Software Engineering · Computer Science 2020-07-27 Marvin Muñoz Barón , Marvin Wyrich , Stefan Wagner

Large language models (LLMs) are increasingly used to generate requirements specifications, design documents, code, and test cases. In contrast, much less attention has been given to a more difficult assurance problem: statically verifying…

Software Engineering · Computer Science 2026-05-19 Zhi Quan Zhou , Dave Towey , Tsong Yueh Chen

Ensuring that API implementations and usage comply with natural language programming rules is critical for software correctness, security, and reliability. Formal verification can provide strong guarantees but requires precise…

Programming Languages · Computer Science 2026-02-06 Shihao Xia , Mengting He , Haomin Jia , Linhai Song

Large Language Models (LLMs) show promise in automated software engineering, yet their guarantee of correctness is frequently undermined by erroneous or hallucinated code. To enforce model honesty, formal verification requires LLMs to…

Software Engineering · Computer Science 2026-04-27 Md Erfan , Md Kamal Hossain Chowdhury , Ahmed Ryan , Md Rayhanur Rahman

Checking the compliance of software against laws, regulations and contracts is increasingly important and costly as the embedding of software into societal practices is becoming more pervasive. Moreover, the digitalised services provided by…

Software Engineering · Computer Science 2026-05-25 L. Thomas van Binsbergen , Christopher A. Esterhuyse , Tim Müller

This paper presents the use of testing, credible compilation/translation validation, verification, and audits in the Axon compiler. Axon comes with fully machine checked proofs that guarantee the correctness of the generated code. All code…

Programming Languages · Computer Science 2026-05-12 Martin Rinard

Formally verified compilers and formally verified static analyzers are a solution to the problem that certain industries face when they have to demonstrate to authorities that the object code they run truly corresponds to its source code…

Logic in Computer Science · Computer Science 2024-07-12 David Monniaux

Software testing is a prime factor in software industry. Besides knowing the importance of testing, only limited time is allocated for teaching it. It will be more efficient if testing is taught simultaneously with programming foundations.…

Artificial Intelligence · Computer Science 2013-02-22 A. Anandaraj , P. Kalaivani , V. Rameshkumar

Synchronous languages rely on formal methods to ease the development of applications in an efficient and reusable way. Formal methods have been advocated as a means of increasing the reliability of systems, especially those which are safety…

Programming Languages · Computer Science 2009-04-20 Annie Ressouche , Daniel Gaffé , Valérie Roy

Various software features such as classes, methods, requirements, and tests often have similar functionality. This can lead to emergence of duplicates in their descriptive documentation. Uncontrolled duplicates created via copy/paste hinder…

As of today the programming language of the vast majority of the published source code is manually specified or programmatically assigned based on the sole file extension. In this paper we show that the source code programming language…

Machine Learning · Computer Science 2017-03-23 Shaul Zevin , Catherine Holzem

Automatic Static Analysis Tools (ASATs) are widely used by software developers to diffuse and enforce coding practices. Yet, we know little about the documentation of ASATs, despite it being critical to learn about the coding practices in…

Software Engineering · Computer Science 2024-02-14 Corentin Latappy , Thomas Degueule , Jean-Rémy Falleri , Romain Robbes , Xavier Blanc , Cédric Teyton

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

Large language models can generate useful code from natural language, but their outputs come without correctness guarantees. Verifiable code generation offers a path beyond testing by requiring models to produce not only executable code,…

Software Engineering · Computer Science 2026-05-12 Zichen Xie , Mrigank Pawagi , Yuxin Liu , Aaditi Rai , Lize Shao , John Berberian , Sicong Che , Wenxi Wang

Real software, the kind working programmers produce by the kLOC to solve real-world problems, tends to be "natural", like speech or natural language; it tends to be highly repetitive and predictable. Researchers have captured this…

Software Engineering · Computer Science 2015-09-11 Baishakhi Ray , Vincent Hellendoorn , Saheel Godhane , Zhaopeng Tu , Alberto Bacchelli , Premkumar Devanbu

Large language models possess impressive capabilities in generating programs (e.g., Python) from natural language descriptions to execute robotic tasks. However, these generated programs often contain errors that violate externally given…

Artificial Intelligence · Computer Science 2025-11-10 Yunhao Yang , Neel P. Bhatt , William Ward , Zichao Hu , Joydeep Biswas , Ufuk Topcu

Background: Code reviewing is an essential part of software development to ensure software quality. However, the abundance of review tasks and the intensity of the workload for reviewers negatively impact the quality of the reviews. The…

Software Engineering · Computer Science 2022-07-26 Shadikur Rahman , Umme Ayman Koana , Maleknaz Nayebi

We review state-of-the-art formal methods applied to the emerging field of the verification of machine learning systems. Formal methods can provide rigorous correctness guarantees on hardware and software systems. Thanks to the availability…

Programming Languages · Computer Science 2021-04-22 Caterina Urban , Antoine Miné

Widely used complex code refactoring tools lack a solid reasoning about the correctness of the transformations they implement, whilst interest in proven correct refactoring is ever increasing as only formal verification can provide true…

Software Engineering · Computer Science 2017-08-25 Dániel Horpácsi , Judit Kőszegi , Zoltán Horváth