Abstract
In this paper we describe the design of an effective caching mechanism for resource-limited, definite-clause theorem-proving systems. Previous work in adapting caches for theorem proving relies on the use of unlimited-size caches. We show how unlimited-size caches are unsuitable in application contexts where resource-limited theorem provers are used to solve multiple problems from a single problem distribution. We introduce bounded-overhead caches, that is, those caches that contain at most a fixed number of entries and entail a fixed amount of overhead per lookup, and we examine cache design issues for bounded-overhead caches. Finally, we present an empirical evaluation of bounded-overhead cache performance, relying on a specially designed experimental methodology that separates hardware-dependent, implementation-dependent, and domain-dependent effects.
Similar content being viewed by others
References
Astrachan, O. L. and Stickel, M. E., ‘Caching and lemmaizing in model elimination theorem provers’, Technical Note 513, SRI International, Menlo Park, Calif. (December 1991).
Dietrich, S. W., ‘Extension tables: memo relations in logic programming’,Proceedings of the Institute of Electrical and Electronics Engineers Symposium on Logic Programming, San Francisco, pp. 264–273 (1987).
Doyle, J., ‘Truth maintenance systems for problem solving’, Technical Report 419, MIT Artificial Intelligence Laboratory, Cambridge, Mass. (1978).
Ebeling, C.,All the Right Moves, MIT Press, Cambridge, Mass. (1987).
Elkan, C., ‘Conspiracy numbers and caching for searching and/or trees and theorem-proving’,Proceedings of the Eleventh International Joint Conference on Artificial Intelligence, Detroit, pp. 341–346 (1989).
Elkan, C., ‘Incremental, approximate planning’,Proceedings of the National Conference on Artificial Intelligence, Boston, pp. 145–150 (1990).
Ginsberg, M. L. and Harvey, W. D., ‘Iterative broadening’,Artificial Intelligence 55(2–3), 367–383 (1992).
Green, C., ‘Application of theorem proving to problem solving’,Proceedings of the First International Joint Conference on Artificial Intelligence, Washington, D.C., pp. 741–747 (1969).
Hennessy, J. and Patterson, D.,Computer Architecture: A Quantitative Approach, Morgan Kaufmann Publishers, San Mateo, Calif. (1990).
Korf, R., ‘Depth-first iterative deepening: an optimal admissible tree search’,Artificial Intelligence 27(1), 97–109 (1985).
McAllester, D. A., ‘An outlook on truth maintenance’, Memo 551, MIT Artificial Intelligence Laboratory, Cambridge, Mass. (August 1980).
McAllester, D. A., ‘Reasoning utility package user's manual, version one’, Memo 667, MIT Artificial Intelligence Laboratory, Cambridge, Mass. (April 1982).
McDermott, D., ‘A general framework for reasong maintenance’,Artificial Intelligence 50(3), 289–330 (1991).
Michie, D., “‘Memo” functions and machine learning’,Nature 218, 19–22 (1968).
Minton, S., ‘Quantitative results concerning the utility of explanation-based learning’,Artificial Intelligence 42(2–3), 363–392 (1990).
Mostow, J. and Cohen, D., ‘Automating program speedup by deciding what to cache’,Proceedings of the Ninth International Joint Conference on Artificial Intelligence, Los Angeles, pp. 165–173 (1985).
Plaisted, D., ‘Non-Horn clause logic programming without contrapositives’,J. Automated Reasoning 4, 287–325 (1988).
Segre, A. M., ‘Explanation-based learning of generalized robot assembly plans’, Ph.D. Thesis, Department of Electrical and Computer Engineering, University of Illinois at Urbana-Champaign, Urbana (1987).
Segre, A. M.,Machine Learning of Robot Assembly Plans, Kluwer Academic Publishers, Hingham, Mass. (1988).
Segre, A. M. and Elkan, C., ‘A provably complete family of EBL algorithms’, Working Paper, Department of Computer Science, Cornell University, Ithaca, N.Y. (1990).
Segre, A. M., Elkan, C. and Russell, A., ‘Technical note: a critical look at experimental evaluations of EBL’,Machine Learning 6(2), 183–196 (1991).
Segre, A. M., Elkan, C., Gordon, G. and Russell, A., ‘A robust methodology for experimental evaluations of speedup learning’, Working Paper, Department of Computer Science, Cornell University, Ithaca, N.Y. (1991).
Segre, A. M., ‘Learning how to plan’,Robotics and Autonomous Systems 8(1–2), 93–111 (1991).
Segre, A. M., Elkan, C., Scharstein, D., Gordon, G. and Russell, A., ‘Adaptive inference’, inMachine Learning: Induction, Analogy, and Discovery, S. Chipman and A. Meyrowitz (Eds.), Kluwer Academic Publishers, Hingham, Mass. (1993).
Segre, A. M. and Turney, J., ‘SEPIA: a resource-bounded adaptive agent’,Proceedings of the First International Conference on Artificial Intelligence Planning Systems, College Park, Maryland, pp. 303–304 (1992).
Segre, A. M., ‘On combining multiple speedup techniques’,Proceedings of the Ninth International Machine Learning Conference, Aberdeen, Scotland, pp. 400–405 (1992).
Segre, A. M. and Turney, J., ‘Planning, acting, and learning in a dynamic domain’, inMachine Learning Methods for Planning, S. Minton (Ed), Morgan Kaufmann Publishers, San Mateo, Calif. (1993).
Slate, D. and Atkin, L., ‘Chess 4.5 — The Northwestern University chess program’, inChess Skill in Man and Machine, P. Frey (Ed.), Springer-Verlag, pp. 82–118 (1977).
Sussman, G. J., ‘A computational model of skill acquisition’, Technical Report 297, MIT Artificial Intelligence Laboratory, Cambridge, Mass. (1973).
Tamaki, H. and Sato, T., ‘OLD resolution with tabulation’,Third International Conference on Logic Programming, London, pp. 85–97 (1986).
Turney, J. and Segre, A. M., ‘SEPIA: an experiment in integrated planning and improvisation’,Working Notes of the 1989 American Association for Artificial Intelligence Workshop on Planning and Search, Palo Alto, Calif., pp. 59–63 (1989).
Turney, J. and Segre, A. M., ‘A framework for learning in planning domains with uncertainty’, Technical Report 89-1009, Department of Computer Science, Cornell University, Itahaca, N.Y. (1989).
Warren, D. S., ‘Memoing for logic programs’,Communications of the Association for Computing Machinery 35(3), 94–111 (1992).
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Segre, A., Scharstein, D. Bounded-overhead caching for definite-clause theorem proving. J Autom Reasoning 11, 83–113 (1993). https://doi.org/10.1007/BF00881901
Received:
Issue Date:
DOI: https://doi.org/10.1007/BF00881901