Formal Component-Based Semantics

  title={Formal Component-Based Semantics},
  author={Ken Madlener and Sjaak Smetsers and Marko C. J. D. van Eekelen},
One of the proposed solutions for improving the scalability of semantics of programming languages is Component-Based Semantics, introduced by Peter D. Mosses. It is expected that this framework can also be used effectively for modular meta theoretic reasoning. This paper presents a formalization of Component-Based Semantics in the theorem prover COQ. It is based on Modular SOS, a variant of SOS, and makes essential use of dependent types, while profiting from type classes. This formalization… 

Figures and Tables from this paper

Correctness of Functionally Specified Denotational and Operational Semantics
A common functionally specified formalization of operational and denotational semantics that creates a framework giving the opportunity to formally prove properties about both programming languages in general and specific programs.
Formally verified modular semantics
This chapter presents the results of the validation and verification of a crucial component of BOS, a large safety-critical system that decides when to close and open the Maeslantkering, a storm
Second International Workshop on Rewriting Techniques for Program Transformations and Evaluation
A scheme for modelling actor systems within sequential term rewriting and a natural deduction style proof system called “intuitionistic λρ-calculus” for implicational intuitionistic logic and some reduction rules for the proof system were given.
Formalizing Bialgebraic Semantics in PVS 6.0
This paper specifies this work in the theorem prover PVS, and proves the adequacy theorem of this formalization of GSOS, to investigate whether PVS is adequately suited for formalizing metatheory.


Theorem proving support in programming language semantics
We describe several views of the semantics of a simple programming language as formal documents in the calculus of inductive constructions that can be verified by the Coq proof system. Covered
Component-based semantics
This work considers two semantic frameworks that do support component-based language description: action semantics, and a modular variant of structural operational semantics (MSOS), and analysis of how the semantics of individual constructs can be described independently in these frameworks is analysed.
Modular structural operational semantics
  • P. Mosses
  • Computer Science
    J. Log. Algebraic Methods Program.
  • 2004
Implicit Propagation in Structural Operational Semantics
Mechanized Metatheory for the Masses: The PoplMark Challenge
An initial set of benchmarks for measuring progress in this area of programming languages are proposed, based on the metatheory of System F<:, a typed lambda-calculus with second-order polymorphism, subtyping, and records.
First-Class Type Classes
This work proposes an embedding of type classes into a dependent type theory that is first-class and supports some of the most popular extensions right away, and shows how it can be used to help structured programming and proving by way of examples.
Non-uniform (hyper/multi)coherence spaces
  • Pierre Boudes
  • Computer Science
    Mathematical Structures in Computer Science
  • 2010
By constructing the co-free exponential, this work provides a new semantics in which an edge is a finite multiset, together with non-uniform versions of hypercoherences and multicoherences.
The Coq proof assistant : reference manual, version 6.1
Coq is a proof assistant based on a higher-order logic allowing powerful definitions of functions. Coq V6.1 is available by anonymous ftp at and
Heq: a Coq library for Heterogeneous Equality
We give an introduction to the library Heq, which provides a set of tactics to manip- ulate heterogeneous equality and explicit coercion, such as rewriting of heterogeneous equality and elimination
Modular Structural Operational Semantics J. of Logic and Algebraic Programming 60-61
  • Modular Structural Operational Semantics J. of Logic and Algebraic Programming 60-61
  • 2004