69 research outputs found
Modules over monads and operational semantics
This paper is a contribution to the search for efficient and high-level
mathematical tools to specify and reason about (abstract) programming languages
or calculi. Generalising the reduction monads of Ahrens et al., we introduce
transition monads, thus covering new applications such as
lambda-bar-mu-calculus, pi-calculus, Positive GSOS specifications, differential
lambda-calculus, and the big-step, simply-typed, call-by-value lambda-calculus.
Moreover, we design a suitable notion of signature for transition monads
High-level signatures and initial semantics
We present a device for specifying and reasoning about syntax for datatypes,
programming languages, and logic calculi. More precisely, we study a notion of
signature for specifying syntactic constructions.
In the spirit of Initial Semantics, we define the syntax generated by a
signature to be the initial object---if it exists---in a suitable category of
models. In our framework, the existence of an associated syntax to a signature
is not automatically guaranteed. We identify, via the notion of presentation of
a signature, a large class of signatures that do generate a syntax.
Our (presentable) signatures subsume classical algebraic signatures (i.e.,
signatures for languages with variable binding, such as the pure lambda
calculus) and extend them to include several other significant examples of
syntactic constructions.
One key feature of our notions of signature, syntax, and presentation is that
they are highly compositional, in the sense that complex examples can be
obtained by assembling simpler ones. Moreover, through the Initial Semantics
approach, our framework provides, beyond the desired algebra of terms, a
well-behaved substitution and the induction and recursion principles associated
to the syntax.
This paper builds upon ideas from a previous attempt by Hirschowitz-Maggesi,
which, in turn, was directly inspired by some earlier work of
Ghani-Uustalu-Hamana and Matthes-Uustalu.
The main results presented in the paper are computer-checked within the
UniMath system.Comment: v2: extended version of the article as published in CSL 2018
(http://dx.doi.org/10.4230/LIPIcs.CSL.2018.4); list of changes given in
Section 1.5 of the paper; v3: small corrections throughout the paper, no
major change
Modules over monads and operational semantics (expanded version)
This paper is a contribution to the search for efficient and high-level
mathematical tools to specify and reason about (abstract) programming languages
or calculi. Generalising the reduction monads of Ahrens et al., we introduce
transition monads, thus covering new applications such as
lambda-bar-mu-calculus, pi-calculus, Positive GSOS specifications, differential
lambda-calculus, and the big-step, simply-typed, call-by-value lambda-calculus.
Moreover, we design a suitable notion of signature for transition monads
Contraction-free proofs and finitary games for Linear Logic
In the standard sequent presentations of Girard's Linear Logic (LL), there
are two "non-decreasing" rules, where the premises are not smaller than the
conclusion, namely the cut and the contraction rules. It is a universal concern
to eliminate the cut rule. We show that, using an admissible modification of
the tensor rule, contractions can be eliminated, and that cuts can be
simultaneously limited to a single initial occurrence. This view leads to a
consistent, but incomplete game model for LL with exponentials, which is
finitary, in the sense that each play is finite. The game is based on a set of
inference rules which does not enjoy cut elimination. Nevertheless, the cut
rule is valid in the model.Comment: 19 pages, uses tikz and Paul Taylor's diagram
- …