308 research outputs found
A Structural Approach to Reversible Computation
Reversibility is a key issue in the interface between computation and
physics, and of growing importance as miniaturization progresses towards its
physical limits. Most foundational work on reversible computing to date has
focussed on simulations of low-level machine models. By contrast, we develop a
more structural approach. We show how high-level functional programs can be
mapped compositionally (i.e. in a syntax-directed fashion) into a simple kind
of automata which are immediately seen to be reversible. The size of the
automaton is linear in the size of the functional term. In mathematical terms,
we are building a concrete model of functional computation. This construction
stems directly from ideas arising in Geometry of Interaction and Linear
Logic---but can be understood without any knowledge of these topics. In fact,
it serves as an excellent introduction to them. At the same time, an
interesting logical delineation between reversible and irreversible forms of
computation emerges from our analysis.Comment: 30 pages, appeared in Theoretical Computer Scienc
Functionality, Polymorphism, and Concurrency: A Mathematical Investigation of Programming Paradigms
The search for mathematical models of computational phenomena often leads to problems that are of independent mathematical interest. Selected problems of this kind are investigated in this thesis. First, we study models of the untyped lambda calculus. Although many familiar models are constructed by order-theoretic methods, it is also known that there are some models of the lambda calculus that cannot be non-trivially ordered. We show that the standard open and closed term algebras are unorderable. We characterize the absolutely unorderable T-algebras in any algebraic variety T. Here an algebra is called absolutely unorderable if it cannot be embedded in an orderable algebra. We then introduce a notion of finite models for the lambda calculus, contrasting the known fact that models of the lambda calculus, in the traditional sense, are always non-recursive. Our finite models are based on Plotkin’s syntactical models of reduction. We give a method for constructing such models, and some examples that show how finite models can yield useful information about terms. Next, we study models of typed lambda calculi. Models of the polymorphic lambda calculus can be divided into environment-style models, such as Bruce and Meyer’s non-strict set-theoretic models, and categorical models, such as Seely’s interpretation in PL-categories. Reynolds has shown that there are no set-theoretic strict models. Following a different approach, we investigate a notion of non-strict categorical models. These provide a uniform framework in which one can describe various classes of non-strict models, including set-theoretic models with or without empty types, and Kripke-style models. We show that completeness theorems correspond to categorical representation theorems, and we reprove a completeness result by Meyer et al. on set-theoretic models of the simply-typed lambda calculus with possibly empty types. Finally, we study properties of asynchronous communication in networks of communicating processes. We formalize several notions of asynchrony independently of any particular concurrent process paradigm. A process is asynchronous if its input and/or output is filtered through a communication medium, such as a buffer or a queue, possibly with feedback. We prove that the behavior of asynchronous processes can be equivalently characterized by first-order axioms
Converse extensionality and apartness
In this paper we try to find a computational interpretation for a strong form
of extensionality, which we call ``converse extensionality''. These converse
extensionality principles, which arise as the Dialectica interpretation of the
axiom of extensionality, were first studied by Howard. In order to give a
computational interpretation to these principles, we reconsider Brouwer's
apartness relation, a strong constructive form of inequality. Formally, we
provide a categorical construction to endow every typed combinatory algebra
with an apartness relation. We then exploit that functions reflect apartness,
in addition to preserving equality, to prove that the resulting categories of
assemblies model a converse extensionality principle.Comment: Fixed typos and added an appendix with a proof-theoretic treatment of
our result
Effective lambda-models vs recursively enumerable lambda-theories
A longstanding open problem is whether there exists a non syntactical model
of the untyped lambda-calculus whose theory is exactly the least lambda-theory
(l-beta). In this paper we investigate the more general question of whether the
equational/order theory of a model of the (untyped) lambda-calculus can be
recursively enumerable (r.e. for brevity). We introduce a notion of effective
model of lambda-calculus calculus, which covers in particular all the models
individually introduced in the literature. We prove that the order theory of an
effective model is never r.e.; from this it follows that its equational theory
cannot be l-beta or l-beta-eta. We then show that no effective model living in
the stable or strongly stable semantics has an r.e. equational theory.
Concerning Scott's semantics, we investigate the class of graph models and
prove that no order theory of a graph model can be r.e., and that there exists
an effective graph model whose equational/order theory is minimum among all
theories of graph models. Finally, we show that the class of graph models
enjoys a kind of downwards Lowenheim-Skolem theorem.Comment: 34
Introducing a Calculus of Effects and Handlers for Natural Language Semantics
In compositional model-theoretic semantics, researchers assemble
truth-conditions or other kinds of denotations using the lambda calculus. It
was previously observed that the lambda terms and/or the denotations studied
tend to follow the same pattern: they are instances of a monad. In this paper,
we present an extension of the simply-typed lambda calculus that exploits this
uniformity using the recently discovered technique of effect handlers. We prove
that our calculus exhibits some of the key formal properties of the lambda
calculus and we use it to construct a modular semantics for a small fragment
that involves multiple distinct semantic phenomena
A Convenient Category of Domains
We motivate and define a category of "topological domains",
whose objects are certain topological spaces, generalising
the usual -continuous dcppos of domain theory.
Our category supports all the standard constructions of domain theory,
including the solution of recursive domain equations. It also
supports the construction of free algebras for (in)equational
theories, provides a model of parametric polymorphism,
and can be used as the basis for a theory of computability.
This answers a question of Gordon Plotkin, who asked
whether it was possible to construct a category of domains
combining such properties
- …