An abstract, certified account of operational game semantics
Résumé
Operational game semantics (OGS) is a method for interpreting programs
as strategies in suitable games, or more precisely as labelled
transition systems over suitable games, in the sense of Levy and
Staton. Such an interpretation is called sound when, for any two
given programs, bisimilarity of associated strategies entails
contextual equivalence. OGS has been applied to a variety of
languages, with rather tedious soundness proofs.
In this paper, we contribute to the unification and mechanisation of
OGS. Indeed, we propose an abstract notion of language with
evaluator, for which we construct a generic OGS interpretation, which
we prove sound. Our framework covers a variety of simply-typed and
untyped lambda-calculi, notably featuring fixed points, continuations,
and recursive datatypes. All constructions and proofs are entirely
mechanised in the Coq proof assistant.
Domaines
Langage de programmation [cs.PL]Origine | Fichiers produits par l'(les) auteur(s) |
---|