Results 1 - 10
of
10
Domain Theory in Logical Form
- Annals of Pure and Applied Logic
, 1991
"... The mathematical framework of Stone duality is used to synthesize a number of hitherto separate developments in Theoretical Computer Science: • Domain Theory, the mathematical theory of computation introduced by Scott as a foundation for denotational semantics. • The theory of concurrency and system ..."
Abstract
-
Cited by 214 (10 self)
- Add to MetaCart
The mathematical framework of Stone duality is used to synthesize a number of hitherto separate developments in Theoretical Computer Science: • Domain Theory, the mathematical theory of computation introduced by Scott as a foundation for denotational semantics. • The theory of concurrency and systems behaviour developed by Milner, Hennessy et al. based on operational semantics. • Logics of programs. Stone duality provides a junction between semantics (spaces of points = denotations of computational processes) and logics (lattices of properties of processes). Moreover, the underlying logic is geometric, which can be computationally interpreted as the logic of observable properties—i.e. properties which can be determined to hold of a process on the basis of a finite amount of information about its execution. These ideas lead to the following programme:
Explicit Graphs in a Functional Model for Spatial Databases
- IEEE TRANSACTIONS ON KNOWLEDGE AND DATA ENGINEERING
, 1994
"... Observing that networks are ubiquitous in applications for spatial databases, we define a new data model and query language that especially supports graph structures. This model integrates concepts of functional data modeling with order-sorted algebra. Besides object and data type hierar-chies grap ..."
Abstract
-
Cited by 25 (9 self)
- Add to MetaCart
Observing that networks are ubiquitous in applications for spatial databases, we define a new data model and query language that especially supports graph structures. This model integrates concepts of functional data modeling with order-sorted algebra. Besides object and data type hierar-chies graphs are available as an explicit modeling tool, and graph operations are part of the query lan-guage. Graphs have three classes of components, namely nodes, edges, and explicit paths. These are at the same time object types within the object type hierarchy and can be used like any other type. Explicit paths are useful because “real world ” objects often correspond to paths in a network. Further-more, a dynamic generalization concept is introduced to handle heterogeneous collections of objects in a query. In connection with spatial data types this leads to powerful modeling and querying capa-bilities for spatial databases, in particular for spatially embedded networks such as highways, rivers, public transport, and so forth. We use multi-level order-sorted algebra as a formal framework for the specification of our model. Roughly spoken, the first level algebra defines types and operations of the query language whereas the second level algebra defines kinds (collections of types) and type con-structors as functions between kinds and so provides the types that can be used at the first level.
HasCASL: Towards Integrated Specification and Development of Functional Programs
, 2002
"... The development of programs in modern functional languages such as Haskell calls for a wide-spectrum specification formalism that supports the type system of such languages, in particular higher order types, type constructors, and parametric polymorphism, and contains a functional language as an exe ..."
Abstract
-
Cited by 25 (11 self)
- Add to MetaCart
The development of programs in modern functional languages such as Haskell calls for a wide-spectrum specification formalism that supports the type system of such languages, in particular higher order types, type constructors, and parametric polymorphism, and contains a functional language as an executable subset in order to facilitate rapid prototyping. We lay out the design of HasCasl, a higher order extension of the algebraic specification language Casl that is geared towards precisely this purpose. Its semantics is tuned to allow program development by specification refinement, while at the same time staying close to the set-theoretic semantics of first order Casl. The number of primitive concepts in the logic has been kept as small as possible; we demonstrate how various extensions to the logic, in particular general recursion, can be formulated within the language itself.
A Category-theoretic characterization of functional completeness
, 1990
"... . Functional languages are based on the notion of application: programs may be applied to data or programs. By application one may define algebraic functions; and a programming language is functionally complete when any algebraic function f(x 1 ,...,x n ) is representable (i.e. there is a constant a ..."
Abstract
-
Cited by 2 (1 self)
- Add to MetaCart
. Functional languages are based on the notion of application: programs may be applied to data or programs. By application one may define algebraic functions; and a programming language is functionally complete when any algebraic function f(x 1 ,...,x n ) is representable (i.e. there is a constant a such that f(x 1 ,...,x n ) = (a . x 1 . ... . x n ). Combinatory Logic is the simplest type-free language which is functionally complete. In a sound category-theoretic framework the constant a above may be considered as an "abstract gödel-number" for f, when gödel-numberings are generalized to "principal morphisms", in suitable categories. By this, models of Combinatory Logic are categorically characterized and their relation is given to lambda-calculus models within Cartesian Closed Categories. Finally, the partial recursive functionals in any finite higher type are shown to yield models of Combinatory Logic. ________________ (+) Theoretical Computer Science, 70 (2), 1990, pp.193-211. A p...
Specifying Type Systems with Multi-Level Order-Sorted Algebra
- 3rd Conf. on Algebraic Methodology and Software Technology
, 1993
"... We propose to use order-sorted algebras (OSA) on multiple levels to describe languages together with their type systems. It is demonstrated that even advanced aspects can be modeled, including, parametric polymorphism, complex relationships between different sorts of an operation's rank, the specifi ..."
Abstract
-
Cited by 2 (2 self)
- Add to MetaCart
We propose to use order-sorted algebras (OSA) on multiple levels to describe languages together with their type systems. It is demonstrated that even advanced aspects can be modeled, including, parametric polymorphism, complex relationships between different sorts of an operation's rank, the specification of a variable number of parameters for operations, and type constructors using values (and not only types) as arguments. The basic idea is to use a signature to describe a type system where sorts denote sets of type names and operations denote type constructors. The values of an algebra for such a signature are then used as sorts of another signature now describing a language having the previously defined type system. This way of modeling is not restricted to two levels, and we will show useful applications of three-level algebras.
Higher Order Partial Algebras in View of the Semantics of Functional Languages
, 1996
"... . We propose a new approach to algebraic semantics of functional languages based on higher-order partial algebras and conditional existence equations. After dicussing more generally the relation ships between certain features of functional languages and special algebraic concepts and techniques ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
. We propose a new approach to algebraic semantics of functional languages based on higher-order partial algebras and conditional existence equations. After dicussing more generally the relation ships between certain features of functional languages and special algebraic concepts and techniques the paper presents the theoretical basis of our approach. The main result concerns the existence of higher-order partial algebras freely generated by a set of variables and a set of existence equations. This result ensures the existence of free functor semantics in our approach. 1 Introduction We propose in this paper a new pragmatical approach to algebraic semantics of functional languages. The development of this approach was guided by the following heuristic principles: -- The basis should be a well-developed first-order algebraic specification formalism providing initial/free semantics and compositional operations on specifications. -- Higher-order features should be incorporated...
Polymorphic Syntax Definition
- THEOR. COMPUT. SCI
, 1997
"... Context-free grammars are used in several algebraic specification formalisms instead of first-order signatures for the definition of the structure of algebras, because grammars provide better notation than signatures. The rigidity of these first-order structures enforces a choice between strongly ty ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
Context-free grammars are used in several algebraic specification formalisms instead of first-order signatures for the definition of the structure of algebras, because grammars provide better notation than signatures. The rigidity of these first-order structures enforces a choice between strongly typed structures with little genericity or generic operations over untyped structures. In two-level signatures level 1 defines the algebra of types used at level 0 providing the possibility to define polymorphic abstract data types. Two-level grammars are the grammatical counterpart of two-level signatures. This paper discusses the correspondence between context-free grammars and first-order signatures, the extension of this correspondence to two-level grammars and signatures, examples of the usage of two-level grammars for polymorphic syntax definition, a restriction of the class of two-level grammars for which the parsing problem is decidable, a parsing algorithm that yields a minimal and ...
Polymorphic Syntax Definition (Extended Abstract)
- The Netherlands. Twente University of Technology
, 1995
"... ) Eelco Visser Programming Research Group, University of Amsterdam, Kruislaan 403, NL-1098 SJ Amsterdam, The Netherlands email: visser@fwi.uva.nl, http://adam.fwi.uva.nl/visser/ Abstract Context-free grammars can be used in algebraic specification instead of first-order signatures to define th ..."
Abstract
- Add to MetaCart
) Eelco Visser Programming Research Group, University of Amsterdam, Kruislaan 403, NL-1098 SJ Amsterdam, The Netherlands email: visser@fwi.uva.nl, http://adam.fwi.uva.nl/visser/ Abstract Context-free grammars can be used in algebraic specification instead of first-order signatures to define the structure of algebras. The rigidity of these first-order structures enforces a choice between strongly typed structures with little genericity or generic operations over untyped structures. Two-level signatures provide a better balance between genericity and typing. Twolevel grammars are the grammatical counterpart of two-level signatures. The paper discusses generic polymorphic syntax definition in contextfree grammars and two-level grammars and investigates the problems for the practical usage of two-level grammars as signatures in algebraic specification formalisms. 1 Introduction Languages are algebras. A sentence, program or expression in a language is an object of its algebra. The ...
Solving Type Equations in Multi-Level Specifications
- Language Prototyping. An Algebraic Specification Approach, volume 5 of AMAST Series in Computing. World Scientific Publishing Inc
, 1996
"... In first-order algebraic specification functions have types of the form s1 \Theta \Delta \Delta \Delta \Theta sn ! s0 , where the s i are type constants. Such types exclude higher-order and polymorphic functions. In multi-level algebraic specification the structure of types used in function declara ..."
Abstract
- Add to MetaCart
In first-order algebraic specification functions have types of the form s1 \Theta \Delta \Delta \Delta \Theta sn ! s0 , where the s i are type constants. Such types exclude higher-order and polymorphic functions. In multi-level algebraic specification the structure of types used in function declarations is specified as an algebraic data type. If only free constructors are used in the types used in function declarations, type assignment is an extension of the Hindley /Milner algorithm to multiple levels of types. By means of equations over types, sophisticated type systems can be modeled in a simple and uniform language. The type assignment for arbitrary multi-level specifications requires E-unification. Although this is undecidable in general, it is decidable for restricted sets of equations. In an earlier paper, the modular applicative multi-level equational specification formalism MLS is defined. The typechecker supports only free type constructors. In this paper we introduce multi-...
Second-Order Algebraic Specifiation of . . .
- CENTRUM VOOR WISKUNDE EN INFORMATICA (CWI
, 1992
"... Higher-order algebraic specification is a synthesis of first-order algebraic specification and higher-order functional programming which is both logically appealing as well as considerably more expressive than its two predecessors. To illustrate this, we describe the static semantics of a simple ..."
Abstract
- Add to MetaCart
Higher-order algebraic specification is a synthesis of first-order algebraic specification and higher-order functional programming which is both logically appealing as well as considerably more expressive than its two predecessors. To illustrate this, we describe the static semantics of a simple block-structured programming language using secondorder equations in addition to first-order ones. The specification has a highly non-deterministic character and does not use a type environment. Furthermore, it supports error recovery and early detection of errors in incomplete programs.

