English
Related papers

Related papers: Correctness Witness Validation by Abstract Interpr…

200 papers

Certifying verification algorithms not only return whether a given property holds or not, but also provide an accompanying independently checkable certificate and a corresponding witness. The certificate can be used to easily validate the…

Logic in Computer Science · Computer Science 2025-01-13 Christel Baier , Calvin Chau , Sascha Klüppelholz

Cody & Waite argument reduction technique works perfectly for reasonably large arguments but as the input grows there are no bit left to approximate the constant with enough accuracy. Under mild assumptions, we show that the result computed…

Mathematical Software · Computer Science 2007-08-29 Sylvie Boldo , Marc Daumas , Ren Cang Li

Software testing is an essential part of the software lifecycle and requires a substantial amount of time and effort. It has been estimated that software developers spend close to 50% of their time on testing the code they write. For these…

Software Engineering · Computer Science 2020-02-20 Cody Watson , Michele Tufano , Kevin Moran , Gabriele Bavota , Denys Poshyvanyk

Certification helps to increase trust in formal verification of safety-critical systems which require assurance on their correctness. In hardware model checking, a widely used formal verification technique, phase abstraction is considered…

Symbolic Computation · Computer Science 2024-05-08 Nils Froleyks , Emily Yu , Armin Biere , Keijo Heljanko

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 2023-11-27 Aurel Bílý , João C. Pereira , Jan Schär , Peter Müller

We study the problem of completely automatically verifying uninterpreted programs---programs that work over arbitrary data models that provide an interpretation for the constants, functions and relations the program uses. The verification…

Programming Languages · Computer Science 2020-08-27 Umang Mathur , P. Madhusudan , Mahesh Viswanathan

Despite significant advancements in post-hoc explainability techniques for neural networks, many current methods rely on heuristics and do not provide formally provable guarantees over the explanations provided. Recent work has shown that…

Machine Learning · Computer Science 2025-06-11 Shahaf Bassan , Yizhak Yisrael Elboher , Tobias Ladner , Matthias Althoff , Guy Katz

We show that verification of object-oriented programs by means of the assertional method can be achieved in a simple way by exploiting a syntax-directed transformation from object-oriented programs to recursive programs. This transformation…

Logic in Computer Science · Computer Science 2011-11-09 Krzysztof R. Apt , Frank S. de Boer , Ernst-Ruediger Olderog , Stijn de Gouw

A key challenge in example-based program synthesis is the gigantic search space of programs. To address this challenge, various work proposed to use abstract interpretation to prune the search space. However, most of existing approaches…

Programming Languages · Computer Science 2023-04-24 Yongho Yoon , Woosuk Lee , Kwangkeun Yi

The traditional abstract domain framework for imperative programs suffers from several shortcomings; in particular it does not allow precise symbolic abstractions. To solve these problems, we propose a new abstract interpretation framework,…

Software Engineering · Computer Science 2018-01-01 Matthieu Lemerre , Sébastien Bardin

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

Acceleration in symbolic verification consists in computing the exact effect of some control-flow loops in order to speed up the iterative fix-point computation of reachable states. Even if no termination guarantee is provided in theory,…

Data Structures and Algorithms · Computer Science 2008-12-11 Jérôme Leroux , Gregoire Sutre

In predicate abstraction, exact image computation is problematic, requiring in the worst case an exponential number of calls to a decision procedure. For this reason, software model checkers typically use a weak approximation of the image.…

Logic in Computer Science · Computer Science 2015-07-01 Ranjit Jhala , Kenneth L. McMillan

Symbolic execution is a program analysis technique commonly utilized to determine whether programs violate properties and, in case violations are found, to generate inputs that can trigger them. Used in the context of security properties…

Programming Languages · Computer Science 2023-01-20 Ignacio Tiraboschi , Tamara Rezk , Xavier Rival

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

Implicit arguments, which cannot be detected solely through syntactic cues, make it harder to extract predicate-argument tuples. We present a new model for implicit argument prediction that draws on reading comprehension, casting the…

Computation and Language · Computer Science 2018-11-09 Pengxiang Cheng , Katrin Erk

The use of formal analysis tools on models or source code often requires the availability of auxiliary invariants about the studied system. Abstract interpretation is currently one of the best approaches to discover useful invariants,…

Logic in Computer Science · Computer Science 2015-03-20 Pierre-Loïc Garoche , Temesghen Kahsai , Cesare Tinelli

It was previously shown that control-flow refinement can be achieved by a program specializer incorporating property-based abstraction, to improve termination and complexity analysis tools. We now show that this purpose-built specializer…

Programming Languages · Computer Science 2020-08-10 John P. Gallagher , Robert Glück

Calculational abstract interpretation, long advocated by Cousot, is a technique for deriving correct-by-construction abstract interpreters from the formal semantics of programming languages. This paper addresses the problem of deriving…

Programming Languages · Computer Science 2015-07-14 David Darais , David Van Horn

The weakest pre-expectation calculus has been proved to be a mature theory to analyze quantitative properties of probabilistic and nondeterministic programs. We present an automatic method for proving quantitative linear properties on any…

Logic in Computer Science · Computer Science 2010-06-29 Damián Barsotti , Nicolás Wolovick