Repository landing page

We are not able to resolve this OAI Identifier to the repository landing page. If you are the repository manager for this record, please head to the Dashboard and adjust the settings.

Executable Denotational Semantics with Interaction Trees

Abstract

Interaction trees are a representation of effectful and reactive systemsdesigned to be implemented in a proof assistant such as Coq.They are equipped with a rich algebra of combinators to construct recursiveand effectful computations and to reason about them equationally.Interaction trees are also an executable structure, notably via extraction,which enables testing and directly developing executable programs in Coq.To demonstrate the usefulness of interaction trees, two applications arepresented. First, I develop a novel approach to verify a compiler from a simpleimperative language to assembly, by proving a semantic preservation theoremwhich is termination-sensitive, using an equational proof. Second, I present aframework of concurrent objects, inheriting the modularity, compositionality,and executability of interaction trees. Leveraging that framework,I formally prove the correctness of a transactionally predicated map, using anovel approach to reason about objects combining the notions of linearizabilityand strict serializability, two well-known correctness conditions forconcurrent objects

Similar works

Full text

thumbnail-image

ScholarlyCommons@Penn

redirect
Last time updated on 21/10/2022

This paper was published in ScholarlyCommons@Penn.

Having an issue?

Is data on this page outdated, violates copyrights or anything else? Report the problem now and we will take corresponding actions after reviewing your request.