English
Related papers

Related papers: Model Checking as Program Verification by Abstract…

200 papers

We describe a derivational approach to abstract interpretation that yields novel and transparently sound static analyses when applied to well-established abstract machines. To demonstrate the technique and support our claim, we transform…

Programming Languages · Computer Science 2010-09-09 David Van Horn , Matthew Might

Large language models (LLMs) are increasingly used for program verification, and yet little is known about \emph{how} they reason about program semantics during this process. In this work, we focus on abstract interpretation based-reasoning…

Machine Learning · Computer Science 2025-10-01 Jacqueline L. Mitchell , Brian Hyeongseok Kim , Chenyu Zhou , Chao Wang

Predicate abstraction provides a powerful tool for verifying properties of infinite-state systems using a combination of a decision procedure for a subset of first-order logic and symbolic methods originally developed for finite-state model…

Logic in Computer Science · Computer Science 2007-05-23 Shuvendu K. Lahiri , Randal E. Bryant

The higher-dimensional modal mu-calculus is an extension of the mu-calculus in which formulas are interpreted in tuples of states of a labeled transition system. Every property that can be expressed in this logic can be checked in…

Logic in Computer Science · Computer Science 2012-02-17 Martin Lange , Etienne Lozes

Iterative abstraction refinement techniques are one of the most prominent paradigms for the analysis and verification of systems with large or infinite state spaces. This paper investigates the changes of truth values of system properties…

Logic in Computer Science · Computer Science 2026-01-14 Jakob Piribauer , Vinzent Zschuppe

We present a novel and well automatable approach to formal verification of programs with underspecified semantics, i.e., a language semantics that leaves open the order of certain evaluations. First, we reduce this problem to…

Programming Languages · Computer Science 2022-02-14 Eduard Kamburjan , Nathan Wasser

Abstraction is a powerful idea widely used in science, to model, reason and explain the behavior of systems in a more tractable search space, by omitting irrelevant details. While notions of abstraction have matured for deterministic…

Artificial Intelligence · Computer Science 2020-01-14 Vaishak Belle

Synthesizing programs from examples requires searching over a vast, combinatorial space of possible programs. In this search process, a key challenge is representing the behavior of a partially written program before it can be executed, to…

Programming Languages · Computer Science 2021-04-21 Maxwell Nye , Yewen Pu , Matthew Bowers , Jacob Andreas , Joshua B. Tenenbaum , Armando Solar-Lezama

The molecular computing has been successfully employed to solve more and more complex computation problems. However, as an important complex problem, the model checking are still far from fully resolved under the circumstance of molecular…

Logic in Computer Science · Computer Science 2017-02-21 Weijun Zhu

Given a Kripke structure M and CTL formula $\varphi$, where M does not satisfy $\varphi$, the problem of Model Repair is to obtain a new model M' such that M' satisfies $\varphi$. Moreover, the changes made to M to derive M' should be…

Logic in Computer Science · Computer Science 2017-01-11 George Chatzieleftheriou , Borzoo Bonakdarpour , Panagiotis Katsaros , Scott A. Smolka

interpreters are tools to compute approximations for behaviors of a program. These approximations can then be used for optimisation or for error detection. In this paper, we show how to describe an abstract interpreter using the type-theory…

Logic in Computer Science · Computer Science 2008-10-20 Yves Bertot

We propose trace abstraction modulo probability, a proof technique for verifying high-probability accuracy guarantees of probabilistic programs. Our proofs overapproximate the set of program traces using failure automata, finite-state…

Programming Languages · Computer Science 2018-10-31 Calvin Smith , Justin Hsu , Aws Albarghouthi

Abstract interpretation, Hoare logic, and incorrectness (or reverse Hoare) logic are powerful techniques for static analysis of computer programs. All of them have been successfully extended to the quantum setting, but largely developed in…

Logic in Computer Science · Computer Science 2022-06-29 Yuan Feng , Sanjiang Li

Predicate abstraction is a key enabling technology for applying finite-state model checkers to programs written in mainstream languages. It has been used very successfully for debugging sequential system-level C code. Although model…

Programming Languages · Computer Science 2015-03-18 Alastair Donaldson , Alexander Kaiser , Daniel Kroening , Thomas Wahl

Refinement transforms an abstract system model into a concrete, executable program, such that properties established for the abstract model carry over to the concrete implementation. Refinement has been used successfully in the development…

Logic in Computer Science · Computer Science 2021-10-27 Aurel Bílý , Christoph Matheja , Peter Müller

Witnesses record automated program analysis results and make them exchangeable. To validate correctness witnesses through abstract interpretation, we introduce a novel abstract operation unassume. This operator incorporates witness…

Programming Languages · Computer Science 2025-03-06 Simmo Saan , Michael Schwarz , Julian Erhard , Helmut Seidl , Sarah Tilscher , Vesal Vojdani

Static analysis is an essential component of many modern software development tools. Unfortunately, the ever-increasing complexity of static analyzers makes their coding error-prone. Even analysis tools based on rigorous mathematical…

Software Engineering · Computer Science 2025-05-08 Daniela Ferreiro , Ignacio Casso , Jose F. Morales , Pedro López-García , Manuel V. Hermenegildo

In this work, we show how the use of verification and analysis techniques for model families (software product lines) with numerical features provides an interesting technique to synthesize complete models from sketches (i.e.\ partial…

Logic in Computer Science · Computer Science 2021-12-23 Aleksandar S. Dimovski

We present a semantics based framework for analysing the quantitative behaviour of programs with regard to resource usage. We start from an operational semantics equipped with costs. The dioid structure of the set of costs allows for…

Logic in Computer Science · Computer Science 2010-06-29 David Cachera , Arnaud Jobin

The problem of mechanically formalizing and proving metatheoretic properties of programming language calculi, type systems, operational semantics, and related formal systems has received considerable attention recently. However, the dual…

Programming Languages · Computer Science 2017-05-29 James Cheney , Alberto Momigliano