Results 11  20
of
43
A New Perspective on Integrating Functional and Logic Languages
 Languages, Proceedings of the 3rd International Conference on Fifth Generation Computer Systems
, 1992
"... Traditionally the integration of functional and logic languages is performed by attempting to integrate their semantic logics in some way. Many languages have been developed by taking this approach, but none manages to exploit fully the programming features of both functional and logic languages and ..."
Abstract

Cited by 15 (0 self)
 Add to MetaCart
Traditionally the integration of functional and logic languages is performed by attempting to integrate their semantic logics in some way. Many languages have been developed by taking this approach, but none manages to exploit fully the programming features of both functional and logic languages and provide a smooth integration of the two paradigms. We propose that improved integrated systems can be constructed by taking a broader view of the underlying semantics of logic programming. A novel integrated language paradigm, Definitional Constraint Programming (DCP), is proposed. DCP generalises constraint logic programming by admitting userdefined functions via a purely functional subsystem and enhances it with the power to solve constraints over functional programs. This constraint approach to integration results in a homogeneous unified system in which functional and logic programming features are combined naturally. 1 Introduction During the past ten years the integration of funct...
A Categorybased Equational Logic Semantics to Constraint Programming
 IN MAGNE HAVERAAEN, OLAF OWE, AND OLEJOHAN DAHL, EDITORS, RECENT TRENDS IN DATA TYPE SPECIFICATION
, 1996
"... This paper exploits the point of view of constraint programming as computation in a logical system, namely constraint logic. We define the basic ingredients of constraint logic, such as constraint models and generalised polynomials. We show that constraint logic is an institution, and we interna ..."
Abstract

Cited by 14 (4 self)
 Add to MetaCart
This paper exploits the point of view of constraint programming as computation in a logical system, namely constraint logic. We define the basic ingredients of constraint logic, such as constraint models and generalised polynomials. We show that constraint logic is an institution, and we internalise the study of constraint logic to the framework of categorybased equational logic. By showing that constraint logic is a special case of categorybased equational logic, we integrate the constraint logic programming paradigm into equational logic programming. Results include a Herbrand theorem for constraint logic programming characterising Herbrand models as initial models in constraint logic.
A Hidden Herbrand Theorem: Combining the Object and Logic Paradigms
 Principles of Declarative Programming
, 1998
"... : The benefits of the object, logic (or relational), functional, and constraint paradigms ..."
Abstract

Cited by 11 (3 self)
 Add to MetaCart
: The benefits of the object, logic (or relational), functional, and constraint paradigms
A Hidden Herbrand Theorem
"... . The benefits of the object, logic (or relational), functional, and constraint paradigms can be combined, by providing existential queries over objects and their attributes, subject to constraints. This paper provides a precise mathematical foundation for this novel programming paradigm, and sh ..."
Abstract

Cited by 5 (2 self)
 Add to MetaCart
. The benefits of the object, logic (or relational), functional, and constraint paradigms can be combined, by providing existential queries over objects and their attributes, subject to constraints. This paper provides a precise mathematical foundation for this novel programming paradigm, and shows that it is computationally feasible by reducing it to familiar problems over term algebras (i.e., Herbrand universes) . We use the formalism of hidden logic, and our main result is a version of Herbrand's Theorem for that setting. By extending a result of Diaconescu, we lift our results from equational logic to Horn clause logic with equality. ? The research reported in this paper has been supported in part by the Science and Engineering Research Council, the EC under ESPRIT2 BRA Working Groups 6071, ISCORE and 6112, COMPASS, Fujitsu Laboratories Limited, and a contract under the management of the Information Technology Promotion Agency (IPA), Japan, as part of the Industrial Sc...
Categorybased Modularisation for Equational Logic Programming
 Acta Informatica
, 1996
"... : Although modularisation is basic to modern computing, it has been little studied for logicbased programming. We treat modularisation for equational logic programming using the institution of categorybased equational logic in three different ways: (1) to provide a generic satisfaction conditio ..."
Abstract

Cited by 5 (5 self)
 Add to MetaCart
: Although modularisation is basic to modern computing, it has been little studied for logicbased programming. We treat modularisation for equational logic programming using the institution of categorybased equational logic in three different ways: (1) to provide a generic satisfaction condition for equational logics; (2) to give a categorybased semantics for queries and their solutions; and (3) as an abstract definition of compilation from one (equational) logic programming language to another. Regarding (2), we study soundness and completeness for equational logic programming queries and their solutions. This can be understood as ordinary soundness and completeness in a suitable "nonlogical" institution. Soundness holds for all module imports, but completeness only holds for conservative module imports. Categorybased equational signatures are seen as modules, and morphisms of such signatures as module imports. Regarding (3), completeness corresponds to compiler correc...
A Compositional Semantics for Conditional Term Rewriting Systems
 PROC. SIXTH IEEE INT’L CONF. ON COMPUTER LANGUAGES ICCL’94
, 1994
"... This paper considers compositions of conditional term rewriting systems as a basis for a modular approach to the design and analysis of equational logic programs. In this context, an equational logic program is viewed as consisting of a set of modules, each module defining a part of the program&a ..."
Abstract

