Journal of Automated Reasoning

, Volume 19, Issue 3, pp 347–376 | Cite as

Nagging: A Distributed, Adversarial Search-Pruning Technique Applied to First-Order Inference

  • David Sturgill
  • Alberto Maria Segre


This article introduces a parallel search-pruning technique callednagging. Nagging is sufficiently general to be effective in a number ofdomains; here we focus on an implementation for first-order theorem proving,a domain both responsive to a very simple nagging model and amenable to manyrefinements of this model. Nagging’s scalability and intrinsic faulttolerance make it particularly suitable for application in commonlyavailable, low-bandwidth, high-latency distributed environments. We presentseveral nagging models of increasing sophistication, demonstrate theireffectiveness empirically, and compare nagging with related work in parallelsearch.

parallel theorem proving distributed search model elimination nagging 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Aït-Kaci, H.: Warren’s Abstract Machine, MIT Press, 1991.Google Scholar
  2. 2.
    Astrachan, O. L. and Loveland, D. W.: Meteors: High performance theorem provers using model elimination, in R. S. Boyer (ed.), Automated Reasoning, Essays in Honor of Woody Bledsoe, Kluwer, 1991, pp. 31–59.Google Scholar
  3. 3.
    Astrachan, O. L. and Stickel, M. E.: Caching and lemmaizing in model elimination theorem provers, in D. Kapur (ed.), 11th Int. Conf. Autom. Deduction, Springer-Verlag, 1992, pp. 224–238.Google Scholar
  4. 4.
    Bhatnagar, N. and Mostow, J.: On-line learning from search failures, Machine Learning 15(1) (1994), 69–117.Google Scholar
  5. 5.
    Bose, S., Clarke, E. M., Long, D. E. and Michaylov, S.: Parthenon: A parallel theorem prover for non-horn clauses, J. Automated Reasoning 8(2) (1992), 153–181.Google Scholar
  6. 6.
    Brüning, S.: Detecting non-provable goals, in Alan Bundy (ed.), 12th Int. Conf. Automated Deduction, Springer-Verlag, 1994, pp. 222–236.Google Scholar
  7. 7.
    Bruynooghe, M: Intelligent backtracking for an interpreter of horn clause logic programs, in B. Dömölki and T. Gergely (eds), Math. Logic in Computer Science, North-Holland, 1978, pp. 215–258.Google Scholar
  8. 8.
    Bundy, A.: The Computer Modelling of Mathematical Reasoning, Academic Press, 1983.Google Scholar
  9. 9.
    Chang, C-L. and Lee, R. C-T.: Symbolic Logic and Mechanical Theorem Proving, Academic Press, 1973.Google Scholar
  10. 10.
    Chang, J-H. and Despain, A. M.: Semi-intelligent backtracking of Prolog based on static data dependency analysis, in Proc. IEEE Symp. Logic Programming, IEEE Computer Society, 1985, pp. 10–21.Google Scholar
  11. 11.
    Clocksin, W. F.: Principles of the DelPhi parallel inference machine, Computer Journal(1987), 386–392.Google Scholar
  12. 12.
    DeGroot, D.: Restricted and-parallelism, in Proc. Int. Conf. Fifth Generation Computer Systems, North-Holland, 1984, pp. 471–478.Google Scholar
  13. 13.
    Delgado-Rannauro, S. A.: Stream and-parallel logic computational models, in P. Kacsuk and M. J. Wise (eds), Implementations of Distributed Prolog, John Wiley and Sons, 1992, pp. 239–257.Google Scholar
  14. 14.
    Delgado-Rannauro, S. A.: Or-parallel logic computational models, in P. Kacsuk and M. J. Wise (eds), Implementations of Distributed Prolog, John Wiley and Sons, 1992, pp. 3–26.Google Scholar
  15. 15.
    Ertel, W.: Random competition: A simple but efficient method for parallelizing inference systems, in Parallelization in Inference Systems, Springer-Verlag, 1990, pp. 195–209.Google Scholar
  16. 16.
    Hermenegildo, M. V.: An abstract machine for restricted and-parallel execution of logic programs, in E. Shapiro (ed.), Third Int. Conf. Logic Programming, Springer-Verlag, 1986, pp. 25–39.Google Scholar
  17. 17.
    Kautz, H. and Selman, B.: An empirical evaluation of knowledge compilation by theory approximation, in Proc. AAAI-94, Vol. 1, MIT Press, 1994, pp. 155–161.Google Scholar
  18. 18.
    Korf, R.: Depth-first iterative deepening: An optimal admissible tree search, Artificial Intelligence 27(1) (1985), 97–109.Google Scholar
  19. 19.
    Kumar, V. and Lin, Y-J.: An intelligent backtracking scheme for Prolog, in Proc. IEEE Symposium on Logic Programming, IEEE Computer Society, 1987, pp. 406–414.Google Scholar
  20. 20.
    Kurfeß, F.: Potentiality of parallelism in logic, in Parallelization in Inference Systems, Springer-Verlag, 1990, pp. 3–25.Google Scholar
  21. 21.
    Letz, R., Mayr, K.and Goller, C.: Controlled integration of the cut rule into connection tableau calculi, J. Automated Reasoning 13(3) (1994), 297–337.Google Scholar
  22. 22.
    Letz, R., Schumann, J., Bayerl, S. and Bibel, W.: Setheo: A high-performance theorem prover, J. Automated Reasoning 8(2) (1992), 183–212.Google Scholar
  23. 23.
    Loveland, D. W.: A unifying view of some linear herbrand procedures, J. Assoc. Computing Machinery 19(1972), 366–384.Google Scholar
  24. 24.
    Loveland, D. W.: Automated Theorem Proving: A Logical Basis, North-Holland, 1978.Google Scholar
  25. 25.
    Plaisted, D. A.: Theorem proving with abstraction, Artificial Intelligence 16(1981), 47–108.Google Scholar
  26. 26.
    Schumann, J., Letz, R. and Kurfess, F.: Tutorial on high-performance theorem provers: Efficient implementation and parallelism, in Mark E. Stickel (ed.), 10th Int. Conf. Automated Deduction, Springer-Verlag, 1990, Summary, p. 683.Google Scholar
  27. 27.
    Schumann, J. M. and Letz, R.: Partheo: A high-performance parallel theorem prover, in Mark E. Stickel (ed.), 10th Int. Conf. Automated Deduction, Springer-Verlag, 1990, pp. 40–56.Google Scholar
  28. 28.
    Segre, A. M. and Scharstein, D.: Bounded-overhead caching for definite-clause theorem proving, J. Automated Reasoning 11(1993), 83–113.Google Scholar
  29. 29.
    Segre, A. M. and Sturgill, D.: Using hundreds of workstations to solve first-order logic problems, in Proc. AAAI-94, MIT Press, 1994, pp. 187–192.Google Scholar
  30. 30.
    Selman, B. and Kautz, H.: Knowledge compilation using Horn approximations, in Proc. AAAI-91, Vol. 2, 1991, pp. 904–909.Google Scholar
  31. 31.
    Stickel, M. E.: A Prolog technology theorem prover: Implementation by an extended Prolog compiler, J. Automated Reasoning 4(1988), 353–380.Google Scholar
  32. 32.
    Stickel, M. E. and Tyson, W. M.: An analysis of consecutively bounded depth-first search with applications in automated deduction, in Proc. Ninth Int. Joint Conf. Artificial Intelligence, 1985, pp. 1073–1075.Google Scholar
  33. 33.
    Sturgill, D.: Nagging: A New Approach to Parallel Search Pruning, PhD thesis, Cornell University, 1996.Google Scholar
  34. 34.
    Sutcliffe, G., Suttner, C. and Yemenis, T.: The TPTP problem library, in Alan Bundy (ed.), 12th Int. Conf. Automated Deduction, Springer-Verlag, 1994, pp. 252–266.Google Scholar
  35. 35.
    Suttner, C. B. and Schumann, J.: Parallel automated theorem proving, in L. Kanal, V. Kumar, H. Kitano, and C. Suttner (eds), Parallel Processing for Artificial Intelligence I, Elsevier, 1993, pp. 209–257.Google Scholar
  36. 36.
    Warren, D. H. D.: An abstract Prolog instruction set, Technical Report 309, SRI International, 1983.Google Scholar

Copyright information

© Kluwer Academic Publishers 1997

Authors and Affiliations

  • David Sturgill
    • 1
  • Alberto Maria Segre
    • 2
  1. 1.Baylor UniversityWacoU.S.A.
  2. 2.the University of IowaIowa CityU.S.A.

Personalised recommendations