11,753 research outputs found
The exp-log normal form of types
Lambda calculi with algebraic data types lie at the core of functional
programming languages and proof assistants, but conceal at least two
fundamental theoretical problems already in the presence of the simplest
non-trivial data type, the sum type. First, we do not know of an explicit and
implemented algorithm for deciding the beta-eta-equality of terms---and this in
spite of the first decidability results proven two decades ago. Second, it is
not clear how to decide when two types are essentially the same, i.e.
isomorphic, in spite of the meta-theoretic results on decidability of the
isomorphism.
In this paper, we present the exp-log normal form of types---derived from the
representation of exponential polynomials via the unary exponential and
logarithmic functions---that any type built from arrows, products, and sums,
can be isomorphically mapped to. The type normal form can be used as a simple
heuristic for deciding type isomorphism, thanks to the fact that it is a
systematic application of the high-school identities.
We then show that the type normal form allows to reduce the standard beta-eta
equational theory of the lambda calculus to a specialized version of itself,
while preserving the completeness of equality on terms. We end by describing an
alternative representation of normal terms of the lambda calculus with sums,
together with a Coq-implemented converter into/from our new term calculus. The
difference with the only other previously implemented heuristic for deciding
interesting instances of eta-equality by Balat, Di Cosmo, and Fiore, is that we
exploit the type information of terms substantially and this often allows us to
obtain a canonical representation of terms without performing sophisticated
term analyses
Game semantics for quantum programming
Quantum programming languages permit a hardware independent, high-level description of quantum algo rithms. In particular, the quantum lambda-calculus is a higher-order programming language with quantum primitives, mixing quantum data and classical control. Giving satisfactory denotational semantics to the quantum lambda-calculus is a challenging problem that has attracted significant interest in the past few years. Several models have been proposed but for those that address the whole quantum λ-calculus, they either do not represent the dynamics of computation, or they lack the compositionality one often expects from denotational models.
In this paper, we give the first compositional and interactive model of the full quantum lambda-calculus, based on game semantics. To achieve this we introduce a model of quantum games and strategies, combining quantum data with a representation of the dynamics of computation inspired from causal models of concurrent systems. In this model we first give a computationally adequate interpretation of the affine fragment. Then, we extend the model with a notion of symmetry, allowing us to deal with replication. In this refined setting, we interpret and prove adequacy for the full quantum lambda-calculus. We do this both from a sequential and a parallel interpretation, the latter representing faithfully the causal independence between sub-computations
Map Calculus in GIS: a proposal and demonstration
This paper provides a new representation for fields (continuous surfaces) in Geographical Information Systems (GIS), based on the notion of spatial functions and their combinations. Following Tomlin's (1990) Map Algebra, the term 'Map Calculus' is used for this new representation. In Map Calculus, GIS layers are stored as functions, and new layers can be created by combinations of other functions. This paper explains the principles of Map Calculus and demonstrates the creation of function-based layers and their supporting management mechanism. The proposal is based on Church's (1941) Lambda Calculus and elements of functional computer languages (such as Lisp or Scheme)
Lambda Dependency-Based Compositional Semantics
This short note presents a new formal language, lambda dependency-based
compositional semantics (lambda DCS) for representing logical forms in semantic
parsing. By eliminating variables and making existential quantification
implicit, lambda DCS logical forms are generally more compact than those in
lambda calculus
Lambda Calculus in Core Aldwych
Core Aldwych is a simple model for concurrent computation, involving the concept of agents which communicate through shared variables. Each variable will have exactly one agent that can write to it, and its value can never be changed once written, but a value can contain further variables which are written to later. A key aspect is that the reader of a value may become the writer of variables in it. In this paper we show how this model can be used to encode lambda calculus. Individual function applications can be explicitly encoded as lazy or not, as required. We then show how this encoding can be extended to cover functions which manipulate mutable variables, but with the underlying Core Aldwych implementation still using only immutable variables. The ordering of function applications then becomes an issue, with Core Aldwych able to model either the enforcement of an ordering or the retention of indeterminate ordering, which allows parallel execution
Linear lambda terms as invariants of rooted trivalent maps
The main aim of the article is to give a simple and conceptual account for
the correspondence (originally described by Bodini, Gardy, and Jacquot) between
-equivalence classes of closed linear lambda terms and isomorphism
classes of rooted trivalent maps on compact oriented surfaces without boundary,
as an instance of a more general correspondence between linear lambda terms
with a context of free variables and rooted trivalent maps with a boundary of
free edges. We begin by recalling a familiar diagrammatic representation for
linear lambda terms, while at the same time explaining how such diagrams may be
read formally as a notation for endomorphisms of a reflexive object in a
symmetric monoidal closed (bi)category. From there, the "easy" direction of the
correspondence is a simple forgetful operation which erases annotations on the
diagram of a linear lambda term to produce a rooted trivalent map. The other
direction views linear lambda terms as complete invariants of their underlying
rooted trivalent maps, reconstructing the missing information through a
Tutte-style topological recurrence on maps with free edges. As an application
in combinatorics, we use this analysis to enumerate bridgeless rooted trivalent
maps as linear lambda terms containing no closed proper subterms, and conclude
by giving a natural reformulation of the Four Color Theorem as a statement
about typing in lambda calculus.Comment: accepted author manuscript, posted six months after publicatio
- …