Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Kristian Støvring is active.

Publication


Featured researches published by Kristian Støvring.


logic in computer science | 2011

First Steps in Synthetic Guarded Domain Theory: Step-Indexing in the Topos of Trees

Lars Birkedal; Rasmus Ejlers Møgelberg; Jan Schwinghammer; Kristian Støvring

We present the topos S of trees as a model of guarded recursion. We study the internal dependently-typed higher-order logic of S and show that S models two modal operators, on predicates and types, which serve as guards in recursive definitions of terms, predicates, and types. In particular, we show how to solve recursive type equations involving dependent types. We propose that the internal logic of S provides the right setting for the synthetic construction of abstract versions of step-indexed models of programming languages and program logics. As an example, we show how to construct a model of a programming language with higher-order store and recursive types entirely inside the internal logic of S.


symposium on principles of programming languages | 2011

Step-indexed kripke models over recursive worlds

Lars Birkedal; Bernhard Reus; Jan Schwinghammer; Kristian Støvring; Jacob Thamsborg; Hongseok Yang

Over the last decade, there has been extensive research on modelling challenging features in programming languages and program logics, such as higher-order store and storable resource invariants. A recent line of work has identified a common solution to some of these challenges: Kripke models over worlds that are recursively defined in a category of metric spaces. In this paper, we broaden the scope of this technique from the original domain-theoretic setting to an elementary, operational one based on step indexing. The resulting method is widely applicable and leads to simple, succinct models of complicated language features, as we demonstrate in our semantics of Charguéraud and Pottiers type-and-capability system for an ML-like higher-order language. Moreover, the method provides a high-level understanding of the essence of recent approaches based on step indexing.


joint european conferences on theory and practice of software | 2009

Realizability Semantics of Parametric Polymorphism, General References, and Recursive Types

Lars Birkedal; Kristian Støvring; Jacob Thamsborg

We present a realizability 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 (as needed for parametricity reasoning) that include general reference types. The interpretation uses a new approach to modeling references. The universe of semantic types consists of world-indexed families of logical relations over a universal predomain. In order to model general reference types, worlds are finite maps from locations to semantic types: this introduces a circularity between semantic types and worlds that precludes a direct definition of either. Our solution is to solve a recursive equation in an appropriate category of metric spaces. In effect, types are interpreted using a Kripke logical relation over a recursively defined set of worlds. We illustrate how the model can be used to prove simple equivalences between different implementations of imperative abstract data types.


Logical Methods in Computer Science | 2012

First steps in synthetic guarded domain theory: step-indexing in the topos of trees

Lars Birkedal; Rasmus Ejlers Møgelberg; Jan Schwinghammer; Kristian Støvring

We present the topos S of trees as a model of guarded recursion. We study the internal dependently-typed higher-order logic of S and show that S models two modal operators, on predicates and types, which serve as guards in recursive definitions of terms, predicates, and types. In particular, we show how to solve recursive type equations involving dependent types. We propose that the internal logic of S provides the right setting for the synthetic construction of abstract versions of step-indexed models of programming languages and program logics. As an example, we show how to construct a model of a programming language with higher-order store and recursive types entirely inside the internal logic of S.


Electronic Notes in Theoretical Computer Science | 2011

Step-Indexed Kripke Model of Separation Logic for Storable Locks

Alexandre Buisse; Lars Birkedal; Kristian Støvring

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 de. ned set of worlds and the program logic is proved sound through a Kripke relation to the standard operational semantics. This constitutes an elegant solution to the circularity issue arising from lock resource invariants depending on worlds containing lock resource invariants.


types in languages design and implementation | 2009

Relational parametricity for references and recursive types

Lars Birkedal; Kristian Støvring; Jacob Thamsborg

We present a possible world semantics for a call-by-value higher-order programming language with impredicative polymorphism, general references, and recursive types. The model is one of the first relationally parametric models of a programming language with all these features. To model impredicative polymorphism we define the semantics of types via parameterized (world-indexed) logical relations over a universal domain. It is well-known that it is non-trivial to show the existence of logical relations in the presence of recursive types. Here the problems are exacerbated because of general references. We explain what the problems are and present our solution, which makes use of a novel approach to modeling references. We prove that the resulting semantics is adequate with respect to a standard operational semantics and include simple examples of reasoning about contextual equivalence via parametricity.


joint european conferences on theory and practice of software | 2011

A step-indexed Kripke model of hidden state via recursive properties on recursively defined metric spaces

Jan Schwinghammer; Lars Birkedal; Kristian Støvring

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 Chargueraud and Pottiers 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 Pottiers 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.


Mathematical Structures in Computer Science | 2013

A step-indexed kripke model of hidden state

Jan Schwinghammer; Lars Birkedal; François Pottier; Bernhard Reus; Kristian Støvring; Hongseok Yang

Frame and anti-frame rules have been proposed as proof rules for modular reasoning about programs. Frame rules allow the hiding of irrelevant parts of the state during verification, whereas the anti-frame rule allows the hiding of local state from the context. We discuss the semantic foundations of frame and anti-frame rules, and present the first sound model for Chargueraud and Pottiers type and capability system including both of these rules. The model is a possible worlds model based on the operational semantics and step-indexed heap relations, and the worlds are given by a recursively defined metric space. We also extend the model to account for Pottiers generalised frame and anti-frame rules, where invariants are generalised to families of invariants indexed over preorders. This generalisation enables reasoning about some well-bracketed as well as locally monotone uses of local state.


Theoretical Computer Science | 2010

The category-theoretic solution of recursive metric-space equations

Lars Birkedal; Kristian Støvring; Jacob Thamsborg


fixed points in computer science | 2010

A Step-Indexed Kripke Model of Hidden State via Recursive Properties on Recursively Defined Metric Spaces.

Lars Birkedal; Jan Schwinghammer; Kristian Støvring

Collaboration


Dive into the Kristian Støvring's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar

Jacob Thamsborg

IT University of Copenhagen

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Alexandre Buisse

IT University of Copenhagen

View shared research outputs
Researchain Logo
Decentralizing Knowledge