Advertisement

Potenzkategorien und ihre Anwendung auf den Beweis von Programmeigenschaften

  • Herbert A. Klaeren
Donnerstagnachmittag
Part of the Lecture Notes in Computer Science book series (LNCS, volume 33)

Zusammenfassung

Es bietet sich an, Programmeigenschaften kategorientheoretisch zu behandeln, da Programme in Flußdiagrammform als Basen von freien Kategorien betrachtet werden können. Die freie Kategorie über diesem Programm enthält als Morphismenmenge gerade alle möglichen Kontrollflüsse durch das Programm; diese repräsentieren alle möglichen Programmläufe. Aufgrund der speziellen Form der freien Kategorie (eindeutige Dekomponierbarkeit!) lassen sich Aussagen über Programmläufe allein durch Beweise über die Instruktionen erzielen, ohne daß man noch induktive Argumente hinzuziehen muß. Floyd's inductive assertion method läßt sich auf diese Weise kategorientheoretisch beweisen.

In dieser Arbeit werden die Potenzkategorien neu definiert; in ihnen sind Schnitte und Vereinigungen von Morphismen definiert. Mit ihrer Hilfe lassen sich Berechnungsverhalten bzw. Ein/Ausgabeverhalten von Programmen eleganter formulieren und es läßt sich die Klasse der Programme vergrößern, zwischen denen sich Programmhomomorphismen (das sind im wesentlichen Programmäquivalenzen im intuitiven Sinn) herstellen lassen.

Eine vollständige Version dieser Arbeit mit allen Beweisen liegt unter gleichem Titel als Institutsbericht vor (4). Dort wird auch vorgeführt, wie die Semantik von Flußdiagrammen durch Transport der Semantik der Programmiersprache in die freie Kategorie gewonnen werden kann; wir gehen hier nicht darauf ein.

Zur Erklärung der hier verwendeten Begriffe sei auf den Anhang, die Arbeiten von Burstall und Goguen und das Buch von Mac Lane verwiesen.

Literatur

  1. 1.
    Burstall, R.M., An Algebraic Description of Programs with Assertions, Verification and Simulation, Proc. on an ACM Confr. on Proving Assertions about Programs, Las Cruces 1972, pp. 7–14Google Scholar
  2. 2.
    Goguen, J.A., On Homomorphisms, Correctness, Termination, Unfoldments and Equivalence of Flow Diagram Programs, JCSS Vol.8 No.3, 1974Google Scholar
  3. 3.
    Goguen, J.A., Set-Theoretic Correctness Proofs, UCLA Comp.Sc.Dept. Reports on Semantics and Theory of Computation No.1, 1974Google Scholar
  4. 4.
    Klaeren, H.A., Potenzkategorien und ihre Anwendung auf den Beweis von Programmeigenschaften, Berichte d.Inst.f.Angew.Math. und Informatik Bonn, Band 1 (erscheint; dort weitere Literaturang.)Google Scholar
  5. 5.
    Mac Lane, S., Categories — for the working mathematician, Springer 1972Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1975

Authors and Affiliations

  • Herbert A. Klaeren
    • 1
  1. 1.Universität BonnGermany

Personalised recommendations