Results 1 -
4 of
4
A Functorial Semantics for Multi-Algebras and Partial Algebras, With Applications to Syntax
, 2000
"... Multi-algebras allow for the modeling of nondeterminism in an algebraic framework by interpreting operators as functions from individual arguments to sets of possible results. We propose a functorial presentation of various categories of multi-algebras and partial algebras, analogous to the classica ..."
Abstract
-
Cited by 12 (6 self)
- Add to MetaCart
Multi-algebras allow for the modeling of nondeterminism in an algebraic framework by interpreting operators as functions from individual arguments to sets of possible results. We propose a functorial presentation of various categories of multi-algebras and partial algebras, analogous to the classical presentation of algebras over a signature as cartesian functors from the algebraic theory over to Set. We introduce two dierent notions of theory over a signature, both having a structure weaker than cartesian, and we consider functors from them to Rel or Pfn, the categories of sets and relations or partial functions, respectively. Next we discuss how the functorial presentation provides guidelines for the choice of syntactical notions for a class of algebras, and as an application we argue that the natural generalization of usual terms are \conditioned terms" for partial algebras, and \term graphs" for multi-algebras. Contents 1 Introduction 2 2 A short recap on multi-algebras 4 3...
Universal regular path queries
- Higher-Order and Symbolic Computation
, 2003
"... Given are a directed edge-labelled graph G with a distinguished node n0, and a regular expression P which may contain variables. We wish to compute all substitutions φ (of symbols for variables), together with all nodes n such that all paths n0 → n are in φ(P). We derive an algorithm for this proble ..."
Abstract
-
Cited by 10 (1 self)
- Add to MetaCart
Given are a directed edge-labelled graph G with a distinguished node n0, and a regular expression P which may contain variables. We wish to compute all substitutions φ (of symbols for variables), together with all nodes n such that all paths n0 → n are in φ(P). We derive an algorithm for this problem using relational algebra, and show how it may be implemented in Prolog. The motivation for the problem derives from a declarative framework for specifying compiler optimisations. 1 Bob Paige and IFIP WG 2.1 Bob Paige was a long-standing member of IFIP Working Group 2.1 on Algorithmic Languages and Calculi. In recent years, the main aim of this group has been to investigate the derivation of algorithms from specifications by program transformation. Already in the mid-eighties, Bob was way ahead of the pack: instead of applying transformational techniques to well-worn examples, he was applying his theories of program transformation to new problems, and discovering new algorithms [16, 48, 52]. The secret of his success lay partly in his insistence on the study of general algorithm design strategies (in particular
Twisted Systems and the Logic of Imperative Programs
, 1998
"... Following Burstall, a flow diagram can be represented by a pair consisting of a graph and a functor from the free category to the category of sets and relations. A program is verified by incorporating the assertions of the Floyd-Naur proof method into a second functor and exhibiting a natural transf ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
Following Burstall, a flow diagram can be represented by a pair consisting of a graph and a functor from the free category to the category of sets and relations. A program is verified by incorporating the assertions of the Floyd-Naur proof method into a second functor and exhibiting a natural transformation to the program. A broader range of properties is obtained by substituting spans for relations and introducing oplaxness into both the functors representing programs and the natural transformations in the morphisms between programs. The apparent complexity of this generalization is overcome by the observation that an oplax functor J Sp(C) is essentially the same as a functor e J C where e J is the twisted arrow category of J. Thus, a program is a presheaf F (G) Set as are the properties of the program. By analogy with categorical models of first-order logic, a program and the properties which pertain to it are subobjects of a suitably chosen base object. In this setting safety ...

