English
Related papers

Related papers: Principles for Verification Tools: Separation Logi…

200 papers

Formal verification of variant requirements has gained much interest in the software product line (SPL) community. Feature diagrams are widely used to model product line variants. However, there is a lack of precisely defined formal…

Software Engineering · Computer Science 2014-02-25 Shamim Ripon , Sk. Jahir Hossain , Keya Azad , Mehidee Hassan

Proof search has been used to specify a wide range of computation systems. In order to build a framework for reasoning about such specifications, we make use of a sequent calculus involving induction and co-induction. These proof principles…

Logic in Computer Science · Computer Science 2009-09-30 Alwen Tiu , Alberto Momigliano

Classical first-order logic is in many ways central to work in mathematics, linguistics, computer science and artificial intelligence, so it is worthwhile to define it in full detail. We present soundness and completeness proofs of a…

Logic in Computer Science · Computer Science 2020-03-02 Asta Halkjær From , Alexander Birch Jensen , Anders Schlichtkrull , Jørgen Villadsen

A flexible infrastructure for normative reasoning is outlined. A small-scale demonstrator version of the envisioned system has been implemented in the proof assistant Isabelle/HOL by utilising the first authors universal logical reasoning…

Artificial Intelligence · Computer Science 2018-04-10 Christoph Benzmüller , Xavier Parent

A number of SAT-based analysis concepts and tools for software product lines exist, that extract code dependencies in propositional logic from the source code assets of the product line. On these extracted conditions, SAT-solvers are used…

Software Engineering · Computer Science 2021-10-13 Adam Krafczyk , Sascha El-Sharkawy , Klaus Schmid

2LS ("tools") is a verification tool for C programs, built upon the CPROVER framework. It allows one to verify user-specified assertions, memory safety properties (e.g. buffer overflows), numerical overflows, division by zero, memory leaks,…

Software Engineering · Computer Science 2023-02-07 Daniel Kroening , Viktor Malík , Peter Schrammel , Tomáš Vojnar

Programmable Logic Controllers (PLCs) provide a prominent choice of implementation platform for safety-critical industrial control systems. Formal verification provides ways of establishing correctness guarantees, which can be quite…

Programming Languages · Computer Science 2019-02-15 Luis Garcia , Stefan Mitsch , Andre Platzer

The Verified Software Toolchain (VST) is a system for proving correctness of C programs using separation logic. By connecting to the verified compiler CompCert, it produces the strongest possible guarantees of correctness for real C code…

Programming Languages · Computer Science 2022-07-18 William Mansky

In engineering, it is a common desire to couple existing simulation tools together into one big system by passing information from subsystems as parameters into the subsystems under influence. As executed at fixed time points, this data…

Numerical Analysis · Mathematics 2017-04-25 Thilo Moshagen

This paper presents a novel approach to the design verification of Software Product Lines(SPL). The proposed approach assumes that the requirements and designs are modeled as finite state machines with variability information. The…

Software Engineering · Computer Science 2012-12-19 Jean-Vivien Millo , S. Ramesh , Shankara Narayanan Krishna , Ganesh Khandu Narwane

We present a tool called HHLPar for verifying hybrid systems modelled in Hybrid Communicating Sequential Processes (HCSP). HHLPar is built upon a Hybrid Hoare Logic for HCSP, which is able to reason about continuous-time properties of…

Logic in Computer Science · Computer Science 2025-11-13 Xiangyu Jin , Bohua Zhan , Shuling Wang , Naijun Zhan

Quantum Hoare Logic (QHL) was introduced in Ying's work to specify and reason about quantum programs. In this paper, we implement a theorem prover for QHL based on Isabelle/HOL. By applying the theorem prover, verifying a quantum program…

Logic in Computer Science · Computer Science 2016-01-18 Tao Liu , Yangjia Li , Shuling Wang , Mingsheng Ying , Naijun Zhan

We present a proof procedure for univariate real polynomial problems in Isabelle/HOL. The core mathematics of our procedure is based on univariate cylindrical algebraic decomposition. We follow the approach of untrusted certificates,…

Logic in Computer Science · Computer Science 2018-04-12 Wenda Li , Grant Olney Passmore , Lawrence C. Paulson

Proving linearizability of concurrent data structures remains a key challenge for verification. We present temporal interpolation as a new proof principle to conduct such proofs using hindsight arguments within concurrent separation logic.…

Programming Languages · Computer Science 2023-04-25 Roland Meyer , Thomas Wies , Sebastian Wolff

We study transformational program logics for correctness and incorrectness that we extend to explicitly handle both termination and nontermination. We show that the logics are abstract interpretations of the right image transformer for a…

Logic in Computer Science · Computer Science 2023-11-27 Patrick Cousot

Separation logic's compositionality and local reasoning properties have led to significant advances in scalable static analysis. But program analysis has new challenges -- many programs display computational effects and, orthogonally,…

Logic in Computer Science · Computer Science 2024-03-15 Noam Zilberstein , Angelina Saliling , Alexandra Silva

Separation logic is a recent extension of Hoare logic for reasoning about programs with references to shared mutable data structures. In this paper, we provide a new interpretation of the logic for a programming language with higher types.…

Logic in Computer Science · Computer Science 2015-07-01 Lars Birkedal , Hongseok Yang

This article is concerned with the application of the program extraction technique to a new class of problems: the synthesis of decision procedures for the classical satisfiability problem that are correct by construction. To this end, we…

Logic in Computer Science · Computer Science 2015-07-01 Ulrich Berger , Andrew Lawrence , Fredrik Nordvall Forsberg , Monika Seisenberger

Separation logic and its variants can describe various properties on pointer programs. However, when it comes to properties on sequences, one may find it hard to formalize. To deal with properties on variable-length sequences and multilevel…

Logic in Computer Science · Computer Science 2023-02-09 Tianyue Cao , Bowen Zhang , Zhao Jin , Yongzhi Cao , Hanpin Wang

We propose a framework for synthesizing inductive invariants for incomplete verification engines, which soundly reduce logical problems in undecidable theories to decidable theories. Our framework is based on the counter-example guided…

Programming Languages · Computer Science 2018-01-15 Daniel Neider , Pranav Garg , P. Madhusudan , Shambwaditya Saha , Daejun Park