English
Related papers

Related papers: FoCaLiZe: Inside an F-IDE

200 papers

Formal software specification is known to enable early error detection and explicit invariants, yet it has seen limited industrial adoption due to its high notation overhead and the expertise required to use traditional formal languages.…

Software Engineering · Computer Science 2026-01-16 Antonio Abu Nassar , Eitan Farchi

Large language models (LLMs) are widely used in software development. However, the code generated by LLMs often contains vulnerabilities. Several secure code generation methods have been proposed to address this issue, but their current…

Cryptography and Security · Computer Science 2025-11-14 Shih-Chieh Dai , Jun Xu , Guanhong Tao

Most databases can be configured to operate under isolation levels weaker than serializability. These enforce fewer restrictions on the concurrent access to data and consequently allow for more performant implementations. While formal…

Databases · Computer Science 2026-04-02 Manuel Barros , Alcino Cunha , Jose Pereira , Eunsuk Kang

The cutting edge in systems development today is in the area of "systems of systems" (SoS) large networks of inter-related systems that are developed and managed separately, but that also perform collective activities. Such large systems…

Software Engineering · Computer Science 2013-11-15 Eric Honour

Classes on compiler technology are commonly found in Computer Science curricula, covering aspects of parsing, semantic analysis, intermediate transformations and target code generation. This paper reports on introducing certified…

Programming Languages · Computer Science 2019-06-28 Per Lindgren , Marcus Lindner , Nils Fitinghoff

The growing complexity and diversity of models used in the engineering of dependable systems implies that a variety of formal methods, across differing abstractions, paradigms, and presentations, must be integrated. Such an integration…

Logic in Computer Science · Computer Science 2020-07-28 Simon Foster , James Baxter , Ana Cavalcanti , Jim Woodcock , Frank Zeyda

We present the first formalization and metatheory of language soundness for a user-schedulable language, the widely used array processing language Halide. User-schedulable languages strike a balance between abstraction and control in…

Programming Languages · Computer Science 2022-10-31 Alex Reinking , Gilbert Louis Bernstein , Jonathan Ragan-Kelley

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

Chain-of-Thought (CoT) prompting has become the de facto method to elicit reasoning capabilities from large language models (LLMs). However, to mitigate hallucinations in CoT that are notoriously difficult to detect, current methods such as…

Computation and Language · Computer Science 2025-06-06 Chengwu Liu , Ye Yuan , Yichun Yin , Yan Xu , Xin Xu , Zaoyu Chen , Yasheng Wang , Lifeng Shang , Qun Liu , Ming Zhang

Software libraries for most of the modern programming languages are numerous, large and complex. Remembering the syntax and usage of APIs is a difficult task for not just novices but also expert programmers. IDEs (Integrated Development…

Human-Computer Interaction · Computer Science 2014-09-24 Anant Bhardwaj , Dave Luciano , Scott Klemmer

Verification-aware programming languages such as Dafny and F* provide means to formally specify and prove properties of a program. Although the problem of checking an implementation against a specification can be defined mechanically, there…

Programming Languages · Computer Science 2024-10-17 Shuvendu K. Lahiri

In the business rules of supply chains, there are concerns around trust, truth, demonstrability and authenticity. These concerns are gathered together under the name ``veracity". In the work for this paper we were originally motivated by…

Logic in Computer Science · Computer Science 2024-07-24 Daniel Britten , Steve Reeves

Large Language Models (LLMs) have achieved remarkable success in code completion, as evidenced by their essential roles in developing code assistant services such as Copilot. Being trained on in-file contexts, current LLMs are quite…

Software Engineering · Computer Science 2024-02-20 Yichen Li , Yun Peng , Yintong Huo , Michael R. Lyu

The Language Server Protocol (LSP) changed the field of Integrated Development Environments(IDEs), as it decouples core (programming) language features functionality from editor smarts, thus lowering the effort required to extend an IDE to…

Software Engineering · Computer Science 2021-08-09 Jonas Kjær Rask , Frederik Palludan Madsen , Nick Battle , Hugo Daniel Macedo , Peter Gorm Larsen

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 2022-05-17 Colin S. Gordon , Sergey Matskevich

CoqQ is a framework for reasoning about quantum programs in the Coq proof assistant. Its main components are: a deeply embedded quantum programming language, in which classic quantum algorithms are easily expressed, and an expressive…

Programming Languages · Computer Science 2022-07-26 Li Zhou , Gilles Barthe , Pierre-Yves Strub , Junyi Liu , Mingsheng Ying

The success of a number of projects has been shown to be significantly improved by the use of a formalism. However, there remains an open issue: to what extent can a development process based on a singular formal notation and method…

Software Engineering · Computer Science 2013-11-26 Rainer Gmehlich , Katrin Grau , Alexei Iliasov , Michael Jackson , Felix Loesch , Manuel Mazzara

Verification of complex, safety-critical systems is a significant challenge. Manual testing and simulations are often used, but are only capable of exploring a subset of the system's reachable states. Formal methods are mathematically-based…

Software Engineering · Computer Science 2021-10-19 Matt Luckcuck , Marie Farrell , Oisín Sheridan , Rosemary Monahan

In this paper we formally analyze the software methodology called (iterated) Test Driven Development (TDD). We formally define Specification, Software, Testing, Equivalence Partitions, Coupling, to argue about the nature of the software…

Software Engineering · Computer Science 2024-07-19 Hemil Ruparel , Nabarun Mondal

Modeling and documentation are two essential ingredients for the engineering discipline of software development. During the last twenty years a wide variety of description and modeling techniques as well as document formats has been…

Software Engineering · Computer Science 2014-11-11 Manfred Broy , Franz Huber , Barbara Paech , Bernhard Rumpe , Katharina Spies