
This Article  
 
Share  
Bibliographic References  
Add to:  
Digg Furl Spurl Blink Simpy Del.icio.us Y!MyWeb  
Search  
 
ASCII Text  x  
A.C. Chen, C.I. Wu, "A Parallel Execution Model of Logic Programs," IEEE Transactions on Parallel and Distributed Systems, vol. 2, no. 1, pp. 7992, January, 1991.  
BibTex  x  
@article{ 10.1109/71.80191, author = {A.C. Chen and C.I. Wu}, title = {A Parallel Execution Model of Logic Programs}, journal ={IEEE Transactions on Parallel and Distributed Systems}, volume = {2}, number = {1}, issn = {10459219}, year = {1991}, pages = {7992}, doi = {http://doi.ieeecomputersociety.org/10.1109/71.80191}, publisher = {IEEE Computer Society}, address = {Los Alamitos, CA, USA}, }  
RefWorks Procite/RefMan/Endnote  x  
TY  JOUR JO  IEEE Transactions on Parallel and Distributed Systems TI  A Parallel Execution Model of Logic Programs IS  1 SN  10459219 SP79 EP92 EPD  7992 A1  A.C. Chen, A1  C.I. Wu, PY  1991 KW  Index TermsAND parallelism; parallel execution model; logic programs; OR parallelism; nondeterministic logic program; frame inheritance; datadependency graphs; modularity; dynamic construction; computational complexity; communication channels; computational complexity; logic programming VL  2 JA  IEEE Transactions on Parallel and Distributed Systems ER   
A parallelexecution model that can concurrently exploit AND and OR parallelism in logic programs is presented. This model employs a combination of techniques in an approach to executing logic problems in parallel, making tradeoffs among number of processes, degree of parallelism, and combination bandwidth. For interpreting a nondeterministic logic program, this model (1) performs frame inheritance for newly created goals, (2) creates datadependency graphs (DDGs) that represent relationships among the goals, and (3) constructs appropriate process structures based on the DDGs. (1) The use of frame inheritance serves to increase modularity. In contrast to most previous parallel models that have a large single process structure, frame inheritance facilitates the dynamic construction of multiple independent process structures, and thus permits further manipulation of each process structure. (2) The dynamic determination of data dependency serves to reduce computational complexity. In comparison to models that exploit bruteforce parallelism and models that have fixed execution sequences, this model can reduce the number of unification and/or merging steps substantially. In comparison to models that exploit only AND parallelism, this model can selectively exploit demanddriven computation, according to the binding of the query and optional annotations. (3) The construction of appropriate process structures serves to reduce communication complexity. Unlike other methods that map DDGs directly onto process structures, this model can significantly reduce the number of data sent to a process and/or the number of communication channels connected to a process.
[1] R.A. Kowalski, "Predicate logic as a programming language," inProc. IFIP, 1974, pp. 569574.
[2] R. Kowalski,Logic for Problem Solving. New York: NorthHolland, 1979.
[3] R. Kowalski, "Algorithm = Logic + Control,"Comm. ACM, Vol. 22, No. 7, July 1979, pp. 424436.
[4] E. W. Dijkstra,A Discipline of Programming. Englewood Cliffs, NJ: PrenticeHall, 1976.
[5] E. Shapiro, "A subset of Concurrent Prolog and its interpreter," ICOT Tech. Rep. TR003, 1983.
[6] K. Ueda, "A parallel logic programming language with the concept of a guard," Tech. Rep. TR208, ICOT, 1986.
[7] K. Nakajimaet al., "Distributed implementation of KLl on the MultiPSI/V2," inProc. 6th Int. Conf. Logic Programming, 1989, pp. 436451.
[8] W. F. Clocksin and C. S. Mellish,Programming in Prolog. New York: SpringerVerlag, 1984.
[9] D.H.D. Warren, "An abstract Prolog instruction set," Tech. Note 309, SRI International, 1983.
[10] J. Lassiter, "Principles of Traditional Animation Applied to 3D Computer Animation,"Computer Graphics(Proc. SIGGRAPH), Vol. 21, No. 4, July 1987, pp. 3544.
[11] Y. J. Lin and V. Kumar, "A parallel execution scheme for exploiting ANDparallelism of logic programs," inProc. Int. Conf. Parallel Processing, 1987, pp. 5568.
[12] M. V. Hermenegildo, "An abstract machine based execution model for computer architecture design and efficient implementation of logic programs in parallel," Ph.D. dissertation, Tech. Rep. TR86 20, Univ. of Texas at Austin, Aug. 1986.
[13] D. DeGroot, "Restricted ANDparallelism," inProc. Int. Conf. Fifth Generation Comput. Syst., 1984, pp. 471478.
[14] J. H. Chang, A. M. Despain, and D. DeGroot, "AND parallelism of logic programs based on static data dependency analysis," inProc. 30th IEEE Comput. Society Conf., Feb. 1985, pp. 218226.
[15] E. Lusket al., "The Aurora ORParallel Prolog system," inProc. Int. Conf. FGCS, 1988, pp. 819830.
[16] N. Tamura and Y. Kaneda, "Implementing Parallel Prolog on a multiprocessor machine, " inProc. Fourth Symp. Logic Programming, 1987, pp. 5468.
[17] L. V. Kale, "Parallel architecture for problem solving," Ph.D. dissertation, Comput. Sci. Dep., SUNY at Stony Brook, Dec. 1985.
[18] G. Lindstrom, "ORparallelism on applicative architectures," inProc. Second Int. Conf. Logic Programming, 1984, pp. 159170.
[19] A. Goto, H. Tanaka, and T. Motooka, "Highly parallel inference engine PIEGoal rewriting model and machine architecture,"New Generation Comput., vol. 2, pp. 3758, OHMsha, Ltd., 1984.
[20] A. Ciepeilewski and S. Haridi, "A formal model for orparallelism execution of logic programs," inProc. IFIP, 1983, pp. 299306.
[21] S. Kasif, M. Kohli, and J. Minker, "PRISM: A parallel inference system for problem solving," Tech. Rep., Comput. Sci. Dep., Univ. of Maryland, Feb. 1983.
[22] E. Tick, "Performance comparison of AND and OR logic programming architectures," inProc. 6th Int. Conf Logic Programming, pp. 452470.
[23] K. W. Ng and H.F. Leung, "A competition model for parallel execution of logic programs," inProc. 5th Int. Conf. Logic Programming, 1988, pp. 11811187.
[24] Y. J. Lin, V. Kumar, and C. Leung, "An intelligent backtracking algorithm for parallel execution of logic programs," inProc. Third Int. Conf. Logic Programming, 1986, pp 5569.
[25] J. Chang and A.M. Despain, "Semiintelligent backtracking of Prolog based on a static data dependency analysis," inProc. IEEE Symp. Logic Programming, Aug. 1985, pp. 4370.
[26] M. Carlessonet al., "A simplified approach to the implementation of ANDParallelism in an ORparallel environment." inProc. 5th Int. Conf. Logic Programming, 1988, pp. 15651577.
[27] H. Hirakawa, T. Chikayma, and K. Furukawa, "Eager and lazy enumerations in Concurrent Prolog," inProc. Int. Conf. Logic Programming, 1986, pp. 89100.
[28] J. S. Conery, "The AND/ORprocess model for parallel interpretation of logic programs," Ph.D. dissertation, Tech. Rep. 204, Univ. of California, Irvine, June 1983.
[29] G. J. Li and B. W. Wah, "Computational efficiency of parallel approximate branchandbound algorithms," inProc. Int. Conf. Parallel Processing, 1984, pp. 473480.
[30] S. Kasif and J. Minker, "The intelligent channel: A scheme for result sharing in logic programs," inProc. 9th IJCAI, 1985, pp. 2931.
[31] P. Biswas,et al., "A scalable abstract machine model to support limitedOR (LOR)/restrictedAND parallelism (RAP) in logic programs," inProc. 5th Int. Conf. Logic Programming, 1988, pp. 11601179.
[32] P. Ramanet al., "ANDORparallel execution of logic problems," inProc. 5th Int. Conf. Logic Programming, 1988, pp. 11881203.
[33] P. P. Li and A. J. Martin. "The Sync model: A parallel execution model for logic programming," inProc. Symp. Logic Programming, 1986, pp. 223234.
[34] H. Westphal and P. Robert, "The PEPSys model: Combining backtracking, AND and OR parallelism," inProc. Symp. Logic Programming, 1987, pp. 436448.
[35] A. C. Chen, F. Shueh, and C1 Wu, "Effective realization of systolic functions in logic programs,"SPIE Proc. Visual Commun. and Imaging Processing '88, vol. 1001, pp. 378384, 1988.
[36] C.W. Reynolds, "Flocks, Herds, and Schools: A Distributed Behavioral Model,"Computer Graphics(Proc. SIGGRAPH), Vol. 21, No. 3, July 1987, pp. 2534.
[37] H.T. Kung, "Why systolic architectures?"IEEE Comput. Mag., vol. 15, no. 1, pp. 3746, 1982.
[38] C. Mead and L. Conway,Introduction to VLSI Systems. Reading, MA: AddisonWesley, 1980, pp. 150152.
[39] E. Shapiro, "Systolic programming: A paradigm of parallel processing," inProc. Int. Conf. Fifth Generation Comput. Syst., 1984, pp. 458470.
[40] K. L. Clark, "PARLOG: A parallel logic programming language," Res. Rep. DOC 83/5, Dep. Comput., Imperial College, London, May 1983.
[41] A.C. Chen, "Semantics and execution model of a logicprogramming language," Ph.D. dissertation, Univ. of Texas at Austin, 1990.
[42] A.C. Chen, "Effective exploitation of ANDparallelism in a demand driven parallel inference model," inProc. 20th Hawaii Int. Conf. Syst. Sci., vol. 1, Jan. 1987, pp. 343349.
[43] C. J. Hogger,Introduction to Logic Programming. London: Academic, 1984.