English
Related papers

Related papers: Verifying Array Manipulating Programs by Tiling

200 papers

Algebraic effects and handlers are a powerful abstraction to build non-local control-flow mechanisms such as resumable exceptions, lightweight threads, co-routines, generators, and asynchronous I/O. All of such features have very evolved…

Logic in Computer Science · Computer Science 2023-02-08 Tiago Soares , Mário Pereira

We provide full certifications of two versions of merge sort of arrays in the verification-aware programming language Dafny. We start by considering schemas for applying the divide-and-conquer or partition method of solution to…

Logic in Computer Science · Computer Science 2025-09-03 Juan Pablo Carbonell , José E. Solsona , Nora Szasz , Álvaro Tasistro

We present a new method for inferring complexity properties for a class of programs in the form of flowcharts annotated with loop information. Specifically, our method can (soundly and completely) decide if computed values are polynomially…

Programming Languages · Computer Science 2016-07-11 Amir M. Ben-Amram , Aviad Pineles

Verification of programs operating on heap-allocated data structures, for instance lists or trees, poses significant challenges due to the potentially unbounded size of such data structures. We present time-indexed heap invariants, a novel…

Logic in Computer Science · Computer Science 2026-03-16 Zafer Esen , Philipp Rümmer , Tjark Weber

We explore an approach to verification of programs via program transformation applied to an interpreter of a programming language. A specialization technique known as Turchin's supercompilation is used to specialize some interpreters with…

Programming Languages · Computer Science 2017-05-22 Alexei P. Lisitsa , Andrei P. Nemytykh

Property-directed reachability (PDR) is a SAT/SMT-based reachability algorithm that incrementally constructs inductive invariants. After it was successfully applied to hardware model checking, several adaptations to software model checking…

Software Engineering · Computer Science 2020-02-25 Dirk Beyer , Matthias Dangl

This paper shows that a variety of software model-checking algorithms can be seen as proof-search strategies for a non-standard proof system, known as a cyclic proof system. Our use of the cyclic proof system as a logical foundation of…

Programming Languages · Computer Science 2021-11-11 Takeshi Tsukada , Hiroshi Unno

Currently, many verification algorithms are available to improve the reliability of software systems. Selecting the appropriate verification algorithm typically demands domain expertise and non-trivial manpower. An automated algorithm…

Software Engineering · Computer Science 2025-05-26 Jie Su , Liansai Deng , Cheng Wen , Rong Wang , Zhi Ma , Nan Zhang , Cong Tian , Zhenhua Duan , Shengchao Qin

Loop invariants are software properties that hold before and after every iteration of a loop. As such, invariants provide inductive arguments that are key in automating the verification of program loops. The problem of generating loop…

Logic in Computer Science · Computer Science 2023-05-25 George Kenison , Laura Kovács , Anton Varonka

We explore an approach to verification of programs via program transformation applied to an interpreter of a programming language. A specialization technique known as Turchin's supercompilation is used to specialize some interpreters with…

Programming Languages · Computer Science 2017-08-31 Alexei P. Lisitsa , Andrei P. Nemytykh

Verifying safety and liveness over array systems is a highly challenging problem. Array systems naturally capture parameterized systems such as distributed protocols with an unbounded number of processes. Such distributed protocols often…

Software Engineering · Computer Science 2024-01-08 Chih-Duo Hong , Anthony W. Lin

Expressing program correctness often requires relating program data throughout (different branches of) an execution. Such properties can be represented using CTL+FO, a logic that allows mixing temporal and first-order quantification.…

Logic in Computer Science · Computer Science 2014-06-24 Tewodros A. Beyene , Marc Brockschmidt , Andrey Rybalchenko

A software product line is a set of software products that are distinguished in terms of features (i.e., end-user--visible units of behavior). Feature interactions ---situations in which the combination of features leads to emergent and…

Software Engineering · Computer Science 2015-03-19 Sven Apel , Hendrik Speidel , Philipp Wendler , Alexander von Rhein , Dirk Beyer

We present a logical framework for the verification of relational properties in imperative programs. Our work is motivated by relational properties which come from security applications and often require reasoning about formulas with…

Logic in Computer Science · Computer Science 2019-08-13 Gilles Barthe , Renate Eilers , Pamina Georgiou , Bernhard Gleiss , Laura Kovacs , Matteo Maffei

We present a verification technique for program safety that combines Iterated Specialization and Interpolating Horn Clause Solving. Our new method composes together these two techniques in a modular way by exploiting the common Horn Clause…

Logic in Computer Science · Computer Science 2014-12-04 Emanuele De Angelis , Fabio Fioravanti , Jorge A. Navas , Maurizio Proietti

The Rust programming language provides a powerful type system that checks linearity and borrowing, allowing code to safely manipulate memory without garbage collection and making Rust ideal for developing low-level, high-assurance systems.…

Logic in Computer Science · Computer Science 2023-03-14 Andrea Lattuada , Travis Hance , Chanhee Cho , Matthias Brun , Isitha Subasinghe , Yi Zhou , Jon Howell , Bryan Parno , Chris Hawblitzel

Proponents of software verification suggest that code simplicity is linked to the effort to verify code, hypothesizing that formal verifiers produce fewer false positive warnings and require less manual intervention when analyzing simpler…

Software Engineering · Computer Science 2026-04-27 Nadeeshan De Silva , Martin Kellogg , Oscar Chaparro

To guarantee that machine learning models yield outputs that are not only accurate, but also robust, recent works propose formally verifying robustness properties of machine learning models. To be applicable to realistic safety-critical…

Machine Learning · Computer Science 2021-05-07 John Törnblom , Simin Nadjm-Tehrani

Provably correct software is one of the key challenges in our softwaredriven society. While formal verification establishes the correctness of a given program, the result of program synthesis is a program which is correct by construction.…

Logic in Computer Science · Computer Science 2021-03-08 Andreas Humenberger , Laura Kovacs

We present a method for the automated verification of temporal properties of infinite state systems. Our verification method is based on the specialization of constraint logic programs (CLP) and works in two phases: (1) in the first phase,…

Logic in Computer Science · Computer Science 2015-03-19 Fabio Fioravanti , Alberto Pettorossi , Maurizio Proietti , Valerio Senni
‹ Prev 1 4 5 6 7 8 10 Next ›