English
Related papers

Related papers: Modular termination verification with a higher-ord…

200 papers

Bounded verification has proved useful to detect bugs and to increase confidence in the correctness of a program. In contrast to unbounded verification, reasoning about calls via (bounded) inlining and about loops via (bounded) unrolling…

Logic in Computer Science · Computer Science 2023-03-14 Thibault Dardinier , Gaurav Parthasarathy , Peter Müller

We present a static analysis technique for non-termination inference of logic programs. Our framework relies on an extension of the subsumption test, where some specific argument positions can be instantiated while others are generalized.…

Programming Languages · Computer Science 2007-05-23 Etienne Payet , Fred Mesnard

Previous deforestation and supercompilation algorithms may introduce accidental termination when applied to call-by-value programs. This hides looping bugs from the programmer, and changes the behavior of a program depending on whether it…

Programming Languages · Computer Science 2015-07-01 Peter A. Jonsson , Johan Nordlander

Formal verification provides strong guarantees of correctness of software, which are especially important in safety or security critical systems. Hoare logic is a widely used formalism for rigorous verification of software against…

Programming Languages · Computer Science 2021-03-11 Jayaraj Poroor

We present an illative system I_s of classical higher-order logic with subtyping and basic inductive types. The system I_s allows for direct definitions of partial and general recursive functions, and provides means for handling functions…

Logic in Computer Science · Computer Science 2013-01-14 Łukasz Czajka

Often fairness assumptions need to be made in order to establish liveness properties of distributed systems, but in many situations these lead to false conclusions. This document presents a research agenda aiming at laying the foundations…

Logic in Computer Science · Computer Science 2017-11-15 Rob van Glabbeek

We present a framework for statically detecting deadlocks in a concurrent object-oriented language with asynchronous method calls and cooperative scheduling of method activations. Since this language features recursion and dynamic resource…

Programming Languages · Computer Science 2015-11-17 Elena Giachino , Cosimo Laneve , Michael Lienhardt

Termination is a major question in both logic and computer science. In logic, termination is at the heart of proof theory where it is usually called strong normalization (of cut elimination). In computer science, termination has always been…

Logic in Computer Science · Computer Science 2016-08-16 Frédéric Blanqui , Jean-Pierre Jouannaud , Albert Rubio

Proving only over source code that programs do not leak sensitive data leaves a gap between reasoning and reality that can only be filled by accounting for the behaviour of the compiler. Furthermore, software does not always have the luxury…

Programming Languages · Computer Science 2023-06-22 Robert Sison , Toby Murray

In this paper, we develop a novel verification technique to reason about programs featuring concurrency, pointers and randomization. While the integration of concurrency and pointers is well studied, little is known about the combination of…

Logic in Computer Science · Computer Science 2024-10-01 Ira Fesefeldt , Joost-Pieter Katoen , Thomas Noll

Verification of temporal logic properties plays a crucial role in proving the desired behaviors of hybrid systems. In this paper, we propose an interval method for verifying the properties described by a bounded linear temporal logic. We…

Logic in Computer Science · Computer Science 2015-07-15 Daisuke Ishii , Naoki Yonezaki , Alexandre Goldsztejn

We introduce a framework for reasoning about the security of computer systems using modal logic. This framework is sufficiently expressive to capture a variety of known security properties, while also being intuitive and independent of…

Cryptography and Security · Computer Science 2023-09-19 Matvey Soloviev , Musard Balliu , Roberto Guanciale

Higher-order recursion schemes are a higher-order analogue of Boolean Programs; they form a natural class of abstractions for functional programs. We present a new, efficient algorithm for checking CTL properties of the trees generated by…

Programming Languages · Computer Science 2020-12-25 M. M. Lester , R. P. Neatherway , C. -H. L. Ong , S. J. Ramsay

Runtime efficiency and termination are crucial properties in the studies of program verification. Instead of dealing with these issues in an ad hoc manner, it would be useful to develop a robust framework in which such properties are…

Programming Languages · Computer Science 2026-04-06 Weijun Chen , Yuxi Fu , Huan Long

It is common to prove by reasoning over source code that programs do not leak sensitive data. But doing so leaves a gap between reasoning and reality that can only be filled by accounting for the behaviour of the compiler. This task is…

Logic in Computer Science · Computer Science 2020-10-23 Robert Sison , Toby Murray

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 a method of verifying termination of logic programs with respect to concrete queries (instead of abstract query patterns). A necessary and sufficient condition is established and an algorithm for automatic verification is…

Artificial Intelligence · Computer Science 2007-05-23 Yi-Dong Shen , Li-Yan Yuan , Jia-Huai You

Intermittently powered devices enable new applications in harsh or inaccessible environments, such as space or in-body implants, but also introduce problems in programmability and correctness. Researchers have developed programming models…

Programming Languages · Computer Science 2021-06-29 Milijana Surbatovich , Limin Jia , Brandon Lucia

Proof assistants play a dual role as programming languages and logical systems. As programming languages, proof assistants offer standard modularity mechanisms such as first-class functions, type polymorphism and modules. As logical…

Logic in Computer Science · Computer Science 2021-08-24 Kenji Maillard , Nicolas Margulies , Matthieu Sozeau , Nicolas Tabareau , Éric Tanter

Many important functional and security properties--including non-interference, determinism, and generalized non-interference (GNI)--are hyperproperties, i.e., properties relating multiple executions of a program. Existing separation logics…

Programming Languages · Computer Science 2026-04-21 Trayan Gospodinov , Peter Müller , Thibault Dardinier
‹ Prev 1 3 4 5 6 7 10 Next ›