Local Local Reasoning: A BI-Hyperdoctrine for Full Ground Store

03/11/2020
by   Miriam Polzer, et al.
0

Modelling and reasoning about dynamic memory allocation is one of the well-established strands of theoretical computer science, which is particularly well-known as a source of notorious challenges in semantics, reasoning, and proof theory. We capitalize on recent progress on categorical semantics of full ground store, in terms of a full ground store monad, to build a corresponding semantics of a higher order logic over the corresponding programs. Our main result is a construction of an (intuitionistic) BI-hyperdoctrine, which is arguably the semantic core of higher order logic over local store. Although we have made an extensive use of the existing generic tools, certain principled changes had to be made to enable the desired construction: while the original monad works over total heaps (to disable dangling pointers), our version involves partial heaps (heaplets) to enable compositional reasoning using separating conjunction. Another remarkable feature of our construction is that, in contrast to the existing generic approaches, our BI-algebra does not directly stem from an internal categorical partial commutative monoid.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
08/05/2023

A denotationally-based program logic for higher-order store

Separation logic is used to reason locally about stateful programs. Stat...
research
10/05/2022

Denotational semantics of general store and polymorphism

We contribute the first denotational semantics of polymorphic dependent ...
research
10/09/2022

What should a generic object be?

Jacobs has proposed definitions for (weak, strong, split) generic object...
research
03/02/2023

Separated and Shared Effects in Higher-Order Languages

Effectful programs interact in ways that go beyond simple input-output, ...
research
05/24/2023

Theorem Proving in Dependently-Typed Higher-Order Logic – Extended Preprint

Higher-order logic HOL offers a very simple syntax and semantics for rep...
research
04/14/2018

Reasoning About TSO Programs Using Reduction and Abstraction

We present a method for proving that a program running under the Total S...

Please sign up or login with your details

Forgot password? Click here to reset