# Signatures and models for syntax and operational semantics in the presence of variable binding

This thesis deals with the specification and construction of syntax and operational semantics of a programming language. We work with a general notion of signature for specifying objects of a given category as initial objects in a suitable category of models.This characterization, in the spirit of Initial Semantics, gives a justification of the recursion principle. Languages with variable binding, such as the pure lambda calculus, are monads on the category of sets specified through the classical algebraic signatures. The first extensions to syntaxes with equations that we consider are quotients of these algebraic signatures. They allow, for example, to specify a binary commutative operation. But some equations, such as associativity, seem to remain out of reach. We thus introduce the notion of 2-signature, consisting in two parts: a specification of operations through a usual signature as before, and a set of equations among them. We identify the class of algebraic 2-signatures for which the existence of the associated syntax is guaranteed. Finally, we takle the specification of the operational semantics of a programming language such as lambda calculus with beta-reduction. To this end, we introduce the notion of reduction monad and their signatures, then we generalize them to get the notion of operational monad.

READ FULL TEXT
Comments

There are no comments yet.