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 229 (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 ordersorted algebra. Besides object and data type hierarchies grap ..."
Abstract

Cited by 28 (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 ordersorted algebra. Besides object and data type hierarchies graphs are available as an explicit modeling tool, and graph operations are part of the query language. 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. Furthermore, 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 capabilities for spatial databases, in particular for spatially embedded networks such as highways, rivers, public transport, and so forth. We use multilevel ordersorted 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 constructors 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 widespectrum 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 widespectrum 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 settheoretic 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.
Polymorphic Syntax Definition
 THEOR. COMPUT. SCI
, 1997
"... Contextfree grammars are used in several algebraic specification formalisms instead of firstorder signatures for the definition of the structure of algebras, because grammars provide better notation than signatures. The rigidity of these firstorder structures enforces a choice between strongly ty ..."
Abstract

Cited by 3 (0 self)
 Add to MetaCart
Contextfree grammars are used in several algebraic specification formalisms instead of firstorder signatures for the definition of the structure of algebras, because grammars provide better notation than signatures. The rigidity of these firstorder structures enforces a choice between strongly typed structures with little genericity or generic operations over untyped structures. In twolevel signatures level 1 defines the algebra of types used at level 0 providing the possibility to define polymorphic abstract data types. Twolevel grammars are the grammatical counterpart of twolevel signatures. This paper discusses the correspondence between contextfree grammars and firstorder signatures, the extension of this correspondence to twolevel grammars and signatures, examples of the usage of twolevel grammars for polymorphic syntax definition, a restriction of the class of twolevel grammars for which the parsing problem is decidable, a parsing algorithm that yields a minimal and ...
A Categorytheoretic 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 3 (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 typefree language which is functionally complete. In a sound categorytheoretic framework the constant a above may be considered as an "abstract gödelnumber" for f, when gödelnumberings are generalized to "principal morphisms", in suitable categories. By this, models of Combinatory Logic are categorically characterized and their relation is given to lambdacalculus 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.193211. A p...
Specifying Type Systems with MultiLevel OrderSorted Algebra
 3rd Conf. on Algebraic Methodology and Software Technology
, 1993
"... We propose to use ordersorted 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 ordersorted 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 threelevel 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 higherorder 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 higherorder 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 higherorder 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 welldeveloped firstorder algebraic specification formalism providing initial/free semantics and compositional operations on specifications.  Higherorder features should be incorporated...
Polymorphic Syntax Definition (Extended Abstract)
 The Netherlands. Twente University of Technology
, 1995
"... ) Eelco Visser Programming Research Group, University of Amsterdam, Kruislaan 403, NL1098 SJ Amsterdam, The Netherlands email: visser@fwi.uva.nl, http://adam.fwi.uva.nl/visser/ Abstract Contextfree grammars can be used in algebraic specification instead of firstorder signatures to define th ..."
Abstract
 Add to MetaCart
) Eelco Visser Programming Research Group, University of Amsterdam, Kruislaan 403, NL1098 SJ Amsterdam, The Netherlands email: visser@fwi.uva.nl, http://adam.fwi.uva.nl/visser/ Abstract Contextfree grammars can be used in algebraic specification instead of firstorder signatures to define the structure of algebras. The rigidity of these firstorder structures enforces a choice between strongly typed structures with little genericity or generic operations over untyped structures. Twolevel signatures provide a better balance between genericity and typing. Twolevel grammars are the grammatical counterpart of twolevel signatures. The paper discusses generic polymorphic syntax definition in contextfree grammars and twolevel grammars and investigates the problems for the practical usage of twolevel 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 MultiLevel Specifications
 Language Prototyping. An Algebraic Specification Approach, volume 5 of AMAST Series in Computing. World Scientific Publishing Inc
, 1996
"... In firstorder 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 higherorder and polymorphic functions. In multilevel algebraic specification the structure of types used in function declara ..."
Abstract
 Add to MetaCart
In firstorder 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 higherorder and polymorphic functions. In multilevel 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 multilevel specifications requires Eunification. Although this is undecidable in general, it is decidable for restricted sets of equations. In an earlier paper, the modular applicative multilevel equational specification formalism MLS is defined. The typechecker supports only free type constructors. In this paper we introduce multi...
SecondOrder Algebraic Specifiation of . . .
 CENTRUM VOOR WISKUNDE EN INFORMATICA (CWI
, 1992
"... Higherorder algebraic specification is a synthesis of firstorder algebraic specification and higherorder 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
Higherorder algebraic specification is a synthesis of firstorder algebraic specification and higherorder 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 blockstructured programming language using secondorder equations in addition to firstorder ones. The specification has a highly nondeterministic character and does not use a type environment. Furthermore, it supports error recovery and early detection of errors in incomplete programs.