Gordon D. Plotkin

dblp:p/GordonDPlotkin · DBLP profile ↗
← Back
101ranked-venue papers
31as first author
9since 2021 · last 2026
0000-0001-8496-6096ORCID · verified

Domains — the database's venue-derived domains; a paper can count in several

Theory of computation · 78 · 28 first-author · 8 since 2021Software engineering, systems software and programming languages · 20 · 5 first-author · 2 since 2021Security and privacy · 3Applied, interdisciplinary, general and emerging computing · 3Artificial intelligence and machine learning · 1Systems, architecture and hardware · 1Graphics, computer vision, multimedia, augmented reality and games · 1
YearPublicationVenuePosition
2026 Rational Lawvere Logic (Invited Paper)
abstract
Graded modal types systems and coeffects are becoming a standard formalism to deal with context-dependent computations where code usage plays a central role. The theory of program equivalence for modal and coeffectful languages, however, is considerably underdeveloped if compared to the denotational and operational semantics of such languages. This raises the question of how much of the theory of ordinary program equivalence can be given in a modal scenario. In this work, we show that coinductive equivalences can be extended to a modal setting, and we do so by generalising Abramsky's applicative bisimilarity to coeffectful behaviours. To achieve this goal, we develop a general theory of ternary program relations based on the novel notion of a comonadic lax extension, on top of which we define a modal extension of Abramsky's applicative bisimilarity (which we dub modal applicative bisimilarity). We prove such a relation to be a congruence, this way obtaining a compositional technique for reasoning about modal and coeffectful behaviours. But this is not the end of the story: we also establish a correspondence between modal program relations and program distances. This correspondence shows that modal applicative bisimilarity and (a properly extended) applicative bisimilarity distance coincide, this way revealing that modal program equivalences and program distances are just two sides of the same coin.
Giorgio Bacci, Radu Mardare, Prakash Panangaden, Gordon D. Plotkin
CSL4
2025 Two-sorted algebraic decompositions of Brookes's shared-state denotational semantics
abstract
Abstract We define a two sorted equational theory of algebraic effects that models concurrent shared state with preemptive interleaving, recovering Brookes’s seminal 1996 trace-based model precisely. The decomposition allows us to analyse Brookes’s model algebraically in terms of separate but interacting components. The multiple sorts partition terms into layers. We use two sorts: a “hold” sort for layers that disallow interleaving of environment memory accesses, analogous to holding a global lock on the memory; and a “cede” sort for the opposite. The algebraic signature comprises of independent interlocking components: two new operators that switch between these sorts, delimiting the atomic layers, thought of as acquiring and releasing the global lock; non-deterministic choice; and state-accessing operators. The axioms similarly divide cleanly: the delimiters behave as a closure pair; all operators are strict, and distribute over non-empty non-deterministic choice; and non-deterministic global state obeys Plotkin and Power’s presentation of global state. Our representation theorem expresses the free algebras over a two-sorted family of variables as sets of traces with suitable closure conditions. When the held sort has no variables, we recover Brookes’s trace semantics. We define several other single-and two-sorted theories to elucidate the connection to Brookes’s model via translation embeddings and equivalences.
Yotam Dvir, Ohad Kammar, Ori Lahav 0001, Gordon D. Plotkin
FoSSaCS4
2025 Rod Burstall: In Memoriam
abstract
Rodney Martineau Burstall -Rod, as he was known to us all -died on Thursday, 13th February, 2025, after a long illness.Rod was a kind and generous man who will be remembered by those who knew him as much for his humanity as for his contributions to computer science.While he made major contributions to our subject, he constantly demonstrated humility, curiosity, openness, tolerance, and acceptance.He read widely and enjoyed discussing -or learning about -basically any topic that his conversational partner felt passionate about.Perhaps more than anything he exemplified a comfortable way of being human.To many of us that was his greatest contribution to our lives.Rod was born in 1934, the son of a draftsman and a housewife from Liverpool.He attended King George V Grammar School at Southport, moved on to King's College, Cambridge, reading Natural Sciences, and then took a Masters in
J Strother Moore, Gordon D. Plotkin, David E. Rydeheard, Donald Sannella
Formal Aspects Comput.2
2025 Handling the Selection Monad
abstract
The selection monad on a set consists of selection functions. These select an element from the set, based on a loss (dually, reward) function giving the loss resulting from a choice of an element. Abadi and Plotkin used the monad to model a language with operations making choices of computations taking account of the loss that would arise from each choice. However, their choices were optimal, and they asked if they could instead be programmer provided. In this work, we present a novel design enabling programmers to do so. We present a version of algebraic effect handlers enriched by computational ideas inspired by the selection monad. Specifically, as well as the usual delimited continuations, our new kind of handlers additionally have access to choice continuations , that give the possible future losses. In this way programmers can write operations implementing optimisation algorithms that are aware of the losses arising from their possible choices. We give an operational semantics for a higher-order model language λC , and establish desirable properties including progress, type soundness, and termination for a subset with a mild hierarchical constraint on allowable operation types. We give this subset a selection monad denotational semantics, and prove soundness and adequacy results. We also present a Haskell implementation and give a variety of programming examples.
Gordon D. Plotkin, Ningning Xie
Proc. ACM Program. Lang.1
2024 Sum and Tensor of Quantitative Effects
abstract
Inspired by the seminal work of Hyland, Plotkin, and Power on the combination of algebraic computational effects via sum and tensor, we develop an analogous theory for the combination of quantitative algebraic effects. Quantitative algebraic effects are monadic computational effects on categories of metric spaces, which, moreover, have an algebraic presentation in the form of quantitative equational theories, a logical framework introduced by Mardare, Panangaden, and Plotkin that generalises equational logic to account for a concept of approximate equality. As our main result, we show that the sum and tensor of two quantitative equational theories correspond to the categorical sum (i.e., coproduct) and tensor, respectively, of their effects qua monads. We further give a theory of quantitative effect transformers based on these two operations, essentially providing quantitative analogues to the following monad transformers due to Moggi: exception, resumption, reader, and writer transformers. Finally, as an application, we provide the first quantitative algebraic axiomatizations to the following coalgebraic structures: Markov processes, labelled Markov processes, Mealy machines, and Markov decision processes, each endowed with their respective bisimilarity metrics. Apart from the intrinsic interest in these axiomatizations, it is pleasing they have been obtained as the composition, via sum and tensor, of simpler quantitative equational theories.
Giorgio Bacci, Radu Mardare, Prakash Panangaden, Gordon D. Plotkin
Log. Methods Comput. Sci.4
2023 Smart Choices and the Selection Monad
abstract
Describing systems in terms of choices and their resulting costs and rewards offers the promise of freeing algorithm designers and programmers from specifying how those choices should be made; in implementations, the choices can be realized by optimization techniques and, increasingly, by machine-learning methods. We study this approach from a programming-language perspective. We define two small languages that support decision-making abstractions: one with choices and rewards, and the other additionally with probabilities. We give both operational and denotational semantics. In the case of the second language we consider three denotational semantics, with varying degrees of correlation between possible program values and expected rewards. The operational semantics combine the usual semantics of standard constructs with optimization over spaces of possible execution strategies. The denotational semantics, which are compositional, rely on the selection monad, to handle choice, augmented with an auxiliary monad to handle other effects, such as rewards or probability. We establish adequacy theorems that the two semantics coincide in all cases. We also prove full abstraction at base types, with varying notions of observation in the probabilistic case corresponding to the various degrees of correlation. We present axioms for choice combined with rewards and probability, establishing completeness at base types for the case of rewards without probability.
Martín Abadi, Gordon D. Plotkin
Log. Methods Comput. Sci.2
2021 Tensor of Quantitative Equational Theories
abstract
We develop a theory for the commutative combination of quantitative effects, their tensor, given as a combination of quantitative equational theories that imposes mutual commutation of the operations from each theory. As such, it extends the sum of two theories, which is just their unrestrained combination. Tensors of theories arise in several contexts; in particular, in the semantics of programming languages, the monad transformer for global state is given by a tensor. We show that under certain assumptions on the quantitative theories the free monad that arises from the tensor of two theories is the categorical tensor of the free monads on the theories. As an application, we provide the first algebraic axiomatizations of labelled Markov processes and Markov decision processes. Apart from the intrinsic interest in the axiomatizations, it is pleasing they are obtained compositionally by means of the sum and tensor of simpler quantitative equational theories.
Giorgio Bacci, Radu Mardare, Prakash Panangaden, Gordon D. Plotkin
CALCO4
2021 Smart Choices and the Selection Monad
abstract
Describing systems in terms of choices and their resulting costs and rewards promises to free algorithm designers and programmers from specifying how to make those choices. In implementations, the choices can be realized by optimization or machine-learning methods.We study this approach from a programming-language perspective. We define a small language that supports decision-making abstraction, rewards, and probabilities. We give a globally optimizing operational semantics, and, using the selection monad for decision-making, three denotational semantics with auxiliary monads for reward and probability; the three model various correlations between returned values and expected rewards. We show the two kinds of semantics coincide by proving adequacy theorems; we show that observational equivalence is characterized by semantic equality (at basic types) by proving full abstraction theorems; and we discuss program equations.
Martín Abadi, Gordon D. Plotkin
LICS2
2021 Fixed-Points for Quantitative Equational Logics
Radu Mardare, Prakash Panangaden, Gordon D. Plotkin
LICS3
2020 Reverse Derivative Categories
abstract
The reverse derivative is a fundamental operation in machine learning and automatic differentiation. This paper gives a direct axiomatization of a category with a reverse derivative operation, in a similar style to that given by Cartesian differential categories for a forward derivative. Intriguingly, a category with a reverse derivative also has a forward derivative, but the converse is not true. In fact, we show explicitly what a forward derivative is missing: a reverse derivative is equivalent to a forward derivative with a dagger structure on its subcategory of linear maps. Furthermore, we show that these linear maps form an additively enriched category with dagger biproducts.
J. Robin B. Cockett, Geoff S. H. Cruttwell, Jonathan Gallagher, Jean-Simon Lemay, Benjamin MacAdam, Gordon D. Plotkin, Dorette Pronk
CSL6
2020 A Complete Equational Axiomatisation of Partial Differentiation
abstract
We formalise the well-known rules of partial differentiation in a version of equational logic with function variables and binding constructs. We prove the resulting theory is complete with respect to polynomial interpretations. The proof makes use of Severi's interpolation theorem that all multivariate Hermite problems are solvable. We also present a number of related results, such as decidability and equational completeness.
Gordon D. Plotkin
MFPS1
2020 A simple differentiable programming language
abstract
Automatic differentiation plays a prominent role in scientific computing and in modern machine learning, often in the context of powerful programming systems. The relation of the various embodiments of automatic differentiation to the mathematical notion of derivative is not always entirely clear---discrepancies can arise, sometimes inadvertently. In order to study automatic differentiation in such programming contexts, we define a small but expressive programming language that includes a construct for reverse-mode differentiation. We give operational and denotational semantics for this language. The operational semantics employs popular implementation techniques, while the denotational semantics employs notions of differentiation familiar from real analysis. We establish that these semantics coincide.
Martín Abadi, Gordon D. Plotkin
Proc. ACM Program. Lang.2
2019 Chromar, a language of parameterised agents
abstract
Modelling in biology becomes necessary when systems are complex. However, the more complex the systems are, the harder models become to read and write. The most common ways of writing models are by writing reactions on species (discrete objects), or by writing rate equations for the populations of such species. One problem with such approaches is that the number of species is often so large that the model cannot be realistically enumerated. Another problem is that the number of species and reactions often fixed by default, whereas new variations of species and reactions are constantly being improvised by evolution in the long-term and moment to moment by the changing chemical environments and compartments living organisms inhabit and create within. Here we develop a modelling language Chromar that provides an extension to the representation of reactions, in which objects, called agents, carry attributes with associated types — for example, Leaf agents all have a mass attribute. Dynamics are given by stochastic rules defined on groups of agents — for example all agents of a specific type — and so enumerating the dynamics of each agent is not necessary. This compact representation addresses the first problem. Having a more compact representation can also help make models a tool for knowledge representation and exchange instead of just simulation. Further, if we think of agents as the analogue of species in reactions, then creating a new agent of some type effectively creates a new species, thereby addressing the second problem. We then develop an extension of Chromar equipped with deterministically changing time-dependent values (fluents) and aggregate values computed from the state of the system (observables). Fluents are useful for describing the context of the system, which is rarely static; observables are useful in abstracting away details of system behaviour and providing a way to observe the system during simulation. Finally, we develop an embedding of Chromar (and its extensions) in the programming language Haskell and demonstrate its applicability via two examples. Embedding Chromar in a general purpose programming language such as Haskell eases some of the constraints of modelling languages while still maintaining the naturalness of a domain-specific language.
Ricardo Honorato-Zimmer, Andrew J. Millar, Gordon D. Plotkin, Argyris Zardilis
Theor. Comput. Sci.3
2018 An Algebraic Theory of Markov Processes
abstract
Markov processes are a fundamental model of probabilistic transition systems and are the underlying semantics of probabilistic programs. We give an algebraic axiomatisation of Markov processes using the framework of quantitative equational logic introduced in [13]. We present the theory in a structured way using work of Hyland et al. [9] on combining monads. We take the interpolative barycentric algebras of [13] which captures the Kantorovich metric and combine it with a theory of contractive operators to give the required axiomatisation of Markov processes both for discrete and continuous state spaces. This work apart from its intrinsic interest shows how one can extend the general notion of combining effects to the quantitative setting.
Giorgio Bacci, Radu Mardare, Prakash Panangaden, Gordon D. Plotkin
LICS4
2018 Free complete Wasserstein algebras
Radu Mardare, Prakash Panangaden, Gordon D. Plotkin
Log. Methods Comput. Sci.3
2017 On the axiomatizability of quantitative algebras
abstract
Quantitative algebras (QAs) are algebras over metric spaces defined by quantitative equational theories as introduced by us in 2016. They provide the mathematical foundation for metric semantics of probabilistic, stochastic and other quantitative systems. This paper considers the issue of axiomatizability of QAs. We investigate the entire spectrum of types of quantitative equations that can be used to axiomatize theories: (i) simple quantitative equations; (ii) Horn clauses with no more than c equations between variables as hypotheses, where c is a cardinal and (iii) the most general case of Horn clauses. In each case we characterize the class of QAs and prove variety/quasivariety theorems that extend and generalize classical results from model theory for algebras and first-order structures.
Radu Mardare, Prakash Panangaden, Gordon D. Plotkin
LICS3
2017 Dijkstra monads for free
abstract
Dijkstra monads enable a dependent type theory to be enhanced with support for specifying and verifying effectful code via weakest preconditions. Together with their closely related counterparts, Hoare monads, they provide the basis on which verification tools like F*, Hoare Type Theory (HTT), and Ynot are built. We show that Dijkstra monads can be derived "for free" by applying a continuation-passing style (CPS) translation to the standard monadic definitions of the underlying computational effects. Automatically deriving Dijkstra monads in this way provides a correct-by-construction and efficient way of reasoning about user-defined effects in dependent type theories. We demonstrate these ideas in EMF*, a new dependently typed calculus, validating it via both formal proof and a prototype implementation within F*. Besides equipping F* with a more uniform and extensible effect system, EMF* enables a novel mixture of intrinsic and extrinsic proofs within F*.
Danel Ahman, Catalin Hritcu, Kenji Maillard, Guido Martínez, Gordon D. Plotkin, Jonathan Protzenko, Aseem Rastogi, Nikhil Swamy
POPL5
2016 Dependent Types and Fibred Computational Effects
Danel Ahman, Neil Ghani, Gordon D. Plotkin
FoSSaCS3
2016 Quantitative Algebraic Reasoning
abstract
We develop a quantitative analogue of equational reasoning which we call quantitative algebra. We define an equality relation indexed by rationals: a = ε b which we think of as saying that "a is approximately equal to b up to an error of ε ". We have 4 interesting examples where we have a quantitative equational theory whose free algebras correspond to well known structures. In each case we have finitary and continuous versions. The four cases are: Hausdorff metrics from quantitive semilattices; p-Wasserstein metrics (hence also the Kantorovich metric) from barycentric algebras and also from pointed barycentric algebras and the total variation metric from a variant of barycentric algebras.
Radu Mardare, Prakash Panangaden, Gordon D. Plotkin
LICS3
2016 Scaling network verification using symmetry and surgery
abstract
On the surface, large data centers with about 100,000 stations and nearly a million routing rules are complex and hard to verify. However, these networks are highly regular by design; for example they employ fat tree topologies with backup routers interconnected by redundant patterns. To exploit these regularities, we introduce network transformations: given a reachability formula and a network, we transform the network into a simpler to verify network and a corresponding transformed formula, such that the original formula is valid in the network if and only if the transformed formula is valid in the transformed network. Our network transformations exploit network surgery (in which irrelevant or redundant sets of nodes, headers, ports, or rules are ``sliced'' away) and network symmetry (say between backup routers). The validity of these transformations is established using a formal theory of networks. In particular, using Van Benthem-Hennessy-Milner style bisimulation, we show that one can generally associate bisimulations to transformations connecting networks and formulas with their transforms. Our work is a development in an area of current wide interest: applying programming language techniques (in our case bisimulation and modal logic) to problems in switching networks. We provide experimental evidence that our network transformations can speed up by 65x the task of verifying the communication between all pairs of Virtual Machines in a large datacenter network with about 100,000 VMs. An all-pair reachability calculation, which formerly took 5.5 days, can be done in 2 hours, and can be easily parallelized to complete in
Gordon D. Plotkin, Nikolaj S. Bjørner, Nuno P. Lopes, Andrey Rybalchenko, George Varghese
POPL1
2015 Foundations of Differential Dataflow
Martín Abadi, Frank McSherry, Gordon D. Plotkin
FoSSaCS3
2014 On Hierarchical Graphs: Reconciling Bigraphs, Gs-monoidal Theories and Gs-graphs
abstract
Compositional graph models for global computing systems must account for two relevant dimensions, namely structural containment and communication linking. In Milner's bigraphs the two dimensions are made explicit and represented as two loosely coupled structures: the place graph and the link graph. Here, bigraphs are compared with an earlier model, gs-graphs, originally conceived for modelling the syntactical structure of agents with α-convertible declarations. We show that gs-graphs are quite convenient also for the new purpose, since the two above mentioned dimensions can be recovered by considering only a specific class of hyper-signatures. With respect to bigraphs, gs-graphs can be proved essentially equivalent, with minor differences at the interface level. We argue that gs-graphs offer a simpler and more standard algebraic structure, based on monoidal categories, for representing both states and transitions. Moreover, they can be equipped with a simple type system to check the well-formedness of legal gs-graphs that are shown to characterise binding bigraphs. Another advantage concerns a textual form in terms of sets of assignments, which can make implementation easier in rewriting frameworks like Maude.
Roberto Bruni 0001, Ugo Montanari, Gordon D. Plotkin, Daniele Terreni
Fundam. Informaticae3
2014 Approximating Markov Processes by Averaging
abstract
Normally, one thinks of probabilistic transition systems as taking an initial probability distribution over the state space into a new probability distribution representing the system after a transition. We, however, take a dual view of Markov processes as transformers of bounded measurable functions. This is very much in the same spirit as a “predicate-transformer” view, which is dual to the state-transformer view of transition systems. We redevelop the theory of labelled Markov processes from this viewpoint; in particular, we explore approximation theory. We obtain three main results. (i) It is possible to define bisimulation on general measure spaces and show that it is an equivalence relation. The logical characterization of bisimulation can be done straightforwardly and generally. (ii) A new and flexible approach to approximation based on averaging can be given. This vastly generalizes and streamlines the idea of using conditional expectations to compute approximations. (iii) We show that there is a minimal process bisimulation-equivalent to a given process, and this minimal process is obtained as the limit of the finite approximants.
Philippe Chaput, Vincent Danos, Prakash Panangaden, Gordon D. Plotkin
J. ACM4
2014 Cartesian closed categories of separable Scott domains
Andrej Bauer, Gordon D. Plotkin, Dana S. Scott
Theor. Comput. Sci.2
2013 The Compiler Forest
Mihai Budiu, Joel Galenson, Gordon D. Plotkin
ESOP3
2013 Multi-level modelling via stochastic multi-level multiset rewriting
abstract
We present a simple stochastic rule-based approach to multi-level modelling for computational systems biology. Populations are modelled using multi-level multisets; these contain both species and agents, with the latter possibly containing further such multisets. Rules are pairs of such multisets, but they may now also include variables (as well as species and agents), together with an associated stochastic rate. We give two illustrative examples. The first is an extracellular model of virus infection, coupled with an intracellular model of viral reproduction; this model can demonstrate successive waves of infection. The second is a model of cell division in which a repressor protein is diluted in successive generations, so eventually repression no longer occurs. The multi-level multiset approach can also be seen in terms of stochastic term rewriting for the theory of a commutative monoid equipped with extra constants (for the species) and unary operations (for the agents). We further discuss the relationship of this approach with two others: Krivine et al.'s stochastic bigraphs, restricted to Milner's place graphs, and Coppo et al.'s Stochastic Calculus of Wrapped Compartments. These various relationships provide evidence for the fundamental nature of the approach.
Nicolas Oury, Gordon D. Plotkin
Math. Struct. Comput. Sci.2
2012 Concurrency and the Algebraic Theory of Effects - (Abstract)
Gordon D. Plotkin
CONCUR1
2012 Algebraic foundations for effect-dependent optimisations
abstract
We present a general theory of Gifford-style type and effect annotations, where effect annotations are sets of effects. Generality is achieved by recourse to the theory of algebraic effects, a development of Moggi's monadic theory of computational effects that emphasises the operations causing the effects at hand and their equational theory. The key observation is that annotation effects can be identified with operation symbols. We develop an annotated version of Levy's Call-by-Push-Value language with a kind of computations for every effect set; it can be thought of as a sequential, annotated intermediate language. We develop a range of validated optimisations (i.e., equivalences), generalising many existing ones and adding new ones. We classify these optimisations as structural, algebraic, or abstract: structural optimisations always hold; algebraic ones depend on the effect theory at hand; and abstract ones depend on the global nature of that theory (we give modularly-checkable sufficient conditions for their validity).
Ohad Kammar, Gordon D. Plotkin
POPL2
2012 On Protection by Layout Randomization
abstract
Layout randomization is a powerful, popular technique for software protection. We present it and study it in programming-language terms. More specifically, we consider layout randomization as part of an implementation for a high-level programming language; the implementation translates this language to a lower-level language in which memory addresses are numbers. We analyze this implementation, by relating low-level attacks against the implementation to contexts in the high-level programming language, and by establishing full abstraction results.
Martín Abadi, Gordon D. Plotkin
ACM Trans. Inf. Syst. Secur.2
2010 On Protection by Layout Randomization
abstract
Layout randomization is a powerful, popular technique for software protection. We present it and study it in programming-language terms. More specifically, we consider layout randomization as part of an implementation for a highlevel programming language; the implementation translates this language to a lower-level language in which memory addresses are numbers. We analyze this implementation, by relating low-level attacks against the implementation to contexts in the high-level programming language, and by establishing full abstraction results.
Martín Abadi, Gordon D. Plotkin
CSF2
2010 Robin Milner, a Craftsman of Tools for the Mind
abstract
The paper discusses about the programming language ML (or MetaLanguage) as a language for manipulating formal systems. It has also had much influence on the further development of functional programming languages.
Gordon D. Plotkin
LICS1
2009 Approximating Labelled Markov Processes Again!
Philippe Chaput, Vincent Danos, Prakash Panangaden, Gordon D. Plotkin
CALCO4
2009 Adequacy for Infinitary Algebraic Effects (Abstract)
Gordon D. Plotkin
CALCO1
2009 Handlers of Algebraic Effects
Gordon D. Plotkin, Matija Pretnar
ESOP1
2009 Approximating Markov Processes by Averaging
Philippe Chaput, Vincent Danos, Prakash Panangaden, Gordon D. Plotkin
ICALP (2)4
2009 A model of cooperative threads
abstract
We develop a model of concurrent imperative programming with threads. We focus on a small imperative language with cooperative threads which execute without interruption until they terminate or explicitly yield control. We define and study a trace-based denotational semantics for this language; this semantics is fully abstract but mathematically elementary. We also give an equational theory for the computational effects that underlie the language, including thread spawning. We then analyze threads in terms of the free algebra monad for this theory.
Martín Abadi, Gordon D. Plotkin
POPL2
2009 On the completeness of order-theoretic models of the lambda-calculus
Furio Honsell, Gordon D. Plotkin
Inf. Comput.2
2009 Predicate transformers for extended probability and non-determinism
abstract
We investigate laws for predicate transformers for the combination of non-deterministic choice and (extended) probabilistic choice, where predicates are taken to be functions to the extended non-negative reals, or to closed intervals of such reals. These predicate transformers correspond to state transformers, which are functions to conical powerdomains, which are the appropriate powerdomains for the combined forms of non-determinism. As with standard powerdomains for non-deterministic choice, these come in three flavours – lower, upper and (order-)convex – so there are also three kinds of predicate transformers. In order to make the connection, the powerdomains are first characterised in terms of relevant classes of functionals. Much of the development is carried out at an abstract level, a kind of domain-theoretic functional analysis: one considers d-cones, which are dcpos equipped with a module structure over the non-negative extended reals, in place of topological vector spaces. Such a development still needs to be carried out for probabilistic choice per se; it would presumably be necessary to work with a notion of convex space rather than a cone.
Klaus Keimel, Gordon D. Plotkin
Math. Struct. Comput. Sci.2
2009 Configuration structures, event structures and Petri nets
Rob J. van Glabbeek, Gordon D. Plotkin
Theor. Comput. Sci.2
2008 A Logic for Algebraic Effects
abstract
We present a logic for algebraic effects, based on the algebraic representation of computational effects by operations and equations. We begin with the a-calculus, a minimal calculus which separates values, effects, and computations and thereby canonises the order of evaluation. This is extended to obtain the logic, which is a classical first-order multi-sorted logic with higher-order value and computation types, as in Levy's call-by-push-value, a principle of induction over computations, a free algebra principle, and predicate fixed points. This logic embraces Moggi's computational lambda-calculus, and also, via definable modalities, Hennessy-Milner logic, and evaluation logic, though Hoare logic presents difficulties.
Gordon D. Plotkin, Matija Pretnar
LICS1
2007 Combining algebraic effects with continuations
Martin Hyland, Paul Blain Levy, Gordon D. Plotkin, John Power
Theor. Comput. Sci.3
2006 Hennessy-Plotkin-Brookes Revisited
Gordon D. Plotkin
FSTTCS1
2006 A domain-theoretic Banach-Alaoglu theorem
abstract
We give a domain-theoretic analogue of the classical Banach–Alaoglu theorem, showing that the patch topology on the weak topology is compact. Various theorems follow concerning the stable compactness of spaces of valuations on a topological space. We conclude with reformulations of the patch topology in terms of polar sets or Minkowski functionals, showing, in particular, that the ‘sandwich set’ of linear functionals is compact.
Gordon D. Plotkin
Math. Struct. Comput. Sci.1
2006 Combining effects: Sum and tensor
Martin Hyland, Gordon D. Plotkin, John Power
Theor. Comput. Sci.2
2005 Adequacy for Algebraic Effects with State
Gordon D. Plotkin
CALCO1
2004 Event Structures for Resolvable Conflict
Rob J. van Glabbeek, Gordon D. Plotkin
MFCS2
2004 Foreword
Gordon D. Plotkin
Ann. Pure Appl. Log.1
2002 Notions of Computation Determine Monads
Gordon D. Plotkin, John Power
FoSSaCS1
2002 Three Inadequate Models
abstract
Abstract. The connection between operational and denotational semantics is of longstanding interest in the study of programming languages. The emphasis has been on positive results, whether for adequacy or full abstraction. One normally considers the standard solution of an evident natural domain equation for the language; this is generally adequate but not fully abstract if one uses any of the usual categories of domains. One then tries other categories to get improved results. Here we restrict ourselves to a standard category of domains and show, for an untyped λ-calculus with arithmetic, that inadequate models exist if one considers non-standard solutions to the domain equation. One model is inadequate, simpliciter; a second is adequate but inadequate when the language is extended by a “parallel or” construct; the third is adequate in the latter sense, but in it the Y -combinator does not denote the least fixed point operator. We also consider whether it is possible to do better than the standard solution as regards full abstraction. Surprisingly this question only makes sense for solutions which are adequate for the extended language. For these the standard solution is indeed closest to full abstraction, justifying the use of non-standard categories.
Gordon D. Plotkin
Formal Aspects Comput.1
2001 Adequacy for Algebraic Effects
Gordon D. Plotkin, John Power
FoSSaCS1
2000 Lax Logical Relations
Gordon D. Plotkin, John Power, Donald Sannella, Robert D. Tennent
ICALP1
2000 Complete Axioms for Categorical Fixed-Point Operators
abstract
We give an axiomatic treatment of fixed-point operators in categories. A notion of iteration operator is defined embodying the equational properties of iteration theories. We prove a general completeness theorem for iteration operators, relying on a new, purely syntactic characterisation of the free iteration theory. We then show how iteration operators arise in axiomatic domain theory. One result derives them from the existence of sufficiently many bifree algebras (exploiting the universal property Freyd introduced in his notion of algebraic compactness). Another result shows that, in the presence of a parameterized natural numbers object and an equational lifting monad, any uniform fixed-point operator is necessarily an iteration operator.
Alex K. Simpson, Gordon D. Plotkin
LICS2
1999 Full Completeness of the Multiplicative Linear Logic of Chu Spaces
abstract
We prove full completeness of multiplicative linear logic (MLL) without MIX under the Chu interpretation. In particular we show that the cut-free proofs of MLL theorems are in a natural bijection with the binary logical transformations of the corresponding operations on the category of Chu spaces on a two-letter alphabet.
Harish Devarajan, Dominic J. D. Hughes, Gordon D. Plotkin, Vaughan R. Pratt
LICS3
1999 Abstract Syntax and Variable Binding
abstract
We develop a theory of abstract syntax with variable binding. To every binding signature we associate a category of models consisting of variable sets endowed with compatible algebra and substitution structures. The syntax generated by the signature is the initial model. This gives a notion of initial algebra semantics encompassing the traditional one; besides compositionality, it automatically verifies the semantic substitution lemma.
Marcelo P. Fiore, Gordon D. Plotkin, Daniele Turi
LICS2
1999 Full abstraction, totality and PCF
Gordon D. Plotkin
Math. Struct. Comput. Sci.1
1997 Complete Cuboidal Sets in Axiomatic Domain Theory
abstract
We study the enrichment of models of axiomatic domain theory. To this end, we introduce a new and broader notion of domain, via, that of complete cuboidal set, that complies with the axiomatic requirements. We show that the category of complete cuboidal sets provides a general notion of enrichment for a wide class of axiomatic domain-theoretic structures.
Marcelo P. Fiore, Gordon D. Plotkin, John Power
LICS2
1997 Towards a Mathematical Operational Semantics
abstract
We present a categorical theory of 'well-behaved' operational semantics which aims at complementing the established theory of domains and denotational semantics to form a coherent whole. It is shown that, if the operational rules of a programming language can be modelled as a natural transformation of a suitable general form, depending on functorial notions of syntax and behaviour, then one gets the following for free: an operational model satisfying the rules and a canonical, internally fully abstract denotational model which satisfies the operational rules. The theory is based on distributive laws and bialgebras; it specialises to the known classes of well-behaved rules for structural operational semantics, such as GSOS.
Daniele Turi, Gordon D. Plotkin
LICS2
1996 On a Question of H. Friedman
Gordon D. Plotkin
Inf. Comput.1
1995 Configuration Structures
abstract
Configuration structures provide a model of concurrency generalising the families of configurations of event structures. They can be considered logically, as classes of propositional models; then, sub-classes can be axiomatised by formulae of simple prescribed forms. Several equivalence relations for event structures are generalized to configuration structures, and also to general Petri nets. Every configuration structure is shown to be ST-bisimulation equivalent to a prime event structure with binary conflict; this fails for the tighter history-preserving bisimulation. Finally, Petri nets without self-loops under the collective token interpretation are shown to be behaviourally equivalent to configuration structures, in the sense that there are translations in both directions respecting history-preserving bisimulation. This fails for nets with self-loops.
Rob J. van Glabbeek, Gordon D. Plotkin
LICS2
1994 Countable Non-Determinism and Uncountable Limits
Pietro Di Gianantonio, Furio Honsell, Silvia Liani, Gordon D. Plotkin
CONCUR4
1994 Bistructures, Bidomains and Linear Logic
Gordon D. Plotkin, Glynn Winskel
ICALP1
1994 An Axiomatization of Computationally Adequate Domain Theoretic Models of FPC
abstract
Categorical models of the metalanguage FPC (a type theory with sums, products, exponentials and recursive types) are defined. Then, domain-theoretic models of FPC are axiomatised and a wide subclass of them-the absolute ones-are proved to be both computationally sound and adequate. Examples include: the category of cpos and partial continuous functions and functor categories over it.>
Marcelo P. Fiore, Gordon D. Plotkin
LICS2
1994 Subtyping and Parametricity
abstract
We study the interaction of subtyping and parametricity. We describe a logic for a programming language with parametric polymorphism and subtyping. The logic supports the formal definition and use of relational parametricity. We give two models for it, and compare it with other formal systems for the same language. In particular we examine the "Penn interpretation" of subtyping as implicit coercion. without subtyping, parametricity yields, for example, an encoding of abstract types and of initial algebras, with the corresponding proof principles of simulation and induction. With subtyping, we obtain partially abstract types and certain initial order-sorted algebras, and may derive proof principles for them.>
Gordon D. Plotkin, Martín Abadi, Luca Cardelli
LICS1
1994 A Semantics for Static Type Inference
Gordon D. Plotkin
Inf. Comput.1
1993 Type Theory and Recursion (Extended Abstract)
abstract
Summary form only given. Type theory and recursion are analyzed in terms of intuitionistic linear type theory. This is compatible with a general recursion operator for the intuitionistic functions. The author considers second-order intuitionistic linear type theory whose primitive type constructions are linear and intuitionistic function types and second-order quantification.>
Gordon D. Plotkin
LICS1
1993 On Functors Expressible in the Polymorphic Typed Lambda Calculus
John C. Reynolds, Gordon D. Plotkin
Inf. Comput.2
1993 A Framework for Defining Logics
abstract
The Edinburgh Logical Framework (LF) provides a means to define (or present) logics. It is based on a general treatment of syntax, rules, and proofs by means of a typed λ-calculus with dependent types. Syntax is treated in a style similar to, but more general than, Martin-Lof's system of arities. The treatment of rules and proofs focuses on his notion of a judgment. Logics are represented in LF via a new principle, the judgments as types principle, whereby each judgment is identified with the type of its proofs. This allows for a smooth treatment of discharge and variable occurrence conditions and leads to a uniform treatment of rules and proofs whereby rules are viewed as proofs of higher-order judgments and proof checking is reduced to type checking. The practical benefit of our treatment of formal systems is that logic-independent tools, such as proof editors and proof checkers, can be constructed.
Robert Harper 0001, Furio Honsell, Gordon D. Plotkin
J. ACM3
1993 A Logical View of Composition
Martín Abadi, Gordon D. Plotkin
Theor. Comput. Sci.2
1993 Concrete Domains
Gilles Kahn, Gordon D. Plotkin
Theor. Comput. Sci.2
1993 Set-Theoretical and Other Elementary Models of the lambda-Calculus
Gordon D. Plotkin
Theor. Comput. Sci.1
1993 A Calculus for Access Control in Distributed Systems
abstract
We study some of the concepts, protocols, and algorithms for access control in distributed systems, from a logical perspective. We account for how a principal may come to believe that another principal is making a request, either on his own or on someone else's behalf. We also provide a logical language for accesss control lists and theories for deciding whether requests should be granted.
Martín Abadi, Michael Burrows, Butler W. Lampson, Gordon D. Plotkin
ACM Trans. Program. Lang. Syst.4
1991 A Calculus for Access Control in Distributed Systems
Martín Abadi, Michael Burrows, Butler W. Lampson, Gordon D. Plotkin
CRYPTO4
1991 A Logical View of Composition and Refinement
abstract
We define two logics of safety specifications for reactive systems. The logics provide a setting for the study of composition and refinement rules, and a framework for the use of the modular specification methods that these rules underpin. The two logics arise naturally from extant specification approaches; one of the logics is intuitionistic, while the other one is linear.
Martín Abadi, Gordon D. Plotkin
POPL2
1991 Dynamic Typing in a Statically Typed Language
abstract
Statically typed programming languages allow earlier error checking, better enforcement of diciplined programming styles, and the generation of more efficient object code than languages where all type consistency checks are performed at run time. However, even in statically typed languages, there is often the need to deal with datawhose type cannot be determined at compile time. To handle such situations safely, we propose to add a type Dynamic whose values are pairs of a value v and a type tag T where v has the type denoted by T . Instances of Dynamic are built with an explicit tagging construct and inspected with a type safe typecase construct. This paper explores the syntax, operational semantics, and denotational semantics of a simple language that includes the type Dynamic . We give examples of how dynamically typed values can be used in programming. Then we discuss an operational semantics for our language and obtain a soundness theorem. We present two formulations of the denotational semantics of this language and relate them to the operational semantics. Finally, we consider the implications of polymorphism and some implementation issues.
Martín Abadi, Luca Cardelli, Benjamin C. Pierce, Gordon D. Plotkin
ACM Trans. Program. Lang. Syst.4
1990 A Per Model of Polymorphism and Recursive Types
abstract
A model of Reynold's polymorphic lambda calculus is provided, which also allows the recursive definition of elements and types. The techniques uses a good class of partial equivalence relations (PERs) over a certain CPO. This allows the combination of inverse-limits for recursion and intersection for polymorphism.>
Martín Abadi, Gordon D. Plotkin
LICS2
1989 Faithful Ideal Models for Recursive Polymorphic Types
abstract
Ideal models are explored for a programming language with recursive polymorphic types, variants of the model studied by D. MacQueen et al. (Inf. Control, vol.71, pp.95-130, 1986). The use of suitable ideals yields a close fit between models and programming language. Two of the authors' semantics of type expressions are faithfully, in the sense that programs that behave identically in all contexts have exactly the same types.>
Martín Abadi, Benjamin C. Pierce, Gordon D. Plotkin
LICS3
1989 A Probabilistic Powerdomain of Evaluations
abstract
A probabilistic power domain construction is given for the category of inductively complete partial orders. It is the partial order of continuous
Gordon D. Plotkin
LICS2
1989 Dynamic Typing in a Statically-Typed Language
abstract
Statically-typed programming languages allow earlier error checking, better enforcement of disciplined programming styles, and generation of more efficient object code than languages where all type-consistency checks are performed at runtime. However, even in statically-type languages, there is often the need to deal with data whose type cannot be known at compile time. To handle such situations safely, we propose to add a type Dynamic whose values are pairs of a value v and a type tag T where v has the type denoted by T. Instances of Dynamic are built with an explicit tagging construct and inspected with a type-safe typecase construct.
Martín Abadi, Luca Cardelli, Benjamin C. Pierce, Gordon D. Plotkin
POPL4
1988 Preface
Gordon D. Plotkin
Inf. Comput.1
1988 Abstract Types Have Existential Type
abstract
Abstract data type declarations appear in typed programming languages like Ada, Alphard, CLU and ML. This form of declaration binds a list of identifiers to a type with associated operations, a composite “value” we call a data algebra . We use a second-order typed lambda calculus SOL to show how data algebras may be given types, passed as parameters, and returned as results of function calls. In the process, we discuss the semantics of abstract data type declarations and review a connection between typed programming languages and constructive logic.
John C. Mitchell, Gordon D. Plotkin
ACM Trans. Program. Lang. Syst.2
1987 A Framework for Defining Logics
Robert Harper 0001, Furio Honsell, Gordon D. Plotkin
LICS3
1987 On Proving Limiting Completeness
abstract
We give two proofs of Wadsworth’s classic approximation theorem for the pure $\lambda $-calculus. One of these illustrates a new method utilising a certain kind of intermediate semantics for proving correspondences between denotational and operational semantics. The other illustrates a direct technique of Milne, employing recursively-specified inclusive relations.
Peter D. Mosses, Gordon D. Plotkin
SIAM J. Comput.2
1986 A Framework for Intuitionistic Modal Logics
Gordon D. Plotkin, Colin Stirling
TARK1
1986 An Ideal Model for Recursive Polymorphic Types
David B. MacQueen, Gordon D. Plotkin, Ravi Sethi
Inf. Control.2
1986 Countable nondeterminism and random assignment
abstract
Four semantics for a small programming language involving unbounded (but countable) nondeterminism are provided. These comprise an operational semantics, two state transformation semantics based on the Egli-Milner and Smyth orders, respectively, and a weakest precondition semantics. Their equivalence is proved. A Hoare-like proof system for total correctness is also introduced and its soundness and completeness in an appropriate sense are shown. Finally, the recursion theoretic complexity of the notions introduced is studied. Admission of countable nondeterminism results in a lack of continuity of various semantic functions, and this is shown to be necessary for any semantics satisfying appropriate conditions. In proofs of total correctness, one resorts to the use of (countable) ordinals, and it is shown that all recursive ordinals are needed.
Krzysztof R. Apt, Gordon D. Plotkin
J. ACM2
1985 Abstract Types Have Existential Type
abstract
Article Free Access Share on Abstract types have existential types Authors: John C. Mitchell AT&T Bell Laboratories, Murray Hill, New Jersey AT&T Bell Laboratories, Murray Hill, New JerseyView Profile , Gordon D. Plotkin Department of Computer Science, University of Edinburgh, Edinburgh EH9 3J2 Department of Computer Science, University of Edinburgh, Edinburgh EH9 3J2View Profile Authors Info & Claims POPL '85: Proceedings of the 12th ACM SIGACT-SIGPLAN symposium on Principles of programming languagesJanuary 1985 Pages 37–51https://doi.org/10.1145/318593.318606Published:01 January 1985Publication History 75citation402DownloadsMetricsTotal Citations75Total Downloads402Last 12 Months31Last 6 weeks3 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my AlertsNew Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteeReaderPDF
John C. Mitchell, Gordon D. Plotkin
POPL2
1984 An Ideal Model for Recursive Polymorphic Types
abstract
Article Free Access Share on An ideal model for recursive polymorphic types Authors: David MacQueen Bell Laboratories, Murray Hill, New Jersey Bell Laboratories, Murray Hill, New JerseyView Profile , Gordon Plotkin Department of Computer Science, University of Edinburgh, Edinburgh EH9 3J2 Department of Computer Science, University of Edinburgh, Edinburgh EH9 3J2View Profile , Ravi Sethi Bell Laboratories, Murray Hill, New Jersey Bell Laboratories, Murray Hill, New JerseyView Profile Authors Info & Claims POPL '84: Proceedings of the 11th ACM SIGACT-SIGPLAN symposium on Principles of programming languagesJanuary 1984 Pages 165–174https://doi.org/10.1145/800017.800528Online:15 January 1984Publication History 79citation712DownloadsMetricsTotal Citations79Total Downloads712Last 12 Months48Last 6 weeks7 Get Citation AlertsNew Citation Alert added!This alert has been successfully added and will be sent to:You will be notified whenever a record that you have chosen has been cited.To manage your alert preferences, click on the button below.Manage my AlertsNew Citation Alert!Please log in to your account Save to BinderSave to BinderCreate a New BinderNameCancelCreateExport CitationPublisher SiteeReaderPDF
David B. MacQueen, Gordon D. Plotkin, Ravi Sethi
POPL2
1982 A Powerdomain for Countable Non-Determinism (Extended Abstract)
Gordon D. Plotkin
ICALP1
1982 The Category-Theoretic Solution of Recursive Domain Equations
abstract
Recursive specifications of domains plays a crucial role in denotational semantics as developed by Scott and Strachey and their followers. The purpose of the present paper is to set up a categorical framework in which the known techniques for solving these equations find a natural place. The idea is to follow the well-known analogy between partial orders and categories, generalizing from least fixed-points of continuous functions over cpos to initial ones of continuous functors over $\omega $-categories. To apply these general ideas we introduce Wand’s ${\bf O}$-categories where the morphism-sets have a partial order structure and which include almost all the categories occurring in semantics. The idea is to find solutions in a derived category of embeddings and we give order-theoretic conditions which are easy to verify and which imply the needed categorical ones. The main tool is a very general form of the limit-colimit coincidence remarked by Scott. In the concluding section we outline how compatibility considerations are to be included in the framework. A future paper will show how Scott’s universal domain method can be included too.
Michael B. Smyth, Gordon D. Plotkin
SIAM J. Comput.2
1981 A Cook's Tour of Countable Nondeterminism
Krzysztof R. Apt, Gordon D. Plotkin
ICALP2
1981 A First Attempt at Translating CSP into CCS
Matthew Hennessy, Wei Li 0022, Gordon D. Plotkin
ICDCS3
1981 Petri Nets, Event Structures and Domains, Part I
Mogens Nielsen, Gordon D. Plotkin, Glynn Winskel
Theor. Comput. Sci.2
1980 A Term Model for CCS
Matthew Hennessy, Gordon D. Plotkin
MFCS2
1979 Full Abstraction for a Simple Parallel Programming Language
Matthew Hennessy, Gordon D. Plotkin
MFCS2
1978 T^omega as a Universal Domain
Gordon D. Plotkin
J. Comput. Syst. Sci.1
1977 The Category-Theoretic Solution of Recursive Domain Equations (Extended Abstract)
abstract
The solution of a recursive domain equation, of the form D ~= F(D) may be viewed as the finding of a fixpoint (up to isomorphism) of the functor F. This has led to the idea of formulating a category-theoretic analogue of Tarski's fixpoint theorem for lattices, as a basis for a general method of solution for this kind of equation; see especially Reynolds [1], Wand [2], Plotkin [3].
Michael B. Smyth, Gordon D. Plotkin
FOCS2
1977 Analysis of an Extended Concept-Learning Task
Richard M. Young, Gordon D. Plotkin, R. F. Linz
IJCAI2
1977 LCF Considered as a Programming Language
Gordon D. Plotkin
Theor. Comput. Sci.1
1976 A Powerdomain Construction
abstract
We develop a powerdomain construction, $\mathcal{P}[ \cdot ]$, which is analogous to the powerset construction and also fits in with the usual sum, product and exponentiation constructions on domains. The desire for such a construction arises when considering programming languages with nondeterministic features or parallel features treated in a nondeterministic way. We hope to achieve a natural, fully abstract semantics in which such equivalences as $(p\textit{ par } p) = (q\textit{ par }p)$ hold. The domain ($D \to $ Truthvalues) is not the right one, and instead we take the (finitely) generable subsets of D. When D is discrete they are ordered in an elementwise fashion. In the general case they are given the coarsest ordering consistent, in an appropriate sense, with the ordering given in the discrete case. We then find a restricted class of algebraic inductive partial orders which is closed under $\mathcal{P}[ \cdot ]$ as well as the sum, product and exponentiation constructions. This class permits the solution of recursive domain equations, and we give some illustrative semantics using $\mathcal{P}[ \cdot ]$. It remains to be seen if our powerdomain construction does give rise to fully abstract semantics, although such natural equivalences as the above do hold. The major deficiency is the lack of a convincing treatment of the fair parallel construct.
Gordon D. Plotkin
SIAM J. Comput.1
1975 Call-by-Name, Call-by-Value and the lambda-Calculus
Gordon D. Plotkin
Theor. Comput. Sci.1
1974 The lambda-Calculus is omega-Incomplete
abstract
The ω-rule in the λ-calculus (or, more exactly, the λK-β, η calculus) is In [1] it was shown that this rule is consistent with the other rules of the λ-calculus. We will show the rule cannot be derived from the other rules; that is, we will give closed terms M and N such that MZ = NZ can be proved without using the ω-rule, for each closed term Z, but M = N cannot be so proved. This strengthens a result in [4] and answers a question of Barendregt. The language of the λ-calculus has an alphabet containing denumerably many variables a, b, c, … (which have a standard listing e1, e2, …), improper symbolsλ, ( , ) and a single predicate symbol = for equality. Terms are defined inductively by the following: (1) A variable is a term. (2) If M and N are terms, so is (MN); it is called a combination. (3) If M is a term and x is a variable, (λx M) is a term; it is called an abstraction. We use ≡ for syntactic identity of terms. If M and N are terms, M = N is a formula. BV(M), the set of bound variables in M, and FV(M), its free variables, are defined inductively by A term M is closed iff FV(M) = ∅.
Gordon D. Plotkin
J. Symb. Log.1