Data schemata based on directed graphs

  • C. C. Gotlieb
  • A. L. Furtado
Article

Abstract

Rooted, labeled, directed graphs (RLDs) are taken as the basis for describing data structures. A constructive formalism is set up to describe RLDs, generate them by means of grammars, and carry out operations such as accessing nodes, inserting and deleting data items, and recognizing graph patterns. It is shown how the formalism can be translated into languages for data definition and data manipulation, of the type associated with data-base systems. The availability of the formalism allows a systematic development of such languages, and provides a method of incorporating consistency preconditions to structural operations and proving the correctness of the data structures that arise in using such languages.

Key words

Data structures graphs digraphs directed graphs graph grammars data-base systems data manipulation languages data definition languages schema 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    CODASYL,Feature Analysis of Generalized Data Base Management Systems, Association for Computing Machinery (1971).Google Scholar
  2. 2.
    J. Earley, “Toward an understanding of data structures,”Commun. ACM 14(10):617–627 (1971).Google Scholar
  3. 3.
    A. Rosenberg, “Data graphs and addressable schemes,”J. Comput. Syst. Sci. 5(6):193–238 (1971).Google Scholar
  4. 4.
    C. Hoare, “Notes on Data Structuring,” inStructured Programming, Dahl and Dijkstra, eds. (Academic Press, New York, 1972).Google Scholar
  5. 5.
    T. A. Standish, “Data Structures-An Axiomatic Approach,” Technical Report 2639, Bolt, Beranek and Newman (1973).Google Scholar
  6. 6.
    E. F. Codd, “A relational model for large shared data banks,”Commun. ACM 13(6): 377–387 (1970).Google Scholar
  7. 7.
    T. A. Standish, “A Data Definition Facility for Programming Languages,” Ph.D. thesis, Carnegie Institute of Technology (1971).Google Scholar
  8. 8.
    CODASYL,Data Base Task Group Report (1971).Google Scholar
  9. 9.
    E. F. Codd, “A Data Base Sublanguage Founded on the Relational Calculus,”Proceedings of the ACM/SIGFIDET Workshop on Data Description, Access and Control (1971), pp. 35–68.Google Scholar
  10. 10.
    J. Pfaltz and A. Rosenfeld, “Web Grammars,” Technical Report 69–84, University of Maryland (1969).Google Scholar
  11. 11.
    A. Shaw, “Parsing of graph-representable pictures,”JACM 17(3):453–481 (1970).Google Scholar
  12. 12.
    J. Mylopoulos, “On the Relation of Graph Grammars and Graph Automata,”Proceedings of the 13th SWAT (1912), pp. 108–120.Google Scholar
  13. 13.
    D. L. Milgram, “Web Automata,” Technical Report 271, University of Maryland (1973).Google Scholar
  14. 14.
    F. Harary,Graph Theory (Addison-Wesley, Reading, Massachusetts, 1969).Google Scholar
  15. 15.
    J. Hopcroft and J. Ullman,Formal Languages and Their Relation to Automata (Addison-Wesley, Reading, Massachusetts, 1969).Google Scholar
  16. 16.
    W. Pratt and D. Friedman, “A language extension for graph processing and its formal semantics,”Commun. ACM 14(7):460–467 (1971).Google Scholar
  17. 17.
    J. A. Feldman and P. D. Rovner, “An algol based associative language,”Commun. ACM 12(8):439–449 (1969).Google Scholar
  18. 18.
    M. F. C. Crick and A. J. Symonds, “A Software Associative Memory for Complex Data Structures,” IBM Document G320-2060 (1970).Google Scholar
  19. 19.
    Datapro Research Corporation, “ADABAS-Software AG,” Datapro 70 (1973).Google Scholar
  20. 20.
    H. Love and D. Savitt, “An Iterative Cell Processor for the ASP Language,” inAssociative Information Techniques, Jacks, ed. (Elsevier, New York, 1971).Google Scholar
  21. 21.
    R. E. Griswold, J. E. Poage, and I. P. Polonsky,The SNOBOL 4 Programming Language (Prentice-Hall, Englewood Cliffs, New Jersey, 1968).Google Scholar
  22. 22.
    J. Mylopoulos, N. Badler, L. Melli, and N. Roussopoulos, “1.pak: A SNOBOL-Based Programming Language for Artificial Intelligence Applications,”Proceedings of the Third International Joint Conference on Artificial Intelligence (1973), pp. 691–696.Google Scholar
  23. 23.
    C. C. Gotlieb and A. L. Furtado, “Data Schemata Based on Directed Graphs,” Technical Report 70, University of Toronto (1974).Google Scholar
  24. 24.
    U. G. Montanari, “Separable graphs, planar graphs and web grammars,”Inf. Control 16:243–267 (1970).Google Scholar
  25. 25.
    C. J. Date and E. F. Codd, “The Relational and Network Approaches: Comparison of the Application Programming Interfaces,” IBM Document RJ 1401 (1974).Google Scholar
  26. 26.
    B. Wegbreit, “The treatment of data types in ELI,”Commun. ACM 17(5):251–264 (1974).Google Scholar
  27. 27.
    O. Dahl, “Hierarchical Program Structures,” inStructured Programming, Hoare and Dijkstra, eds. (Academic Press, New York, 1972).Google Scholar
  28. 28.
    B. Liskov and S. Zilles, “Programming with Abstract Data Types,”Proceedings of a Symposium on Very High Level Languages, ACM/SIGPLAN (1974), pp. 50–59.Google Scholar
  29. 29.
    P. B. Barroso and A. L. Furtado, “Implementing a data definition facility driven by graph grammars,”J. Comput. Lang. 3(2):65–74 (1978).Google Scholar
  30. 30.
    B. Shneiderman and P. Scheuermann, “Structured data structures,”Commun. ACM 17(10):566–574 (1974).Google Scholar
  31. 31.
    A. L. Furtado, “Characterizing data structures by the connectivity relation,”Int. J. Comput. Inf. Sci. 5(2):89–109 (1976).Google Scholar
  32. 32.
    E. F. Codd, “Further Normalization of the Data Base Relational Model,” inData Base Systems, Rustin, ed. (Prentice-Hall, Englewood Cliffs, New Jersey, 1972).Google Scholar
  33. 33.
    J. S. Brown, “Steps Toward Automatic Theory Formation,”Proceedings of the Third International Joint Conference on Artificial Intelligence (1973), pp. 121–129.Google Scholar
  34. 34.
    N. Minsky, “Toward ‘Intelligent’ Rotating Storage Devices,” Technical Report 73-2, University of Minnesota (1973).Google Scholar
  35. 35.
    C. Christensen, “An Example of the Manipulation of Directed Graphs in the AMBIT/G Programming Language,” inInteractive Systems for Experimental Applied Mathematics, Klerer and Reinfelds, eds. (Academic Press, New York, 1968).Google Scholar
  36. 36.
    C. C. Gotlieb and F. W. Tompa, “Choosing a storage schema,”Acta Inform. 3:297–319 (1974).Google Scholar
  37. 37.
    G. M. Nijssen, “Set and codasyl Set or Coset,” inData Base Description, Douqué and Nijssen, eds. (North-Holland/American Elsevier, New York, 1975).Google Scholar

Copyright information

© Plenum Publishing Corporation 1979

Authors and Affiliations

  • C. C. Gotlieb
    • 1
  • A. L. Furtado
    • 1
  1. 1.Department of Computer ScienceUniversity of TorontoOntarioCanada

Personalised recommendations