The purpose of this paper is to propose a method for constructing correct parallel processing programs from a problem description. The framework we adopt for this purpose is Equivalent Transformation Framework (ETF), which regards computation as transformation of definite clauses. In the framework, a problem's domain knowledge and a query are described in definite clauses, and its meaning is defined by a model of the set of definite clauses. Then meaning-preserving transformation rules for the query are generated. We propose a parallel processing method based on “specialization”, a part of operation in the transformations, and discuss new parallel processing method based on the specialization that maintains correctness of the computation. The specialization is generalized notion of substitution in logic programming, and it allows more rich representation. We demonstrate the advantage of using specialization rather than substitution in constraint satisfaction problem solving.
[1]
Kiyoshi Akama,et al.
SOLVING LOGICAL PROBLEMS BY EQUIVALENT TRANSFORMATION
,
2001
.
[2]
Kiyoshi Akama,et al.
Formalization of the Equivalent Transformation Computation Model
,
2006,
J. Adv. Comput. Intell. Intell. Informatics.
[3]
Jacques Chassin de Kergommeaux,et al.
Parallel logic programming systems
,
1994,
CSUR.
[4]
Mats Carlsson,et al.
Parallel execution of prolog programs: a survey
,
2001,
TOPL.
[5]
Laxmikant V. Kalé,et al.
Machine Independent AND and OR Parallel Execution of Logic Programs: Part I-The Binding Environment
,
1994,
IEEE Trans. Parallel Distributed Syst..
[6]
Willem Jan van Hoeve,et al.
Global Constraints
,
2006,
Handbook of Constraint Programming.