Skip to main content

Datalog and TwoGroups and C++

  • Conference paper
  • First Online:
  • 169 Accesses

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 958))

Abstract

Datalog is the language of deductive databases, a first step towards intelligent relational databases. TwoGroups is a database of p-groups, primarily the groups of order dividing 28, which has seen actually use by research mathematicians. TwoGroups was originally developed on the NU-Prolog platform. We report on our efforts to implement a Datalog interpreter in C++, and to implement TwoGroups in C++ on top of the Datalog platform. Although TwoGroups is very relational in style, its use of range queries means that Datalog is not the perfect platform on which to implement TwoGroups. However, TwoGroups can directly utilise the multi-attribute retrieval algorithms within the Datalog implementation which do support range queries.

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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. J.L. Bentley, Multidimensional binary search trees used for associative searching, CACM 18, 9 (September 1975) 509–517.

    Google Scholar 

  2. J.L. Bentley, Multidimensional binary search trees in database applications, IEEE Trans. Software Eng. SE-5, 4 (July 1979) 333–340.

    Google Scholar 

  3. G. Butler & John Cannon, Cayley, version 4: the user language, ISSAC'88, (Proceedings of 1988 International Symposium on Symbolic and Algebraic Computation, Rome, July 4–8), Lecture Notes in Comput. Sci. 358, 456–466, Springer-Verlag, Berlin, 1989.

    Google Scholar 

  4. G. Butler and S.S. Iyer, An experimental knowledge base of simple groups, submitted.

    Google Scholar 

  5. G. Butler, S.S. Iyer & E.A. O'Brien, A database of groups of prime-power order, The Australian National University, Mathematics Research Report 021-92, 1992.

    Google Scholar 

  6. G. Butler, S.S. Iyer & E.A. O'Brien, TwoGroups: a database for group theory, The Australian National University, Mathematics Research Report 005-93, 1993. (also Notices of the AMS 40, 7 (September 1993) 839–841).

    Google Scholar 

  7. Stefano Ceri, Georg Gottlobb, Letizia Tanca, What you always wanted to know about Datalog (and never dared ask), IEEE Trans. KDE 1, 1 (March 1989) 146–166.

    Google Scholar 

  8. Alain CoËtmeur (1993), Bison ++, Flex ++, coetmeur@icdc.fr.

    Google Scholar 

  9. Charles Donnelly and Richard Stallman (1992), Bison: The YACC-compatible Parser Generator, Free Software Foundation.

    Google Scholar 

  10. Ramez Elmasri, Shamkant B. Navathe, Fundamentals of Database Systems, Benjamins/Cummings Inc., Redwood City, California, 1989.

    Google Scholar 

  11. Michael J. Folk and Bill Zoellick, File Structures, 2nd edition, Addison-Wesley, 1992, (xviii)+590 pages.

    Google Scholar 

  12. Michael W. Freeston, The BANG file: a new kind of grid file, Proc ACM SIGMOD Conference, San Francisco, 1987, pp.260–269.

    Google Scholar 

  13. M.W. Freeston, Advances in the design of the BANG file, in Foundations of Data Organisation and Algorithms, (Proc. 3rd International Conference on Foundations of Data Organisation and Algorithms, Paris, France, June 21–23, 1989), W. Litwin and H.-J. Schek (eds), Lecture Notes in Comput. Sci. 369, Springer-Verlag, Berlin, 1989, pp. 322–338.

    Google Scholar 

  14. Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides, Design patterns: Abstraction and reuse of object-oriented design, ECOOP'93, O.M. Nierstrasz (ed.), Lecture Notes in Computer Science 707, Springer-Verlag, 1993, 406–431.

    Google Scholar 

  15. Scott Robert Ladd, C++ Components and Algorithms, M&T Publishing, San Mateo, CA, 1992, (xv)+779 pages.

    Google Scholar 

  16. M. E. Lesk and E. Schmidt, Lex — A Lexical Analyzer Generator, Bell Laboratories, Murray Hill, New Jersey 07974.

    Google Scholar 

  17. D.B. Lomet and B. Salzberg, The hB-tree: a multiattribute indexing method with good guaranteed performance, ACM TODS 15, 1 (1990) 625–658.

    Article  Google Scholar 

  18. David Maier and David S. Warren, Computing with Logic, The Benjamin/Cummings Publishing Company, Inc, 1988.

    Google Scholar 

  19. Y. Nahamura, S. Abe, Y. Oshawa, M. Sakauchi, A balanced hierarchical data structure for multi-dimensional data with highly efficient dynamic characteristics, IEEE Trans. KDE 5, 4 (August 1993) 682–694. (Special Issue on Multimedia Information Systems)

    Google Scholar 

  20. J. Nievergelt, H. Hintenberger, K.C. Sevcik, The grid file: implementation and case studies of applications, Internal Report No. 46, Institut fuer Informatik, ETH Zuerich, December 1981.

    Google Scholar 

  21. J. Nievergelt, H. Hintenberger, K.C. Sevcik, The grid file: an adaptable, symmetric multikey file structure, ACM TODS 9, 1 (1984) 38–71.

    Article  Google Scholar 

  22. E.A. O'Brien, The p-group generation algorithm, J. Symbolic Comput., 9, 677–698.

    Google Scholar 

  23. Vern Paxson, Flex — Fast Lexical Analyzer Generator, Lawrence Berkeley Laboratories, University of California.

    Google Scholar 

  24. K. Ramamohanarao, J. Shepherd, I. Balbin, G. Port, L. Naish, J. Thom, J. Zobel and P. Dart, An overview of the NU-Prolog deductive database system, in Prolog and Databases, P.M.D. Gray and R.J. Lucas (Eds.), pp. 212–250. Ellis Horwood, 1988.

    Google Scholar 

  25. J. Rumbaugh, M. Blaha, W. Premerlani, F. Eddy, W. Lorenson, Object-Oriented Modelling and Design, Prentice Hall, 1991.

    Google Scholar 

  26. R. Sacks-Davis, A. Kent, and K. Ramamohanarao, Multikey access methods based on superimposed coding techniques. ACM Trans. Database Systems 12, 4 (1987) pp. 655–696.

    Article  Google Scholar 

  27. John Andrew Shepherd, Indexing Schemes and File Organisations for the NU-Prolog Deductive Database System. Ph.D. Thesis, University of Melbourne, 1989.

    Google Scholar 

  28. Bjarne Stroustrup, The C++ Programming Language, 2nd edition Addison-Wesley, 1991.

    Google Scholar 

  29. Jeffrey D. Ullman, Principles of Database and Knowledge-base systems, Volume I, Computer Science Press, Inc., Rockville, Madison, 1988.

    Google Scholar 

  30. Jeffrey D. Ullman, Principles of Database and Knowledge-base systems, Volume II, Computer Science Press, Inc., Rockville, Madison, 1989.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Jacques Calmet John A. Campbell

Rights and permissions

Reprints and permissions

Copyright information

© 1995 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Butler, G. (1995). Datalog and TwoGroups and C++. In: Calmet, J., Campbell, J.A. (eds) Integrating Symbolic Mathematical Computation and Artificial Intelligence. AISMC 1994. Lecture Notes in Computer Science, vol 958. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-60156-2_7

Download citation

  • DOI: https://doi.org/10.1007/3-540-60156-2_7

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-60156-2

  • Online ISBN: 978-3-540-49533-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics