&-Prolog(ID:5480/pro038)


Independent and-parallel prolog


Related languages
Prolog II+ => &-Prolog   Augmentation of
&-Prolog => ACE   Evolution of

References:
  • Hermenegildo, M. ; K. Greene. &-Prolog and its Performance: Exploiting Independent And-Parallelism. 1990 International Conference on Logic Programming, pages 253-268, MIT Press, Association for Logic Programming, June 1990. view details
  • PARallel FORmal Computing Environment (ESPRIT Basic Research) EATCS 1994 Report view details Abstract: ParForCE is aimed at constructing (and evaluating the use of) formal tools for the development of parallel programs and their efficient execution. To this end the emerging techniques for formal program analysis and manipulation are applied to central issues relating to parallel execution such as dependency and granularity analysis or memory management. Tools based on these techniques are built to aid in the formal development of parallel logic programs. These tools are then integrated with parallel execution platforms and their effectiveness assessed. Extract: Parallel Logic Programming Platforms
    A number of parallel logic programming systems, which have been shown to be capable of significant speedups over state of the art sequential Prolog systems, are already being used as platforms by the project partners. These include &-Prolog [39] (developed at Madrid), Muse [2, 3] (developed at SICS), and ElipSys [7] (developed at ECRC). The ElipSys execution platform, a prototype of which was developed as part of ESPRIT Project 2025, EDS, supports OR-parallelism as well as a framework for implementing constraint solvers and a close coupling to databases. Muse is a well established execution platform that allows Prolog to be executed in parallel by exploiting OR-parallelism. The &-Prolog system is also a well established parallel Prolog system that exploits (independent) AND-parallelism. Some parts of the &-Prolog and Muse models were developed by SICS and Madrid in ESPRIT Project 2471, PEPMA.

    A matter of great interest is the combination of the capabilities of these systems, as well as those of other languages, both from the point of view of concurrency and constraint support.

    The AGENTS Language (AKL) is a new concurrent logic language developed by SICS in ESPRIT Project 2471, PEPMA, with a large potential for parallel execution. It provides the programming paradigms of search-oriented languages such as Prolog, process-oriented languages such as GHC, and the constraint logic programming languages in a unified framework.

    A proposal for combining Muse and &-Prolog into one system to exploit their two sources of parallelism while maintaining the high efficiency of both systems is represented by the ACE model [35]. We refer to a further enhancement of this model which also supports constraint solving (and explicit concurrency) in the same framework as Ciao-Prolog --(Concurrent,) Constraint, Independence-based And/Or parallel Prolog.