English
Related papers

Related papers: Modular Verification of Recursive Programs

200 papers

Formal verification of complex algorithms is challenging. Verifying their implementations goes beyond the state of the art of current automatic verification tools and usually involves intricate mathematical theorems. Certifying algorithms…

Logic in Computer Science · Computer Science 2013-02-01 Eyad Alkassar , Sascha Böhme , Kurt Mehlhorn , Christine Rizkallah

Scalable and automatic formal verification for concurrent systems is always demanding. In this paper, we propose a verification framework to support automated compositional reasoning for concurrent programs with shared variables. Our…

Formal Languages and Automata Theory · Computer Science 2018-03-28 Fuyuan Zhang , Yongwang Zhao , David Sanan , Yang Liu , Alwen Tiu , Shang-Wei Lin , Jun Sun

In this paper, we study the problem of formal verification for Answer Set Programming (ASP), namely, obtaining a formal proof showing that the answer sets of a given (non-ground) logic program P correctly correspond to the solutions to the…

Logic in Computer Science · Computer Science 2020-09-23 Pedro Cabalar , Jorge Fandinno , Yuliya Lierler

We show that time complexity analysis of higher-order functional programs can be effectively reduced to an arguably simpler (although computationally equivalent) verification problem, namely checking first-order inequalities for validity.…

Logic in Computer Science · Computer Science 2012-10-26 Ugo Dal Lago , Barbara Petit

Deductive verification of concurrent programs under weak memory has thus far been limited to simple programs over a monolithic state space. For scalability, we also require modular techniques with verifiable library abstractions. This paper…

Logic in Computer Science · Computer Science 2021-08-21 Sadegh Dalvandi , Brijesh Dongol

Verification of higher-order probabilistic programs is a challenging problem. We present a verification method that supports several quantitative properties of higher-order probabilistic programs. Usually, extending verification methods to…

Logic in Computer Science · Computer Science 2024-07-04 Satoshi Kura , Hiroshi Unno

While software requirements are often expressed in natural language, verifying the correctness of a program against such requirements is a hard and underexplored problem. Large language models (LLMs) are promising candidates for addressing…

Software Engineering · Computer Science 2025-08-26 Dimitrios Stamatios Bouras , Yihan Dai , Tairan Wang , Yingfei Xiong , Sergey Mechtaev

Relational program verification is a variant of program verification where one can reason about two programs and as a special case about two executions of a single program on different inputs. Relational program verification can be used for…

Programming Languages · Computer Science 2019-10-23 Alejandro Aguirre , Gilles Barthe , Marco Gaboardi , Deepak Garg , Pierre-Yves Strub

Higher-order recursion schemes (HORS) have received much attention as a useful abstraction of higher-order functional programs with a number of new verification techniques employing HORS model-checking as their centrepiece. We give an…

Logic in Computer Science · Computer Science 2018-09-18 Christopher Broadbent , Arnaud Carayol , Matthew Hague , Olivier Serre

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

This paper explores goal-directed proof search in first-order multi-modal logic. The key issue is to design a proof system that respects the modularity and locality of assumptions of many modal logics. By forcing ambiguities to be…

Logic in Computer Science · Computer Science 2007-05-23 Matthew Stone

Quantum Hoare logic (QHL) is a formal verification tool specifically designed to ensure the correctness of quantum programs. There has been an ongoing challenge to achieve a relatively complete satisfaction-based QHL with while-loop since…

Logic in Computer Science · Computer Science 2024-05-06 Xin Sun , Xingchi Su , Xiaoning Bian , Huiwen Wu

We present Assume-Guarantee-Repair (AGR) - a novel framework which verifies that a program satisfies a set of properties and also repairs the program in case the verification fails. We consider communicating programs - these are simple…

Formal Languages and Automata Theory · Computer Science 2022-07-22 Hadar Frenkel , Orna Grumberg , Corina S. Pasareanu , Sarai Sheinvald

A simple dynamically-typed, (purely) object-oriented language is defined. A structural operational semantics as well as a Hoare-style program logic for reasoning about programs in the language in multiple notions of correctness are given.…

Programming Languages · Computer Science 2016-01-12 Björn Engelmann , Ernst-Rüdiger Olderog

In this work, we consider the almost-sure termination problem for probabilistic programs that asks whether a given probabilistic program terminates with probability 1. Scalable approaches for program analysis often rely on modularity as…

Logic in Computer Science · Computer Science 2019-08-13 Mingzhang Huang , Hongfei Fu , Krishnendu Chatterjee , Amir Kafshdar Goharshady

We introduce an extension of first-order logic that comes equipped with additional predicates for reasoning about an abstract state. Sequents in the logic comprise a main formula together with pre- and postconditions in the style of Hoare…

Logic in Computer Science · Computer Science 2024-08-07 Thomas Powell

Programs using random values can either make all choices in advance (eagerly) or sample as needed (lazily). In formal proofs, we focus on indistinguishability between two lazy programs, a common requirement in the random oracle model (ROM).…

Cryptography and Security · Computer Science 2023-11-30 Roberto Metere , Changyu Dong

This paper presents a Hoare-style calculus for formal reasoning about reconfiguration programs of distributed systems. Such programs create and delete components and/or interactions (connectors) while the system components change state…

Logic in Computer Science · Computer Science 2022-03-17 Emma Ahrens , Marius Bozga , Radu Iosif , Joost-Pieter Katoen

We present a compositional SMT-based algorithm for safety of procedural C programs that takes the heap into consideration as well. Existing SMT-based approaches are either largely restricted to handling linear arithmetic operations and…

Logic in Computer Science · Computer Science 2015-08-07 Anvesh Komuravelli , Nikolaj Bjorner , Arie Gurfinkel , Kenneth L. McMillan

We have developed a web-based pedagogical proof assistant, the Proof Tree Builder, that lets you apply rules upwards from the initial goal in sequent calculus and Hoare logic for a simple imperative language. We equipped our tool with a…

Logic in Computer Science · Computer Science 2023-03-13 Joomy Korkut
‹ Prev 1 3 4 5 6 7 10 Next ›