English
Related papers

Related papers: Verifying Liveness Properties of ML Programs

200 papers

HyperLTL is an extension of linear-time temporal logic for the specification of hyperproperties, i.e., temporal properties that relate multiple computation traces. HyperLTL can express information flow policies as well as properties like…

Logic in Computer Science · Computer Science 2020-05-18 Norine Coenen , Bernd Finkbeiner , César Sánchez , Leander Tentrup

The model of asynchronous programming arises in many contexts, from low-level systems software to high-level web programming. We take a language-theoretic perspective and show general decidability and undecidability results for asynchronous…

Formal Languages and Automata Theory · Computer Science 2023-06-22 Rupak Majumdar , Ramanathan S. Thinniyam , Georg Zetzsche

The use of temporal logics has long been recognised as a fundamental approach to the formal specification and verification of reactive systems. In this paper, we take on the problem of automatically verifying a temporal property, given by a…

Logic in Computer Science · Computer Science 2016-07-18 Tewodros A. Beyene , Corneliu Popeea , Andrey Rybalchenko

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

Sound exhaustiveness checking of pattern-matching is an essential feature of functional programming languages, and OCaml supports it for GADTs. However this check is incomplete, in that it may fail to detect that a pattern can match no…

Programming Languages · Computer Science 2017-02-09 Jacques Garrigue , Jacques Le Normand

In the last two decades, there has been much progress on model checking of both probabilistic systems and higher-order programs. In spite of the emergence of higher-order probabilistic programming languages, not much has been done to…

Programming Languages · Computer Science 2023-06-22 Naoki Kobayashi , Ugo Dal Lago , Charles Grellois

Higher-order modal fixpoint logic (HFL) is a higher-order extension of the modal mu-calculus, and strictly more expressive than the modal mu-calculus. It has recently been shown that various program verification problems can naturally be…

Logic in Computer Science · Computer Science 2019-08-29 Youkichi Hosoi , Naoki Kobayashi , Takeshi Tsukada

We report on intermediate results of our research on reasoning about liveness properties in addition to deep correctness properties for an imperative, concurrent programming language with a higher-order store. At present, we focus on one…

Logic in Computer Science · Computer Science 2023-01-02 Justus Fasse , Bart Jacobs

We propose an operationally-based deductive proof method for program equivalence. It is based on encoding the language semantics as logically constrained term rewriting systems (LCTRSs) and the two programs as terms. The main feature of our…

Logic in Computer Science · Computer Science 2020-01-28 Ştefan Ciobâcă , Dorel Lucanu , Andrei Sebastian Buruiană

In this article, we give an overview of our project on higher-order program verification based on HFL (higher-order fixpoint logic) model checking. After a brief introduction to HFL, we explain how it can be applied to program verification,…

Programming Languages · Computer Science 2021-09-13 Naoki Kobayashi

One-counter processes (OCPs) are pushdown processes which operate only on a unary stack alphabet. We study the computational complexity of model checking computation tree logic (CTL) over OCPs. A PSPACE upper bound is inherited from the…

Logic in Computer Science · Computer Science 2010-02-03 Stefan Göller , Markus Lohrey

This paper introduces a novel paradigm for the analysis and verification of concurrent programs -- the Singularity Theory. We model the execution space of a concurrent program as a branched topological space, where program states are points…

Programming Languages · Computer Science 2025-10-30 Di Zhang

We introduce a functional inductive framework to verify discrete-time dynamical systems against hyperproperties specified as Hyperlinear temporal logic formulae via a notion of HyperCertificates. Unlike linear temporal logic (LTL) formulae…

Systems and Control · Electrical Eng. & Systems 2026-05-04 Vishnu Murali , Amin Falah , Ashutosh Trivedi , Majid Zamani

We develop model checking algorithms for Temporal Stream Logic (TSL) and Hyper Temporal Stream Logic (HyperTSL) modulo theories. TSL extends Linear Temporal Logic (LTL) with memory cells, functions and predicates, making it a convenient and…

Logic in Computer Science · Computer Science 2023-03-28 Bernd Finkbeiner , Hadar Frenkel , Jana Hofmann , Janine Lohse

Correctness of multi-threaded programs typically requires that they satisfy liveness properties. For example, a program may require that no thread is starved of a shared resource, or that all threads eventually agree on a single value. This…

Logic in Computer Science · Computer Science 2016-05-10 Azadeh Farzan , Zachary Kincaid , Andreas Podelski

Expressing system specifications using Computation Tree Logic (CTL) formulas, formalising programs using Kripke structures, and then model checking the system is an established workflow in program verification and has wide applications in…

Logic in Computer Science · Computer Science 2023-12-18 Nicolas Fröhlich , Arne Meier

A hyperproperty relates executions of a program and is used to formalize security objectives such as confidentiality, non-interference, privacy, and anonymity. Formally, a hyperproperty is a collection of allowable sets of executions. A…

Logic in Computer Science · Computer Science 2023-01-30 Ali Bajwa , Minjian Zhang , Rohit Chadha , Mahesh Viswanathan

Verification of large and complicated concurrent programs is an important issue in the software world. Stateless model checking is an appropriate method for systematically and automatically testing of large programs, which has proved its…

Programming Languages · Computer Science 2016-03-14 Elaheh Ghassabani , Mohammad Abdollahi Azgomi

We present a logic that extends CTL (Computation Tree Logic) with operators that express synchronization properties. A property is synchronized in a system if it holds in all paths of a certain length. The new logic is obtained by using the…

Logic in Computer Science · Computer Science 2016-05-25 Krishnendu Chatterjee , Laurent Doyen

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