Making exhaustive search programs deterministic

Research output: Contribution to journalArticle

13 Citations (Scopus)

Abstract

This paper presents a technique for compiling a Horn-clause program intended for exhaustive search into a GHC (Guarded Horn Clauses) program. The technique can be viewed also as a transformation technique for Prolog programs which compiles away the 'bagof' primitive and non-determinate bindings. The class of programs to which our technique is applicable is shown with a static checking algorithm; it is nontrivial and could be extended. An experiment on a compiler-based Prolog system showed that our technique improved the efficiency of exhaustive search by 6 times for a permutation generator program. This compilation technique is important also in that it exploits the AND-parallelism of GHC for parallel search.

Original languageEnglish
Pages (from-to)29-44
Number of pages16
JournalNew Generation Computing
Volume5
Issue number1
DOIs
Publication statusPublished - 1987 Mar
Externally publishedYes

Fingerprint

Automatic programming
Exhaustive Search
Horn clause
Experiments
Prolog
Compilation
Compiler
Parallelism
Permutation
Generator
Experiment

Keywords

  • Compilation
  • Continuation
  • Exhaustive Search
  • Guarded Horn Clauses
  • Mode Analysis
  • Multiple Binding Environments
  • Parallelism
  • Program Transformation

ASJC Scopus subject areas

  • Theoretical Computer Science
  • Software
  • Hardware and Architecture
  • Computer Networks and Communications

Cite this

Making exhaustive search programs deterministic. / Ueda, Kazunori.

In: New Generation Computing, Vol. 5, No. 1, 03.1987, p. 29-44.

Research output: Contribution to journalArticle

@article{38a59e84838a4916afe38a5303d56215,
title = "Making exhaustive search programs deterministic",
abstract = "This paper presents a technique for compiling a Horn-clause program intended for exhaustive search into a GHC (Guarded Horn Clauses) program. The technique can be viewed also as a transformation technique for Prolog programs which compiles away the 'bagof' primitive and non-determinate bindings. The class of programs to which our technique is applicable is shown with a static checking algorithm; it is nontrivial and could be extended. An experiment on a compiler-based Prolog system showed that our technique improved the efficiency of exhaustive search by 6 times for a permutation generator program. This compilation technique is important also in that it exploits the AND-parallelism of GHC for parallel search.",
keywords = "Compilation, Continuation, Exhaustive Search, Guarded Horn Clauses, Mode Analysis, Multiple Binding Environments, Parallelism, Program Transformation",
author = "Kazunori Ueda",
year = "1987",
month = "3",
doi = "10.1007/BF03037456",
language = "English",
volume = "5",
pages = "29--44",
journal = "New Generation Computing",
issn = "0288-3635",
publisher = "Springer Japan",
number = "1",

}

TY - JOUR

T1 - Making exhaustive search programs deterministic

AU - Ueda, Kazunori

PY - 1987/3

Y1 - 1987/3

N2 - This paper presents a technique for compiling a Horn-clause program intended for exhaustive search into a GHC (Guarded Horn Clauses) program. The technique can be viewed also as a transformation technique for Prolog programs which compiles away the 'bagof' primitive and non-determinate bindings. The class of programs to which our technique is applicable is shown with a static checking algorithm; it is nontrivial and could be extended. An experiment on a compiler-based Prolog system showed that our technique improved the efficiency of exhaustive search by 6 times for a permutation generator program. This compilation technique is important also in that it exploits the AND-parallelism of GHC for parallel search.

AB - This paper presents a technique for compiling a Horn-clause program intended for exhaustive search into a GHC (Guarded Horn Clauses) program. The technique can be viewed also as a transformation technique for Prolog programs which compiles away the 'bagof' primitive and non-determinate bindings. The class of programs to which our technique is applicable is shown with a static checking algorithm; it is nontrivial and could be extended. An experiment on a compiler-based Prolog system showed that our technique improved the efficiency of exhaustive search by 6 times for a permutation generator program. This compilation technique is important also in that it exploits the AND-parallelism of GHC for parallel search.

KW - Compilation

KW - Continuation

KW - Exhaustive Search

KW - Guarded Horn Clauses

KW - Mode Analysis

KW - Multiple Binding Environments

KW - Parallelism

KW - Program Transformation

UR - http://www.scopus.com/inward/record.url?scp=0003053140&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=0003053140&partnerID=8YFLogxK

U2 - 10.1007/BF03037456

DO - 10.1007/BF03037456

M3 - Article

AN - SCOPUS:0003053140

VL - 5

SP - 29

EP - 44

JO - New Generation Computing

JF - New Generation Computing

SN - 0288-3635

IS - 1

ER -