Cited by 4 (4 self)
 Add to MetaCart
This paper considers compositions of conditional term rewriting systems as a basis for a modular approach to the design and analysis of equational logic programs. In this context, an equational logic program is viewed as consisting of a set of modules, each module defining a part of the program's functions. We define a compositional semantics for conditional term rewriting systems which we show to be rich enough to capture computational properties related to the use of logical variables. We also study how such a semantics may be safely approximated, and how the results of such approximations may be composed to yield a bottomup abstract semantics adequate for modular dataflow analysis. A compositional analysis for equational unsatisfiability illustrates our approach.
Tossing Algebraic Flowers down the Great Divide
 In People and Ideas in Theoretical Computer Science
, 1999
"... Data Types and Algebraic Semantics The history of programming languages, and to a large extent of software engineering as a whole, can be seen as a succession of ever more powerful abstraction mechanisms. The first stored program computers were programmed in binary, which soon gave way to assembly l ..."
Abstract

Cited by 3 (0 self)
 Add to MetaCart
Data Types and Algebraic Semantics The history of programming languages, and to a large extent of software engineering as a whole, can be seen as a succession of ever more powerful abstraction mechanisms. The first stored program computers were programmed in binary, which soon gave way to assembly languages that allowed symbolic codes for operations and addresses. fortran began the spread of "high level" programming languages, though at the time it was strongly opposed by many assembly programmers; important features that developed later include blocks, recursive procedures, flexible types, classes, inheritance, modules, and genericity. Without going into the philosophical problems raised by abstraction (which in view of the discussion of realism in Section 4 may be considerable), it seems clear that the mathematics used to describe programming concepts should in general get more abstract as the programming concepts get more abstract. Nevertheless, there has been great resistance to u...
QuasiBoolean Encodings and Conditionals in Algebraic Specification
"... We develop a general study of the algebraic specification practice, originating from the OBJ tradition, which encodes atomic sentences in logical specification languages as Boolean terms. This practice originally motivated by operational aspects, but also leading to significant increase in expressiv ..."
Abstract

Cited by 3 (3 self)
 Add to MetaCart
We develop a general study of the algebraic specification practice, originating from the OBJ tradition, which encodes atomic sentences in logical specification languages as Boolean terms. This practice originally motivated by operational aspects, but also leading to significant increase in expressivity power, has recently become important within the context of some formal verification methodologies mainly because it allows the use of simple equational reasoning for frameworks based on logics that do not have an equational nature. Our development includes a generic rigorous definition of the logics underlying the above mentioned practice, based on the novel concept of ‘quasiBoolean encoding’, a general result on existence of initial semantics for these logics, and presents a general method for employing Birkhoff calculus of conditional equations as a sound calculus for these logics. The high level of generality of our study means that the concepts are introduced and the results are obtained at the level of abstract institutions (in the sense of Goguen and Burstall [12]) and are therefore applicable to a multitude of logical systems and environments.
FALCON: Functional and Logic Language with Constraints
, 1993
"... Introduction During the past ten years, integration of functional and logic programming languages has attracted much research. An extensive survey and classification of their results can be found in [GLDD90]. Traditionally this integration is performed by attempting to integrate the respective sema ..."
Abstract

Cited by 3 (2 self)
 Add to MetaCart
Introduction During the past ten years, integration of functional and logic programming languages has attracted much research. An extensive survey and classification of their results can be found in [GLDD90]. Traditionally this integration is performed by attempting to integrate the respective semantic logics of functional and logic languages in some way, resulting in a "super logic language". As we presented in Chapter ??, the conventional understanding of logic programming is that a logic program defines a logical theory and computation is attempting to prove that a query is a logical consequence of this theory. Taking this view, integration is regarded as enhancing the original logic underlying a logic programming system to cope with functional programming features and results in a new logic programming system. Most approaches take firstorder equational logic as the semantic logic of functional languages and combine it with Horn clause logic. The following
Algebraic Methods in the Compositional Analysis of Logic Programs
 IN MATHEMATICAL FOUNDATIONS OF COMPUTER SCIENCE 94 (I. PRIVARA, B. ROVAN, P. RUZICKA, EDS.) SPRINGERVERLAG LECTURE NOTES IN COMPUTER SCIENCE 841
, 1994
"... The compositionality of the semantics of logic programs with respect to (different varieties of) program union has been studied recently by a number of researchers. The approaches used can be considered quite adhoc in the sense that they provide, from scratch, the semantic constructions needed ..."
Abstract

Cited by 2 (1 self)
 Add to MetaCart
The compositionality of the semantics of logic programs with respect to (different varieties of) program union has been studied recently by a number of researchers. The approaches used can be considered quite adhoc in the sense that they provide, from scratch, the semantic constructions needed to ensure compositionality and, in some cases, full abstraction in the given framework. In this paper, we study the application of general algebraic methods for obtaining, systematically, this kind of results. In particular, the method proposed consists in defining the adequate institution for describing the given class of logic programs and, then, in using general institutionindependent results to prove compositionality and full abstraction. This is done in detail for the class of definite logic programs, where the associated institution is defined in such a way that initial algebra semantics is equivalent to computed answer substitution semantics. Then a similar solution is sketc...