A Step-Indexed Kripke Model of Hidden State via Recursive Properties on Recursively Defined Metric Spaces
نویسندگان
چکیده
Frame and anti-frame rules have been proposed as proof rules for modular reasoning about programs. Frame rules allow one to hide irrelevant parts of the state during verification, whereas the anti-frame rule allows one to hide local state from the context. We give the first sound model for Charguéraud and Pottier’s type and capability system including both frame and anti-frame rules. The model is a possible worlds model based on the operational semantics and step-indexed heap relations, and the worlds are constructed as a recursively defined predicate on a recursively defined metric space. We also extend the model to account for Pottier’s generalized frame and anti-frame rules, where invariants are generalized to families of invariants indexed over pre-orders. This generalization enables reasoning about some well-bracketed as well as (locally) monotonic uses of local state.
منابع مشابه
Kripke Models over Recursively Defined Metric Worlds: Steps and Domains
We show that models of higher-order store phenomenanaturally can be given as Kripke models over worlds thatare recursively defined in a category of metric spaces. Itleads to a unification of methods based on classical do-main theory and on step-indexed operational models. Weshow that our metric approach covers a wide range of step-indexed models, by demonstrating how it ...
متن کاملA step-indexed Kripke model of hidden state
Frame and anti-frame rules have been proposed as proof rules for modular reasoning about programs. Frame rules allow one to hide irrelevant parts of the state during verification, whereas the anti-frame rule allows one to hide local state from the context. We discuss the semantic foundations of frame and anti-frame rules, and present the first sound model for Charguéraud and Pottier’s type and ...
متن کاملUltrametric Domain Theory and Semantics in Coq
We present a Coq formalization of ultrametric spaces and of ultrametric-enriched categories, up to and including the construction of solutions to recursive domain equations in ultrametric-enriched categories. We then show how to apply this semantic setup for giving semantics to a programming language with higher-order store. Specifically, we define a step counting operational semantics for a fu...
متن کاملStep-Indexed Kripke Model of Separation Logic for Storable Locks
We present a version of separation logic for modular reasoning about concurrent programs with dynamically allocated storable locks and dynamic thread creation. The assertions of the program logic are modelled by a Kripke model over a recursively defined set of worlds and the program logic is proved sound through a Kripke relation to the standard operational semantics. This constitutes an elegan...
متن کاملRealisability semantics of parametric polymorphism, general references and recursive types
We present a realisability model for a call-by-value, higher-order programming language with parametric polymorphism, general first-class references, and recursive types. The main novelty is a relational interpretation of open types that include general reference types. The interpretation uses a new approach to modelling references. The universe of semantic types consists of world-indexed famil...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2010