Algorithmic theories of data structures

  • Andrzej Salwicki
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 140)


We are arguing that main problems of data structures i.e.
  • specification,

  • implementation,

  • verification,

can be approached and solved by developping and studying theories of data structures which are based on algorithmic logic AL. we propose to specify a data structure by a proper set of algorithmic axioms. Then verification of a corresponding property of a program consists in proving the formula which expresses the property. The proof making use of axioms of the data structure.

We present a case study of the algorithmic theory of priority queues ATPQ. we show that the axiomatization of ATPQ is proper by proving the representation theorem, Namely, every model of the theory is isomorphic with the two-sorted model of a linearly ordered set of elements and the family of all finite subsets of the given set of elements, Next, we prove the correctness of an implementation of priority queues in binary search trees. We relate theoretical results to corresponding modules of software written in LOGLAN programming language. Remarks on dynamization of abstract theories of data structures by adding notion of reference, also axiomatizable in AL, are given. Finally, we compare our approach with others known in the literature.


Inference Rule Finite Subset Priority Queue Dynamic Object Binary Search Tree 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    Aho,A., Hopcroft,J., ullman,J., The design and analysis of computer algorithms, Addiaon-Wesley, 1974Google Scholar
  2. [2]
    Banachowski,L., On proving program correctness by means of stepwise refinement method, to appear in Proc. Symp. Algorithmic Logic and LOGLAN in Lecture Notes in Computer ScienceGoogle Scholar
  3. [3]
    Bartol,W.M.,et al., Report on the LOGLAN programming language Müldner, T., ed University of Warsaw 1981Google Scholar
  4. [4]
    Dańko,W., A criterion of undecidability of algorithmic theories, in Proc. MFCS'80 P.Dembinski ed. LNCS Springer Vlg vol.88Google Scholar
  5. [5]
    Engeler,E., Algorithmic properties of structures, Math. Systems Theory 1 (1967), 183–195MathSciNetCrossRefGoogle Scholar
  6. [6]
    Goguen,J. A.,Thatcher,J.W., Wagner,E.G., An initial algebra approach to the specification, correctness and implementation of abstarct data types, IBM Rep. RC 6487(1977)Google Scholar
  7. [7]
    Guttag,J., Abstract data types... CACM 20 (1977), 396–404CrossRefGoogle Scholar
  8. [8]
    Hoare,C.A.R., Proof of correctness of data representation, Acta Informatica 1 (1972), 271–281CrossRefGoogle Scholar
  9. [9]
    Kfoury.D., Comparing algebraic structures up to algorithmic equivalence in Proc 1-st ICALP'72. North-Holland 1972Google Scholar
  10. [10]
    Kreczmar,A., Programmability in fields, Fundamenta Informaticae 1 (1977), 195–220MathSciNetzbMATHGoogle Scholar
  11. [11]
    Knuth,D., The art of computer programming, vol.3 Addison-Wesley 73Google Scholar
  12. [12]
    Liskov,B.M., Zilles,S.N., Programming with abstract data types Proc ACM SIGPLAN Symp. on Very High Level languages, SIGPLAN Notices 4 (1974), 50–59CrossRefGoogle Scholar
  13. [13]
    Mazur,S., Computable analysis, Dissertationes Mathematicae 33 (1963 PWN)Publ. WarsawGoogle Scholar
  14. [14]
    Mirkowska, G., Algorithmic logic and its applications in the theory of programs, Fundamenta Informaticae 1 (1977), 1–17, 147–167MathSciNetzbMATHGoogle Scholar
  15. [15]
    Mirkowska, G.,Algorithmic logic with nondeterministic programs, Fundamenta informaticae 1 (1980), 45–64MathSciNetzbMATHGoogle Scholar
  16. [16]
    OKtaba.H., un algorithmic theory of reference, Ph.D. Thesis university of Warsaw 1981Google Scholar
  17. [17]
    Salwicki, A., On algorithmic theory of stacks in Proc.MFCS78 J.Winkowski ed. Lecture Notes in Comp.Sci. v. 64, 452–461Google Scholar
  18. [18]
    Salwicki,A., On the algorithmic theory of dictionaries, in Proc Logic of Programs E. Engeler ed. LNCS vol.125, 145–168Google Scholar
  19. [19]
    Scott,D., Data types as lattices, SIAM J.Comp. 5(1976), 522–587MathSciNetCrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1982

Authors and Affiliations

  • Andrzej Salwicki
    • 1
  1. 1.Institute of informaticsUniversity of WarsawWarsaw PKiNPoland

Personalised recommendations