Abstract
In this paper we present a simple but efficient backtracking scheme which works when AND-parallelism is exploited in a logic program. The scheme is well suited for implementation on a parallel hardware. We show that the backtracking scheme presented by Conery and Kibler in the context of AND/OR process model is incorrect, i.e., in some cases it may miss solutions while performing backtracking. Even if no AND-parallelism is exploited (i.e., all literals are solved sequentially), our scheme is more efficient than the "naive" depth-first backtracking strategy used by Prolog because our scheme makes use of the dependencies between literals in a clause. Chang and Despain have recently presented a backtracking scheme which also makes use of the dependencies between literals. We show that our scheme is more efficient than their scheme in the sense that our scheme does less backtracking.
This work was supported by Army Research Office grant #DAAG29-84-K-0060 to the Artificial Intelligence Laboratory at the University of Texas at Austin.
Preview
Unable to display preview. Download preview PDF.
References
Bruynooghe, M. and L. M. Pereira, “Deduction Revision by Intelligent Backtracking,” in Implementations of Prolog, ed. J. A. Campbell, pp. 194–215, Ellis Horwood Limited, 1984.
Chang, J.-H. and A.M. Despain, “Semi-Intelligent Backtracking of Prolog Based on a Static Data Dependency Analysis,” Proceedings of IEEE Symposium on Logic Programming, pp. 10–21, August, 1985.
Conery, J.S., “The AND/OR Process Model for Parallel Interpretation of Logic Programs,” Ph.D. Thesis, (Technical Report 204), University of California, Irvine, California, June, 1983.
Conery, J. S. and D. F. Kibler, “Parallel Interpretation of Logic Programs,” Proceedings of the Conference on Functional Programming Languages and Computer Architecture, pp. 163–170, ACM, October, 1981.
Conery, J.S. and D.F. Kibler, “AND Parallelism and Nondeterminism in Logic Programs,” New Generation Computing, vol.3(1985), pp. 43–70, OHMSHA,LTD. and Springer-Verlag, 1985.
Cox, P. T., “Finding Backtrack Points for Intelligent Backtracking,” in Implementations of Prolog, ed. J. A. Campbell, pp. 216–233, Ellis Horwood Limited, 1984.
Kale, L.V. and D.S. Warren, “A Class of Architectures for a Prolog Machine,” Proceedings of the Second International Logic Programming Conference, pp. 171–182, Uppsala, Sweden, July, 1984.
Kasif, S. and J. Minker, “The Intelligent Channel: A Scheme for Result Sharing in Logic Programs,” Proceedings of the 9th IJCAI, pp. 29–31, Los Angeles, August, 1985.
Lin, Y.J. and V. Kumar, “A Decentralized Model for Executing Logic Programs in Parallel,” AI Lab TR, The University of Texas at Austin, Austin, Texas, April, 1986.
Lin, Y.J., “A Parallel Implementation of Logic Programs,” Ph.D. dissertation, The University of Texas at Austin, Austin, Texas, in preparation.
Pereira, L. M. and A. Porto, “Selective Backtracking,” in Logic Programming, ed. K. L. Clark and S.-A. Tarnlund, pp. 107–114, Academic Press, 1982.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1986 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Lin, YJ., Kumar, V., Leung, C. (1986). An intelligent backtracking algorithm for parallel execution of logic programs. In: Shapiro, E. (eds) Third International Conference on Logic Programming. ICLP 1986. Lecture Notes in Computer Science, vol 225. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-16492-8_64
Download citation
DOI: https://doi.org/10.1007/3-540-16492-8_64
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-16492-0
Online ISBN: 978-3-540-39831-8
eBook Packages: Springer Book Archive