English
Related papers

Related papers: Functions as types or the "Hoare logic" of functio…

200 papers

In this paper, we propose an abstract definition of dependent type theories as essentially algebraic theories. One of the main advantages of this definition is its composability: simple theories can be combined into more complex ones, and…

Logic · Mathematics 2017-03-28 Valery Isaev

We propose a general framework to allow: (a) specifying the operational semantics of a programming language; and (b) stating and proving properties about program correctness. Our framework is based on a many-sorted system of hybrid modal…

Logic in Computer Science · Computer Science 2025-12-01 Ioana Leustean , Natalia Moanga , Traian Florin Serbanuta

Intrinsic definitional interpreters, definitional interpreters that operate on typing derivations instead of abstract syntax trees, have recently been studied as a promising methodology for defining dynamic semantics of programming…

Programming Languages · Computer Science 2026-05-06 Ke Sun , Di Wang , Yuyan Bao , Meng Wang , Dan Hao

We present a Hoare logic that extends program specifications with regular expressions that capture behaviors in terms of sequences of events that arise during the execution. The idea is similar to session types or process-like behavioral…

Logic in Computer Science · Computer Science 2022-05-16 Gidon Ernst , Alexander Knapp , Toby Murray

We propose a probabilistic Hoare logic aHL based on the union bound, a tool from basic probability theory. While the union bound is simple, it is an extremely common tool for analyzing randomized algorithms. In formal verification terms,…

Logic in Computer Science · Computer Science 2019-11-11 Gilles Barthe , Marco Gaboardi , Benjamin Grégoire , Justin Hsu , Pierre-Yves Strub

We aim at a holistic perspective on program logics, including Hoare and incorrectness logics. To this end, we study different classes of properties arising from the generalization of the aforementioned logics. We compare our results with…

Logic in Computer Science · Computer Science 2023-12-18 Lena Verscht , Benjamin Kaminski

Deductive verification techniques based on program logics (i.e., the family of Floyd-Hoare logics) are a powerful approach for program reasoning. Recently, there has been a trend of increasing the expressive power of such logics by…

Logic in Computer Science · Computer Science 2021-01-27 Marco Gaboardi , Shin-ya Katsumata , Dominic Orchard , Tetsuya Sato

Hoare logic provides a syntax-oriented method to reason about program correctness and has been proven effective in the verification of classical and probabilistic programs. Existing proposals for quantum Hoare logic either lack completeness…

Logic in Computer Science · Computer Science 2022-06-29 Yuan Feng , Mingsheng Ying

We propose a new type-theoretic approach to SLD-resolution and Horn-clause logic programming. It views Horn formulas as types, and derivations for a given query as a construction of the inhabitant (a proof-term) for the type given by the…

Logic in Computer Science · Computer Science 2015-10-16 Peng Fu , Ekaterina Komendantskaya

Higher-order logic HOL offers a very simple syntax and semantics for representing and reasoning about typed data structures. But its type system lacks advanced features where types may depend on terms. Dependent type theory offers such a…

Logic in Computer Science · Computer Science 2023-05-25 Colin Rothgang , Florian Rabe , Christoph Benzmüller

Using the programming language Haskell, we introduce an implementation of propositional calculus, number theory, and a simple imperative language that can evaluate arithmetic and boolean expressions. Finally, we provide an implementation of…

Programming Languages · Computer Science 2021-12-28 Boro Sitnikovski

Programs must be correct with respect to their application domain. Yet, the program specification and verification approaches so far only consider correctness in terms of computations. In this work, we present a two-tier Hoare Logic that…

Logic in Computer Science · Computer Science 2024-02-02 Eduard Kamburjan , Dilian Gurov

In relational verification, judicious alignment of computational steps facilitates proof of relations between programs using simple relational assertions. Relational Hoare logics (RHL) provide compositional rules that embody various…

Logic in Computer Science · Computer Science 2023-07-21 Anindya Banerjee , Ramana Nagasamudram , David A. Naumann

We report on work in progress on automatic procedures for proving properties of programs written in higher-order functional languages. Our approach encodes higher-order programs directly as first-order SMT problems over Horn clauses. It is…

Logic in Computer Science · Computer Science 2013-06-25 Nikolaj Bjorner , Ken McMillan , Andrey Rybalchenko

Logic programming languages present clear advantages in terms of declarativeness and conciseness. However, the ideas of logic programming have been met with resistance in other programming communities, and have not generally been adopted by…

Programming Languages · Computer Science 2026-01-08 Ivan Perez , Angel Herranz

Pattern-matching programming is an example of a rule-based programming style developed in functional languages. This programming style is intensively used in dialects of ML but is restricted to algebraic data-types. This restriction limits…

Programming Languages · Computer Science 2009-12-25 Julien Cohen

Graded Type Theory provides a mechanism to track and reason about resource usage in type systems. In this paper, we develop GraD, a novel version of such a graded dependent type system that includes functions, tensor products, additive…

Programming Languages · Computer Science 2021-01-07 Pritam Choudhury , Harley Eades , Richard A. Eisenberg , Stephanie C Weirich

Relational properties arise in many settings: relating two versions of a program that use different data representations, noninterference properties for security, etc. The main ingredient of relational verification, relating aligned pairs…

Logic in Computer Science · Computer Science 2016-11-29 Anindya Banerjee , David A. Naumann , Mohammad Nikouei

Following Hoare's seminal invention, now called Hoare logic, to reason about correctness of computer programs, we advocate a related but fundamentally different approach to reason about access security of computer programs such as access…

Logic in Computer Science · Computer Science 2026-04-01 Arnold Beckmann , Anton Setzer

Starting with Hoare Logic over 50 years ago, numerous program logics have been devised to reason about the diverse programs encountered in the real world. This includes reasoning about computational effects, particularly those effects that…

Logic in Computer Science · Computer Science 2025-06-11 Noam Zilberstein