Skip to main content

Computational Issues in Exploiting Dependent And-Parallelism in Logic Programming: Leftness Detection in Dynamic Search Trees

  • Conference paper
  • 671 Accesses

Part of the book series: Lecture Notes in Computer Science ((LNAI,volume 3835))

Abstract

We present efficient Pure Pointer Machine (PPM) algorithms to test for “leftness” in dynamic search trees and related problems. In particular, we show that the problem of testing if a node x is in the leftmost branch of the subtree rooted in node y, in a dynamic tree that grows and shrinks at the leaves, can be solved on PPMs in worst-case O((lg lg n)2) time per operation in the semi-dynamic case—i.e.,all the operations that add leaves to the tree are performed before any other operations—where n is the number of operations that affect the structure of the tree. We also show that the problem can be solved on PPMs in amortized O((lg lg n)2) time per operation in the fully dynamic case.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Alstrup, S., Husfeldt, T., Rauhe, T.: Marked Ancestor Problems. In: FOCS, pp. 534–544 (1998)

    Google Scholar 

  2. Ben-Amram, A.M.: What is a Pointer Machine? SIGACT News 26(2) (June 1995)

    Google Scholar 

  3. Ben-Amran, A.M., Galil, Z.: On Pointers versus Addresses. JACM 39(3) (1992)

    Google Scholar 

  4. Blum, N.: On the single-operation worst-case time complexity of the disjoint set union problem. SIAM Journal on Computing 15(4), 1021–1024 (1986)

    Article  MATH  MathSciNet  Google Scholar 

  5. Dal Palù, A., Pontelli, E., Ranjan, D.: An Optimal Algorithm for Finding NCA on Pure Pointer Machines. In: Penttonen, M., Schmidt, E.M. (eds.) SWAT 2002. LNCS, vol. 2368, p. 428. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  6. Gabow, H.N., Tarjan, R.E.: A Linear-time Algorithm for a Special Case of Disjoint Set Union. Journal of Computer and System Sciences 30, 209–221 (1985)

    Article  MATH  MathSciNet  Google Scholar 

  7. Gupta, G., et al.: Parallel Execution of Prolog Programs. ACM TOPLAS 23(4) (2001)

    Google Scholar 

  8. Hausman, B., et al.: Cut and Side-Effects in Or-Parallel Prolog. In: Int. Conf. on Fifth Generation Computer Systems, pp. 831–840. Springer, Heidelberg (1988)

    Google Scholar 

  9. LaPoutré, H.: Lower Bounds for the Union-Find and the Split-Find Problem on Pointer Machines. Journal of Computer and System Sciences 52, 87–99 (1996)

    Article  MathSciNet  Google Scholar 

  10. Mehlhorn, K., Naher, S., Alt, H.: A Lower Bound on the Complexity of the Union-Split-Find Problem. SIAM Journal of Computing 17(6) (1988)

    Google Scholar 

  11. Pontelli, E., et al.: An Optimal Data Structure to Handle Dynamic Environments in Non-Deterministic Computations. Computer Languages 28(2) (2002)

    Google Scholar 

  12. Ranjan, D., et al.: The Temporal Precedence Problem. Algorithmica 28, 288–306 (2000)

    Article  MATH  MathSciNet  Google Scholar 

  13. Ranjan, D., et al.: Data Structures for Order-sensitive Predicates in Parallel Non-deterministic Systems. ACTA Informatica 37(1) (2000)

    Google Scholar 

  14. Schönhage, A.: Storage Modification Machines. SIAM Journal of Computing 9(3) (1980)

    Google Scholar 

  15. Shen, K.: Exploiting Dependent And-parallelism in Prolog: The Dynamic Dependent And-parallel Scheme. In: Int. Conf. and Symp. on Logic Programming. MIT Press, Cambridge (1992)

    Google Scholar 

  16. Tarjan, R.E.: A Class of Algorithms which Require Nonlinear Time to Maintain Disjoint Sets. Journal of Computer and System Sciences 2(18), 110–127 (1979)

    Article  MathSciNet  Google Scholar 

  17. van Emde Boas, P., Kaas, R., Zijlstra, E.: Design and Implementation of an Efficient Priority Queue. Mathematical Systems Theory 10 (1977)

    Google Scholar 

  18. Wu, Y., Pontelli, E., Ranjan, D.: On the Complexity of Dependent And-parallelism in Logic Programming. In: Palamidessi, C. (ed.) ICLP 2003. LNCS, vol. 2916, pp. 361–376. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2005 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Wu, Y., Pontelli, E., Ranjan, D. (2005). Computational Issues in Exploiting Dependent And-Parallelism in Logic Programming: Leftness Detection in Dynamic Search Trees. In: Sutcliffe, G., Voronkov, A. (eds) Logic for Programming, Artificial Intelligence, and Reasoning. LPAR 2005. Lecture Notes in Computer Science(), vol 3835. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11591191_7

Download citation

  • DOI: https://doi.org/10.1007/11591191_7

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-30553-8

  • Online ISBN: 978-3-540-31650-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics