Results 1 -
4 of
4
Beyond Fun: Order and Membership in Polytypic Imperative Programming
- Mathematics of Program Construction, volume 1422 of Springer LNCS
, 1997
"... . We argue that the category of transformers of monotonic predicates on posets is superior to the category of transformers on powersets, as the basis for a calculus of higher order imperative programming. We show by an example polytypic program derivation that such transformers (and the underlyi ..."
Abstract
-
Cited by 4 (3 self)
- Add to MetaCart
. We argue that the category of transformers of monotonic predicates on posets is superior to the category of transformers on powersets, as the basis for a calculus of higher order imperative programming. We show by an example polytypic program derivation that such transformers (and the underlying categories of order-compatible relations and monotonic functions) model a calculus quite similar to the more familiar calculus of functional programs and relations. The derived program uses as a data type an exponent of transformers; unlike function-space, this transformer-space is adequate for semantics of higher order imperative programs. 1 Introduction Programs are arrows of a category whose objects are data types --- but what category? what objects? what arrows? The primordial, if fanciful, answer is Fun, the category of "all" sets and functions (often called Set). If we choose a few objects as primitives, say integers and booleans, we get a rich collection of types by applicat...
An Exercise in Polytypic Program Derivation: repmin
, 1996
"... A program derivation is said to be polytypic if some of its parameters are data types. The repmin problem is to replace all elements of a tree of numbers by the minimum element, making only a single pass over the original tree. Here we present a polytypic derivation for that problem. The derivation ..."
Abstract
-
Cited by 3 (0 self)
- Add to MetaCart
A program derivation is said to be polytypic if some of its parameters are data types. The repmin problem is to replace all elements of a tree of numbers by the minimum element, making only a single pass over the original tree. Here we present a polytypic derivation for that problem. The derivation has an unusual feature: when interpreted in the category of relations, the resulting program is the well-known cyclic logic program, and when interpreted in the category of functions, it is the well-known higher-order functional solution. 1 Motivation Suppose I were to show you a derivation of a shortest path algorithm, and my whole presentation was in terms of numbers, addition and minimum. Undoubtedly some of you would get up and point out that by abstracting over the operations and recording their algebraic properties, I could have derived a whole class of algorithms instead of one particular program. Indeed, such abstraction over operations is now commonly accepted as one of the hallmar...
"Explosive" Programming Controlled by Calculation
, 1998
"... . In the design of a functional library in the area of data-mining several algorithmic patterns have been identified which call for generic programming. Some of these have to do with flattening functions which arise in a particular group of hierarchical systems. In this paper we describe our efforts ..."
Abstract
-
Cited by 2 (2 self)
- Add to MetaCart
. In the design of a functional library in the area of data-mining several algorithmic patterns have been identified which call for generic programming. Some of these have to do with flattening functions which arise in a particular group of hierarchical systems. In this paper we describe our efforts to make such functionalities generic. We start by a generic inductive construction of the intended class of hierarchical types. We conclude by relating the structure of the relevant base-functors with the algebraic structure which is required by the generic flattening functionality, in particular concerning its "deforestation" towards a linearly complex implementation. The instances we provide as examples include the widely known bill of materials "explode" operation. 1 Introduction The definition of a function f : B \Gamma! A (1) can be regarded as a kind of "contract": function f is committed to produce an A-value provided it is supplied with a B-value. Such "functional contracts" ca...
Towards a Topos Theoretic Foundation for the Irish School of Constructive Mathematics
, 2001
"... . The Irish School of Constructive Mathematics ((M_c)^clubsuit), which extends the VDM, exploits an algebraic notation based upon monoids and their morphisms. [...] In this paper we exhibit an accessible bridge from classical formal methods to topos-theoretic formal methods in seeking a unifying the ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
. The Irish School of Constructive Mathematics ((M_c)^clubsuit), which extends the VDM, exploits an algebraic notation based upon monoids and their morphisms. [...] In this paper we exhibit an accessible bridge from classical formal methods to topos-theoretic formal methods in seeking a unifying theory.

