Modallogik für Coalgebren ⊆A −1 ◦ϕ Q A ψ −1 Q _ _ _ _ _ _ _ _ _ _ _/ #Q #ϕ l Nn uL uu u u uu u z u p /B ϕ αB F ϕ−1 Q αA FA z zz z zz |z z ⊆B ◦Q l uL uu u u uu A z u F ⊆ϕ−1 Q u F ϕ| Fϕ q / nF Q zN zz z zz B z | z F ⊆Q / FB Diplomarbeit im Studiengang Informatik Fachbereich Mathematik und Informatik Philipps-Universität Marburg vorgelegt von: Björn Metzler 01.06.2004 Erstgutachter: Prof. Dr. H.P. Gumm Zweitgutachterin: Prof. Dr. R. Loogen Zusammenfassung Die Universelle Coalgebra ist eine Theorie allgemeiner zustandsbasierter Systeme. Sie bildet eine Dualisierung der Universellen Algebra und weist einen starken Bezug zur Theoretischen Informatik auf: Coalgebren stellen auf abstrakte Weise verallgemeinerte Automaten dar. Die Modallogik ist eine Erweiterung der Aussagenlogik. Durch sie werden modale“ Aspekte von Aussagen ausgedrückt und zeitliche ” Abläufe (zum Beispiel in Automaten) modelliert. In dieser Arbeit wird eine modallogische Sprache für beliebige Coalgebren entwickelt. Die Operatoren dieser Sprache werden durch Fixpunkte von Funktionalen interpretiert. Der Zusammenhang zwischen beiden Theorien wird näher untersucht. 1 Inhaltsverzeichnis Inhaltsverzeichnis 2 1 Einleitung 5 1.1 Überblick und Motivation . . . . . . . . . . . . . . . . . . . . 5 1.2 Aufbau der Arbeit . . . . . . . . . . . . . . . . . . . . . . . . 7 1.3 Schwerpunkte der Arbeit . . . . . . . . . . . . . . . . . . . . . 8 2 Kategorientheorie 10 2.1 Kategorien und Funktoren . . . . . . . . . . . . . . . . . . . . 11 2.2 Die Kategorie Set . . . . . . . . . . . . . . . . . . . . . . . . . 14 2.3 Pullbacks in Set . . . . . . . . . . . . . . . . . . . . . . . . . 17 2.4 Spezielle Set-Funktoren . . . . . . . . . . . . . . . . . . . . . 21 3 Universelle Coalgebra 3.1 Coalgebren 23 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 3.2 Homomorphismen . . . . . . . . . . . . . . . . . . . . . . . . . 24 3.3 Untercoalgebren . . . . . . . . . . . . . . . . . . . . . . . . . . 26 3.4 Bisimulationen . . . . . . . . . . . . . . . . . . . . . . . . . . 28 4 Verbandstheorie 31 4.1 Verbände und Fixpunkte . . . . . . . . . . . . . . . . . . . . . 31 4.2 Der Satz von Tarski . . . . . . . . . . . . . . . . . . . . . . . . 34 2 5 Modallogik und CTL 36 5.1 Kripke-Strukturen und Bisimulationen . . . . . . . . . . . . . 37 5.2 Computation Tree Logic . . . . . . . . . . . . . . . . . . . . . 40 5.3 Inferenzsystem für CTL . . . . . . . . . . . . . . . . . . . . . 47 6 Coalgebraic Modal Language (CML) 48 6.1 Syntax von CML . . . . . . . . . . . . . . . . . . . . . . . . . 49 6.2 Coalgebraische Interpretation von CML-Operatoren . . . . . 50 6.3 Semantik von CML . . . . . . . . . . . . . . . . . . . . . . . 55 7 CML und CTL 58 7.1 Darstellung von CML durch CTL . . . . . . . . . . . . . . . 58 7.2 Bisimulationen . . . . . . . . . . . . . . . . . . . . . . . . . . 61 8 Beschreibung der Semantik von CML 62 8.1 Charakterisierung von # als Pullback . . . . . . . . . . . . . . 63 8.2 Beschreibung der weiteren modallogischen Operatoren . . . . . 64 8.3 CML-Operatoren unter Homomorphismen . . . . . . . . . . . 65 8.4 Beispiele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 8.4.1 Der konstante Funktor . . . . . . . . . . . . . . . . . . 69 8.4.2 Automaten . . . . . . . . . . . . . . . . . . . . . . . . 69 8.4.3 Der Funktor ( ) × ( ) − 4 + {∗} . . . . . . . . . . . 72 8.4.4 Der ( )32 -Funktor . . . . . . . . . . . . . . . . . . . . . 74 9 Ein Funktor SetF → SetP 75 9.1 Modallogische Äquivalenz zwischen P- und F-Coalgebren . . . 76 9.2 Ein Funktor SetF → SetP . . . . . . . . . . . . . . . . . . . . 81 9.3 Eine natürliche Transformation F → P ◦ P . . . . . . . . . . . 86 9.4 Ausblick: ein Inferenzsystem für CML . . . . . . . . . . . . . 88 3 10 Charakterisierung von CML für spezielle Funktoren 90 10.1 Tautologien für CML-Operatoren . . . . . . . . . . . . . . . . 91 10.2 Charakterisierung von CML an zwei Beispielen . . . . . . . . 98 11 Ausblick 104 A Symbolverzeichnis 105 Literaturverzeichnis 108 Index 110 B Danksagungen 113 4 Kapitel 1 Einleitung In den folgenden Abschnitten werden die wichtigsten Fragestellungen dieser Arbeit motiviert und es wird ein Überblick über den Inhalt gegeben. Zum Verständnis ist ein Grundwissen im Bereich der Universellen Coalgebra und der Modallogik hilfreich, alle notwendigen Begriffe werden aber in den nachfolgenden Kapiteln erläutert. 1.1 Überblick und Motivation Mit Hilfe der Universellen Coalgebra können viele Systeme aus der Informatik wie Automaten oder (nicht-)deterministische Transitionssysteme einheitlich beschrieben werden. Eine Coalgebra ist ein Tupel A = (A, αA ) bestehend aus einer Grundmenge A und einer Strukturabbildung αA . Jede Coalgebra besitzt einen Typ, der durch einen Set-Endofunktor gegeben ist. Rutten lieferte mit seiner Arbeit [Rut96] eine grundlegende Einführung in die Theorie der Universellen Coalgebra. Die Modallogik ist eine Erweiterung der Aussagenlogik. Durch Modalitäten können beispielsweise Sicherheitseigenschaften oder Lebendigkeitseigenschaften von Systemen beschrieben werden: • 2 P: Die Aussage P ist notwendig. • 3 P: Die Aussage P ist möglich. Für die Modellierung von Systemen und Prozessen werden in der Informatik Kripke-Strukturen, spezielle Transitionssysteme, eingesetzt. In einer Kripke5 Struktur wird jedem Zustand eine Menge von atomaren Aussagen zugeordnet, die gültigen Aussagen. Mit Hilfe der Modallogik können zeitliche Abläufe in Kripke-Strukturen beschrieben werden: Unter Berücksichtigung der Transitionsstruktur werden temporale Eigenschaften wie im nächsten Zustand oder immer mit modallogischen Operatoren ausgedrückt. Andererseits ist eine coalgebraische Beschreibung von Kripke-Strukturen möglich. Die vorliegende Arbeit befasst sich unter anderem mit den folgenden Fragestellungen: • Wie lassen interpretieren? sich modallogische Operatoren coalgebraisch • Wie kann eine modallogische Sprache für Coalgebren eines beliebigen Typs aufgestellt werden? • Wie lässt sich ein Inferenzsystem für diese Sprache entwickeln? • Welche Ergebnisse lassen sich für Kripke-Strukturen von der modalen Logik in die Universelle Coalgebra übertragen? • Welche Eigenschaft muss ein Funktor besitzen, so dass sich zu einer beliebigen F-Coalgebra eine Kripke-Struktur mit den gleichen modallogischen Eigenschaften konstruieren lässt? • Wie lässt sich die modale Logik spezieller Funktoren charakterisieren? Kripke-Strukturen, Bisimulationen und die temporale Logik CTL sind Ansatzpunkte, die die Universelle Coalgebra und die Modallogik zusammenführen. Moss Arbeit Coalgebraic Logic“ ([Mos99]) ist grundlegend für das Gebiet ” der Modallogik für Coalgebren. Jacobs und Hughes haben in [Jac00] und [JH03] den Operator # ( Nexttime“) durch Prädikatlifting über die ” Strukturabbildung der Coalgebra definiert und daraus die weiteren modallogischen Operatoren 2 ( Always“) und 3 ( Sometimes“) abgeleitet. ” ” In dieser Arbeit wird die Definition der Operatoren zum Teil modifiziert und erweitert: # wird kategorientheoretisch als Pullback beschrieben, 3, 2 und ein weiterer Operator U ( Until“) werden als Fixpunkte von Abbildungen ” τ : P(A) → P(A) interpretiert. Durch Eigenschaften des vollständigen Verbandes (P(A), ⊆) kann die Dualität der Definitionen von 3 und 2 für spätere Untersuchungen genutzt werden. Es wird eine Sprache CML entwickelt und ein Funktor von der Kategorie SetF aller F-Coalgebren in die Kategorie SetP aller Transitionssysteme konstruiert, der die modallogischen Eigenschaften erhält. 6 1.2 Aufbau der Arbeit Im Folgenden eine Übersicht über die Kapitel der Arbeit: • Kapitel 2 fasst die wichtigsten und später notwendigen Definitionen und Aussagen der Kategorientheorie zusammen. Neben den Begriffen Kategorie und Funktor werden die für die folgenden Kapitel relevanten Eigenschaften der Kategorie Set beschrieben. Es werden Pullbacks und natürliche Transformationen in Set sowie hilfreiche Eigenschaften von Set-Funktoren näher betrachtet. • Kapitel 3 enthält die Grundbegriffe der Universellen Coalgebra; Homomorphismen, Untercoalgebren und Bisimulationen werden erläutert. Zudem werden Beispiele für Coalgebren angeführt, wie Kripke-Strukturen oder Automaten. • Fast alle modallogischen Operatoren werden in dieser Arbeit als Fixpunkte von Abbildungen innerhalb des vollständigen Verbandes (P(A), ⊆) interpretiert. Kapitel 4 liefert einen Überblick über die wichtigsten Begriffe der Verbandstheorie einschließlich des Dualitätsprinzips. Es wird der Begriff des Fixpunktes motiviert und der für die späteren Interpretationen grundlegende Satz von Tarski zitiert. • Kapitel 5 bietet eine kurze Einführung in die Modallogik. Es wird die für diese Arbeit relevante temporale Logik CTL vorgestellt, und wir definieren Begriffe wie Kripke-Struktur und Bisimulation aus temporallogischer Sicht. Es werden einige Ergebnisse aus diesem Bereich zusammengefasst, die in späteren Kapiteln benötigt oder auf die entwickelte modallogische Sprache übertragen werden. • Den ersten Schwerpunkt der Arbeit bildet Kapitel 6: Basierend auf den Operatoren #, 2 und 3 wird eine modallogische Sprache Coalgebraic Modal Language (CML) für Coalgebren entwickelt. Wir definieren die Syntax und die Semantik der Sprache. Coalgebren stellen die Modelle dieser Sprache dar. • In Kapitel 7 wird der Bezug zwischen CTL und der im vorigen Kapitel definierten Sprache hergestellt: Im Fall von Transitionssystemen sind CTL und CML äquivalent. • Neben der Beschreibung der modallogischen Operatoren (beispielsweise der Charakterisierung von # als Pullback) behandelt Kapitel 8 7 den Begriff des Coalgebrahomomorphismus im Zusammenhang mit den Operatoren # und 2. Zudem werden einige bekannte Beispiele wie Automaten oder Kripke-Strukturen betrachtet. • Kapitel 9 umfasst die wichtigsten Resultate dieser Arbeit: Es wird bewiesen, dass sich unter bestimmten Voraussetzungen zu einer FCoalgebra ein Transitionssystem konstruieren lässt, welches die gleichen modallogischen Eigenschaften wie die F-Coalgebra besitzt. In diesem Fall kann ein funktorieller Bezug zwischen SetF und SetP hergestellt werden, der die modallogischen Eigenschaften sämtlicher F-Coalgebren bewahrt. Im Anschluss werden einige Überlegungen hinsichtlich eines Inferenzsystems für CML zusammengestellt. • In Kapitel 10 wird die modale Logik spezieller Funktoren beschrieben. Zum einen geben wir einige Tautologien für Coalgebren eines beliebigen Typs an. Zum anderen wird die modale Logik von zwei Beispielfunktoren anhand spezieller Tautologien charakterisiert. • In Kapitel 11 werden in einem Ausblick einige offen gebliebene Fragen dargestellt. 1.3 Schwerpunkte der Arbeit Die meisten Arbeiten im Bereich der modalen Logik für Coalgebren beschränken sich auf die Betrachtung der Operatoren #, 2 und 3 und setzen voraus, dass Funktoren schwache Pullbacks erhalten oder polynomial sind. Die hier aufgestellte Theorie stellt zunächst keine Forderungen an den Funktor. Wir untersuchen zusätzlich den Operator Until“ und interpretieren die ” meisten Operatoren über Fixpunktgleichungen. Der Operator 3 wird nicht durch Negation aus 2 abgeleitet, sondern unabhängig als kleinster Fixpunkt definiert. # wird in [Mos99] über das sogenannte Prädikatlifting definiert. Wir geben eine rein kategorientheoretische Beschreibung von # an, die ohne das Prädikatlifting auskommt. Schrittweise werden sämtliche CTL-Operatoren durch CML-Operatoren 8 dargestellt und die Äquivalenz beider Sprachen im Fall von Transitionssystemen untersucht. Es wird ein Funktor von SetF nach SetP definiert, der die modallogischen Eigenschaften bewahrt. Dadurch wird es möglich, Ergebnisse aus dem Bereich der temporalen Logik systematisch auf beliebige F-Coalgebren zu übertragen, sofern F Schnitte und Urbilder erhält. Ansätze zur Übertragung eines CTL-Inferenzsystems auf die in dieser Arbeit entwickelte Sprache werden angeführt; das Verhalten modallogischer Operatoren im Zusammenhang mit Homomorphismen wird untersucht. 9 Kapitel 2 Kategorientheorie Das folgende Kapitel stellt eine kurze Einführung in die Grundlagen der Kategorientheorie dar. Der Begriff der Kategorie wird erläutert und es werden einige Beispiele für Kategorien angeführt. Im Folgenden werden die für diese Arbeit relevanten Begriffe definiert und motiviert. Die vorliegende Arbeit befasst sich ausschließlich mit der Kategorie Set, daher werden wir insbesondere auf spezielle Resultate in dieser Kategorie eingehen. Funktoren stellen Beziehungen zwischen Kategorien her. Dieser Begriff ist grundlegend für die Universelle Coalgebra, denn Funktoren stellen die Typen von Coalgebren dar - Homomorphieeigenschaften oder Unterstrukturen können nur hinsichtlich Coalgebren des gleichen Typs untersucht werden. Es werden einige Beispiele angegeben und grundlegende Eigenschaften von Funktoren betrachtet. Ein ausführliches Nachschlagewerk der Kategorientheorie stellt zum Beispiel [HS73] dar. 10 2.1 Kategorien und Funktoren DEFINITION 2.1. (Kategorie) Eine Kategorie C = (OC , MC ) besteht aus einer Klasse OC von Objekten und einer Klasse MC von Morphismen, so dass gilt: (a) Jeder Morphismus besitzt genau ein Startobjekt dom f und genau ein Zielobjekt codom f . Falls f ein Morphismus mit Startobjekt A und Zief lobjekt B ist, so schreiben wir: A −→ B. (b) Falls f : A → B und g : B → C Morphismen sind, so existiert die Komposition g ◦ f : A → C in MC . Die Komposition ist assoziativ, d.h. es gilt (f ◦ g) ◦ h = f ◦ (g ◦ h). (c) Für jedes Objekt A ∈ OC existiert ein ausgezeichneter Morphismus idA : A → A, so dass für alle Morphismen f ∈ MC gilt: f ◦ idA = idA ◦ f = f . Im Folgenden werden nur konkrete Kategorien betrachtet, d.h. Kategorien, deren Objekte Mengen mit zusätzlicher Struktur und zusätzlichen Eigenschaften und deren Morphismen strukturerhaltende Abbildungen sind. BEISPIEL 2.2. (Beispiele für Kategorien) • Die Kategorie Set besteht aus der Klasse aller Mengen und der Klasse aller Abbildungen. • Die Kategorie Grp besitzt als Objektklasse die Klasse aller Gruppen, Morphismen sind die Gruppenhomomorphismen. • Auch die Klasse SetF aller Coalgebren eines festen Typs F bildet eine Kategorie (vergleiche Lemma 3.4). Objekte sind alle F-Coalgebren, Morphismen die Coalgebrahomomorphismen. Zu einer beliebigen Kategorie kann die duale Kategorie konstruiert werden: DEFINITION 2.3. (duale Kategorie) Sei C = (OC , MC ) eine Kategorie. Dann ist die duale Kategorie C Op von C wie folgt definiert: • OC = OC Op 11 f f • Falls (A −→ B) ∈ MC , so ist (B −→ A) ∈ MC Op • Falls h = f ◦ g ∈ MC , so ist h = g ◦ f ∈ MC Op SATZ 2.4. ([HS73]) Die duale Kategorie C Op von C bildet wieder eine Kategorie. DEFINITION 2.5. (Epi-, Mono- und Isomorphismus) Ein Morphismus f : A → B in einer Kategorie C heißt Epimorphismus, falls für alle Morphismen g und h aus C gilt: g ◦ f = h ◦ f ⇒ g = h, graphisch: A f g / B h g / / ⇒ C / /C B h f heißt dann rechtskürzbar. f heißt Monomorphismus, falls f linkskürzbar ist, d.h. falls für alle Morphismen g und h aus C gilt: f ◦ g = f ◦ h ⇒ g = h, graphisch: g A h / / B f g ⇒ /C A h / / B Schließlich heißt f Isomorphismus, falls ein Morphismus g : B → A in C existiert, so dass gilt: g ◦ f = idA und f ◦ g = idB . DEFINITION 2.6. (rechts- und linksinvertierbar) Ein Morphismus f : A → B in einer Kategorie C heißt rechtsinvertierbar, falls ein Morphismus g : B → A in C existiert, so dass gilt: f ◦ g = idB f heißt linksinvertierbar, falls ein Morphismus h : B → A in C existiert und es gilt: h ◦ f = idA Im Allgemeinen sind weder Monomorphismen injektiv noch Epimorphismen surjektiv. Außerdem ist ein Morphismus, der sowohl epi als auch mono ist, nicht zwingend ein Isomorphismus. Es gilt aber: 12 LEMMA 2.7. ([HS73]) Sei f : A → B ein Morphismus in einer Kategorie C. Falls f links- und rechtsinvertierbar ist, so ist f ein Isomorphismus. LEMMA 2.8. ([HS73]) Sei f : A → B ein Morphismus in einer beliebigen Kategorie. Dann gilt: (i) f ist rechtsinvertierbar ⇒ f ist Epimorphismus. (ii) f ist linksinvertierbar ⇒ f ist Monomorphismus. Um Beziehungen zwischen Kategorien herzustellen, wird der Begriff des Funktors eingeführt: DEFINITION 2.9. (Funktor) Seien C und D Kategorien. Ein Funktor F: C → D ordnet jedem Objekt A ∈ C ein Objekt FA ∈ D und jedem Morphismus f : A → B aus C einen Morphismus F f : FA → FB aus D zu, so dass für alle Morphismen f : A → B und g : B → C aus C gilt: (i) F erhält Identitäten: FidA =idF A (ii) F erhält Kompositionen: F(g ◦ f) = Fg ◦ Ff BEISPIEL 2.10. (Beispiele für Funktoren) (a) Für eine beliebige Kategorie C existiert immer der Identitätsfunktor I : C → C. Objekte und Morphismen aus C werden auf sich selbst abgebildet. (b) In jeder Kategorie C existiert der Vergissfunktor U : C → Set. Dieser ordnet einem Objekt aus C seine Trägermenge und jedem Morphismus die zugrunde liegende Abbildung auf den Trägermengen zu. So ordnet F: Grp → Set einer Gruppe seine Grundmenge zu und einem Gruppenhomomorphismus die zugrunde liegende Abbildung in Set. DEFINITION 2.11. (kontravarianter Funktor) Ein Funktor F : C → D heißt kontravariant, falls F : C Op → D ein Funktor ist. 13 2.2 Die Kategorie Set Die Kategorie der Mengen, die wir im Folgenden mit Set bezeichnen, besitzt als Objekte alle Mengen. Morphismen sind durch Abbildungen gegeben. In der gesamten Arbeit wird das Auswahlaxiom vorausgesetzt, welches äquivalent zu der folgenden Aussage ist: AXIOM 2.12. Jede surjektive Abbildung in Set ist rechtsinvertierbar. In Set fallen folglich die surjektiven und injektiven Abbildungen mit den Begriffen des Epimorphismus bzw. Monomorphismus zusammen, es gilt sogar: LEMMA 2.13. ([HS73]) Sei f : A → B eine Abbildung in Set. Dann gilt: (i) f injektiv ⇔ f Monomorphismus ⇔ (f linksinvertierbar oder A = ∅) (ii) f surjektiv ⇔ f Epimorphismus ⇔ f rechtsinvertierbar Die beiden folgenden Lemmata werden auch als Diagrammergänzungslemmata bezeichnet: LEMMA 2.14. (Erstes Diagrammlemma [Gum99]) Seien f : A → B und g : A → C zwei Abbildungen und A 6= ∅. Genau dann existiert eine Abbildung h : B → C mit h ◦ f = g, falls Ker(f ) ⊆ Ker(g). h ist eindeutig bestimmt, falls f surjektiv ist. f /B @@ @@ @@ @ h g @@ @@ A@ C LEMMA 2.15. (Zweites Diagrammlemma [Gum99]) Seien f : B → A und g : C → A zwei Abbildungen. Genau dann existiert eine Abbildung h : C → B mit f ◦ h = g, falls g[C] ⊆ f [B]. Falls f injektiv, so ist h eindeutig bestimmt. A _@o f @@ @@ @@ g @@@ @@ BO h C 14 Coalgebren werden wir im Folgenden für Set-Endofunktoren definieren, d.h. Funktoren F: Set → Set. Daher beschränken wir uns in dieser Arbeit, soweit nicht anders erwähnt, auf diese Funktoren. F ordnet dann jeder Menge X eine Menge FX und jeder Abbildung f : X → Y eine Abbildung F f : FX → FY zu. DEFINITION 2.16. (Typ) Ein Typ ist ein Set-Endofunktor. Einige Beispiele für Typen sind: BEISPIEL 2.17. (a) Der Identitäts-Funktor I bildet Mengen und Abbildungen auf sich selbst ab. (b) Sei C eine fest vorgegebene Menge. Der konstante Funktor C ordnet jeder Menge X die Menge C und jeder Abbildung f die Abbildung idC zu. (c) Der Potenzmengen-Funktor P ordnet jeder Menge X ihre Potenzmenge P(X) und jeder Abbildung f die Abbildung Pf zu. Dabei ist (Pf )(U) := f [U] für alle U ⊆ P(A). (d) Der kontravariante Potenzmengenfunktor P ordnet jeder Menge X ihre Potenzmenge P(X) und jeder Abbildung f : A → B die Abbildung Pf : P(B) → P(A) definiert durch (Pf )(U) := f −1 [U] zu. (e) Transitionssysteme über einer Zustandsmenge A sind Relationen R ⊆ A × A. Jedem Zustand wird die Menge seiner Nachfolgezustände zugeordnet. Folglich können Transitionssysteme durch den Potenzmengenfunktor dargestellt werden. (f) Sei C eine konstante Menge. Der Potenz-Funktor ( )C ordnet einer Menge X die Menge XC = {f : C → X} zu. Für eine Abbildung f : X → Y ist f C definiert durch f C (τ ) := f ◦ τ . (g) Der ( )32 -Funktor ordnet jeder Menge X die Menge 3 3 X2 = {(x, y, z) ∈ X | x = y oder x = z oder y = z} zu. Für eine Abbildung f : X → Y ist f23 komponentenweise durch f23 (x, y, z) := (f (x), f (y), f (z)) definiert. 15 (h) Sei F := ( ) × ( ) − 4 + {∗} auf einer Menge X wie folgt definiert: F X := {(x, y) ∈ X 2 | x 6= y} + {∗}. Für eine Abbildung f : X → Y ist ( f × f falls x = (u, v) und f (u) 6= f (v) (F f )(x) := ∗ sonst Wir erhalten damit einen Funktor. Die beiden zuletzt genannten Funktoren sind häufig nützlich, um Gegenbeispiele zu finden. Später werden diese näher untersucht und ihre modale Logik charakterisiert. Set-Funktoren erhalten Surjektionen und nichtleere Injektionen: LEMMA 2.18. ([HS73]) Seien F ein Set-Endofunktor und f : A → B eine Abbildung. Dann gilt: (i) Ist f surjektiv, dann auch F f . (ii) Ist f injektiv und zusätzlich A 6= ∅, dann ist auch F f injektiv. DEFINITION 2.19. (Transformation, Unterfunktor, Quotient) Seien F und G Typen. Eine Transformation µ : F → G von F nach G ist eine Klasse von Morphismen (µA : F A → GA)A∈Set . µ heißt natürlich, falls für jede Abbildung f : A → B gilt: Gf ◦ µA = µB ◦ F f F heißt Unterfunktor von G, falls eine injektive natürliche Transformation von F nach G existiert, d.h. alle µA sind injektiv. G heißt Quotient von F, falls eine surjektive natürliche Transformation von F nach G existiert. Schließlich nennen wir F und G natürlich isomorph, falls eine bijektive natürliche Transformation von F nach G existiert. FA µA / GA Gf Ff FB µB 16 / GB 2.3 Pullbacks in Set Wir benötigen in dieser Arbeit den Begriff des Pullbacks, eines speziellen Limes. Dieser wird nur für die Kategorie Set betrachtet. Für eine ausführliche Behandlung von Limites und Colimites vergleiche zum Beispiel [HS73], Kapitel VI. DEFINITION 2.20. (Quelle, Mono-Quelle) Eine Quelle in Set ist ein Paar (A, (fi : A → Bi )i∈I ). Eine Mono-Quelle ist eine Quelle (A, (fi : A → Bi )i∈I ), so dass die Abbildungen fi gemeinsam linkskürzbar sind, d.h. es gilt: (∀ i ∈ I . fi ◦ g = fi ◦ h) ⇒ g = h DEFINITION 2.21. (Pullback, Schnitt, Urbild) Seien A, B und C Mengen. Weiterhin seien f : A → C und g : B → C Abbildungen. Eine Menge P zusammen mit zwei Abbildungen pA : P → A und pB : P → B heißt Pullback von f und g, falls gilt: • f ◦ pA = g ◦ pB . • Zu jeder Menge Q mit Abbildungen qA : Q → A und qB : Q → B, so dass f ◦ qA = g ◦ qB , existiert genau eine Abbildung q : Q → P mit pA ◦ q = qA und pB ◦ q = qB . QD D D qB Dq D qA D D! pA P %/ A pB f B g / C Falls f und g beide injektiv sind, so heißt der Pullback von f und g Schnitt, ist f oder g injektiv, so heißt er Urbild. KONVENTION. Im Folgenden bezeichne der Schnitt immer den Pullback von zwei Inklusionen. Entsprechend wird bei Urbildern immer mindestens eine Inklusion vorausgesetzt. 17 Die Begriffe Schnitt und Urbild rechtfertigen sich durch die folgenden Überlegungen: LEMMA 2.22. Seien U, V ⊆ A. Dann ist folgendes Diagramm ein Pullbackdiagramm: U U∩ _ V ⊆U ∩V /U _ ⊆V U ∩V ⊆A U V ⊆A V / A Beweis. Die Kommutativität des Diagramms ist sofort ersichtlich. Sei nun Q ein Konkurrent zum Pullback mit Abbildungen qU : Q → U und qV : Q → V . Nach dem zweiten Diagrammlemma (vergleiche 2.15) existiert genau dann eine eindeutig bestimmte Abbildung q : Q → U ∩ V mit ⊆UU ∩V ◦g = qU und ⊆VU ∩V ◦g = qV , falls qU [Q] ⊆ U ∩ V und qV [Q] ⊆ U ∩ V . A Dies folgt aber wegen ⊆A U ◦qU =⊆V ◦qV . LEMMA 2.23. Seien f : A → B eine Abbildung und V ⊆ B. Dann ist folgendes Diagramm ein Pullbackdiagramm: f −1 [V ] f| / V _ _ ⊆A−1 f ⊆B V [V ] A f / B Beweis. Die Kommutativität des Diagramms ist klar. Ein Konkurrent Q besitzt Abbildungen q1 : Q → V und q2 : Q → A mit f ◦ q2 =⊆B V ◦q1 . Das zweite Diagrammlemma liefert wegen (f ◦ q2 )[Q] = q1 [Q] ⊆ V und daher q2 [Q] ⊆ f −1 [V ] eine eindeutige Abbildung g : Q → f −1 [V ] mit B A B q2 =⊆A f −1 [V ] ◦g. Aus ⊆V ◦q1 = f ◦ q2 = f ◦ ⊆f −1 [V ] ◦g =⊆V ◦f| ◦ g ergibt sich durch Kürzen q1 = f| ◦ g. 18 Man sagt F erhält Pullbacks (oder Schnitte/Urbilder), falls für alle Pullbacks (P, pA , pB ) das folgende Diagramm wieder ein Pullbackdiagramm ist: F pA FP / FA F pB Ff FB Fg / FC Pullbacks beziehen sich immer auf zwei Morphismen. Allgemeiner sind Pullbacks zu einer Familie von Abbildungen fi : Ai → C, i ∈ I definiert. Man spricht dann von verallgemeinerten Pullbacks. Die Aussagen 2.22, 2.23 und 2.26 gelten auch für verallgemeinerte Schnitte/Urbilder, die Erhaltung verallgemeinerter Pullbacks wird entsprechend definiert. Aufgrund obiger Konvention definieren wir: DEFINITION 2.24. Sei F ein Set-Endofunktor. F erhält Schnitte, falls für alle Mengen A und jede Mengenfamilie (Pi )i∈I mit Pi ⊆ A, i ∈ I gilt: Ist P pi ⊆A P /P i / i A ein Pullbackdiagramm, so auch FP F pi / F Pi F ⊆A P i / F A. Die Abbildungen eines Pullbacks sind immer gemeinsam linkskürzbar: LEMMA 2.25. ([HS73]) Für einen beliebigen Pullback (A, (pi : A → Bi )i∈I ) in Set ist durch (pi : A → Bi )i∈I eine Mono-Quelle gegeben, insbesondere sind die Abbildungen gemeinsam linkskürzbar. Der Funktor erhält diese Eigenschaft, d.h. auch die Abbildungen (F pi )i∈I sind gemeinsam linkskürzbar. Pullbacks existieren nicht in jeder Kategorie. Der nachfolgende Satz erlaubt es aber, in Set von der Existenz beliebiger Pullbacks auszugehen. SATZ 2.26. ([GS03]) In der Kategorie Set existiert zu zwei beliebigen Abbildungen f : A → C und g : B → C der Pullback. 19 Aus dem Beweis des Satzes geht hervor, dass der Pullback von f : A → C und g : B → C durch die Menge P := {(a, b) ∈ A × B | f (a) = g(b)} zusammen mit den Projektionen πA : P → A und πB : P → B gegeben ist. Insbesondere existiert zu jedem a ∈ A und b ∈ B mit f (a) = g(b) ein eindeutig bestimmtes p ∈ P mit πA (p) = a und πB (p) = b. Im weiteren Verlauf der Arbeit wird es häufig sehr nützlich sein, vorauszusetzen, dass F endliche Schnitte erhält, d.h. den Pullback von endlich vielen Inklusionen bewahrt. Dies ist keine echte Einschränkung in unseren Überlegungen, denn es gilt: LEMMA 2.27. ([Trn69]) Jeder Set-Endofunktor erhält nichtleere endliche Schnitte, d.h. endliche Schnitte, deren Grundmengen nicht leer sind. Zwar erhält nicht jeder Set-Endofunktor endliche Schnitte mit leerer Grundmenge, aber jeder Funktor F kann in einen Funktor F̂ transformiert werden, der diese Eigenschaft besitzt: SATZ 2.28. ([Trn69]) Zu jedem Set-Endofunktor F existiert ein Funktor F̂, der alle endlichen Schnitte erhält und mit F auf allen nichtleeren Mengen und nichtleeren Abbildungen übereinstimmt. Insbesondere ist die Abbildung F̂(∅A ) für beliebige Mengen A injektiv. Man kann im Allgemeinen nicht davon ausgehen, dass F(∅A ) injektiv ist, was zu Problemen führen kann, da beispielsweise ∅A in diesem Fall nicht linkskürzbar ist. Aufgrund des letzten Satzes kann die Injektivität von F(∅A ) aber vorausgesetzt werden. Falls sich F und G ausschließlich auf der leeren Menge und den leeren Abbildungen unterscheiden, so sind die beiden Kategorien SetF und SetG isomorph (siehe Lemma 3.4). Man vergleiche dazu auch [Sch01], S. 31 und [HS73]. KONVENTION. In der gesamten Arbeit wird vorausgesetzt, dass F ein Set-Endofunktor ist, der endliche Schnitte erhält. Ohne Einschränkung ist für beliebige Mengen A die Abbildung F (∅A ) injektiv. Es wird bei der Betrachtung von SetFunktoren keine Unterscheidung zwischen der leeren Menge und den nichtleeren Mengen vorgenommen. 20 Die Bedingung F erhält endliche Schnitte ist äquivalent dazu, dass für beliebige Mengen A die Abbildung F (∅A ) injektiv ist und für alle U, V ⊆ A gilt: A A (F ⊆A U ∩V )[F (U ∩ V )] = (F ⊆U )[F U ] ∩ (F ⊆V )[F V ] (2.1) Die Gleichung F (U ∩ V ) = F U ∩ F V (2.2) wäre intuitiver. Dazu wird der Begriff standard benötigt: DEFINITION 2.29. (standard) Ein Set-Endofunktor F heißt standard, falls für alle U ⊆ A gilt: FA F U ⊆ F A und (F ⊆A U ) = ⊆F U . Man sagt auch F erhält Inklusionen. Zum Beispiel ist der ( )32 -Funktor standard, aber auch der Potenzmengen-Funktor: BEISPIEL 2.30. Der Funktor P ist standard, denn für alle U ⊆ A gilt P(U ) ⊆ P(A) und A PA (P ⊆A U )(X) =⊆U [X] = X = ⊆PU (X) Falls F standard ist, so reduziert sich Gleichung 2.1 auf Gleichung 2.2. 2.4 Spezielle Set-Funktoren Wir untersuchen in diesem Abschnitt einige spezielle Set-Funktoren, die in den folgenden Kapiteln eine Rolle spielen. Entsprechend der Definition für die Erhaltung endlicher Schnitte sagen wir: • F erhält endliche Vereinigungen, falls für alle U, V ⊆ A gilt: A A (F ⊆A U ∪V )[F (U ∪ V )] = (F ⊆U )[F U ] ∪ (F ⊆V )[F V ] • F erhält Komplemente, falls für alle U ⊆ A gilt: C A C (F ⊆A U C )[F U ] = ((F ⊆U )[F U ]) Später werden wir uns mit diesen speziellen Funktoren beschäftigen. Beide Eigenschaften sind eine sehr starke Einschränkung an den Funktor: 21 SATZ 2.31. ([Gum]) Sei F Funktor, F erhalte Komplemente und sei standard. Dann hat F für alle endlichen Mengen die Form C × ( ), wobei C eine konstante Menge ist. Beweis. Zunächst gelten die folgenden Bedingungen für beliebige U ⊆ A: F ∅ = F AC = (F A)C = ∅ (1) F U ∩ F U C = F (U ∩ U C ) = F ∅ = ∅ (2) F A = F U + F UC, (3) Folglich ergibt sich wobei F U + F U C die disjunkte Vereinigung von F U und F U C bezeichnet. Durch Induktion wird die folgende Behauptung gezeigt (n := {0, . . . , n − 1}): X Fn = F {i} i∈n Für n = 2 folgt mit (3) schon F 2 = F {0} + F {1}. Wieder mit (3) und der Assoziativität der Summe erhalten wir im Induktionsschritt IA F n+1 = F n + F {n + 1} = F {0} + · · · + F {n} + F {n + 1} P Insgesamt folgt F A = a∈A F {a} ∼ = A×F {a}, falls A endlich ist. Die Menge F {a} kann dabei als konstant angesehen werden. Funktoren, die die obige Eigenschaft besitzen, bezeichnen wir als deterministisch: DEFINITION 2.32. (deterministischer Funktor) Sei F ein Funktor. F heißt deterministisch, falls F standard ist und Komplemente erhält. Folglich gilt F X = C × X für alle endlichen Mengen X, wobei C eine konstante Menge ist. 22 Kapitel 3 Universelle Coalgebra Die Grundbegriffe der Universelle Coalgebra wie Homomorphismus, Untercoalgebra und Bisimulation werden in diesem Kapitel erläutert. Wir werden uns mit den für den Rest der Arbeit wichtigen Resultaten beschäftigen. Viele der Ergebnisse in diesem Kapitel stammen aus [Rut96] und [Gum99]. Für einen ausführlicheren Einblick in die Universelle Coalgebra, der über die für diese Arbeit notwendigen Aussagen hinausgeht, sei daher insbesondere auf diese Arbeiten verwiesen. 3.1 Coalgebren DEFINITION 3.1. (Coalgebra) Seien F ein Typ, A eine Menge und αA : A → F A eine Abbildung. Dann nennt man das Tupel A = (A, αA ) Coalgebra vom Typ F. A heißt Trägermenge und αA Strukturabbildung. In 3.2 haben wir bereits einige Beispiele für Typen gesehen. Die Strukturabbildung liefert die Beziehung zwischen der Trägermenge A und der Menge FA. Beispiele für Coalgebren sind Automaten oder Kripke-Strukturen: BEISPIEL 3.2. (Beispiele für Coalgebren) (a) Transitionssysteme sind Coalgebren des Potenzmengenfunktors: In einem Transitionssystem besitzt jeder Zustand eine Menge von Nachfolgern. Ist a0 Nachfolger von a im Transitionssystem A mit Grundmenge 23 A, so schreiben wir a →A a0 . Eine P-Coalgebra A = (A, αA ) entspricht dem Transitionssystem A = (A, →A ), wenn wir a →A a0 :⇔ a0 ∈ αA (a) setzen. (b) Automaten mit Ausgabealphabet D, Eingabealphabet Σ und Zustandsmenge S sind Coalgebren des Funktors D × S Σ , dem Produkt des konstanten Funktors mit dem Potenz-Funktor (vergleiche 2.17). (c) Kripke-Strukturen spielen im Bereich der temporalen Logik eine wichtige Rolle (vergleiche 5.1). Jedem Zustand eines Transitionssystems wird dort zusätzlich die Menge der in diesem Zustand gültigen Aussagen zugeordnet. Kripke-Strukturen sind daher Coalgebren des Funktors P(Φ) × P( ) für eine feste Menge Φ von atomaren Aussagen. 3.2 Homomorphismen DEFINITION 3.3. (Homomorphismus) Seien A = (A, αA ) und B = (B, αB ) zwei F-Coalgebren. Dann heißt eine Abbildung ϕ : A → B Homomorphismus von A nach B, falls αB ◦ ϕ = F ϕ ◦ α A , (3.1) d.h. folgendes Diagramm ist kommutativ: A ϕ αA / B αB FA Fϕ / FB Beispiele für Homomorphismen sind die Identität oder die Hintereinanderausführung von Homomorphismen. Für eine Teilmenge U ⊆ A ist die Inklusion genau dann ein Homomorphismus, wenn U eine Untercoalgebra der zugehörigen Coalgebra A = (A, αA ) ist (vergleiche 3.10). Es gilt: LEMMA 3.4. Die Klasse aller F-Coalgebren zusammen mit den Homomorphismen zwischen den Coalgebren bilden eine Kategorie. Im Folgenden bezeichnet SetF diese Kategorie. 24 SATZ 3.5. ([Rut96]) Sei ϕ : A → B ein bijektiver Homomorphismus. Dann ist ϕ bereits ein Isomorphismus. Beweis. Die Umkehrabbildung ϕ−1 ist Homomorphismus, denn es gilt: αA ◦ ϕ−1 = F ϕ−1 ◦ F ϕ ◦ αA ◦ ϕ−1 = F ϕ−1 ◦ αB ◦ ϕ ◦ ϕ−1 = F ϕ−1 ◦ αB Folglich ist ϕ nach Definition 2.5 ein Isomorphismus. Homomorphismen für Transitionssysteme (Coalgebren vom Typ P) sind durch die folgenden Bedingungen charakterisiert: LEMMA 3.6. (Homomorphiebedingung für P-Coalgebren [Rut96]) Seien A = (A, →A ) und B = (B, →B ) zwei Transitionssysteme. Dann ist eine Abbildung ϕ : A → B genau dann ein Homomorphismus, falls für beliebige a ∈ A gilt: 1. (a →A a0 ) ⇒ (ϕ(a) →B ϕ(a0 )) 2. (ϕ(a) →B b) ⇒ (∃ a0 ∈ A . a →A a0 und ϕ(a0 ) = b) Jeder Coalgebrahomomorphismus faktorisiert eindeutig durch sein Bild: LEMMA 3.7. (Faktorisierungssatz [Gum99]) Zu jedem Coalgebrahomomorphismus ϕ : A → B existiert eine eindeutige epi-mono Zerlegung, d.h. es existiert genau eine Coalgebrastruktur auf ϕ[A], so dass das folgende Diagramm kommutativ ist: A CC ϕ CC CC ϕ CC! ! / =B { {{ {{ . {{{ ⊆B ϕ[A] ϕ[A] Wir nennen ϕ[A] das Bild von A unter ϕ. 25 Die beiden Diagrammlemmata 2.14 und 2.15 können in die Kategorie SetF übertragen werden: LEMMA 3.8. (Erstes Diagrammlemma [Gum99]) Seien ϕ : A → B und ψ : A → C zwei Homomorphismen und A 6= ∅. Genau dann existiert ein Homomorphismus θ : B → C mit θ ◦ ϕ = ψ, falls Ker(ϕ) ⊆ Ker(ψ). θ ist eindeutig bestimmt, falls ϕ surjektiv ist. ϕ /B @@ @@ @@ @ θ ψ @@ @@ A@ C LEMMA 3.9. (Zweites Diagrammlemma [Gum99]) Seien ϕ : B → A und ψ : C → A zwei Homomorphismen. Genau dann existiert ein Homomorphismus θ : C → B mit ϕ ◦ θ = ψ, falls ψ[C] ⊆ ϕ[B]. Falls ϕ injektiv ist, so ist θ eindeutig bestimmt. A _@o ϕ @@ @@ @@ @ ψ @@ @@ BO θ C 3.3 Untercoalgebren Unterstrukturen im coalgebraischen Sinn sind Teilmengen der Trägermenge, so dass eine Strukturabbildung auf dieser Teilmenge existiert, mit der die Inklusionsabbildung zum Homomorphismus wird. Man definiert: DEFINITION 3.10. (Untercoalgebra) Seien A = (A, αA ) eine F-Coalgebra und U ⊆ A. Falls eine Strukturabbildung αU auf U existiert, so dass die Inklusion ⊆A U : U → A zum Homomorphismus wird, so heißt U = (U, αU ) Untercoalgebra von A. Wir schreiben U ≤ A. U ⊆A U / A αA αU FU F ⊆A U 26 / FA Diese Eigenschaft kann auch elementweise ausgedrückt werden: LEMMA 3.11. ([Gum99]) Seien A = (A, αA ) eine Coalgebra und U ⊆ A. Dann sind die folgenden Aussagen äquivalent: (i) U ist eine Untercoalgebra von A (ii) αA [U ] ⊆ (F ⊆A U )[F U ] Im Fall, dass F standard ist, gilt (F ⊆A U )[F U ] = F U , d.h. obige Bedingung bedeutet dann: αA [U ] ⊆ F U Homomorphe Bilder von Untercoalgebren sind wieder Untercoalgebren. SATZ 3.12. ([Rut96]) Seien A = (A, αA ) und B = (B, αB ) F-Coalgebren, ϕ : A → B ein Homomorphismus und U ≤ A. Dann ist ϕ[U ] ≤ B. SATZ 3.13. ([Gum99]) Seien A eine F-Coalgebra und (Ui )i∈I eine Familie von Untercoalgebren von A. Dann ist die Vereinigung der Ui wieder eine Untercoalgebra von A. Aufgrund des letzten Satzes macht die folgende Definition Sinn: DEFINITION 3.14. Seien A = (A, αA ) eine Coalgebra und P ⊆ A. Dann heißt [ [P ] := U U ≤A, U ⊆P größte Untercoalgebra in P. Die letzten beiden Aussagen führen zu folgendem Lemma: LEMMA 3.15. Seien A = (A, αA ) und B = (B, αB ) F-Coalgebren, ϕ : A → B ein Homomorphismus und P ⊆ A. Dann gilt: ϕ[P ] ⊆ [ϕP ] Beweis. Es ist [P ] ≤ A und daher wegen Satz 3.12 auch ϕ[P ] ≤ B. Außerdem gilt [P ] ⊆ P , d.h. ϕ[P ] ⊆ ϕP . Folglich ist ϕ[P ] eine Untercoalgebra von B, die in ϕP enthalten ist und liegt somit in der größten Untercoalgebra mit dieser Eigenschaft. 27 Der Schnitt von unendlich vielen Untercoalgebren ist nur dann eine Untercoalgebra, falls der Funktor beliebige Schnitte erhält. Es gilt aber: SATZ 3.16. ([Sch01]) Falls F endliche Schnitte erhält, so ist der endliche Schnitt von Untercoalgebren wieder eine Untercoalgebra. 3.4 Bisimulationen Bisimulationen sind Relationen auf Zustandsmengen, die bestimmten Eigenschaften genügen. Motivation ist der Begriff der Ununterscheidbarkeit durch Beobachtung: eine Bisimulation setzt beobachtungsäquivalente Zustände in Relation. Bisimulationen finden ihre zentrale Anwendung sowohl im Bereich der Transitionssysteme als auch in der Theorie der Coalgebra und stellen einen Zusammenhang zwischen beiden Theorien her. So gilt zum Beispiel, dass zwei Zustände in einer bildendlichen Kripke-Struktur (vergleiche Definition 5.1) genau dann bisimilar sind, wenn sie die selben CTL-Formeln (vergleiche Kapitel 4) erfüllen. DEFINITION 3.17. (Bisimulation) Seien A = (A, αA ) und B = (B, αB ) Coalgebren vom Typ F. Eine Relation R ⊆ A × B heißt (F-)Bisimulation zwischen A und B, falls eine Coalgebrastruktur αR auf R existiert, so dass die Projektionen πA : R → A und πB : R → B zu Homomorphismen werden. Ao πA R πB / B αA αB FA o αR F πA FR F πB / FB Zwei Elemente a ∈ A und b ∈ B heißen (F-)bisimilar, falls eine Bisimulation R zwischen A und B existiert, so dass (a, b) ∈ R. Wir schreiben a ∼ b. Eine Bisimulation zwischen A und A wird Bisimulation auf A genannt. Die Vereinigung von Bisimulationen ist immer eine Bisimulation. Folglich existiert zwischen A und B immer die größte Bisimulation, die wir mit ∼A,B bezeichnen: [ ∼A,B := {R | R ist Bisimulation zwischen A und B} 28 Falls A = B, so schreiben wir ∼A . Wir betrachten nun Bisimulationen zwischen Transitionssystemen. Der folgende Satz liefert die Äquivalenz zwischen der coalgebraischen Definition einer Bisimulation und der modallogischen. Dies ist ein entscheidender Aspekt im Zusammenspiel von modaler Logik und Universeller Coalgebra. SATZ 3.18. (Bisimulationen zwischen Transitionssystemen) Seien A = (A, αA ) und B = (B, αB ) Coalgebren vom Typ P. Dann sind die folgenden Aussagen äquivalent: (i) R ⊆ A × B ist eine Bisimulation zwischen A und B (ii) Für alle (a, b) ∈ R gelten die folgenden Bedingungen: 0 0 0 0 • Für jeden Nachfolger a von a existiert ein Nachfolger b von b mit 0 0 (a , b ) ∈ R. • Für jeden Nachfolger b von b existiert ein Nachfolger a von a mit 0 0 (a , b ) ∈ R. Beweis. Sei zuerst R ⊆ A × B eine Bisimulation zwischen A und B. Dann existiert eine Coalgebrastruktur αR auf R, so dass αA ◦ πA = PπA ◦ αR 0 und αB ◦ πB = PπB ◦ αR . Sei (a, b) ∈ R und a Nachfolger von a, 0 d.h. a ∈ αA (a) = (αA ◦ πA )(a, b). Dann gilt nach Voraussetzung auch 0 0 0 a ∈ (PπA ◦ αR )(a, b). Somit muss ein Tupel (a , b ) ∈ αR (a, b) ⊆ P(R) 0 0 0 existieren, d.h. (a , b ) ∈ R. Folglich ist b ∈ (PπB ◦ αR )(a, b) = αB (b) und somit ein Nachfolger von b. Die andere Bedingung ergibt sich analog. Umgekehrt seien die beiden Bedingungen (i) und (ii) erfüllt. Wir definieren die Strukturabbildung auf R für beliebige (a, b) ∈ R wie folgt: 0 0 0 0 αR (a, b) := {(a , b ) ∈ R | a ∈ αA (a), b ∈ αB (b)} Offensichtlich ist αR wohldefiniert. Es muss gezeigt werden, dass die Projektionen Homorphismen sind. Es ist (αA ◦ πA )(a, b) = αA (a). Nach (i) 0 0 0 0 existiert für jedes a ∈ αA (a) ein b ∈ αB (b) mit (a , b ) ∈ R. Folglich ist αA (a) = (PπA ◦ αR )(a, b). Bedingung (ii) liefert auf analoge Weise die Homomorphieeigenschaft von πB . Der nächste Satz stellt einen Zusammenhang zwischen Homomorphismen und Bisimulationen her. 29 SATZ 3.19. Sei f : A → B eine Abbildung zwischen zwei F-Coalgebren A = (A, αA ) und B = (B, αB ). Dann gilt: f ist ein Homomorphismus ⇔ Gr(f ) ist eine Bisimulation. Beweis. Sei zunächst f : A → B ein Homomorphismus. πA ist bijektiv und folglich invertierbar mit inverser Abbildung πA−1 . Auf Gr(f) definiert man eine Strukturabbildung durch: αGr(f ) := F πA−1 ◦ αA ◦ πA f d c b ` _ ^ \ [ Z Y W V/* ho g e Gr(f ) πB A B πA αGr(f ) αA αB F πA F πB o F A W Y Z [ F Gr(f ) d e g 3/ F B \ ^ _ ` b c Ff Wir erhalten: F πA ◦ αGr(f ) = = = = F πA ◦ F πA−1 ◦ αA ◦ πA F (πA ◦ πA−1 ) ◦ αA ◦ πA F idA ◦ αA ◦ πA αA ◦ πA F πB ◦ αGr(f ) = = = = = F πB ◦ F πA−1 ◦ αA ◦ πA F (πB ◦ πA−1 ) ◦ αA ◦ πA F f ◦ α A ◦ πA αB ◦ f ◦ π A αA ◦ πB und Umgekehrt ist f = πB ◦ πA−1 ein Homomorphismus, da nach Voraussetzung πA und πB Homomorphismen sind und wegen Satz 3.5 daher auch πA−1 . 30 Kapitel 4 Verbandstheorie In den nächsten Abschnitten werden wir modallogische Operatoren als Fixpunkte von monotonen Abbildungen τ : P(A) → P(A) beschreiben. Der Satz von Tarski liefert ein hinreichendes Kriterium für die Existenz eines solchen Fixpunktes. Da die Potenzmenge einer Menge A mit der Ordnung ⊆ einen vollständigen Verband bildet, kann dabei an vielen Stellen auf verbandstheoretische Argumente zurückgegriffen werden. Dieses Kapitel stellt einen kurzen Einblick in die wichtigsten Begriffe der Verbandstheorie dar. Das Dualitätsprinzip für Verbände wird erläutert. Wir werden den Satz von Tarski für den Spezialfall eines vollständigen Verbandes angeben und den Beweis zitieren. Dieser ist die zentrale Grundlage für die weiteren Kapitel. 4.1 Verbände und Fixpunkte Zu Beginn dieses Kapitels einige grundlegende Definitionen: DEFINITION 4.1. (Ordnung) Eine zweistellige Relation ≤ auf einer Menge L heißt Ordnung, falls für alle x, y, z ∈ L gilt : (a) x ≤ x. (Reflexivität) (b) Falls x ≤ y und y ≤ x, so folgt x = y. (Antisymmetrie) (c) Falls x ≤ y und y ≤ z, so folgt x ≤ z. (Transitivität) 31 L = (L, ≤) heißt dann geordnete Menge. BEISPIEL 4.2. (Beispiele für geordnete Mengen) • (N, ≤) ist eine geordnete Menge. • (N, |) ist eine geordnete Menge, wobei a|b :⇔ a teilt b. • (P(A), ⊆) ist für jede Menge A eine geordnete Menge. DEFINITION 4.3. (Schranke, Supremum, Infimum) Sei (L, ≤) eine geordnete Menge und K ⊆ L. Dann heißt (a) a ∈ L obere Schranke bzw. untere Schranke von K, falls b ≤ a für alle b ∈ K bzw. a ≤ b für alle b ∈ K und (b) a ∈ L Supremum oder kleinste obere Schranke von K, falls a ≤ a0 für alle oberen Schranken a0 von K. Analog wird das Infimum W oder die größte untere V Schranke von K definiert. Wir schreiben K für das Supremum und K für das Infimum einer Menge K. DEFINITION 4.4. (Verband, vollständiger Verband) • Eine geordnete falls für alle x, y ∈ L das W Menge (L, ≤) heißt Verband, V Supremum {x, y} und das Infimum {x, y} existieren. • Ein Verband heißt vollständig, falls für beliebige Teilmengen K ⊆ L Supremum und Infimum existieren. In einem vollständigen Verband existieren somit für alle Mengen Supremum und Infimum. Daher gibt es in einem W vollständigen Verband auch ein eindeutig V bestimmtes größtes Element l∈L l und ein eindeutiges kleinstes Element l∈L l. DEFINITION 4.5. (ordnungstheoretische Aussage, duale Aussage, dualer Verband) • Eine ordnungstheoretische Aussage ist eine Aussage, in der neben logischen Bestandteilen {∧, ∨, ¬, ∃, ∀} und Variablen für die Elemente der geordneten Menge ausschließlich das Zeichen ≤ der zugrunde liegenden Ordnung vorkommt. 32 • Sei (L, ≤) eine geordnete Menge. Man definiert eine Ordnung ≥ durch x ≥ y :⇔ y ≤ x für alle x, y ∈ L. Aus einer ordnungstheoretischen Aussage A erhälten man die duale Aussage D(A), indem jedes Vorkommen von ≤ durch ≥ ersetzt wird. 0 • Sei L = (L, ≤) ein Verband. Dann heißt L = (L, ≥) der zu L duale Verband. Der Übergang zum dualen Verband führt zur Vertauschung von Supremum und Infimum, die Verbandsaxiome sind invariant unter dieser Vertauschung. Gilt eine Aussage A in einem Verband (L, ≤) (d.h. sie ist für alle Variablenbelegungen erfüllt), so gilt die zu A duale Aussage D(A) im dualen Verband (L, ≥). Verbände werden häufig durch sogenannte Hasse-Diagramme dargestellt: Punkte stellen die Elemente des Verbandes dar. Gilt für zwei Elemente a und b des Verbandes b ≤ a, so wird a im Diagramm als oberer Nachbar von b eingetragen. Das folgende Beispiel stellt den Verband M3 dar, welcher in der Verbandstheorie eine wichtige Rolle spielt: a> b >> c >> >> >> >> >> >> d e W W Zum Beispiel gilt {b, c} = a sowie {b, e} = b. Stellt man ein Hasse-Diagramm auf den Kopf“, so erhält man das Diagramm ” des dualen Verbandes. BEISPIEL 4.6. Wie bereits erwähnt, bildet die Potenzmenge einer Menge A mit der Ordnung ⊆ einen vollständigen Verband. Für M ⊆ P(A) gilt: ^ \ M= U U ∈M und _ M= [ U ∈M 33 U Der duale Verband zu (P(A), ⊆) ist durch (P(A), ⊇) gegeben. U ⊆ V ist äquivalent zu U ∩V = U , U ⊇ V ist äquivalent zu U ∪V = U . Die duale Aussage im dualen Potenzmengenverband entsteht folglich durch Vertauschung von ∩ und ∪. 4.2 Der Satz von Tarski Da wir uns später ausschließlich mit Mengen und der natürlichen Ordnung ⊆ auf der Potenzmenge beschäftigen werden, werden im Folgenden Abbildungen zwischen vollständigen Verbänden betrachtet. Für eine Abbildung τ : L → L von einem vollständigen Verband L = (L, ≤) in sich selbst definiert man den Begriff des Fixpunktes: DEFINITION 4.7. (monoton, Fixpunkt) Seien L = (L, ≤) ein vollständiger Verband und τ : L → L eine Abbildung. τ heißt monoton, falls für alle a, b ∈ L gilt: a ≤ b ⇒ τ (a) ≤ τ (b) Man nennt a ∈ L einen Fixpunkt von τ , falls τ (a) = a. Für den größten unter allen Fixpunkten von τ schreiben wir νx.τ (x), für den kleinsten µx.τ (x). Der folgende Satz ist der Spezialfall des Satzes von Tarski für vollständige Verbände. SATZ 4.8. (Satz von Tarski [Thi94]) Seien L = (L, ≤) ein vollständiger Verband und τ : L → L eine monotone Abbildung. Dann besitzt τ einen kleinsten Fixpunkt ^ µx.τ (x) = {a ∈ L | τ (a) ≤ a} und einen größten Fixpunkt νx.τ (x) = _ {a ∈ L | a ≤ τ (a)}. 0 Beweis. Seien K := {a ∈ L | τ (a) ≤ a} und K V := {a ∈ W L | a ≤ τ (a)}. Da L ein vollständiger Verband ist, existieren K und K0 . Wir führen den Beweis für den kleinsten Fixpunkt. Die Existenz des größten Fixpunktes folgt analog. 34 V K ist Fixpunkt von τ . Es gilt K ≤ k für alle k ∈ K aufgrund der Eigenschaft des Infimums, folglich wegen der Monotonie von τ V V auch τ ( K) ≤ τ (k). Also ist τ ( K) ≤ k für alle k ∈ K und somit V V τ ( K) ≤ K, da das Infimum die größte untere Schranke einer Menge darstellt. V V Umgekehrt folgt aus τ ( K) ≤ K wegen der V V V V Monotonie V 2 τ ( K) ≤ τ ( K), d.h. τ ( K) ∈ K und folglich K ≤ τ ( K) wieder aufgrund der Eigenschaft des Infimums. V • K ist sogar der kleinste Fixpunkt von τ : Sei a ∈ L ein weiterer Fixpunkt, d.h. τ (a) = a. V Dann gilt insbesondere τ (a) ≤ a und somit a ∈ K. Schließlich folgt K ≤ a aufgrund der Definition des Infimums. • V Die Menge aller Fixpunkte bezüglich einer Abbildung τ innerhalb eines vollständigen Verbandes bildet selbst wieder einen Verband. Durch die Ersetzung von ≤ durch ≥ wird aus dem größten Fixpunkt im dualen Verband der kleinste Fixpunkt und umgekehrt. 35 Kapitel 5 Modallogik und CTL Im Gegensatz zur Aussagenlogik oder Prädikatenlogik wird in der Modallogik eine Aussage nicht grundsätzlich mit wahr oder falsch interpretiert. Vielmehr kann sich der Wahrheitswert ändern, er ist abhängig vom Kontext. Dazu wird die Aussagenlogik um zwei einstellige Operatoren (Modalitäten) 2 und 3 erweitert. Beispielsweise besitzt die Aussage Herr Müller ist Bundeskanzler keinen absoluten Wahrheitsgehalt, da die Richtigkeit von bestimmten Umständen abhängt, wie zum Beispiel dem aktuellen Zeitpunkt. Ebenso kann die Richtigkeit einer Aussage davon abhängen, ob sie fiktiv oder real, rechtskräftig oder rechtswidrig ist. Durch die Modallogik können zum Beispiel Sicherheits- und Lebendigkeitseigenschaften von Systemen ausgedrückt werden. Der Operator 2 beschreibt grundsätzlich eine notwendige Eigenschaft, hingegen beschreibt der Operator 3 eine mögliche Eigenschaft. In diesem Kapitel wird ausschließlich die temporale Interpretation der Modalitäten betrachtet, man spricht dann von temporaler Logik. Um ein Programm oder einen Prozess darzustellen, der durch modallogische Formeln beschrieben werden soll, verwendet man Kripke-Strukturen: Diese stellen verständliche Modelle für die Modallogik dar. Kripke-Strukturen modellieren mit Hilfe von Zuständen und Transitionen auf abstrakte Weise ein System oder einen Prozess der realen Welt. Um zu beweisen, dass ein Algorithmus korrekt ist, wird dieser zunächst in einer Kripke-Struktur spezifiziert, um dann verifiziert zu werden. 36 Im Folgenden betrachten wir Kripke-Strukturen und Bisimulationen vom modallogischen Standpunkt aus und beschreiben die für diese Arbeit relevante temporale Logik CTL (Computation Tree Logic). Für einen ausführlichen Überblick über die Modallogik sei auf [Pop94] verwiesen. 5.1 Kripke-Strukturen und Bisimulationen Der Begriff der Kripke-Struktur ist elementar für die Modellierung von Systemen wie zum Beispiel Automaten, Prozesse oder Schaltungen. KripkeStrukturen gehen auf Saul Kripke zurück, der damit ein verständliches mathematisches Modell mit einer klaren Semantik für die Modallogik entwickelte. Wir haben in Kapitel 3 gesehen, dass man Kripke-Strukturen coalgebraisch darstellen kann (vergleiche Beispiel 3.2). Es folgt die temporallogische Definition: DEFINITION 5.1. (Kripke-Struktur) Seien Prop eine Menge von atomaren Aussagen und Z eine Menge von Zuständen. Außerdem seien propZ : Z → P(Prop) und succZ : Z → P(Z) Abbildungen. Dann nennt man das Tripel K = (Z, propZ , succZ ) KripkeStruktur. K heißt bildendlich, falls |succZ (z)| < ∞ für alle z ∈ Z und total, falls succZ (z) 6= ∅ für alle z ∈ Z. propZ ordnet jedem Zustand z ∈ Z die Menge der in diesem Zustand gültigen atomaren Aussagen zu, succZ bildet einen Zustand auf die Menge seiner direkten Nachfolgezustände ab. Im nachfolgenden Abschnitt betrachten wir die temporale Logik CTL, deren Modelle durch totale Kripke-Strukturen gegeben sind. Daher folgende KONVENTION. In der gesamten Arbeit sind alle Kripke-Strukturen total, d.h. jeder Zustand besitzt mindestens einen Nachfolger. BEISPIEL 5.2. Seien Z = {1,2,3,4} eine Menge von Zuständen und Prop = {p, q, r, s, t} 37 eine Menge von atomaren Aussagen. Es seien succZ (1) succZ (2) succZ (3) succZ (4) = {3, 4} = {1} = {1, 3, 4} = {4} propZ (1) propZ (2) propZ (3) propZ (4) = {q} =∅ = {p, r, s} = {q, s} Dadurch erhält man die folgende (bildendliche und totale) Kripke-Struktur: 1O q Do 2 DD DD DD DD DD DD DD D" p,r,s o / 4q,s 3 L Die obige Definition einer Kripke-Struktur ist äquivalent zur coalgebraischen: BEMERKUNG 5.3. Sei K = (Z, propZ , succZ ) Kripke-Struktur über der Aussagenmenge Prop. Diese entspricht der Coalgebra Z = (Z, αZ ) des Funktors P(Prop) × P(Z), wobei propZ = π1 ◦ αZ und succZ = π2 ◦ αZ . Um totale Kripke-Strukturen coalgebraisch darzustellen, kann der Potenzmengenfunktor wie folgt modifiziert werden: DEFINITION 5.4. (P+ -Funktor) Der Funktor P+ ist auf beliebigen Mengen durch P+ ( ) := P( ) r {∅} definiert. Für Abbildungen f : X → Y definieren wir P+ (f ) := P(f ) Totale Kripke-Strukturen sind folglich Coalgebren des Funktors P(Prop) × P+ ( ). Den Funktor P+ werden wir in der gesamten Arbeit verwenden, um konkrete Ergebnisse über Kripke-Strukturen aus der Modallogik auf die Universelle Coalgebra zu übertragen. DEFINITION 5.5. (Pfad, Spur) Sei K = (Z, propZ , succZ ) eine Kripke-Struktur. • τ heißt Pfad in K, falls τ = (z0 , z1 , . . . ) eine unendliche Zustandsfolge in K ist (d.h. zi+1 ∈ succZ (zi ) für alle i ∈ N). Wir schreiben Zω für die Menge aller Pfade einer Kripke-Struktur. 38 • Sei τ = (z0 , z1 , . . . ) ∈ Zω . Dann nennen wir die Folge (propZ (z0 ), propZ (z1 ), . . . ) die Spur von τ . • τ (i) bezeichne den i-ten Zustand des Pfades τ und τ≤i das Tupel der ersten i Zustände von τ , d.h. τ≤i = (τ (0), . . . , τ (i − 1)). • Für einen Zustand z ∈ Z bezeichne Comp(z):={τ ∈ Zω | τ (0) = z} die Menge aller in z startenden Pfade. Der Begriff der Bisimulation wurde schon in 3.4 erläutert. Wir definieren diese nun modallogisch für Kripke-Strukturen: DEFINITION 5.6. (Bisimulation) Seien K = (Z, propZ , succZ ) und K’ = (Z’, propZ 0 , succZ 0 ) KripkeStrukturen über derselben Aussagenmenge Prop. Dann heißt eine Relation R ⊆ Z × Z’ Bisimulation zwischen K und K’, falls für alle (a, b) ∈ R die folgenden Bedingungen gelten: • ∀ p ∈ Prop . (p ∈ propZ (a) ⇔ p ∈ propZ 0 (b)) 0 0 0 0 0 0 0 0 • ∀ a ∈ succZ (a) ∃ b ∈ succZ 0 (b) . (a , b ) ∈ R. • ∀ b ∈ succZ 0 (b) ∃ a ∈ succZ (a) . (a , b ) ∈ R. Zwei Elemente z ∈ Z und z 0 ∈ Z’ heißen bisimilar, falls eine Bisimulation R ⊆ Z × Z’ existiert, so dass (z, z 0 ) ∈ R. Wir schreiben z ∼ z 0 . Mit ∼K,K’ bezeichnen wir die größte Bisimulation zwischen zwei KripkeStrukturen K und K’. Falls K = K’, so schreiben wir ∼K . Satz 3.18 liefert die Äquivalenz der coalgebraischen und der modallogischen Definition einer Bisimulation, wenn zusätzlich berücksichtigt wird, dass P(Prop) × P(Z) einer Abbildung in der ersten Komponente die Identität auf P(Prop) zuordnet. 39 5.2 Computation Tree Logic Eine Interpretation der Modallogik ist die Temporallogik. Diese findet ihre Anwendung hauptsächlich im Gebiet der Verifikation und Spezifikation von Hard- und Software, dem Model Checking. Das Model Checking stellt die automatische Überprüfung einer modallogischen Aussage in einem unendlichen System dar. Den Modalitäten wird in der temporalen Logik eine zeitliche Interpretation zugeordnet. So interpretiert man die Eigenschaft 2ϕ durch ϕ gilt immer“ ” und 3ϕ durch ϕ gilt irgendwann“. ” Mögliche temporallogische Sprachen können anhand von zwei Eigenschaften klassifiziert werden: • Ausdrucksstärke: Welche Eigenschaften können in der Logik ausgedrückt werden? • Trennschärfe: Wann lassen sich zwei Zustände eines Systems durch eine Formel in der entsprechenden Logik trennen? Entscheidend in der temporalen Logik ist die Modellierung der Zeit. Grundsätzlich setzen wir immer ein diskretes Zeitmodell voraus, d.h. zwischen zwei Zeitpunkten können nur endlich viele weitere Zeitpunkte liegen. Man unterscheidet in der temporalen Logik zudem zwischen linearer und verzweigender Zeit: • Lineare Zeit beschreibt Folgen von einzelnen Zeitpunkten. Ein Zeitpunkt ist immer vergleichbar mit seinem vorherigen und nachfolgenden. Diese Darstellungsweise wird in LTL (Lineare Temporale Logik) benutzt. Die Eigenschaft Es gilt immer P ist in einem Zustand erfüllt, falls dieser und jeder nachfolgende Zeitpunkt der Folge P erfüllen. @ABC GFED P / @ABC GFED P 40 / @ABC GFED P /... • Verzweigende Zeit stellt einen zeitlichen Ablauf baumartig dar. Eigenschaften werden zusätzlich in Abhängigkeit von Pfadquantoren beschrieben, die angeben, in welchen Pfaden des Baumes eine Eigenschaft erfüllt ist. CTL (Computation Tree Logic) basiert auf diesem Konzept. Beispielsweise ist die Eigenschaft Es gibt einen Pfad, in dem immer P gilt in CTL darstellbar: P P #L p ppp w pp p == = P K II II I$ #L # 444 #L Wir befassen uns in diesem Kapitel ausschließlich mit CTL. Diese temporale Logik setzt sich aus der Aussagenlogik, den einstelligen temporalen Operatoren X (im nächsten Zustand ), G (in jedem Folgezustand; immer ), F (es gibt einen Folgezustand; irgendwann) und dem zweistelligen temporalen Operator ϕ U ψ (ϕ gilt solange, bis ψ gilt) sowie den Pfadquantoren A (in allen Pfaden) und E (es existiert ein Pfad ) zusammen. Die Syntax von CTL wird induktiv definiert: DEFINITION 5.7. (Syntax von CTL) Seien Prop eine Menge von atomaren Aussagen und Q := A|E. Die Syntax einer CTL-Formel CP rop ist durch die folgenden Regeln gegeben: CP rop := | | | | | | | | | | | | > ⊥ P ∈ Prop. ¬CP rop CP rop ∨ CP rop CP rop ∧ CP rop CP rop ⇒ CP rop CP rop ⇔ CP rop QX CP rop QG CP rop QF CP rop Q [CP rop U CP rop] (CP rop) 41 > und ⊥ entsprechen den booleschen Konstanten true und false. Sprechweise: >=top, ⊥=bottom. Häufig verwendet man in CTL einen weiteren zweistelligen Operator R (Releases). Dieser kann aber mit Hilfe von U ausgedrückt werden und spielt in dieser Arbeit keine Rolle. Sei Q := A|E. Es gelten folgende Präzedenzen für die Bindestärke der Operatoren: ¬, QX, QG und QF binden stärker als ∧ und ∨ binden stärker als QU, ⇒ und ⇔ Grundsätzlich setzt sich eine CTL-Formel immer aus Paaren von Pfadquantor und temporalen Operator zusammen. Unter dieser Bedingung können Formeln beliebig geschachtelt werden. Beispiele für CTL-Formeln sind AG AF P oder EG E [P U Q]. DEFINITION 5.8. (Modell, Semantik von CTL) Seien K = (Z, propZ , succZ ) eine totale Kripke-Struktur; ϕ, ψ CTL-Formeln und z ∈ Z. Wir definieren die Gültigkeitsrelation K ⊆ Z ×CTL induktiv über den Aufbau von CTL-Formeln: z z z z z z z z z z z z z K 2K K K K K K K K K K K K > ⊥ P ¬ϕ ϕ∨ψ ϕ∧ψ AX ϕ EX ϕ AG ϕ EG ϕ AF ϕ EF ϕ A [ϕ U ψ] z K E [ϕ U ψ] P ∈ propZ (z). z 2K ϕ. z K ϕ ∨ z K ψ. z K ϕ ∧ z K ψ. ∀ z 0 ∈ succZ (z) . z 0 K ϕ. ∃ z 0 ∈ succZ (z) . z 0 K ϕ. ∀ τ ∈ Comp(z), ∀ k ∈ N . τ (k) K ϕ. ∃ τ ∈ Comp(z) . ∀ k ∈ N . τ (k) K ϕ. ∀ τ ∈ Comp(z) ∃ k ∈ N . τ (k) K ϕ. ∃ τ ∈ Comp(z), ∃ k ∈ N . τ (k) K ϕ. ∀ τ ∈ Comp(z) ∃ k ∈ N . τ (k) K ψ ∧ ∀ i < k . τ (i) K ϕ. ∃ τ ∈ Comp(z), ∃ k ∈ N . τ (k) K ψ ∧ ∀ i < k . τ (i) K ϕ. 42 Wir schreiben z K ϕ, falls ϕ von der Kripke-Struktur K im Zustand z erfüllt wird. Kripke-Strukturen bezeichnen wir auch als Modelle von CTL-Formeln. Es sei [ϕ]K := {z ∈ Z | z K ϕ}. Die Angabe der Kripke-Struktur lassen wir weg, falls aus dem Zusammenhang hervorgeht, um welche es sich handelt. ϕ heißt allgemeingültig oder Tautologie, falls ϕ von jedem Zustand jeder Kripke-Struktur erfüllt wird. Schreibweise: ϕ. Zwei CTL-Formeln ϕ und ψ heißen semantisch äquivalent, falls jeder Zustand jedes Modells genau dann ϕ erfüllt, wenn er ψ erfüllt, d.h. z ϕ ⇔ z ψ. Wir schreiben ϕ ≡ ψ. Zwei Zustände z, z 0 aus Z heißen CTL-äquivalent, falls sie die selben CTL-Formeln erfüllen, d.h. es gilt z ϕ ⇔ z 0 ϕ für alle CTL-Formeln ϕ. Schreibweise: z ≡CTL z 0 . Die acht CTL-Operatoren AX, EX, AG, EG, AF, EF, AU und EU lassen sich durch semantische Äquivalenzen auf die drei Operatoren EX, EG und EU reduzieren: LEMMA 5.9. (semantisch äquivalente CTL-Formeln) Seien ϕ und ψ CTL-Formeln. Dann gilt: (i) AX ϕ ≡ ¬EX ¬ϕ (ii) AF ϕ ≡ ¬EG ¬ϕ (iii) EF ϕ ≡ E [> U ϕ] (iv) AG ϕ ≡ ¬EF ¬ϕ (v) A [ϕ U ψ] ≡ ¬E [¬ψ U (¬ϕ ∧ ¬ψ)] ∧ ¬EG ¬ψ LEMMA 5.10. (Monotonie der CTL-Operatoren) Seien ϕ, ψ und θ CTL-Formeln. Weiterhin sei ϕ ⇒ ψ eine Tautologie und Q := A|E. Dann sind auch die folgenden CTL-Formeln Tautologien: • QX ϕ ⇒ QX ψ. • QG ϕ ⇒ QG ψ. • QF ϕ ⇒ QF ψ. • Q [θ U ϕ] ⇒ Q [θ U ψ]. 43 • Q [ϕ U θ] ⇒ Q [ψ U θ] Beweis. Exemplarisch wird die Monotonie von AG bewiesen, der Rest ergibt sich analog. Sei K = (Z, propZ , succZ ) eine beliebige Kripke-Struktur und z ∈ Z, so dass z AG ϕ. Sei τ ∈ Comp(z). Nach Definition gilt τ (k) ϕ für alle k ∈ N. Da ϕ ⇒ ψ Tautologie, folgt τ (k) ψ für alle k ∈ N. Da τ ∈ Comp(z) beliebig, gilt z AG ψ und daher z (AG ϕ ⇒ AG ψ). Um CTL-Operatoren als Fixpunkte charakterisieren zu können, wird im Folgenden eine Vereinfachung in der Schreibweise vorgenommen: Für eine Teilmenge X der Zustandsmenge Z einer Kripke-Struktur K = (Z, propZ , succZ ) bezeichnet AX X die Menge aller z ∈ Z, so dass succZ (z) ⊆ X und EX X die Menge aller z ∈ Z, so dass ein z 0 ∈ succZ (z) existiert mit z 0 ∈ X. Diese Konvention ist notwendig, da es zu einer beliebigen Menge X ⊆ Z nicht notwendigerweise eine CTL-Formel ϕ gibt, so dass [ϕ]K = X. Die folgenden CTL-Operatoren können auf diese Weise als kleinster bzw. größter Fixpunkt charakterisiert werden: SATZ 5.11. ([CGP99]) Seien K = (Z, propZ , succZ ) eine Kripke-Struktur, ϕ und ψ CTL-Formeln. Die CTL-Operatoren erfüllen folgende Fixpunktgleichungen: • AG ϕ = νX.ϕ ∧ AX X • EG ϕ = νX.ϕ ∧ EX X • AF ϕ = µX.ϕ ∨ AX X • EF ϕ = µX.ϕ ∨ EX X • A [ϕ U ψ] = µX.ψ ∨ (ϕ ∧ AX X) • E [ϕ U ψ] = µX.ψ ∨ (ϕ ∧ EX X) Der folgende Satz setzt die Begriffe Bisimulation und CTL-Äquivalenz in Beziehung. Zwei Zustände einer bildendlichen Kripke-Struktur sind genau dann bisimilar, wenn sie CTL-äquivalent sind. 44 SATZ 5.12. ([CGP99]) Sei K = (Z, propZ , succZ ) eine bildendliche und totale Kripke-Struktur über der Aussagenmenge Prop. Seien s, t ∈ Z. Dann gilt: s ∼K t ⇔ s ≡CTL t Beweis. Wir müssen ∼K = ≡CTL zeigen. Für die Inklusion ∼K ⊆ ≡CTL gelte zunächst s ∼K t. Wir zeigen induktiv über den Aufbau von CTL s ≡CTL t. Dazu nehmen wir ohne Einschränkung s ϕ an und zeigen t ϕ. Laut Satz 5.9 lassen sich alle CTL-Operatoren auf EX, EG und EU reduzieren. Außerdem können durch ¬ und ∧ alle aussagenlogischen Operatoren beschrieben werden. Daher genügt die Betrachtung dieser Operatoren: 1. ϕ ∈ Prop: Es gilt ϕ ∈ propZ (s). Da s und t bisimilar, folgt ϕ ∈ propZ (t), d.h. t ϕ. 2. ϕ = EX ψ: Es existiert ein s0 ∈ Z mit s0 ∈ succZ (s) und s0 ψ. Da s ∼K t, existiert t0 ∈ succZ (t) mit s0 ∼K t0 . Mit der Induktionsvoraussetzung folgt t0 ψ, d.h. t EX ψ. 3. ϕ = EG ψ: Es existiert ein Pfad τ ∈ Comp(s) mit τ (k) ψ für alle k ∈ N. Mit s ∼K t erhalten wir einen Pfad τ 0 ∈ Comp(t) mit τ (k) ∼K τ 0 (k) für alle k ∈ N. Die Induktionsvoraussetzung liefert für alle k: τ 0 (k) ψ, d.h. t EG ψ. 4. ϕ = E [ψ1 U ψ2 ]: Es existiert ein Pfad τ ∈ Comp(s) und ein n ∈ N, so dass τ (k) ψ1 für alle 0 ≤ k < n und τ (n) ψ2 . s ∼K t liefert eine Zustandsfolge (t0 , t1 , . . . , tn ) mit t = t0 und τ (k) ∼K tk . Mit Induktionsvoraussetzung folgt tk ψ1 für alle k < n und tn ψ2 . Da diese Zustandsfolge beliebig zu einem Pfad 0 τ 0 ∈ Comp(t) mit τ≤n = (t, t1 , . . . , tn ) erweitert werden kann, folgt t E [ψ1 U ψ2 ]. 45 5. ϕ = ¬ψ: Falls t ψ, so würde mit Induktionsvoraussetzung s ψ folgen, daher gilt t ¬ψ. 6. ϕ = ψ 1 ∧ ψ2 : Die Induktionsvoraussetzung liefert t ψ1 und t ψ2 . Daher gilt t ψ1 ∧ ψ2 . Insgesamt folgt somit ∼K ⊆ ≡CTL . Umgekehrt seien nun s und t CTL-äquivalent. Es genügt zu zeigen, dass ≡CTL eine Bisimulation ist, dann folgt ≡CTL ⊆ ∼K . Dazu müssen die drei Bedingungen aus Definition 5.6 nachgewiesen werden: • Sei ϕ ∈ propZ (s), d.h. s ϕ. Folglich gilt aufgrund der Voraussetzung auch t ϕ und somit ϕ ∈ propZ (t). • Sei s0 ∈ succZ (s). Gesucht wird ein t0 ∈ succZ (t), so dass s0 ≡CTL t0 . Wir betrachten die Menge succZ (t): Da K bildendlich ist, gilt |succZ (t)| < ∞. Sei daher ohne Einschränkung succZ (t) = {t1 , t2 , . . . , tn }. Annahme: Für kein ti ∈ succZ (t) gilt s0 ≡CTL ti . 0 Dann existiert für alle i mit s ψi und ti 2 ψi . Vn ti eine Formel ψV Folglich gilt s EX i=1 ψi und t 2 EX ni=1 ψi . Diese Aussage steht im Widerspruch zu s ≡CTL t. • Die dritte Bedingung ergibt sich symmetrisch zur zweiten. Um Ergebnisse aus dem Bereich CTL zusammenzustellen, auf die wir später zurückgreifen werden, benötigen wir das Lemma von König. Dieses können wir auf bildendliche Kripke-Strukturen anwenden: LEMMA 5.13. (Lemma von König [Kön86]) Ein unendlicher Baum (d.h. ein Baum mit unendlich vielen Knoten), in dem jeder Knoten nur endlich viele Kinder hat, besitzt einen unendlich langen Ast. Zu einem Zustand z ∈ Z einer Kripke-Struktur K = (Z, propZ , succZ ) konstruiert man in eindeutiger Weise den (unendlichen) Berechnungsbaum Bz wie folgt: • Die Knotenmenge ist Z. • z ist die Wurzel. 46 • Falls z 0 ∈ succZ (z), so ist z 0 Kind von z in Bz . • So entsteht zu jedem Pfad τ ∈ Comp(z) ein Ast in Bz . 5.3 Inferenzsystem für CTL Im Folgenden wird ein System von Axiomen und Regeln für CTL angegeben, aus denen alle Tautologien herleitbar sind. Man definiert: DEFINITION 5.14. (formaler Beweis, Inferenzsystem) Ein formaler Beweis von ψ ∈ CTL ist eine endliche Menge von CTLFormeln {ϕ1 , . . . , ϕn } mit ϕn = ψ, so dass für alle i ≤ n jede Formel ϕi Instanz eines Axioms ist oder aus {ϕ1 , . . . , ϕi−1 } durch Anwendung einer Inferenzregel (Ableitungsregel) folgt. Man nennt ψ herleitbar, falls ein formaler Beweis für ψ existiert. Schreibweise: ` ψ. Ein Inferenzsystem von CTL besteht aus einer Menge von Axiomen und Inferenzregeln. Es heißt vollständig ( ϕ ⇒ ` ϕ), falls für jede Tautologie ein formaler Beweis existiert und korrekt (` ϕ ⇒ ϕ), falls jede Aussage, die herleitbar ist, eine Tautologie ist. Ein solches vollständiges Inferenzsystem ist für CTL wie folgt gegeben: SATZ 5.15. (Inferenzsystem für CTL [EH85]) Seien ϕ, ψ und CTL-Formeln. Die folgenden Axiome und Inferenzregeln stellen ein vollständiges Inferenzsystem für CTL dar: Axiome: A1 A2 A3 A4 A5 A6 A7 A8 A9 alle Tautologien der Aussagenlogik AX ϕ ≡ ¬EX ¬ϕ AF ϕ ≡ A [> U ϕ] EF ϕ ≡ E [> U ϕ] EX (ϕ ∨ ψ) ≡ EX ϕ ∨ EX ψ A [ϕ U ψ] ≡ ψ ∨ (ϕ ∧ AX A [ϕ U ψ]) E [ϕ U ψ] ≡ ψ ∨ (ϕ ∧ EX E [ϕ U ψ]) AX > EX > Inferenzregeln: I1 (ϕ ⇒ ψ) ` (EX ϕ ⇒ EX ψ) I2 (θ ⇒ (¬ψ ∧ EX θ)) ` (θ ⇒ ¬A [ϕ U ψ]) I3 (θ ⇒ (¬ψ ∧ AX (θ ∨ ¬E [ϕ U ψ]))) ` (θ ⇒ ¬E [ϕ U ψ]) MP (ϕ, ϕ ⇒ ψ) ` ψ 47 Kapitel 6 Coalgebraic Modal Language (CML) Moss ([Mos99]), Hughes und Jacobs ([JH03], [Jac00]) haben in ihren Arbeiten Ansätze zur Definition einer Modallogik für Coalgebren entwickelt. Moss setzt dabei Funktoren voraus, die standard sind und schwache Pullbacks erhalten 1 . Jacobs betrachtet ausschließlich polynomiale Funktoren (vergleiche [Jac00] S. 4 ff.). In dieser Arbeit werden wir eine Modallogik für beliebige Set-Funktoren definieren, d.h. modallogische Operatoren für Coalgebren eines beliebigen Typs interpretieren. Die Semantik des Operators Nexttime“ werden wir zunächst ” mit Hilfe des Prädikatliftings analog zu [JH03] definieren, im Folgenden werden wir Nexttime“ rein kategorientheoretisch als Pullback interpretieren. ” Die weiteren Operatoren werden unter Zuhilfenahme des Satzes von Tarski als Fixpunkte interpretiert. Dabei betrachten wir zusätzlich die Eigenschaft Until“ (vergleiche Definition 5.7): Dieser Operator spielt im Bereich der ” temporalen Logik eine entscheidende Rolle und modelliert eine Eigenschaft, welche von einem zweistelligen Prädikat abhängt (im Gegensatz zu den anderen Operatoren, die sich auf einstellige Prädikate beziehen). Wir werden feststellen, dass die so interpretierten Operatoren für KripkeStrukturen immer den CTL-Operatoren mit Pfadquantor A entsprechen. Für den Pfadquantor E werden aus Nexttime“ durch Komplementbildung ” die weiteren CTL-Operatoren abgeleitet. 1 Für die Definition der schwachen Pullbackerhaltung vergleiche zum Beispiel [Sch01], S. 49 ff. 48 6.1 Syntax von CML Im Folgenden definieren wir eine modallogische Sprache für Coalgebren eines beliebigen Typs. Diese nennen wir Coalgebraic Modal Language (CML). Zunächst wird die Syntax dieser Sprache festgelegt, dies geschieht wie üblich induktiv. Im folgenden Abschnitt wird dann schrittweise die Semantik der einzelnen Operatoren definiert. Ausgangspunkt ist eine Menge von atomaren Eigenschaften: DEFINITION 6.1. (Syntax von CML) Sei Prop eine Menge von atomaren Aussagen. Die Syntax einer CMLFormel MP rop ist durch die folgenden Regeln gegeben: MP rop := | | | | | | | | | | | | | | | | > ⊥ P ∈ Prop. ¬MP rop MP rop ∨ MP rop MP rop ∧ MP rop MP rop ⇒ MP rop MP rop ⇔ MP rop MP rop E MP rop MP rop E MP rop MP rop E MP rop MP rop U MP rop MP rop UE MP rop (MP rop) Die beiden Konstanten > und ⊥ entsprechen den konstanten Wahrheitswerten true und false, die aussagenlogischen Verknüpfungen sind die üblichen. Die Bindestärke der Operatoren ist durch die folgenden Präzedenzen bestimmt: 49 ¬, , E , , E , und E binden stärker als ∧ und ∨ binden stärker als U , UE , ⇒ und ⇔ Die Semantik von CML wird später für eine F-Coalgebra A = (A, αA ) durch eine Abbildung I : CML → P(A) beschrieben, d.h. eine beliebige Formel wird durch eine Teilmenge der Trägermenge der Coalgebra interpretiert. 6.2 Coalgebraische Interpretation von CMLOperatoren Ziel dieses Abschnitts ist es, die modallogischen Operatoren des vorigen Abschnitts für eine Coalgebra A = (A, αA ) eines beliebigen Set-Funktors F zu interpretieren. Zunächst definieren wir den Operator #, welcher uns als Interpretation von dienen wird. Für Transitionssysteme beschreibt dieser Operator in der Modallogik eine Eigenschaft, die zum nächstmöglichen Zeitpunkt erfüllt ist. Daher wird # in Abhängigkeit von der Strukturabbildung der Coalgebra definiert (für Transitionssysteme beschreibt αA (a) gerade die Menge der direkten Nachfolgezustände von a). Um eine Menge P ⊆ A auf eine Teilmenge von FA übertragen zu können, führen wir das sogenannte Prädikatlifting ein, welches bereits Gegenstand von vielen Arbeiten ist. So hat zum Beispiel Jacobs in [Jac00] Prädikatlifting für einen polynomialen Funktor eingeführt. Wir konzentrieren uns aber auf den allgemeinen Fall, der zum Beispiel in [JH03] näher betrachtet wird. Wir beschäftigen uns in dieser Arbeit hauptsächlich mit Standard-Funktoren. In diesen Fällen wird die durch das Prädikatlifting erzielte Menge mit der Menge FP zusammenfallen. DEFINITION 6.2. (Prädikatlifting) Seien F ein Typ und P ⊆ A. Dann ist das Prädikatlifting Pred(F): P(A) → P(F A) definiert durch: P red(F )(P ) := (F ⊆A P )[F P ]. / / P red(F )(P ) F P RRR _ RRR RRR RRR RRR F ⊆A RR) P FA 50 Die Abbildung (F ⊆A P ) kann in eine surjektive und injektive Abbildung zerlegt werden, sie faktorisiert durch ihr Bild. Dieses entspricht der Menge Pred(F)(P). Falls F standard ist, so gilt Pred(F)(P) = ⊆FF A P [FP] = FP. Wir definieren nun die Menge #A P für eine beliebige Teilmenge der Trägermenge einer F-Coalgebra A = (A, αA ): DEFINITION 6.3. (Nexttime) Seien A = (A, αA ) eine F-Coalgebra und P ⊆ A. Dann definieren wir: #A P := {a ∈ A | αA (a) ∈ P red(F )(P )} ( Nexttime P“) ” KONVENTION. Wir lassen den Index der Coalgebra für diesen und auch für alle folgenden Operatoren weg, falls aus dem Zusammenhang klar ist, um welche Coalgebra es sich handelt. Im Fall von F = P bezeichnet αA (a) gerade die Menge der direkten Nachfolgezustände von a. Daher ist intuitiv a in # P enthalten, wenn P in jedem Nachfolgezustand“ von a gilt. ” LEMMA 6.4. (Monotonie von #) Seien A = (A, αA ) eine F-Coalgebra und P ⊆ Q ⊆ A. Dann gilt: #P ⊆ #Q. Beweis. Es gilt: a ∈ #P ⇒ αA (a) ∈ (F ⊆A P )[F P ] Q ⇒ αA (a) ∈ (F ⊆A Q ◦F ⊆P )[F P ] ⇒ αA (a) ∈ (F ⊆A Q )[F Q] ⇒ a ∈ #Q Die Definition von Nexttime“ liefert die Grundlage für die Interpretation ” sämtlicher CTL-Operatoren. Zur Beschreibung von # benötigen wir den Begriff der Invarianten, der unter anderem in [Jac00] seine Anwendung findet. 51 DEFINITION 6.5. (Invariante, Co-Invariante) Seien A = (A, αA ) eine F-Coalgebra und P ⊆ A. P heißt Invariante (CoInvariante) von A, falls für alle a ∈ A gilt: a ∈ P ⇒ a ∈ #P bzw. a ∈ #P ⇒ a ∈ P Coalgebraisch ist eine Invariante nichts anderes als eine Untercoalgebra. Die folgende Bemerkung ergibt sich unmittelbar aus den Definitionen von Untercoalgebra, Prädikatlifting, Invariante und dem Operator #: BEMERKUNG 6.6. Seien A = (A, αA ) eine F-Coalgebra und U ⊆ A. Die folgenden Aussagen sind äquivalent: • U = (U, αU ) ist Untercoalgebra von A. • U ⊆ #U . • U ist Invariante von A. Zu einer Coalgebra A = (A, αA ) betrachten wir nun den vollständigen Verband (P(A), ⊆). Die weiteren modallogischen Operatoren werden als Fixpunkte von Funktionalen innerhalb dieses Verbandes interpretiert. Damit erhält man automatisch den Zusammenhang zu CTL bei Kripke-Strukturen, denn wir werden zu jedem CTL-Operator einen CML-Operator entsprechend der Fixpunkteigenschaften aus Satz 5.11 definieren. Zunächst müssen die Voraussetzungen des Satzes von Tarski geprüft werden, um ihn auf (P(A), ⊆) anzuwenden. Aufgrund der Monotonie von Nexttime“ ” sind die folgenden Abbildungen monoton und besitzen daher laut Satz 4.8 einen größten und einen kleinsten Fixpunkt: LEMMA 6.7. Seien P, Q, U ⊆ A. Die folgenden Abbildungen τ1 , τ2 , τ3 : P(A) → P(A) besitzen einen größten und einen kleinsten Fixpunkt: τ1 (X) := P ∩ #X τ2 (X) := P ∪ #X τ3 (X) := Q ∪ (P ∩ #X) 52 Daher können wir definieren: DEFINITION 6.8. (Always, Sometimes, Until) Seien A = (A, αA ) eine F-Coalgebra und P, Q ⊆ A. Dann definieren wir: 2A P := νX.P ∩ #A X ( Always P“) ” 3A P := µX.P ∪ #A X ( Sometimes P “) ” P UA Q := µX.Q ∪ (P ∩ #A X) ( P Until Q“) ” Entscheidend bei der Fixpunktinterpretation der modallogischen Operatoren ist die duale Definition von 2P und 3P . Die folgende Aussage ergibt sich unmittelbar aus den verbandstheoretischen Definitionen und Überlegungen des letzten Kapitels, soll aber an dieser Stelle nochmals exakt formuliert werden. Von dieser Eigenschaft werden wir oft Gebrauch machen. BEMERKUNG 6.9. (Dualität von 2P und 3P ) In Definition 4.5 haben wir den Begriff des dualen Verbandes und den der dualen Aussage definiert. Im Fall des vollständigen Verbandes (P(A), ⊆) ist der duale Verband durch (P(A), ⊇) gegeben (vergleiche Beispiel 4.6). Eine Aussage in (P(A), ⊆) besteht entsprechend aus den logischen Bestandteilen {∧, ∨, ¬, ∃, ∀} und Variablen für Elemente U ∈ P(A) sowie den Verknüpfungen ∩ und ∪. Für beliebige Teilmengen P ⊆ A ist #P ∈ P(A). Wir können folglich die Mengen #P mit P ⊆ A ebenso als Variablen für Elemente U ∈ P(A) ansehen. Der Übergang zum dualen Verband führt zur Vertauschung von ∩ und ∪ sowie Supremum und Infimum. Die Verbandsaxiome bleiben erhalten. Die Menge [ [ 2P = {U ∈ P(A) | U ⊆ P ∩ #U } = {U ∈ P(A) | U ∩ P ∩ #U = U } im Verband (P(A), ⊆) entspricht folglich der Menge \ \ 3P = {U ∈ P(A) | U ⊇ P ∪ #U } = {U ∈ P(A) | U ∪ P ∪ #U = U } im dualen Verband (P(A), ⊇), d.h. Übergang zur dualen Aussage führt zur Vertauschung von 2 und 3. Eine Aussage A gilt genau dann in (P(A), ⊆), falls ihre duale Aussage D(A) in (P(A), ⊇) gilt. Haben wir eine verbandstheoretische Aussage A über dem 53 Alphabet {∧, ∨, ¬, ∃, ∀} und Elementen U ∈ P(A) in (P(A), ⊆) bewiesen, so können wir die duale Aussage D(A) bilden und erhalten im dualen Verband ebenfalls eine gültige Aussage, in der 2P und 3P vertauscht wurden. Aufgrund der Definition der Operatoren ergeben sich die folgenden FixpunktGleichungen: LEMMA 6.10. (Fixpunktgleichungen) Seien A = (A, αA ) F-Coalgebra und P, Q ⊆ A. Dann gilt • 2P = P ∩ #2P • 3P = P ∪ #3P • P U Q = Q ∪ (P ∩ #(P U Q)) Um später sämtliche CML-Operatoren interpretieren zu können, werden weitere Operatoren benötigt. Wir setzen zunächst: #E P := (#P C )C Der Operator #E ist aufgrund der Monotonie von # selbst monoton. Wir können daher in den Fixpunktdefinitionen von 2, 3 und U eine Ersetzung von # durch #E vornehmen und erhalten wieder Abbildungen, die einen größten und einen kleinsten Fixpunkt besitzen: DEFINITION 6.11. Seien A = (A, αA ) eine F-Coalgebra und P, Q ⊆ A. Dann definieren wir: 2E P := νX.P ∩ #E X 3E P := µX.P ∪ #E X P UE Q := µX.Q ∪ (P ∩ #E X) 54 Aufgrund des folgenden Lemmas und der Definition von #E können wir uns in den nachfolgenden Kapiteln auf die Untersuchung von Ergebnissen hinsichtlich #, 2, 3, U und UE beschränken. LEMMA 6.12. Seien A = (A, αA ) F-Coalgebra und P ⊆ A. Dann gilt: • 2E P = (3P C )C • 3E P = (2P C )C Beweis. Die Behauptungen folgen sofort aus den Definitionen. Exemplarisch rechnen wir die Eigenschaft für 2E nach: = = = = 2E P [ {U ∈ P(A) | U ⊆ P ∩ (#U C )C } (Fixpunktdefinition) [ {U ∈ P(A) | P C ∪ #U C ⊆ U C } [ {V C ∈ P(A) | P C ∪ #V ⊆ V } \ ( {V ∈ P(A) | P C ∪ #V ⊆ V })C = (3P C )C 6.3 Semantik von CML Nach der coalgebraischen Interpretation der modallogischen Operatoren wird nun die Semantik von CML festgelegt. DEFINITION 6.13. (Belegung, F-Modell) Seien Prop eine Menge von aussagenlogischen Variablen und A = (A, αA ) eine F-Coalgebra. Eine Belegung V : Prop → P(A). ordnet jeder aussagenlogischen Variablen eine Teilmenge der Trägermenge der Coalgebra zu. Ein F-Modell M = (A, V ) ist eine F-Coalgebra A = (A, αA ) zusammen mit einer Belegung V . 55 Die Belegung stellt folglich die Interpretation der atomaren Aussagen dar. Um eine beliebige CML-Formel zu interpretieren, wird diese auf eine Teilmenge der Trägermenge der Coalgebra abgebildet. Dazu wird V induktiv durch eine Interpretation IA fortgesetzt: IA : CML → P(A). Wir interpretieren die booleschen Operatoren ¬, ∧ und ∨ mengentheoretisch auf die naheliegende Art und Weise. Die weiteren modallogischen Eigenschaften werden entsprechend den Definitionen des letzten Abschnitts interpretiert: DEFINITION 6.14. (Semantik von CML) Seien A = (A, αA ) eine F-Coalgebra, ϕ und ψ CML-Formeln. Sei IA : CML → P(A). Dann definieren wir die Semantik von CML wie folgt: IA (P ) IA (¬ϕ) IA (ϕ ∨ ψ) IA (ϕ ∧ ψ) IA (ϕ ⇒ ψ) IA (ϕ ⇔ ψ) IA (>) IA (⊥) IA ( ϕ) IA ( E ϕ) IA (ϕ) IA (E ϕ) IA (ϕ) IA (E ϕ) IA (ϕ U ψ) IA (ϕ UE ψ) := := := := := := := := := := := := := := := := V (P ) für alle P ∈ Prop IA (ϕ)C IA (ϕ) ∪ IA (ψ) IA (ϕ) ∩ IA (ψ) IA (ϕ)C ∪ IA (ψ)) IA (ϕ ⇒ ψ) ∩ IA (ψ ⇒ ϕ) A ∅ #IA (ϕ) #E IA (ϕ) 2IA (ϕ) 2E IA (ϕ) 3IA (ϕ) 3E IA (ϕ) IA (ϕ) U IA (ψ) IA (ϕ) UE IA (ψ) Eine Formel ϕ ∈ CML gilt an Position a in einem F-Modell M = (A, V ), falls a ∈ IA (ϕ), geschrieben a M ϕ. ϕ heißt F-Tautologie, falls ϕ an jeder Position jedes F-Modells M gilt und Tautologie, falls ϕ F-Tautologie für jeden Set-Endofunktor F ist. Wir schreiben F ϕ bzw. ϕ. ϕ und ψ heißen F-äquivalent, falls (a M ϕ) ⇔ (a M ψ) für jedes FModell M = (A, V ) und alle a ∈ A. 56 ϕ und ψ heißen semantisch äquivalent (in CML), falls diese Eigenschaft für alle Set-Endofunktoren gilt. Schreibweise: ϕ ≡F ψ bzw. ϕ ≡ ψ. Zwei Elemente a, a0 ∈ A einer F-Coalgebra sind CML-äquivalent, geschrieben a ≡CML a0 , falls sie dieselben modallogischen Formeln erfüllen, d.h. es gilt a M ϕ ⇔ a0 M ϕ für alle ϕ ∈ CML und alle F-Modelle M . Damit wurde die Semantik von CML vollständig definiert. Wir lassen den Index M weg, falls aus dem Zusammenhang hervorgeht, um welches Modell es sich handelt. Für den Rest der Arbeit gelten folgende Konventionen: KONVENTION. • P, Q, R beschreiben immer Teilmengen der Trägermenge einer F-Coalgebra; ϕ, ψ, θ bezeichnen CML-Formeln. • Folglich sind #P und 2Q typische Elemente aus P(A) und CML-Formeln. ϕ, ψ • Es wird auf die Schreibweise ϕ verzichtet, mit ϕ ist, soweit nicht anders erwähnt, immer die Tautologie ϕ gemeint. 57 Kapitel 7 CML und CTL In diesem Kapitel stellen wir den Zusammenhang zwischen den beiden Sprachen CML und CTL her. Dazu betrachten wir ausschließlich KripkeStrukturen, da diese die Modelle von CTL-Formeln bilden. Es wird gezeigt, dass die beiden Sprachen in diesem Fall äquivalent sind. 7.1 Darstellung von CML durch CTL Um die Äquivalenz beider Sprachen zu beweisen, müssen wir zu einer beliebigen CML-Formel eine CTL-Formel konstruieren, so dass die Interpretationen beider Formeln für beliebige Kripke-Strukturen identisch sind. Dies geschieht wie folgt: DEFINITION 7.1. Seien ϕ, ψ und θ CML-Formeln über der Aussagenmenge Prop. Die CTL-Formel ϕCTL über derselben Aussagenmenge wird induktiv definiert: CML-Formel ϕ ∈ Prop ϕ= ψ ϕ = Eψ ϕ = ψ ϕ = E ψ ϕ = ψ ϕ = E ψ CTL-Formel ϕCTL := ϕ ϕCTL := AX ψCTL ϕCTL := EX ψCTL ϕCTL := AG ψCTL ϕCTL := EG ψCTL ϕCTL := AF ψCTL ϕCTL := EF ψCTL 58 ϕ=ψU θ ϕ = ψ UE θ ϕ = ¬ψ ϕ=ψ∨θ ϕ=ψ∧θ ϕ=ψ⇒θ ϕ=ψ⇔θ ϕCTL ϕCTL ϕCTL ϕCTL ϕCTL ϕCTL ϕCTL := A [ψCTL U θCTL ] := E [ψCTL U θCTL ] := ¬ψCTL := ψCTL ∨ θCTL := ψCTL ∧ θCTL := ψCTL ⇒ θCTL := ψCTL ⇔ θCTL Auf diese Weise wurde zu jeder CML-Formel ϕ eine CTL-Formel ϕCTL konstruiert. Offensichtlich ist dieser Prozess auch umkehrbar, d.h. zu jeder CTLFormel kann eine entsprechende CML-Formel definiert werden. Für die Interpretation beider Formeln benötigen wir zu einem Modell einer CTL-Formel ein Modell einer CML-Formel. Zu einer Coalgebra des Funktors P+ und einer Belegung V einer atomaren Aussagenmenge Prop bildet man auf naheliegende Weise die passende“ Kripke-Struktur: ” DEFINITION 7.2. Seien A = (A, αA ) eine P+ -Coalgebra und M = (A, V ) ein P+ -Modell zur Aussagenmenge Prop. Die Kripke-Struktur K = (A, propA , succA ) mit (p ∈ propA (a) :⇔ a ∈ V (p)) für beliebige p ∈ Prop und succA := αA bezeichnen wir als Kripke-Struktur für M. Damit kann nun folgender Satz bewiesen werden: SATZ 7.3. (CTL und CML-Äquivalenz bei Kripke-Strukturen) Sei M = (A, V ) ein P+ -Modell. Sei weiter K = (A, propA , succA ) die Kripke-Struktur für M. Dann gilt für beliebige ϕ ∈ CML: IA (ϕ) = [ϕCTL ]K Beweis. Der Beweis ist sehr technisch, da man häufig zwischen den verschiedenen Modellen und Interpretationen wechseln muss. Trotzdem wird dieser wichtige Zusammenhang an dieser Stelle sorgfältig dargestellt. Wir führen den Beweis induktiv über den Aufbau von ϕ ∈ CML: (1) Falls ϕ ∈ Prop, so gilt IA (ϕ) = = = = {a ∈ A | a ∈ V (ϕ)} {a ∈ A | ϕ ∈ propA (a)} {a ∈ A | a K ϕ} [ϕCTL ]K 59 (2) Sei ϕ = ⇔ ⇔ ⇔ ⇔ ⇔ ⇔ ⇔ ⇔ (3) Falls ϕ = ψ, dann gilt a ∈ IA (ϕ) a ∈ #IA (ψ) αA (a) ⊆ IA (ψ) ∀a0 ∈ αA (a) . a0 ∈ IA (ψ) ∀a0 ∈ succA (a) . a0 ∈ IA (ψ) ∀a0 ∈ succA (a) . a0 ∈ [ψCTL ]K ∀a0 ∈ succA (a) . a0 K ψCTL a K AX ψCTL a ∈ [ϕCTL ]K E (Induktionsannahme) ψ, so folgt a ∈ #E IA (ψ) ⇔ a K EX ψCTL aufgrund der Definition von #E unter Verwendung von (2). (4) Die weiteren Gleichungen erhalten wir unmittelbar mit Satz 5.11 und (2) bzw. (3). So gilt zum Beispiel für ϕ = ψ (wir verwenden erneut die vereinfachende Schreibweise aus Satz 5.11): = = = = = = IA (ϕ) 2IA (ψ) νX.IA (ψ) ∩ #X νX.[ψCTL ]K ∩ #X νX.[ψCTL ]K ∩ AX X [AG ψCTL ]K [ϕCTL ]K (Induktionsannahme) (2) (5.11,(i)) Folglich lässt sich zu jeder CML-Formel eine CTL-Formel konstruieren, so dass die Interpretationen der beiden Formeln in dem jeweiligen Modell gleich sind. Wir erhalten folgendes Lemma: 60 LEMMA 7.4. Sei M = (A, V ) ein P+ -Modell. Seien weiter ϕ, ψ ∈ CML und a, b ∈ A beliebig. Dann gilt: (i) ϕ ≡P+ ψ ⇔ ϕCTL ≡ ψCTL (ii) a ≡CML b ⇔ a ≡CTL b Beweis. • Teil (i) ergibt sich direkt aus dem obigen Satz. • Sei a ≡CML b, d.h. es gilt (a ϕ ⇔ b ϕ) für alle ϕ ∈ CML. Folglich ist (a ∈ IA (ϕ) ⇔ b ∈ IA (ϕ)) und wiederum nach Satz 7.3 (a ∈ [ϕCTL ]K ⇔ b ∈ [ϕCTL ]K ). Da nach Konstruktion aus 7.1 jede CTL-Formel aus einer CML-Formel entsteht, folgt a ≡CTL b. Die andere Implikation folgt analog, wenn man den Konstruktionsprozess aus Definition 7.1 umkehrt und den Beweis von Satz 7.3 entsprechend modifiziert. 7.2 Bisimulationen Satz 5.12 sagt aus, dass zwei Zustände einer totalen und bildendlichen Kripke-Struktur genau dann CTL-äquivalent sind, wenn sie P-bisimilar sind. Dieser Satz lässt sich mit den Ergebnissen des letzten Abschnitts auf CML übertragen: SATZ 7.5. Sei A = (A, αA ) eine P+ Coalgebra, so dass |αA (a)| < ∞ für alle a ∈ A. Dann gilt für alle a, b ∈ A: a ∼A b ⇔ a ≡CML b Beweis. Offensichtlich gilt a ∼A b gdw. a ∼K b in der Kripke-Struktur K für M. Diese ist aufgrund der Bildendlichkeit von A ebenfalls bildendlich. Nach Satz 5.12 gilt a ∼K b gdw. a ≡CTL b, mit Lemma 7.4 folgt die Behauptung. 61 Kapitel 8 Beschreibung der Semantik von CML Nachdem wir in den vorigen Kapiteln die Syntax und die Semantik von CML definiert haben und den Bezug zu CTL hergestellt haben, ist es in diesem Kapitel unser Ziel, die einzelnen Operatoren dieser Sprache näher zu charakterisieren. Das Hauptergebnis dieses Kapitels findet sich im ersten Abschnitt: Die Menge #P kann für beliebige P ⊆ A als Grundmenge eines Pullbacks beschrieben werden. In den nachfolgenden Abschnitten werden wir die weiteren Operatoren untersuchen und beispielsweise den Zusammenhang zwischen dem Begriff Untercoalgebra und dem Operator 2 herstellen. Abschließend finden sich in diesem Kapitel noch einige Beispiele, in denen für bekannte Anwendungen der Universellen Coalgebra, wie zum Beispiel den deterministischen Automaten, die Operatoren #, 2, 3 und U exakt charakterisiert werden. Grundsätzlich werden wir uns in diesem und im nächsten Kapitel mit der Beschreibung der Semantik der modallogischen Operatoren beschäftigen. Erst in Kapitel 10 werden wir wieder Aussagen über Tautologien oder semantische Äquivalenzen betrachten und daher die syntaktische Komponente von CML behandeln. 62 8.1 Charakterisierung von # als Pullback In Kapitel 6 haben wir den Operator # elementweise über das Prädikatlifting definiert. Hilfreich wäre eine rein kategorientheoretische Beschreibung. Dies ermöglicht uns der folgende Satz; zu einer F-Coalgebra A = (A, αA ) ist die Grundmenge des Pullbacks der beiden Abbildungen αA und (F ⊆A P ) für beliebige P ⊆ A durch #P gegeben: SATZ 8.1. (Charakterisierung von # als Pullback [Gum]) Sei A = (A, αA ) eine F-Coalgebra. Für eine beliebige Menge P ⊆ A ist #P die Grundmenge des Pullbacks des folgenden Diagramms in Set: A αA FP F ⊆A P / FA Beweis. Wir benötigen zunächst zwei Abbildungen f : #P → A und g : #P → FP. Wir setzen f := ⊆A ◦P . Aufgrund des zweiten Diagrammlemmas (Lemma 2.15) existiert genau dann eine Abbildung h : #P → FP mit A A αA ◦ ⊆ A ◦P = (F ⊆P ) ◦ h , falls αA [#P ] ⊆ (F ⊆P )[F P ]. Diese Bedingung A entspricht genau der Definition von #. Da ⊆A P injektiv ist, ist auch (F ⊆P ) injektiv und folglich h eindeutig bestimmt. Sei nun Q eine Menge mit Abbildungen q1 : Q → A und q2 : Q → FP, so dass αA ◦ q1 = (F ⊆A P ) ◦ q2 . QA A q2 A Aϕ A q1 A A #P ⊆A ◦P %/ A αA h FP F ⊆A P / FA ◦q2 )(q), d.h. Sei q ∈ Q. Dann gilt (αA ◦ q1 )(q) = (F ⊆A P A (αA ◦ q1 )(q) ∈ (F ⊆P )[F P ]. Folglich ist q1 (q) ∈ #P nach Definition von #, d.h. q1 [Q] ⊆ #P . Daher faktorisiert die Abbildung q1 durch #P , 63 d.h. es existiert eine Abbildung ϕ : Q → #P mit q1 =⊆A ◦P ◦ϕ. Außerdem erhalten wir: A (F ⊆A P ) ◦ h ◦ ϕ = αA ◦ ⊆◦P ◦ϕ = αA ◦ q1 = (F ⊆A P ) ◦ q2 Wegen der Injektivität können wir (F ⊆A P ) links kürzen und schließen A q2 = h ◦ ϕ. ϕ ist eindeutig bestimmt, da aus ⊆A ◦P ◦ϕ =⊆◦P ◦ψ aufgrund der Injektivität von ⊆A ◦P erneut durch Kürzen ϕ = ψ folgt. Daher ist A (#P , ⊆◦P , h) der Pullback von αA und (F ⊆A P ). BEMERKUNG 8.2. ([Gum]) Als Pullback ist #P nur bis auf Isomorphie eindeutig bestimmt. Allerdings ist #P der einzige Pullback der Form (R, ⊆A R , h), der zudem Teilmenge von A ist. 8.2 Beschreibung der weiteren modallogischen Operatoren Wir stellen fest, dass alle modallogischen Operatoren monoton sind: LEMMA 8.3. (Monotonie der Operatoren) Sei A = (A, αA ) eine F-Coalgebra und seien P1 ⊆ P2 ⊆ A sowie Q1 ⊆ Q2 ⊆ A. Dann gilt: (i) #P1 ⊆ #P2 (ii) 2P1 ⊆ 2P2 (iii) 3P1 ⊆ 3P2 (iv) P1 U Q1 ⊆ (P2 U Q1 ∩ P1 U Q2 ) Beweis. Zu (i) vergleiche Lemma 6.4. Die anderen Implikationen folgen direkt aus (i) und den Fixpunktdefinitionen der weiteren Mengen. 64 Bei der Charakterisierung von 2 können wir einen Bezug zum Begriff der Untercoalgebra herstellen: LEMMA 8.4. (Charakterisierung von Always) 2P ist die größte Invariante (Untercoalgebra), die in P enthalten ist. Beweis. Aus der Fixpunkteigenschaft erhalten wir sofort 2P = P ∩ #2P ⊆ #2P . Folglich ist 2P eine Invariante, die in P enthalten ist. Für eine beliebige Invariante I ⊆ P gilt I ⊆ #I, folglich I ⊆ νX.P ∩ #X = 2P . 3P erfüllt die zu 2P dualen Eigenschaften: LEMMA 8.5. (Charakterisierung von Sometimes) 3P ist die kleinste Co-Invariante, die P enthält. Beweis. Die Behauptung folgt unmittelbar aus der Definition von 3. LEMMA 8.6. (Charakterisierung von Until) P U Q ist die kleinste aller Mengen I mit Q ∪ (P ∩ #I) ⊆ I. Beweis. Auch diese Eigenschaft erhalten wir direkt aus der Fixpunktdefinition. 8.3 CML-Operatoren unter Homomorphismen Die strukturerhaltenden Abbildungen in der Universellen Coalgebra sind die Coalgebrahomomorphismen. Es stellt sich die Frage, welche modallogischen Eigenschaften unter Homomorphismen erhalten bleiben. Die nähere Betrachtung dieser Problemstellung ist auch für das Gebiet der Bisimulationen hilfreich: Bei der Erhaltung von modallogischen Formeln unter Bisimulationen können wir auf Satz 3.19 zurückgreifen: Graphen von Homomorphismen sind Bisimulationen und jede Bisimulation ensteht auf diese Weise. Der folgende Satz charakterisiert zunächst die Bedingung, dass ein Funktor Urbilder erhält: 65 SATZ 8.7. ([GS03]) Sei F Set-Endofunktor. Genau dann erhält F Urbilder (vergleiche Definition 2.3), falls für beliebige F-Coalgebren A, B und beliebige Homomorphismen ϕ : A → B gilt: Ist V ≤ B, so folgt ϕ−1 [V ] ≤ A. Wir haben nun die Mittel, um den folgenden Satz zu beweisen: SATZ 8.8. (Erhaltung von Nexttime unter Urbildern [Gum]) Seien A = (A, αA ) und B = (B, αB ) F-Coalgebren und ϕ : A → B ein Homomorphismus. Genau dann erhält F Urbilder, falls für alle Q ⊆ B gilt: #A ϕ−1 [Q] = ϕ−1 [#B Q] Beweis. ⇒: F erhalte Urbilder. Die Inklusion #A ϕ−1 [Q] ⊆ ϕ−1 [#B Q] ist immer erfüllt. Dazu betrachten wir folgendes Diagramm (zur einfacheren Darstellung lassen wir im Folgenden den Index der Coalgebra bei # weg - aus dem Zusammenhang geht eindeutig hervor, ob ob es sich um eine Teilmenge von A oder B handelt): ⊆A −1 ◦ϕ Q A ψ −1 #ϕ Q _ _ _ _ _ _ _ _ _ _ _/ M m #Q Lul y uu uu uu u zuu / ϕ FL l ϕ Q FA B αB −1 αA yy yy y y |y ⊆B ◦Q p F ϕ| u uu uu A u u zuu F ⊆ϕ−1 Q / Fϕ q / mF Q yM yy y yy B y | y F ⊆Q FB Bei #Q und #ϕ−1 Q handelt es sich um Pullbacks, daher kommutieren im Quader die linke und die rechte Seitenfläche. Die vordere Seite kommutiert, B da ϕ Homomorphismus ist. Der Boden kommutiert, da ϕ◦ ⊆A ϕ−1 Q =⊆Q ◦ϕ| gilt und der Funktor diese Eigenschaft bewahrt. #ϕ−1 [Q] ist durch ϕ◦ ⊆A ◦ϕ−1 Q und F ϕ| ◦ p ein Konkurrent zu #Q: A (F ⊆B Q ) ◦ F ϕ| ◦ p = F ϕ ◦ (F ⊆ϕ−1 Q ) ◦ p = F ϕ ◦ α A ◦ ⊆A ◦ϕ−1 Q = αB ◦ ϕ◦ ⊆A ◦ϕ−1 Q 66 Folglich existiert eine (durch die Injektivität von ⊆B ◦Q eindeutig bestimmte) Abbildung ψ, die insbesondere die Deckelfläche kommutativ macht, d.h. es gilt ϕ[#ϕ−1 Q] = ψ[#ϕ−1 Q] ⊆ #Q. Somit gilt #ϕ−1 [Q] ⊆ ϕ−1 [#Q]. Für die Inklusion ϕ−1 [#B Q] ⊆ #A ϕ−1 [Q] benötigen wir die Voraussetzung, dass F Urbilder erhält. Das folgende Diagramm ist ein Pullbackdiagramm: x ∈ F _ ϕ−1 Q F ⊆A−1 ϕ F ϕ| / F Q _ 3 w F ⊆B Q Q αA (u) ∈ F A Fϕ / FB 3v Sei u ∈ ϕ−1 #Q, d.h. ϕ(u) ∈ #Q. Nach Definition von # gilt dann (αB ◦ ϕ)(u) ∈ (F ⊆B ∈ F Q mit Q )[F Q]. Daher existiert ein w (F ⊆B )(w) = (α ◦ ϕ)(u) =: v. Da ϕ Homomorphismus, ist auch B Q (F ϕ ◦ αA )(u) = v. Nach Satz 2.26 existiert folglich ein Element x ∈ F ϕ−1 Q mit (F ⊆A ϕ−1 Q )(x) = αA (u) und F ϕ| (x) = w, insbesonA dere also αA (u) ∈ (F ⊆ϕ−1 Q )[F ϕ−1 Q], d.h. u ∈ #ϕ−1 [Q]. ⇐: Es gelte #A ϕ−1 Q = ϕ−1 #B Q für beliebige Q ⊆ B. Nach Satz 8.7 genügt es zu zeigen, dass aus Q ≤ B schon ϕ−1 [Q] ≤ A folgt. Nach Bemerkung 6.6 ist Q ≤ B äquivalent zu Q ⊆ #B Q. Folglich gilt ϕ−1 [Q] ⊆ ϕ−1 [#B Q] = #A ϕ−1 Q. Daher ist ϕ−1 [Q] ≤ A. Für die Operatoren Nexttime“ und Always“ liefert die oben aufgeworfene ” ” Frage nach der Erhaltung modallogischer Eigenschaften unter Homomorphismen eine positive Antwort: SATZ 8.9. (Erhaltung von Nexttime unter Homomorphismen) Seien A = (A, αA ) und B = (B, αB ) F-Coalgebren und ϕ : A → B ein Homomorphismus. Dann gilt für alle P ⊆ A: ϕ[#A P ] ⊆ #B ϕ[P ] 67 Beweis. Wir betrachten folgendes Diagramm: A m M#P yy ⊆A ◦P yy y p yy |yy _ _ _ _ _ _ψ _ _ _ _ _/ #ϕP m wM w B w ⊆◦ϕP w w ww {ww /B q ϕ αB αA F Mm P F ϕ| y yy y yy A |yy F ⊆P FA / Fϕ /F mM ϕP w ww ww w B w { w F ⊆ϕP w FB Der Beweis verläuft entsprechend dem des ersten Teils von Satz 8.8: #P wird durch die Abbildungen ϕ◦ ⊆A ◦P und F ϕ| ◦ p zum Konkurrenten von #ϕ[P ], daher erhält man eine eindeutige Abbildung ψ, die die Deckelfläche kommutativ macht. Insbesondere folgt dann ϕ[#P ] ⊆ #ϕ[P ]. SATZ 8.10. (Erhaltung von Always unter Homomorphismen) Seien A = (A, αA ) und B = (B, αB ) F-Coalgebren und ϕ : A → B ein Homomorphismus. Dann gilt für beliebige P ⊆ A: ϕ[2A P ] ⊆ 2B ϕ[P ]. Beweis. Da 2ϕ[P ] die größte Untercoalgebra in ϕ[P ] ist, folgt die Behauptung direkt aus Lemma 3.15. Man erhält leider nicht ohne Weiteres für die anderen Operatoren ein ähnliches Ergebnis, weil im Beweis von Satz 8.10 die UntercoalgebraEigenschaft von 2 benötigt wird. 8.4 Beispiele Mit der Beschreibung der modallogischen Operatoren für Kripke-Strukturen haben wir uns im letzten Abschnitt bereits ausführlich beschäftigt. Wir betrachten nun einige bekannte Beispielfunktoren. An einigen Stellen sind die Charakterisierungen der CML-Operatoren sehr ähnlich, daher werden wir nicht jeden Beweis im Detail führen, sondern an den entsprechenden Stellen auf die analogen Beweise verweisen. 68 8.4.1 Der konstante Funktor Um in späteren Beispielen bei Produktfunktoren den konstanten Anteil nicht näher untersuchen zu müssen, charakterisieren wir an dieser Stelle die modallogischen Operatoren für den konstanten Funktor C: LEMMA 8.11. Seien A = (A, αA ) eine C-Coalgebra und P, Q ⊆ A. Dann gilt: Interpretation #P 2P 3P PU Q Charakterisierung A P A P ∪Q Beweis. Es gilt (a ∈ #P ) ⇔ (αA (a) ∈ F P ) ⇔ (αA (a) ∈ C) ⇔ (a ∈ A) Mit der Fixpunktdefinition von 2P folgt a ∈ 2P ⇔ (a ∈ P und a ∈ #2P ) ⇔ a ∈ P . Die anderen Eigenschaften ergeben sich analog. 8.4.2 Automaten Deterministische endliche Automaten über dem Eingabealphabet Σ können durch den Funktor F := ( )Σ × B beschrieben werden, wobei F A := AΣ × B = {σ | σ : Σ → A} × {>, ⊥} ist. Die aus der Theoretischen Informatik bekannte Abbildung δA : A × Σ → A korrespondiert in eindeutiger Weise mit der Abbildung π1 ◦ αA : A → AΣ : δA (a, s) = (π1 ◦ αA )(a)(s) Daher unterscheiden wir im Folgenden nicht zwischen diesen beiden Abbildungen. Es sei δ ∗ : A × Σ∗A → A die bekannte Erweiterung von δ (vergleiche zum Beispiel [Sch92], S. 29). Da die Eigenschaften Startzustand“ und Endzustand“ bei der Charakteri” ” sierung der modallogischen Eigenschaften keine Rolle spielen, setzen wir zur Vereinfachung Automaten voraus, in denen jeder Zustand Start- und Endzustand zugleich ist. Statt wie in den anderen Beispielen eine Beschreibung der CML-Operatoren 69 über den Berechnungsbaum eines deterministischen Automaten vorzunehmen, wird hier bewusst versucht, die Beschreibung in der Sprache der Automatentheorie auszudrücken. Zu w ∈ Σ∗ bezeichne Swz ⊆ A die Menge aller Zustände, die der Automat beim Erkennen von w durchläuft, wenn er in z ∈ A startet, d.h. Swz := {x ∈ A | ∃v, w 0 ∈ Σ∗ . w = vw 0 und x = δ ∗ (z, v)} Außerdem definieren wir: Twz := {x ∈ Swz | ∃v ∈ Σ∗ . |v| ≥ |Swz | und Svx ⊆ Swz } Dabei handelt es sich anschaulich um die Zustände aus Swz , die sich beim Erkennen von w innerhalb oder vor einer Schleife befinden. BEISPIEL 8.12. Seien Σ := {b, c} und A := {z1 , z2 , z3 , z4 }. Sei weiter w = bc. Dann gilt im folgenden Automaten Swz1 = {z1 , z2 , z3 } und Twz1 = {z1 , z2 }: s @ABC GFED z J b 1 c b 3 @ABC GFED z 2 c / @ABC GFED z 3 b,c / @ABC GFED z T 4 b,c Für die folgenden Charakterisierung von 3P benötigen wir zunächst ein Lemma: LEMMA 8.13. Seien w ∈ Σ∗ und z ∈ A. Dann gilt: ∀x ∈ Twz ∃ s ∈ Σ . δ(x, s) ∈ Twz Beweis. Sei ohne Einschränkung |Swz | = n und x ∈ Twz beliebig. Dann existiert v = v1 . . . vk mit k ≥ n und Svx ⊆ Swz . Behauptung: δ(x, v1 ) ∈ Twz . Da |v| ≥ n, existieren vi und vj mit i 6= j; i, j ≤ k und δ ∗ (x, v1 . . . vi ) = δ ∗ (x, v1 . . . vj ). Ohne Einschränkung sei i < j. Sei v 0 := v2 . . . vj vi . . . vk , d.h. v 0 enthält zweimal das Wort vi . . . vj , wobei δ(x,v ) vi = v1 möglich ist. Dann ist |v 0 | ≥ |v| ≥ |Swz | und Sv0 1 ⊆ Swz , d.h. δ(x, v1 ) ∈ Twz . 70 LEMMA 8.14. Seien A = (A, αA ) eine F-Coalgebra und P, Q ⊆ A. Dann gilt: Interpretation #P 2P 3P PU Q Charakterisierung {a ∈ A | ∀ s ∈ Σ . δA (a, s) ∈ P } {a ∈ A | ∀ w ∈ Σ∗ . Swa ⊆ P } {a ∈ A | ∀ w ∈ Σ∗ , |w| ≥ |A| . Swa ∩ P 6= ∅} {a ∈ A | ∀ w ∈ Σ∗ , |w| ≥ |A| ∃ t ∈ Swa ∩ Q; v, w 0 ∈ Σ∗ . w = vw 0 , δA∗ (a, v) = t und Sva r {t} ⊆ P } Beweis. Zunächst erhalten wir mit den Überlegungen zu konstanten Funktoren: a ∈ #P ⇔ αA (a) ∈ P Σ × B ⇔ (π1 ◦ αA )(a) ∈ P Σ und (π2 ◦ αA )(a) ∈ B ⇔ (π1 ◦ αA )(a) ∈ P Σ Daher können wir uns in unseren Betrachtungen auf die erste Komponente beschränken. • (a ∈ #P ) ⇔ ((π1 ◦ αA )(a) ∈ P Σ ) ⇔ (δA (a, s) ∈ P für alle s ∈ Σ). • (a ∈ 2P ) ⇔ (a ∈ P ∩ #2P ) ⇔ (a ∈ P und δA (a, s) ∈ 2P für alle s ∈ Σ). Für ein beliebiges Wort w ∈ Σ∗ erhalten wir daher induktiv Swa ⊆ P . • Wir zeigen zunächst 3P ⊆ U , wobei U := {a ∈ A | ∀ w ∈ Σ∗ , |w| ≥ |A| . Swa ∩ P 6= ∅}. Sei a ∈ 3P . Angenommen, wir finden ein Wort w ∈ Σ∗ mit |w| ≥ |A| und Swa ∩ P = ∅. Sei V := A r Twa . Es gilt P ⊆ V , da Swa ∩ P = ∅. Falls x ∈ #V , so folgt δ(x, s) ∈ / Twa für alle s ∈ Σ. Mit der Kontraposition von Lemma 8.13 folgt daher x ∈ / Twa , a d.h. x ∈ V . Daher gilt #V ∪ P ⊆ V . Es ist aber a ∈ Tw , d.h. a ∈ / V: a a Wegen |w| ≥ |A| ≥ |Sw | folgt sofort a ∈ Tw . Wir erhalten insgesamt einen Widerspruch zu a ∈ 3P . Umgekehrt sei a ∈ U . Ohne Einschränkung sei |A| = n. Falls eine Menge V ⊆ A mit #V ∪ P ⊆ V existiert und a ∈ / V , so folgt a ∈ / P und a∈ / #V . Folglich existiert s1 ∈ Σ mit δ(a, s1 ) ∈ / V . Induktiv erhalten wir ein Wort w = s1 . . . sn+1 mit Swa ∩P = ∅. Dies steht im Widerspruch zu a ∈ U . • Die Behauptung für U folgt analog zu der für 3. 71 BEISPIEL 8.15. Seien Σ := {b, c} und A := {z1 , z2 }. Der Zustand z1 im folgenden Automaten erfüllt nicht 3{z2 }: z1 c / z 2 @ABC GFEDT @ABC GFEDT b 8.4.3 b,c Der Funktor ( ) × ( ) − 4 + {∗} In Beispiel 2.17 haben wir den Funktor F := ( ) × ( ) − 4 + {∗} bereits definiert. Coalgebren dieses Funktors entsprechen Binärbäumen, so dass ein Knoten entweder keine oder zwei verschiedene Kinder besitzt. Die Eigenschaft kinderlos entspricht dann αA (a) = ∗. Zu a ∈ A konstruieren wir den zugehörigen Berechnungsbaum Ba wie folgt: • a ist die Wurzel. • Falls αA (a) = (a1 , a2 ), so sind a1 und a2 Kinder von a in Ba . • Falls αA (a) = ∗, so besitzt a keine Kinder. • Diese Vorgehensweise setzen wir rekursiv fort. a1 {{ {{ { { { }{ aC 6= CC CC CC C! a2 } AAA AA }} } AA } } AA } ~} } a12 a11C 6= CC CC C CC ) C! ... ∗ KONVENTION. Wir setzen in den folgenden Beschreibungen implizit für alle Knoten b ∈ Ba mit Kindern b1 und b2 aufgrund der Definition des Funktors b1 6= b2 voraus. Wie in Definition 5.5 heißt τ Pfad in Ba , falls τ eine unendliche Berechnung ist, d.h. αA (τ (k)) 6= ∗ für alle n ∈ N. Es ist τ ∈ Comp(b), falls τ (0) = b. Wir schreiben für die Menge aller endlichen Folgen, die in b starten, Comp<ω (b). In diesem Fall existiert ein k ∈ N mit αA (τ (k)) = ∗. 72 LEMMA 8.16. Seien A = (A, αA ) eine F-Coalgebra und P, Q ⊆ A. Dann gilt: Interpretation #P 2P 3P PU Q Charakterisierung {a ∈ A | αA (a) = ∗ oder αA (a) ∈ P 2 } {a ∈ A | ∀ b ∈ Ba . b ∈ P } {a ∈ A | ∀ τ ∈ Comp(a) ∃ k ∈ N . τ (k) ∈ P } {a ∈ A | ∀ τ ∈ Comp(a): 1.) ∃ k ∈ N.τ (k) ∈ Q und ∀ j < k.τ (j) ∈ P und 2.) ∀ τ ∈ Comp<ω (a) . ∀ k.τ (k) ∈ P oder ∃ k.τ (k) ∈ Q und ∀ j < k.τ (j) ∈ P } Beweis. • Die Behauptung für #P folgt direkt aus der Definition dieses Operators. • (a ∈ 2P ) ⇔ (a ∈ P ∩ #2P ) ⇔ (a ∈ P und (αA (a) = ∗ oder αA (a) = (a1 , a2 ) mit a1 , a2 ∈ 2P )). Induktiv erhalten wir b ∈ P für alle b ∈ Ba . • Wir zeigen zunächst U ⊆ 3P , wobei U die Charakterisierung von 3P bezeichnet. Sei a ∈ U . Falls a ∈ P , so folgt die Behauptung. Falls nicht, so betrachten wir den Berechnungsbaum Ba . In diesem besitzt jeder Knoten höchstens zwei Kinder, wir können folglich das Lemma von König anwenden (Lemma 5.13). Schneidet man aus Ba jeden Unterbaum ab, dessen Wurzel in P liegt, so existieren für den resultierenden Baum Ba ’ zwei Möglichkeiten: – Der Baum besitzt endlich viele Knoten. Nach Konstruktion liegen dann alle Blätter von Ba ’ in #P und folglich in 3P . Die Väter dieser Knoten, sofern existent, liegen daher in #3P . Wir iterieren diesen Prozess bis zur Wurzel von Ba ’ und erhalten a ∈ #3P , d.h. a ∈ 3P . – Der Baum besitzt unendlich viele Knoten. Mit dem Lemma von König erhalten wir daher einen unendlichen Ast im Berechnungsbaum. Diesem Ast entspricht in unserem ursprünglichen Baum ein Pfad, in dem niemals P gilt. Dies steht im Widerspruch zur Definition von U. 73 Umgekehrt müssen wir aufgrund der Fixpunktdefinition P ∪ #U ⊆ U zeigen. P ⊆ U ist klar. Sei a ∈ #U , d.h. αA (a) = ∗ oder αA (a) ∈ U 2 . Falls αA (a) = ∗, so gilt automatisch a ∈ U , da U nur Aussagen über Comp(a) macht. Gilt αA (a) ∈ U 2 , so erfüllen beide Nachfolger von a die Bedingung aus U , folglich auch a. • Analog zu 3. Dabei erfüllt eine endliche Folge aufgrund der Überlegungen aus Lemma 8.11 auch dann P U Q, falls alle Zustände der Folge P erfüllen. 8.4.4 Der ( )32 -Funktor Es ist A32 := {(a1 , a2 , a3 ) ∈ A3 | a1 = a2 oder a1 = a3 oder a2 = a3 }. Für eine Abbildung f : A → B ist f23 komponentenweise durch f23 (a1 , a2 , a3 ) = (f (a1 ), f (a2 ), f (a3 )) definiert. Folglich sind ( )32 -Coalgebren ebenfalls als Bäume über der Knotenmenge A aufzufassen. Wiederum betrachten wir den Berechnungsbaum Ba zu a ∈ A. KONVENTION. Wir setzen implizit αA (a) ∈ A32 voraus, d.h.: Falls a ∈ P , so liegen auch die beiden Nachbarn in P und mindestens zwei der drei Knoten sind gleich. Es folgt: LEMMA 8.17. Seien A = (A, αA ) eine F-Coalgebra und P, Q ⊆ A. Dann gilt: Interpretation #P 2P 3P PU Q Charakterisierung {a ∈ A | αA (a) ∈ P23 } {a ∈ A | ∀ b ∈ Ba . b ∈ P } {a ∈ A | ∀ τ ∈ Comp(a) ∃ k ∈ N . τ (k) ∈ P } {a ∈ A | ∀ τ ∈ Comp(a) ∃ k ∈ N . τ (k) ∈ Q und ∀ j < k . τ (j) ∈ P } Beweis. Der Beweis ergibt sich analog zu dem des vorangegangenen Lemmas. 74 Kapitel 9 Ein Funktor SetF → SetP Das folgende Kapitel umfasst die wichtigsten Ergebnisse dieser Arbeit. Einige sind in Zusammenarbeit mit H.P. Gumm entstanden. Wir haben bereits festgestellt, dass die Sprachen CML und CTL im Fall von Kripke-Strukturen äquivalent sind. Ergebnisse aus dem Bereich CTL-Model Checking können somit übertragen werden, CML wird für Kripke-Strukturen mit Hilfe dieser Ergebnisse charakterisiert. Unser Ziel ist es nun, diese Charakterisierung für beliebige Funktoren vorzunehmen. Ein Ansatzpunkt ist die folgende Fragestellung: Unter welchen Bedingungen an den Funktor F ist es möglich, zu einer gegebenen F-Coalgebra A = (A, α) ein Transitionssystem (eine P-Coalgebra) A0 = (A, β) mit gleicher Grundmenge zu konstruieren, so dass die Interpretation sämtlicher CML-Formeln gleich sind, d.h. wann gilt ∀ ϕ ∈ CML . IA (ϕ) = IA0 (ϕ) ? In diesem Fall kann eine Verbindung zwischen der modalen Logik für Transitionssysteme und der für entsprechende F-Coalgebren hergestellt werden. Diese Frage wird in diesem Kapitel beantwortet. 75 9.1 Modallogische Äquivalenz zwischen Pund F-Coalgebren Wir möchten in diesem Abschnitt zu einer gegebenen F-Coalgebra A = (A, α) eine P-Coalgebra A0 = (A, β) konstruieren, so dass für beliebige ϕ ∈ CML gilt: IA (ϕ) = IA0 (ϕ) In Satz 7.3 haben wir die Sprachäquivalenz von CML und CTL im Fall von Transitionssystemen bewiesen. Dabei genügte es aufgrund der Fixpunktinterpretation der weiteren Operatoren, diese Äquivalenz hinsichtlich # zu untersuchen. Diese Tatsache können wir auch im allgemeinen Fall nutzen, exemplarisch für 2 erhalten wir aus #A P = #A0 P für beliebige P ⊆ A: [ 2A P = {U ∈ P(A) | U ⊆ P ∩ #A U } [ = {U ∈ P(A) | U ⊆ P ∩ #A0 U } = 2A0 P 1 Folglich gilt: BEMERKUNG 9.1. Sei A = (A, α) eine F-Coalgebra. Genau dann existiert eine P-Coalgebra A0 = (A, β) mit IA (ϕ) = IA0 (ϕ) für beliebige ϕ ∈ CML, falls die Interpretationen von # gleich sind, d.h. es gilt: #A P = #A0 P für alle P ⊆ A Zunächst überlegen wir uns, welche Eigenschaft ein Funktor F besitzen muss, damit ein solches Transitionssystem für jede F-Coalgebra existiert. Die folgenden Sätze beantworten diese Frage: SATZ 9.2. ([Gum]) Sei A = (A, α) eine F-Coalgebra. Genau dann existiert eine P-Coalgebra A0 = (A, β) mit #A P = #A0 P für alle P ⊆ A, falls gilt: \ \ # A Pi = # A Pi (9.1) i∈I i∈I für jede Familie (Pi )i∈I mit Pi ⊆ A, i ∈ I. 1 In diesem Kapitel benötigen wir bei sämtlichen modallogischen Operatoren den Index der Coalgebra, da wir im Folgenden unterschiedliche Coalgebren mit gleicher Trägermenge betrachten. 76 Beweis. Die Notwendigkeit von Gleichung 9.1 erhalten wir, da für beliebige P-Coalgebren A0 = (A, β) gilt: a∈ \ #A0 Pi ⇔ β(a) ⊆ Pi für alle i ∈ I i∈I ⇔ β(a) ⊆ \ Pi i∈I ⇔ a ∈ # A0 \ Pi i∈I Es wird nun gezeigt, dass diese Bedingung auch hinreichend ist. Dazu definieren wir zu einer F-Coalgebra A = (A, α) die Strukturabbildung einer P-Coalgebra A0 = (A, β) durch \ \ β(a) := {P ∈ P(A) | a ∈ #A P } = {P ∈ P(A) | α(a) ∈ (F ⊆A P )[F P ]} Wir müssen #A P = #A0 P für beliebige P ⊆ A zeigen. Direkt aus der Definition von β folgt: a ∈ #A P ⇒ β(a) ⊆ P ⇒ a ∈ # A0 P Umgekehrt gilt: a ∈ # A0 P \ ⇒ {U ∈ P(A) | a ∈ #A U } ⊆ P \ ⇒ #A {U ∈ P(A) | a ∈ #A U } ⊆ #A P \ ⇒ {#A U | U ∈ P(A), a ∈ #A U } ⊆ #A P (Monotonie von #) (Gleichung 9.1) ⇒ a ∈ #A P T Die letzte Implikation folgt aufgrund a ∈ {#A U | U ∈ P(A), a ∈ #A U }, denn es ist a ∈ #A A. Insgesamt folgt #A P = #A0 P für alle P ⊆ A. 77 Die Gleichung 9.1 wollen wir nun als Bedingung an den Funktor formulieren: SATZ 9.3. ([Gum]) Genau dann erhält F Schnitte (vergleiche Definition 2.24), falls für jede F-Coalgebra A = (A, αA ) und jede Mengenfamilie (Pi )i∈I mit Pi ⊆ A, i ∈ I gilt: \ \ #Pi = # Pi , i∈I i∈I Beweis. ⇒ : T F erhalte Schnitte. Nach Satz 8.1 wissen wir, dass #A Pi Grundmenge des T ) ist. Da diese Menge nach Bemerkung 8.2 Pullbacks von αA und (F ⊆A Pi T als Teilmenge von A eindeutig bestimmt ist, genügt es zu zeigen, dass #Pi ebenfalls diese Eigenschaft erfüllt. Wir betrachten folgendes Diagramm: ◦P T #Pi j ⊆T ◦P / #Pj ⊆A ◦P j / A ϕj ψ F i T Pi P F ⊆TjP i / F Pj αA F ⊆A P j / FA Für jedes Pj , j ∈ I istT das rechte Quadrat ein Pullbackdiagramm. Wir suchen T eine Abbildung ψ : #Pi → F Pi , die das gesamte Rechteck zu einem Pullbackdiagramm ergänzt. T Da es sich bei #Pi um den Schnitt der ⊆A ◦Pj handelt (vergleiche Lemma T P 2.22) und F Schnitte erhält, ist F Pi zusammen mit (F ⊆TjPi ) der Pullback T #Pi Morphismen der Abbildungen (F ⊆A Pj ). Aufgrund der (ϕj )j∈I besitzt ◦P j ϕj ◦ ⊆T ◦P in jedes F Pj und wird damit zum Konkurrenten dieses Pullbacks, i denn es gilt: ◦P ◦P A Tj Tj (F ⊆A Pj ) ◦ ϕj ◦ ⊆ ◦Pi = αA ◦ ⊆◦Pj ◦ ⊆ ◦Pi ◦Pk T = αA ◦ ⊆ A ◦Pk ◦ ⊆ ◦Pi ◦P Tk = (F ⊆A Pk ) ◦ ϕk ◦ ⊆ ◦Pi für beliebige j, k ∈ I. Folglich existiert aufgrund der Pullbackeigenschaft T T T von F Pi eine eindeutige Abbildung ψ : #Pi → F Pi , die das linke Quadrat für jedes j ∈ I kommutativ macht. Daher ist auch das Rechteck kommutativ. 78 T Sei nun Q ein T Konkurrent zu q2 : Q → F Pi , so dass #Pi mit Abbildungen q1 : Q → A und T )◦q . αA ◦ q1 = (F ⊆A 2 Pi Q WD V V q1 D U TT SR D Dθ τj Q Q D PO D NM D! & T / #Pj #Pi ◦P j ⊆T ◦P q2 T Pit P F ⊆TjP i / A ϕj ψ F i /' ⊆A ◦Pj F Pj T F ⊆A P αA F ⊆A P j / 8FA i Durch diese Abbildungen wird Q zum Konkurrenten jedes #Pj : P Q besitzt Abbildungen q1 : Q → A und (F ⊆TjPi ) ◦ q2 : Q → F Pj und es P T ) = (F ⊆A ) ◦ (F ⊆Tj ). Daher existieren τ : Q → #P mit gilt (F ⊆A j j Pj Pi Pi P (F ⊆TjPi )◦q2 . Q ist daher zusammen mit τj , j ∈ I ⊆A ◦Pj ◦τj = q1 und ϕj ◦τj =T Konkurrent des Schnittes #Pi . Wir erhalten schließlich eine (aufgrund der ◦Pj Injektivität der Inklusion eindeutige) Abbildung θ mit ⊆T ◦P ◦ θ = τj . Diese i Abbildung erfüllt die gewünschten Eigenschaften: Es ist ◦P A A T Tj ⊆A ◦Pi ◦ θ = ⊆◦Pj ◦ ⊆ ◦Pi ◦ θ = ⊆◦Pj ◦ τj = q1 und ◦P P j F ⊆TjPi ◦ ψ ◦ θ = ϕj ◦ ⊆T ◦P ◦θ i = ϕj ◦ τj P = F ⊆TjPi ◦ q2 . P Die Abbildungen (F ⊆TjPi )j∈I sind nach 2.25 gemeinsam linkskürzbar, daher ◦P j folgt ψ ◦ θ = q2 . Aufgrund der Injektivität der ⊆T ◦P ist ψ sogar eindeutig i bestimmt. ⇐: Es gelte \ #Pi = # i∈I \ i∈I 79 Pi . Die Inklusion ⊇ gilt aufgrund der Monotonie von # immer. Umgekehrt entspricht ⊆ der Eigenschaft \ \ A T )[F (F ⊆A )[F P ] ⊆ (F ⊆ Pi ], (9.2) i Pi Pi da obige Bedingung für jede F-Coalgebra gelten muss. Q Wir betrachten nun das Produkt i∈I F Pi = {(ui )i∈I | ui ∈ F Pi }: Aufgrund der Gleichung 9.2 gilt folgende Eigenschaft: Sei u = (ui )i∈I ∈ Y F Pi so dass i∈I ∀i, j ∈ I . (F ⊆A Pi )(ui ) dann folgt ∃w ∈ F \ = (F ⊆A Pj )(uj ) =: v, (9.3) T )(w) = v Pi : (F ⊆A Pi T Mit dieser Bedingung erhalten wir, dass F Pi zusammen mit den AbbilP dungen (F ⊆TjPi )j∈I der Pullback der (F ⊆A Pj ) ist: qi + : F Pi EqE F ⊆A v v EE Pi v EE vv v EE v E" , vv P F ⊆TiP i T ϕ Q _ _ _ _ _ _/ F P ir qj F < A HH zz HH z HH zz HH zz P H# . zz F ⊆A Pj F ⊆TjP i 2 F Pj Die Raute kommutiert, da der Funktor diese Eigenschaft erhält. Sei Q ein T A A Konkurrent zu F Pi und q ∈ Q. Wegen (F Q ⊆Pi ) ◦ qi = (F ⊆Pj ) ◦ qj für beliebige i, j ∈ I gilt T für (qi (q))i∈I ∈ i∈I F Pi die Bedingung 9.3 A T und wir finden ein w ∈ F Pi mit F (⊆ Pi )(w) = ((F ⊆A Pj ) ◦ qj )(q) für P T ) = (F ⊆A ) ◦ (F ⊆Tj ), durch Kürzen folgt alle j ∈ I. Es ist (F ⊆A Pj Pi Pi P (F ⊆TjPi )(w) = qj (q). Schließlich erhält man eine Abbildung ϕ, die die gewünschten Eigenschaften besitzt. Diese ist aufgrund der gemeinsamen Linkskürzbarkeit der P (F ⊆Tj )j∈I eindeutig bestimmt. Pi 80 Im folgenden Hauptsatz werden die Ergebnisse dieses Abschnitts zusammengestellt: HAUPTSATZ 9.4. Genau dann existiert zu einer beliebigen F-Coalgebra A = (A, α) eine PCoalgebra A0 = (A, β) mit IA (ϕ) = IA0 (ϕ) für alle ϕ ∈ CML, wenn F Schnitte erhält. Beweis. Die Behauptung folgt direkt aus Satz 9.2 und Satz 9.3. 9.2 Ein Funktor SetF → SetP Für die nachfolgenden Überlegungen benötigen wir ein Ergebnis im Zusammenhang mit natürlichen Transformationen (vergleiche Definition 2.19): Rutten stellte in [Rut96] fest, dass man durch eine natürliche Transformation µ : F → G zu einer F-Coalgebra (A, αA ) automatisch eine G-Coalgebra (A, µA ◦ αA ) erhält und damit sogar ein Funktor von F nach G induziert wird: SATZ 9.5. ([Rut96]) Sei µ : F → G eine natürliche Transformation. Dann erhält man durch µ ◦ ( ) : SetF → SetG einen Funktor, der jede F-Coalgebra (A, αA ) auf die G-Coalgebra (A, µA ◦ αA ) abbildet und einen F-Homomorphismus ϕ : (A, αA ) → (B, αB ) auf einen G-Homomorphismus ϕ : (A, µA ◦ αA ) → (B, µB ◦ αB ) überträgt. Der Funktor erhält zudem Bisimulationen, d.h. es gilt a ∼A,B b ⇒ a ∼A0 ,B0 b für alle a ∈ A und b ∈ B, wobei A0 und B 0 die induzierten G-Coalgebren bezeichnen. A ϕ / B αB αA FA Fϕ µA / FB µB GA Gϕ 81 / GB Laut Hauptsatz 9.4 können wir, sofern F Schnitte erhält, zu einer beliebigen F-Coalgebra A = (A, α) eine P-Coalgebra A0 = (A, β) konstruieren, so dass für alle ϕ ∈ CML gilt: IA (ϕ) = IA0 (ϕ) Es stellt sich die Frage, ob wir mit diesem Ergebnis einen Funktor von SetF nach SetP erhalten, der auf Objekten die modallogischen Eigenschaften überträgt. Um diese Frage zu beantworten, gehen wir wie folgt vor: (1.) Entsprechend der Definition der Strukturabbildung des Transitionssystems aus Satz 9.2 werden wir eine natürliche Transformation µ von F nach P definieren. (2.) Nach Satz 9.5 wird dadurch ein Funktor von SetF nach SetP induziert. (3.) Dieser Funktor besitzt die gewünschten Eigenschaften, insbesondere erhält der Funktor Bisimulationen. Der folgende Satz zeigt zunächst, dass durch die in Satz 9.2 definierte Strukturabbildung β eine natürliche Transformation von F nach P induziert wird: SATZ 9.6. ([Gum]) Sei F Funktor, F erhalte Schnitte und Urbilder. Dann ist µ : F → P definiert durch µA : F A → P(A) \ µA (u) := {P ∈ P(A) | u ∈ (F ⊆A P )[F P ]} für beliebige F-Coalgebren A = (A, αA ) eine natürliche Transfomation von F nach P. Beweis. Seien A und B F-Coalgebren und ϕ : A → B ein F-Homomorphismus. Wir müssen Pϕ ◦ µA = µB ◦ F ϕ zeigen, d.h. für alle u ∈ F A muss gelten: \ \ ϕ[ {P ∈ P(A) | u ∈ (F ⊆A )[F P ]}] = {Q ∈ P(B) | (F ϕ)(u) ∈ (F ⊆B P Q )[F Q]} Zunächst gilt \ \ ϕ[ {P ∈ P(A) | u ∈ (F ⊆A )[F P ]}] = {ϕQ | Q ∈ P(A), u ∈ (F ⊆A P Q )[F Q]} : 82 Sei X := {P ∈ P(A) | uT∈ (F ⊆A P )[F P ]}. Die Inklusion ⊆ gilt immer. Umgekehrt sei x ∈ {ϕQ | Q ∈ P(A), u ∈ (F ⊆A Q )[F Q]}, d.h. A (u ∈ (F ⊆Q )[F Q] ⇒ x ∈ ϕ[Q]). Es ist u ∈ (F ⊆A )[F P ] für alle P P ∈ X und da F Schnitte erhält, gilt (vergleiche Gleichung 9.3): \ \ A T )[F u∈ (F ⊆A )[F P ] ⇒ u ∈ (F ⊆ X], P X P ∈X P ∈X T d.h. x ∈ ϕ[ X]. Daher genügt es, folgende Gleichung zu zeigen: \ U := {ϕP | P ∈ P(A), u ∈ (F ⊆A P )[F P ]} \ = {Q ∈ P(B) | (F ϕ)(u) ∈ (F ⊆B Q )[F Q]} =: V ⊆: Sei b ∈ U , folglich (u ∈ (F ⊆A P )[F P ] ⇒ b ∈ ϕ[P ]) für alle P ⊆ A. Da F Urbilder erhält, ist das folgende Diagramm für beliebige Q ⊆ A ein Pullbackdiagramm: F ϕ| F ϕ −1 Q _ F ⊆A−1 ϕ / F Q _ F ⊆B Q Q FA Fϕ / FB so existiert u0 ∈ F Q mit Falls (F ϕ)(u) ∈ (F ⊆B Q )[F Q], 0 −1 (F ϕ)(u) = (F ⊆B Q )(u ). Daher erhält man nach Satz 2.26 ein v ∈ F (ϕ [Q]) −1 A A mit F (⊆ϕ−1 Q )(v) = u. Folglich gilt u ∈ (F ⊆ϕ−1 Q )[F (ϕ Q)]. Mit der Voraussetzung erhalten wir schließlich b ∈ ϕ[ϕ−1 Q] ⊆ Q. ⊇: −1 Sei b ∈ V , d.h. (F ϕ)(u) ∈ (F ⊆B Q )[F Q] ⇒ b ∈ Q. Es ist F P ⊆ F (ϕ [ϕP ]). Da F Urbilder erhält, ist das Quadrat im folgenden Diagramm ein Pullbackdiagramm (i, j und k bezeichnen zur Vereinfachung die entsprechenden Inklusionen): F P Ir I Fk / F (ϕ−1 ϕP ) II II II II II F i F ⊆A P II I$ F ϕ| _ FA 83 / F ϕP _ Fj Fϕ / FB Das Dreieck ist kommutativ. Sei u ∈ (F ⊆A folglich P )[F P ], −1 u ∈ (F i ◦ F k)[F P ], d.h. es existiert v ∈ F (ϕ [ϕP ]) mit (F i)(v) = u. Aufgrund der Kommutativität des Quadrats folgt (F ϕ)(u) = (F j ◦ F ϕ| )(v). Folglich ist (F ϕ)(u) ∈ (F j)[F (ϕP )]. Nach Voraussetzung folgt daher b ∈ ϕP . Nachfolgend eine genaue Charakterisierung dieser natürlichen Transformation: SATZ 9.7. ([Gum]) Die in Satz 9.6 definierte natürliche Transformation µ : F → P ist die größte natürliche Transformation von F nach P, d.h. für jede natürliche Transformation ν : F → P gilt: νA (u) ⊆ µA (u) für alle u ∈ F A. A Beweis. Sei u ∈ (F ⊆A P )[F P ]. Dann existiert x ∈ F P mit (F ⊆P )(x) = u. Da ν eine natürliche Transformation ist, ist das folgende Diagramm kommutativ: F _P νP F ⊆A P / PP _ P⊆A P FA νA / PA Wir müssen νA (u) ⊆ P zeigen: νA (u) = (νA ◦ (F ⊆A P ))(x) = ((P ⊆A P ) ◦ νP )(x) und daher νA (u) ⊆ (P ⊆A P )[P ] = P Aus Satz 9.6 und Satz 9.5 folgt nun das Hauptergebnis in diesem Abschnitt: HAUPTSATZ 9.8. Genau dann existiert ein Funktor G : SetF → SetP , so dass IA (ϕ) = IGA (ϕ) für eine beliebige F-Coalgebra (A, α) und alle ϕ ∈ CML, wenn F Schnitte und Urbilder erhält. 84 Beweis. ⇒: F erhalte Schnitte und Urbilder. Satz 9.6 liefert folglich eine natürliche Transformation µ : F → P. Diese induziert laut Satz 9.5 einen Funktor G von SetF nach SetP . Insbesondere ist G auf Objekten (A, α) ∈ SetF durch G((A, α)) := (A, µA ◦ α) definiert. Folglich besitzt die resultierende P-Coalgebra die Strukturabbildung \ (µA ◦ α)(a) := {P ∈ P(A) | α(a) ∈ (F ⊆A P )[F P ]} Da diese Strukturabbildung genau der in Satz 9.2 konstruierten entspricht, folgt mit Hauptsatz 9.4 für alle ϕ ∈ CML: IA (ϕ) = IGA (ϕ). ⇐: Sei G : SetF → SetP Funktor, so dass IA (ϕ) = IGA (ϕ) für beliebige F-Coalgebren (A, α) und alle ϕ ∈ CML. Nach Hauptsatz 9.4 muss F daher Schnitte erhalten. Annahme: F erhalte nicht Urbilder. Nach Satz 8.8 existieren folglich F-Coalgebren A, B sowie ein F-Homomorphismus ϕ, so dass #A ϕ−1 [Q] ( ϕ−1 [#B Q] für eine Menge Q ⊆ B. Daher ist #A ϕ−1 [Q] = #GA ϕ−1 [Q] und #B Q = #GB Q und somit #GA ϕ−1 [Q] ( ϕ−1 [#GB Q]. Nach Satz 8.8 folgt, dass P keine Urbilder erhält, Widerspruch (vergleiche [Sch01], S. 68). Insgesamt erhalten wir die Notwendigkeit beider Bedingungen. Abschließend betrachten wir den Zusammenhang zwischen Bisimulationen und modaler Äquivalenz und erhalten wieder mit Satz 9.5 die folgende Aussage: LEMMA 9.9. Sei A = (A, αA ) F-Coalgebra, F erhalte Schnitte und Urbilder. Weiterhin gelte |(µA ◦ αA )(a)| < ∞ und (µA ◦ αA )(a) 6= ∅ für alle a ∈ A, wobei µ die natürliche Transformation aus Satz 9.6 bezeichne. Dann gilt: a ∼A b ⇒ a ≡CML b Beweis. Seien a, b ∈ A und a ∼A b. Nach Satz 9.5 erhält der durch µ induzierte Funktor Bisimulationen, daher folgt a ∼ b bezüglich der resultierenden Kripke-Struktur. Da diese nach Voraussetzung total und bildendlich ist, folgt die Behauptung mit Satz 7.5. 85 Die Eigenschaft (µA ◦ αA )(a) 6= ∅ für beliebige a ∈ A kann wie folgt beschrieben werden: LEMMA 9.10. Sei A = (A, αA ) eine F-Coalgebra, F erhalte Schnitte und Urbilder. Weiter sei µ die natürliche Transformation aus Satz 9.6. Dann gilt: (∀ a ∈ A . (µA ◦ αA )(a) 6= ∅) ⇔ (F ∅ = ∅) Beweis. Wir zeigen zunächst ∀ P ⊆ A . (#A P 6= ∅ ⇒ P 6= ∅) gdw. ∀a∈A. \ {P ∈ P(A) | a ∈ #A P } 6= ∅ ⇒: T T {#A P | P ∈ P(A), a ∈ #A P } = #A {P ∈ P(A) | a ∈ #A P } 6= ∅, da a in der ersten Menge enthalten ist (vergleiche Satz 9.2). Mit der Voraussetzung T folgt {P ∈ P(A) | a ∈ #A P } 6= ∅. ⇐: Sei T Q ⊆ A mit #A Q 6= ∅. Folglich existiert u ∈ #A Q und wegen ∅ 6= {P ∈ P(A) | u ∈ #A P } ⊆ Q folgt die Behauptung. Wie erhalten: (F ∅ = ∅) ⇔ (∀ P ⊆ A . F P 6= ∅ ⇒ P 6= ∅) ⇔ (∀ P ⊆ A . #A P 6= ∅ ⇒ P 6= ∅) \ ⇔ (∀ a ∈ A . {P ∈ P(A) | a ∈ #A P } 6= ∅) ⇔ (∀ a ∈ A . (µA ◦ αA )(a) 6= ∅) 9.3 Eine natürliche Transformation F → P ◦P Die folgende natürliche Transformation F → P ◦ P ergibt sich direkt aus der in Satz 9.6 konstruierten und soll daher an dieser Stelle angegeben werden. 86 Im letzten Abschnitt benötigen wir die Voraussetzung F erhält Schnitte für die Eigenschaft \ \ ϕ[ {P ∈ P(A) | u ∈ (F ⊆A )[F P ]}] = {ϕP ∈ P(A) | u ∈ (F ⊆A P P )[F P ]}. Ohne diese Bedingung kann eine natürliche Transformation µ : F → P ◦ P definiert werden, wobei P den kontravarianten Potenzmengenfunktor bezeichnet (vergleiche Beispiel 2.17): LEMMA 9.11. ([Gum]) Sei F Funktor, F erhalte Urbilder. Dann ist µ : F → (P ◦ P) definiert durch µA : F A → (P ◦ P)(A) µA (u) := {U ∈ P(A) | u ∈ (F ⊆A U )[F U ]} für beliebige F-Coalgebren A = (A, αA ) eine natürliche Transfomation von F nach (P ◦ P). Beweis. Für die Komposition des kontravarianten Potenzmengenfunktors mit sich selbst gilt für Mengen (P ◦ P)( ) = (P ◦ P)( ), daher ist µA wohldefiniert. Für Abbildungen f : A → B ist (P ◦ P)(f ) : (P ◦ P)(A) → (P ◦ P)(B) und es gilt: ((P ◦ P)(f ))(U ) = (Pf )−1 [U ] = {V ∈ P(B) | (Pf )[V ] ∈ U } = {V ∈ P(B) | f −1 [V ] ∈ U } Seien A und B F-Coalgebren und ϕ : A → B F-Homomorphismus. Um (P ◦ P)(ϕ) ◦ µA = µB ◦ F ϕ zu zeigen, muss für alle u ∈ F A {V ∈ P(B) | ϕ−1 [V ] ∈ µA (u)} = {V ∈ P(B) | (F ϕ)(u) ∈ (F ⊆B V )[F V ]}, gelten, also für beliebige V ⊆ B −1 B u ∈ F (⊆A ϕ−1 V )[F (ϕ V )] ⇔ (F ϕ)(u) ∈ (F ⊆V )[F V ] ⇐: Da F Urbilder erhält, existiert mit der selben Argumentation wie in Satz 9.6 −1 A zu (F ϕ)(u) ∈ (F ⊆B V )[F V ] ein v ∈ F (ϕ [V ]) mit F (⊆ϕ−1 V )(v) = u. Folglich −1 ist u ∈ F (⊆A ϕ−1 V )[F (ϕ [V ])]. ⇒: −1 −1 A Aus u ∈ F (⊆A ϕ−1 V )[F (ϕ V )] folgt (F ϕ)(u) ∈ (F ϕ ◦ F ⊆ϕ−1 V )[F (ϕ [V ])] und mit der Kommutativität (F ϕ)(u) ∈ (F ⊆B V )[F V ]. 87 9.4 Ausblick: ein Inferenzsystem für CML Die bisherigen Ergebnisse in diesem Kapitel motivieren die Fragestellung, ob ein Inferenzsystem für die logische Sprache CML aufgestellt werden kann, sofern der Funktor beliebige Schnitte erhält. Es ist plausibel, das Inferenzsystem aus Satz 5.15 zu betrachten: Aufgrund der Sprachäquivalenz von CTL und CML und den zuvor bewiesenen Sätzen liegt die Vermutung nahe, dass man mit dieser Voraussetzung aus dem Inferenzsystem für CTL ein solches für CML konstruieren kann. Eine besondere Beachtung muss dabei allerdings Axiom A9 erfahren, welches nur in totalen Kripke-Strukturen gültig ist. Wir betrachten die folgende Menge von Axiomen und Inferenzregeln für CML-Formeln, wobei ϕ, ψ, θ ∈ CML: Axiome: A1 A2 A3 A4 A5 A6 A7 A8 alle Tautologien der Aussagenlogik ϕ ≡ ¬ E ¬ϕ ϕ ≡ (> U ϕ) E ϕ ≡ (> UE ϕ) E (ϕ ∨ ψ) ≡ Eϕ ∨ Eψ (ϕ U ψ) ≡ ψ ∨ (ϕ ∧ (ϕ U ψ)) (ϕ UE ψ) ≡ ψ ∨ (ϕ ∧ E (ϕ UE ψ)) > Inferenzregeln: I1 ϕ ⇒ ψ ` Eϕ ⇒ Eψ I2 θ ⇒ (¬ψ ∧ E θ) ` θ ⇒ ¬(ϕ U ψ) I3 θ ⇒ (¬ψ ∧ (θ ∨ ¬(ϕ UE ψ))) ` θ ⇒ ¬(ϕ UE ψ) MP ϕ, ϕ ⇒ ψ ` ψ Die obigen Regeln und Axiome entsprechen denen des CTL-Inferenzsystems aus Satz 5.15, wenn man sämtliche Formeln gemäß Definition 7.1 überträgt. A9 taucht hier allerdings nicht auf. Hinsichtlich der Korrektheit dieser Menge von Axiomen und Regeln kann man sich Folgendes überlegen: Jedes Axiom und jede Regel entspricht dem/der entsprechenden aus Satz 5.15. Diese sind aufgrund der Äquivalenz von CTL und CML im Fall von 88 totalen Kripke-Strukturen, die in Satz 7.3 bewiesen wurde, Tautologien für P+ -Coalgebren. Da nur Regel A9 die Voraussetzung fordert, dass die KripkeStruktur total ist, sind alle übrigen Axiome und Regeln bereits Tautologien für den Funktor P. Falls F beliebige Schnitte erhält, so existiert nach Hauptsatz 9.4 zu jeder F-Coalgebra A eine P-Coalgebra A0 , so dass IA (ϕ) = IA0 (ϕ) für alle ϕ ∈ CML, d.h. alle Axiome und Inferenzregeln sind auch für F gültig. Bezüglich der Vollständigkeit ist eine beliebige F-Tautologie ϕ in der Sprache CML nach Hauptsatz 9.4 insbesondere P-Tautologie und somit eine P+ -Tautologie, d.h. Tautologie für totale Kripke-Strukturen. Aufgrund der Äquivalenz von CTL und CML folgt, dass die zugehörige CTL-Formel nach der Konstruktion aus Definition 7.1 auch eine Tautologie ist und damit aus den Regeln des Inferenzsystems aus Satz 5.15 herleitbar ist. Regel A9 wird in dieser Herleitung nicht benötigt. In einem vollständigen Beweis müsste genauer zwischen totalen und nichttotalen Kripke-Strukturen differenziert werden. Im Gegensatz zum Beweis der Korrektheit dieses Inferenzsystems stellt der Beweis der Vollständigkeit ein Problem dar: Die letzte Aussage (kursiv hervorgehoben) ist nicht notwendigerweise korrekt. So ist nicht ohne Weiteres ersichtlich, dass Regel A9 tatsächlich nicht bei dem Beweis einer beliebigen F-Tautologie benötigt wird. Es ist denkbar, dass bei der Herleitung einer CTL-Formel ϕ, in welcher der Operator EX nicht auftaucht, Axiom A9 (oder eine Folgerung aus diesem Axiom) trotzdem im formalen Beweis benötigt wird. Die entsprechende Herleitung wäre dann im oben angeführten CML-Inferenzsystem nicht möglich. Um diesen Sachverhalt zu klären, müsste der vollständige Beweis der Vollständigkeit des CTL-Inferenzsystems (vergleiche [EH85]) nachvollzogen werden. 89 Kapitel 10 Charakterisierung von CML für spezielle Funktoren Im vorangegangenen Kapitel wurden Ansätze für die Übertragung des CTL-Inferenzsystems aus Kapitel 5 auf CML angeführt. Es stellt sich nun zum einen die Frage, welche CML-Tautologien man für beliebige Funktoren erhält; zum anderen ist es interessant festzustellen, ob sich die modale Logik spezieller Funktoren durch zusätzliche Tautologien charakterisieren lässt. Im ersten Teil des Kapitels werden einige Tautologien bewiesen, die für beliebige Funktoren gelten. Dabei nutzen wir das Dualitätsprinzip für Verbände, welches in Bemerkung 6.9 erläutert wurde. Dieses gilt allerdings nur für Tautologien, die keinerlei Bedingungen an den Funktor stellen, da wir sonst die Sprache der Verbandstheorie verlassen und damit das Dualitätsprinzip verletzen. Im zweiten Abschnitt untersuchen wir zwei Beispielfunktoren, deren modale Logik durch CML-Tautologien beschrieben werden kann: So kann unter bestimmten Voraussetzungen zu einer F-Coalgebra eine ( )32 -Coalgebra konstruiert werden, so dass die Interpretationen aller CML-Formeln gleich sind. Dazu müssen insbesondere zwei unten angeführte CML-Formeln F-Tautologien sind. F-Tautologien beweisen wir immer entsprechend der Semantik von CML für alle F-Coalgebren A = (A, αA ) und alle a ∈ A. 90 10.1 Tautologien für CML-Operatoren Zunächst einige Tautologien für den Operator SATZ 10.1. (Tautologien für Seien ϕ, ψ ∈ CML. Es gilt: : ) (i) (ϕ ∧ ψ) ≡ ϕ∧ ψ (X 1) (ii) Falls F endliche Vereinigungen erhält, so gilt: (ϕ ∨ ψ) ≡F ϕ∨ ψ (X 2) (iii) Falls F deterministisch, so ist die folgende CML-Formel eine F-Tautologie: (ϕ ⇒ ψ) ⇒ ( ϕ ⇒ ψ) (X 3) Beweis. Seien im Folgenden (A, α) eine beliebige F-Coalgebra, P, Q ⊆ A und a ∈ A. (i): Es gilt: a ∈ #P ∩ #Q A ⇔ α(a) ∈ (F ⊆A P )[F P ] ∩ (F ⊆Q )[F Q] ⇔ α(a) ∈ (F ⊆A P ∩Q )[F (P ∩ Q)] (2.1) ⇔ a ∈ #(P ∩ Q) (ii): Der Beweis verläuft analog zu (i), wenn man berücksichtigt, A dass aufgrund der Voraussetzung (F ⊆A P )[F P ] ∪ (F ⊆Q )[F Q] = A (F ⊆P ∩Q )[F P ∪ F Q)] gilt. (iii): F ist nach Voraussetzung deterministisch und folglich standard. Es gilt: F (P C ∪ Q) = F (P ∩ QC )C = (F (P ∩ QC ))C = (F P ∩ F QC )C = FPC ∪ FQ Daher erhalten wir #P ⊆ #Q. 91 SATZ 10.2. (Tautologien für ) Seien ϕ ∈ CML. Dann sind die folgenden CML-Formeln Tautologien: (i) ¬ϕ ⇒ ¬ϕ (G 1) (ii) Für alle n ∈ N gilt: ϕ ⇔ n ^ k ϕ und ϕ ⇒ k=0 n ^ k ϕ 1 (G 2) k=0 (iii) ϕ ⇔ ϕ (G 3) (iv) ϕ ⇔ (ϕ ∧ ϕ) und ϕ ⇔ (ϕ ∧ ϕ) (G 4) (v) (ϕ ⇒ ϕ) ⇒ (ϕ ⇒ ϕ) (G 5) (vi) (ϕ ∧ ψ) ⇔ ϕ ∧ ϕ (G 6) (ϕ ⇒ ψ) ⇒ (ϕ ⇒ ψ) (G 7) (vii) Beweis. (i): Nach Lemma 8.4 gilt 2P C ⊆ P C . Da sich aus 2P ⊆ P durch Komplementbildung P C ⊆ (2P )C ergibt, folgt die Behauptung. (ii): Aus Lemma 8.4 erhalten wir durch die Monotonie von Nexttime“ für ein beliebiges n ∈ N eine aufsteigende Kette Tn ” 2 n 2P ⊆ #2P ⊆ # 2P ⊆ · · · ⊆ # 2P und damit 2P ⊆ k=0 #k 2P . Die umgekehrte Inklusion folgt mit n := 0. Da 2P ⊆ P , folgt der zweite Teil der Behauptung erneut aus der Monotonie von #. Die Umkehrung dieser Implikation gilt im Allgemeinen nicht, wie man sich leicht am Beispiel einer Kripke-Struktur überlegen kann. 1 0 ϕ := ϕ und k ϕ := ( k−1 ϕ) für alle k ∈ N, k ≥ 1 92 (iii): Wiederum aus Lemma 8.4 folgt 22P ⊆ 2P . Umgekehrt S gilt 2P ⊆ #2P , da 2P eine Invariante ist. Folglich ist 2P ⊆ {U ⊆ 2P | U ⊆ #U } = 22P . (iv): Die erste Äquivalenz ergibt sich direkt aus der Fixpunktdefinition. Aus 2P = P ∩ #2P und der Monotonie von # folgt #2P = #P ∩ #2 2P , da F endliche Schnitte erhält. Also gilt #2P ⊆ νX.#P ∩ #X = 2#P . Umgekehrt folgt mit Satz 10.1, (i): P ∩ 2#P = P ∩ #P ∩ #2#P = P ∩ #(P ∩ 2#P ) und daher P ∩ 2#P ⊆ νX.P ∩ #X = 2P . (v): Wir müssen 2(P C ∪ #P ) ⊆ P C ∪ 2P zeigen. Dazu genügt es, 2(P C ∪ #P ) ∩ P ⊆ 2P zu zeigen. Wir erhalten: P ∩ 2(P C ∪ #P ) = P ∩ (P C ∪ #P ) ∩ #2(P C ∪ #P ) (Fixpunktdefinition) C (P C ∩ P = ∅) = P ∩ #P ∩ #2(P ∪ #P ) ⊆ P ∩ (νX.#P ∩ #X) = P ∩ 2#P (i) Somit gilt P ∩ 2(P C ∪ #P ) ⊆ P ∩ 2#P = 2P . (vi): Mit der Monotonie von Always“ schließen wir unmittelbar ” 2(P ∩Q) ⊆ 2P ∩2Q. Andererseits erhalten wir mit Lemma 8.4 und der Voraussetzung 2P ∩ 2Q ⊆ P ∩ Q ∩ #2P ∩ #2Q = P ∩ Q ∩ #2(P ∩ Q). Schließlich folgt 2P ∩2Q ⊆ 2(P ∩Q) aufgrund der Fixpunktdefinition von 2(P ∩ Q). (vii): Wir müssen 2(P C ∪ Q) ⊆ (2P )C ∪ 2Q, d.h. 2P ∩ 2(P C ∪ Q) ⊆ 2Q zeigen. Es gilt: 2P ∩ 2(P C ∪ Q) = 2P ∩ (P C ∪ Q) ∩ #2(P C ∪ Q) (Fixpunktdefinition) = 2P ∩ Q ∩ #2(P C ∪ Q) (P C ∩ 2P = ∅) = P ∩ #2P ∩ Q ∩ #2(P C ∪ Q) (Fixpunktdefinition) = P ∩ Q ∩ #(2P ∩ 2(P C ∪ Q)) (10.1, (i)) C ⊆ Q ∩ #(2P ∩ 2(P ∪ Q)) ⊆ νX.Q ∩ #X = 2Q 93 SATZ 10.3. (Tautologien für und U ) Seien ϕ, ψ ∈ CML. Dann sind die folgenden CML-Formeln Tautologien: (i) ¬ϕ ⇒ ¬ϕ (F 1) (ii) Für alle n ∈ N: n _ k ϕ ⇒ ϕ und k=0 n _ k ϕ ⇔ ϕ (F 2) k=0 (iii) ϕ ⇔ ϕ (F 3) ϕ ⇔ > U ϕ (F 4) ϕ U ψ ⇒ ψ (F 5) (iv) (v) Beweis. Wiederum sei A = (A, αA ) Coalgebra eines beliebigen Funktors F und P ⊆ A. An dieser Stelle nutzen wir die duale Definition von 3 und 2 aus. Dabei ist zu beachten, dass sämtliche Aussagen in diesem Satz keine Bedingungen an den Funktor stellen und damit die Sprache der Verbandstheorie nicht verlassen wird. Folglich ist das Dualitätsprinzip anwendbar. Um (i) zu beweisen, müssen wir die Inklusion (3P )C ⊆ 3P C für beliebiges P ⊆ A zeigen. Laut Satz 10.2 (i) gilt 2P C ⊆ (2P )C . Daraus folgt mit Bemerkung 6.9 3P C ⊇ (3P )C und somit die Behauptung. (ii) und (iii) ergeben sich auf dieselbe Weise als duale Aussagen zu Satz 10.2 (ii) und (iii). Weiterhin folgt Aussage (iv) sofort aus der Definition von 3 und U: \ 3P = {U ∈ P(A) | P ∪ #U ⊆ U } \ = {U ∈ P(A) | P ∪ (> ∩ #U ) ⊆ U } = >U P Schließlich gilt P ⊆ >. Aufgrund der Monotonie von Until“ ist somit ” P U Q ⊆ > U Q. Die Behauptung (v) erhalten wir daher aus (iv). 94 Der folgende Satz zeigt, dass man sich bei der Betrachtung der Operatoren Always“ und Sometimes“ auf die wechselseitige Hintereinanderausführung ” ” von zwei Operatoren beschränken kann: SATZ 10.4. Sei ϕ ∈ CML. Dann sind folgende Formeln CML-Tautologien: ϕ ⇔ ϕ (FG 1) ϕ ⇔ ϕ (FG 2) und Beweis. Seien A = (A, αA ) F-Coalgebra und P ⊆ A. Wir beschränken uns auf den Beweis der ersten Gleichung, da die zweite Gleichung mit dem Dualitätsprinzip folgt. Die Inklusion 23P ⊆ 323P ergibt sich aufgrund der Fixpunktdefinition von 3. Interessant ist die andere Inklusion. Wir zeigen 23P ∪ #23P ⊆ 23P . Dann folgt µX.23P ∪ #X ⊆ 23P . Mit V := 23P genügt es also, #V ⊆ V = νX.3P ∩ #X zu zeigen. Dazu wiederum muss #V ⊆ 3P ∩ #2 V gelten. Es gilt Lemma 8.4 (23P ⊆ #23P ) und folglich #V ⊆ #2 V aufgrund der Monotonie von #. Mit der Fixpunkteigenschaft von 2 erhalten wir V ⊆ 3P und schließlich #V ⊆ #3P ⊆ 3P . Betrachten wir hingegen nur 2 Operatoren, so gilt im Allgemeinen nicht die Gleichheit: SATZ 10.5. Sei ϕ ∈ CML. Dann ist die CML-Formel ϕ ⇒ ϕ (FG 3) eine Tautologie, aber es gilt im Allgemeinen nicht ϕ ⇒ ϕ Beweis. Seien A = (A, αA ) F-Coalgebra und P ⊆ A. Aufgrund der Fixpunktdefinition von 2 müssen wir 32P ⊆ 3P ∩ #32P zeigen. Hierfür folgt wegen 2P ⊆ P mit der Monotonie von 3 die erste Inklusion. Für die zweite Inklusion benötigen wir 2P ∩ #2 32P ⊆ #32P . Mit der 95 Definition der Operatoren und der Monotonie erhalten wir für Teil eins 2P ⊆ #2P ⊆ #32P von #. Teil 2 folgt aus #32P ⊆ 32P und wiederum der Monotonie von #. Für den zweiten Teil der Behauptung betrachten wir folgendes Gegenbeispiel, wobei F := P+ : , •P k •¬P Beide Zustände erfüllen zwar AG AF P , aber nicht AF AG P . Aufgrund der in Satz 7.3 bewiesenen Sprachäquivalenz von CTL und CML folgt daher die Behauptung. Die Interpretation von Nexttime“ ist grundlegend für alle weiteren modal” logischen Operatoren. Leider kann nur für die wenigsten Funktoren die Negation an Nexttime“ vorbeigezogen werden, diese Eigenschaft besitzen nur ” deterministische Funktoren (vergleiche Definition 2.32): LEMMA 10.6. Es gilt: F ist deterministisch ⇔ (∀ ϕ ∈ CML . F (¬ ϕ ⇔ ¬ϕ)) Beweis. Die Behauptung folgt direkt aus der Definition eines deterministischen Funktors. Häufig wird in der Modallogik die Gleichung 2¬P = ¬3P vorausgesetzt. In dieser Arbeit tun wir dies nicht, es gilt aber: SATZ 10.7. Seien ϕ ∈ CML und F ein deterministischer Funktor. Dann ist die folgende CML-Formel eine F-Tautologie: ¬ϕ ⇔ ¬ϕ 96 Beweis. Seien A = (A, αA ) F-Coalgebra und P ⊆ A. Mit dem Satz von Tarski und den Definitionen von Sometimes“ und Always“ erhalten wir: ” ” ¬3P = (µX.P ∪ #X)C \ = ( {U ∈ P(A) | P ∪ #U ⊆ U })C [ = {U C ∈ P(A) | P ∪ #U ⊆ U } [ = {V ∈ P(A) | P ∪ #V C ⊆ V C } [ = {V ∈ P(A) | V ⊆ P C ∩ (#V C )C } [ = {V ∈ P(A) | V ⊆ P C ∩ #V } (F deterministisch) = νX.P C ∩ #X = 2¬P Somit sind die Mengen 2¬P und ¬3P gleich. 97 10.2 Charakterisierung von CML an zwei Beispielen In diesem Abschnitt werden zwei Beispiele für Funktoren betrachtet, deren modale Logik durch spezielle CML-Tautologien beschrieben werden kann. Beispiel 1: der ( )32-Funktor Zunächst untersuchen wir den ( )32 -Funktor. Für diesen Funktor haben wir bereits in 8.17 die einzelnen modallogischen Operatoren beschrieben. Es soll nun zu einer gegebenen F-Coalgebra A = (A, α) eine ( )32 -Coalgebra A0 = (A, β) konstruiert werden, so dass für beliebige ϕ ∈ CML gilt: IA (ϕ) = IA0 (ϕ). Dazu genügt es, dass die Interpretationen von # identisch sind (vergleiche Satz 9.2). Wir betrachten die folgenden beiden CML-Formeln, von denen wir im Folgenden feststellen werden, dass sie die modale Logik von ( )32 -Coalgebren charakterisieren ([Gum]): > 1.) E 2.) (ϕ ∨ ψ ∨ θ) ⇒ (ϕ ∨ ψ) ∨ (ϕ ∨ θ) ∨ (ψ ∨ θ) Anschaulich wird die erste Gleichung von einem Zustand eines Transitionssystems erfüllt, falls der Zustand mindestens einen Nachfolger besitzt. Die zweite Gleichung besagt, dass höchstens zwei Nachfolger existieren. Um beliebige F-Coalgebren auf ( )32 -Coalgebren abbilden zu können, die dieselbe #-Struktur besitzen, müssen diese beiden Gleichungen F-Tautologien sein. Vorab einige Überlegungen: LEMMA 10.8. ([Abe]) Sei A = (A, α) eine F-Coalgebra, F erhalte beliebige Schnitte. Weiterhin sei die folgende Implikation eine F-Tautologie: (ϕ ∨ ψ ∨ θ) ⇒ (ϕ ∨ ψ) ∨ (ϕ ∨ θ) ∨ (ψ ∨ θ) Dann gilt: ∀ a ∈ A ∃ U ⊆ A . a ∈ #A U und |U | ≤ 2. 98 (10.1) Beweis. T Annahme: Für alle U ⊆ A mit a ∈ #U gilt |U | ≥ 3. Es ist a ∈ {#U beliebige Schnitte erhält, gilt nach T | U ⊆ A, a ∈ #U }. Da F T Satz 9.3 {#U |TU ⊆ A, a ∈ #U } = # {U T ⊆ A | a ∈ #U }. Insbesondere ist daher a ∈ # {U ⊆ A | a ∈ #U } und {U ⊆ A | a ∈ #U } ist die kleinste Menge V mit a ∈ #V . Nach Voraussetzung muss auch die Menge T {U ⊆ A | a ∈ #U } mindestens drei Elemente enthalten, folglich lässt sie sich in drei nichtleere disjunkte Teilmengen zerlegen: ∃ V1 , V2 , V3 ; Vi 6= ∅; Vi ∩ Vj = ∅; i, j ∈ {1, 2, 3}. \ V1 ∪ V2 ∪ V3 = {U ⊆ A | a ∈ #U } Daher gilt a ∈ #(V1 ∪ V2 ∪ V3 ) und nach Gleichung 10.1 auch ohne Einschränkung a ∈ #(V1 ∪ V2 ). Da V1 ∪ V2 T ( V1 ∪ V2 ∪ V3 , steht diese Behauptung im Widerspruch zur Minimalität von {U ⊆ A | a ∈ #U }, folglich existiert U ⊆ A mit a ∈ #U und |U | ≤ 2. LEMMA 10.9. Sei A = (A, α) eine F-Coalgebra, F erhalte beliebige Schnitte. Weiterhin sei E > F-Tautologie. Dann existiert eine eindeutig bestimmte minimale Menge ∅ 6= Ma ⊆ A mit a ∈ #Ma . T Beweis. Sei Ma := {U ⊆ A | a ∈ #U }. Nach Lemma 10.8 ist a ∈ #Ma . Offensichtlich ist Ma auch die kleinste Menge mit dieser Eigenschaft und eindeutig bestimmt. Wäre Ma = ∅, so würde a ∈ #∅ folgen, was im Widerspruch dazu steht, dass E > F-Tautologie ist. Mit diesen Überlegungen kann nun die Definition einer Abbildung β : A → A32 zu einer gegebenen F-Coalgebra (A, α) angestrebt werden, so dass die modallogischen Eigenschaften erhalten bleiben. Im Folgenden bezeichnet Ma die nach Lemma 10.9 eindeutig bestimmte kleinste Menge V mit a ∈ #V . Diese besitzt für beliebige a ∈ A höchstens zwei Elemente (Lemma 10.8) und mindestens ein Element (Lemma 10.9). Wir bezeichnen die (nicht notwendigerweise verschiedenen) Elemente dieser Menge mit pa und qa , d.h. ( {pa , qa } falls pa 6= qa Ma = {pa } sonst 99 In der gesamten Arbeit setzen wir das Auswahlaxiom voraus, welches den Wohlordnungssatz impliziert. Daher kann die Menge A ohne Einschränkung als geordnet angenommen werden, wir bezeichnen die Ordung mit ≤ . Sei weiterhin ohne Beschränkung der Allgemeinheit pa ≤ qa . Wir können eine Strukturabbildung einer ( )32 -Coalgebra auf A wie folgt definieren: β(a) := (pa , qa , qa ) Damit kann nun der folgende Satz formuliert werden: SATZ 10.10. Es existiert genau dann für jede F-Coalgebra A = (A, α) eine ( )32 -Coalgebra A0 = (A, β) mit #A P = #A0 P für alle P ⊆ A, falls F Schnitte erhält und die folgenden beiden CML-Formeln F-Tautologien sind: > 1.) E 2.) (ϕ ∨ ψ ∨ θ) ⇒ (ϕ ∨ ψ) ∨ (ϕ ∨ θ) ∨ (ψ ∨ θ) Beweis. Nach Satz 9.3 ist die Bedingung F erhält Schnitte äquivalent dazu, dass für jede F-Coalgebra A = (A, α) und jede Mengenfamilie (Pi )i∈I mit Pi ⊆ A, i ∈ I gilt: \ \ #Pi = # Pi , i∈I Für beliebige ( )32 -Coalgebren a∈ \ i∈I 0 A = (A, β) erhält man: #A0 Pi ⇔ β(a) ∈ (Pi )32 für alle i ∈ I i∈I ⇔ β(a) ∈ ( \ Pi )32 i∈I ⇔ a ∈ # A0 \ Pi i∈I Folglich muss F beliebige Schnitte erhalten. Die Notwendigkeit der Bedingung, dass die beiden angegebenen Gleichungen F-Tautologien sind, folgt daraus, dass diese bereits Tautologien für beliebige ( )32 -Coalgebren sind: Seien A0 = (A, β) eine ( )32 -Coalgebra und a ∈ A, dann gilt a ∈ #E A ⇔ a ∈ / #∅ ⇔ β(a) ∈ / ∅. 100 Die letzte Bedingung ist immer wahr, da (A32 = ∅) ⇔ (A = ∅). Falls a ∈ #(P ∪Q∪R) für beliebige P, Q, R ⊆ A, so folgt β(a) ∈ (P ∪Q∪R)32 . Da β(a) = (u1 , u2 , u3 ) mit ui ∈ (P ∪ Q ∪ R) und |{u1 , u2 , u3 }| ≤ 2, erhalten wir ohne Einschränkung {u1 , u2 , u3 } ⊆ P ∪ Q und folglich β(a) ∈ (P ∪ Q)32 , d.h. a ∈ #(P ∪ Q). Die Bedingungen sind aber auch hinreichend: Seien A = (A, α) eine beliebige F-Coalgebra und A0 = (A, β) die entsprechend der obigen Definition von β konstruierte ( )32 -Coalgebra. β ist aufgrund von Lemma 10.8 und Lemma 10.9 wohldefiniert. Es gilt: a ∈ # A0 P ⇔ ⇔ ⇔ ⇔ β(a) ∈ P23 (pa , qa , qa ) ∈ P23 Ma ⊆ P a ∈ #A P Um einen Funktor SetF → Set( )32 zu konstruieren, der die zugrunde liegenden Abbildungen erhält und auf Objekten wie oben beschrieben operiert, müsste ein F-Homomorphismus ϕ : A → B schon auf einen ( )32 -Homomorphismus abgebildet werden. Dazu benötigt man die Bedingung, dass das Bild der minimalen Menge U ⊆ A mit a ∈ #A U gerade die minimale Menge V ⊆ B mit ϕ(a) ∈ #B V ist: LEMMA 10.11. Seien A und B F-Coalgebren, F erhalte Urbilder und beliebige Schnitte. Sei ϕ : A → B Homomorphismus. Falls Ma ⊆ A die kleinste Menge U mit a ∈ #A U ist, so ist ϕ[Ma ] ⊆ B die kleinste Menge V mit ϕ(a) ∈ #B V . T Beweis. Nach Lemma 10.9 muss ϕ[ {U ⊆ A | a ∈ #U }] T = {V ⊆ B | ϕ(a) ∈ #V } =: Y gezeigt werden. T TMit den Überlegungen aus Satz 9.6 erhalten wir ϕ[ {U ⊆ A | a ∈ #U }] = {ϕU | U ⊆ A, a ∈ #U } =: X. Daher genügt es, die Gleichheit von X und Y zu zeigen. ⊆: Seien u ∈ X und ϕ(a) ∈ #V , wobei V ⊆ B beliebig. Folglich gilt a ∈ ϕ−1 [#V ]. Da F nach Voraussetzung Urbilder erhält, erhalten wir mit Satz 8.8 a ∈ #ϕ−1 [V ]. Wegen u ∈ X folgt u ∈ ϕ[ϕ−1 [V ]], d.h. u ∈ V . ⊇: Seien u ∈ Y und a ∈ #U für eine Menge U ⊆ A, folglich mit Satz 8.9 ϕ(a) ∈ #ϕ[U ]. Nach Vorausetzung gilt dann x ∈ ϕ[U ]. 101 Damit jeder F-Homomorphismus ϕ zwischen zwei F-Coalgebren A = (A, αA ) und B = (B, αB ) auch Homomorphismus zwischen den konstruierten ( )32 -Coalgebren A0 = (A, βA ) und B 0 = (B, βB ) ist, müsste ϕ32 ◦ βA = βB ◦ ϕ gelten. Wir erhalten (ϕ32 ◦ βA )(a) = ϕ32 ((pa , qa , qa )) = (ϕpa , ϕqa , ϕqa ) = (pϕa , qϕa , qϕa ) ! = (βB ◦ ϕ)(a) Die vorletzte Gleichheit erhalten wir mit Lemma 10.11, denn die eindeutig bestimmte minimale Menge Mϕa mit ϕ(a) ∈ #Mϕa entspricht nach diesem Lemma gerade der Menge ϕ[Ma ]. Leider ist die letzte Gleichung nicht zwingend korrekt, da ϕ im Allgemeinen nicht monoton bezüglich der durch das Auswahlaxiom induzierten Ordnungen ≤ ist. Es ist möglich, dass pa ≤ qa und ϕ(qa ) ≤ ϕ(pa ) gilt. In diesem Fall würde (βB ◦ ϕ)(a) = (ϕ(qA ), ϕ(pA ), ϕ(pA )) 6= (ϕ(pa ), ϕ(qa ), ϕ(qa )) gelten. Man erhält daher auf diese Weise keinen Funktor SetF → Set( )32 Abhilfe kann geschaffen werden, indem man die Tupelstruktur einer ( )32 -Coalgebra vergisst“. Dazu kann man einen Funktor wie folgt definie” ren: DEFINITION 10.12. (P2 -Funktor) Der Funktor P2 ist auf beliebigen Mengen durch P2 ( ) := {U ⊆ A | |U | ≤ 2} r {∅} definiert. Für Abbildungen f : X → Y definieren wir P2 (f ) := P(f ) Das zuvor beschriebene Problem taucht nun nicht mehr auf, allerdings erhält man so einen Funktor SetF → SetP2 statt einem Funktor SetF → Set( )32 . 102 Beispiel 2: der Funktor ( ) × ( ) − 4 + {∗} Coalgebren des Funktors G := ( ) × ( ) − 4 + {∗} entsprechen Transitionssystemen, in denen jeder Zustand keinen oder zwei verschiedene Nachfolger besitzt. Ähnlich wie im vorangegangenen Beispiel können auch für diesen Funktor zwei charakterisierende“ Tautologien aufgestellt werden: ” 1.) ( (ϕ ∨ ψ) ⇒ ( ϕ ∨ 2.) (ϕ ∨ ψ ∨ θ) ⇒ ψ)) ⇒ (ϕ ∨ ψ) ∨ ⊥ (ϕ ∨ θ) ∨ (ψ ∨ θ) Die zweite Gleichung beschreibt erneut die Bedingung, dass ein Zustand höchstens zwei Nachfolgezustände besitzt. Falls a höchstens einen Nachfolger besitzt, so ist die Prämisse von Gleichung 1.) erfüllt. Daher muss a ∈ #∅, d.h. α(a) = ∅ gelten. Bei der Konstruktion eines Funktor SetF → SetG tritt allerdings erneut das im vorigen Beispiel diskutierte Problem hinsichtlich der Tupelordnung auf. 103 Kapitel 11 Ausblick Die folgenden Fragestellungen bieten eine Anregung für weiterführende Untersuchungen: • Die Frage nach der Konstruktion eines vollständigen Inferenzsystems für CML (zumindest für Funktoren, die beliebige Schnitte erhalten) bleibt offen. Erste Ansätze dazu finden sich in Kapitel 9. • Es wurde versucht, die modale Logik von zwei speziellen Funktoren zu charakterisieren. Eine Vertiefung dieser in Kapitel 10 dargestellten Überlegungen wäre aufschlussreich. • Im Bereich der Bisimulationen und Coalgebra-Homomorphismen könnten sich weitere Untersuchungen anschließen. • Es wurde kein direkter Bezug zu der für die coalgebraische Modallogik grundlegenden Arbeit von Moss ([Mos99]) hergestellt. Eine Betrachtung des Zusammenhangs zwischen dieser und der vorliegenden Arbeit könnte weitere Einblicke liefern. • Auch wenn deterministische Funktoren (vergleiche Definition 2.32) aufgrund der starken Einschränkung keine entscheidende Rolle spielen, wäre eine Verallgemeinerung von Satz 2.31 auf beliebige Mengen wünschenswert. 104 Anhang A Symbolverzeichnis Dieses Kapitel liefert eine Übersicht über die in dieser Arbeit verwendeten Notationen. 1. Kategorientheorie C = (OC , MC ) C Op Set SetF Grp µ:F→G f : A ,→ B f :AB f| : U → B f [A] f −1 [U] Gr(f ) Ker(f ) idA ∅A cb : A → B ⊆A U die Kategorie C mit Objektklasse O C und Morphismenklasse MC . die duale Kategorie C Op zu C. die Kategorie der Mengen. die Kategorie aller F-Coalgebren. die Kategorie der Gruppen. µ ist eine natürliche Transformation von F nach G. f ist eine injektive Abbildung. f ist eine surjektive Abbildung. für eine Abbildung f : A → B und eine Teilmenge U ⊆ A die Einschränkung von f auf U. für eine Abbildung f : A → B das Bild von A unter f , d.h. f [A]:={f (a) ∈ B | a ∈ A}. für eine Abbildung f : A → B und eine Menge U ⊆ B das Urbild von U unter f , d.h. f −1 [U]:={a ∈ A | f (a) ∈ U}. für eine Abbildung f : A → B der Graph von f , d.h. Gr(f ):={(a, f (a)) | a ∈ A}. für eine Abbildung f : A → B der Kern von f , d.h. Ker(f ):={(a, b) | f (a) = f (b)}. die Identitätsabbildung auf der Menge A. die eindeutige Abbildung von ∅ nach A. für b ∈ B die konstante Abbildung auf b, d.h. c b (a) = b für alle a ∈ A. für U ⊆ A die kanonische Inklusion von U nach A. 105 P P+ P I C N n PC A−U 4A Q i∈I Ai πA : A×B → B P i∈I Ai der Potenzmengenfunktor. der Potenzmengenfunktor, so dass α A (a) 6= ∅ für alle a ∈ A. der kontravariante Potenzmengenfunktor. der Identitätsfunktor. der konstante Funktor zur Menge C. die Menge der natürlichen Zahlen. die Menge {0, . . . , n − 1}. {a ∈ A | a ∈ / P } = das Komplement von P. für U ⊆ A die Differenz von A und U , d.h. A − U = {a ∈ A | a ∈ / U }. die Diagonale auf einer Menge A, d.h. 4 A := {(a, a) | a ∈ A}. das Q kartesische Produkt der Familie (A i )i∈I , d.h. i∈I Ai = {(ai )i∈I | ai ∈ Ai }. die kanonische Projektion auf A. die SummeS der Familie (Ai )i∈I , d.h. P i∈I Ai = i∈I (Ai × {i}) = {(a, i) | i ∈ I}. 3. Universelle Coalgebra A = (A, αA ) U ≤A [U ] ϕ, ψ ∼A,B die Coalgebra mit Grundmenge A und Strukturabbildung α A . U ist Untercoalgebra von A. für eine Menge U die größte Untercoalgebra in U . Homorphismen in SetF . für zwei Coalgebren A und B die größte Bisimulation zwischen A und B. 4. Verbände L = (L, ≤) W VK K νx.τ (x) µx.τ (x) die geordnete Menge L mit Ordnung ≤. das Supremum der Menge K. das Infimum der Menge K. der größte Fixpunkt der Abbildung τ . der kleinste Fixpunkt der Abbildung τ . 106 5. Modallogik 0 K, K Prop Z τ τ (i) τ≤i Zω Comp(z) CTL ϕ ϕ≡ψ z K ϕ M = (A, V ) CML a M ϕ Kripke-Strukturen. eine Menge von atomaren Aussagen. eine Menge von Zuständen einer Kripke-Struktur. eine im Allgemeinen unendliche Zustandsfolge eines Transitionssystems. der i-te Zustand der Folge τ . die ersten i Zustände der Folge τ , d.h. τ≤i = (τ (0), . . . , τ (i − 1)). die Menge aller Pfade einer Kripke-Struktur. die Menge aller in z ∈ Z startenden Pfade, d.h. Comp(z) := {τ ∈ Zω | τ (0) = z}. die Menge aller CTL-Formeln. die Formel ϕ ist eine Tautologie. die Formeln ϕ und ψ sind semantisch äquivalent. der Zustand z der Kripke-Struktur K erfüllt die CTL-Formel ϕ. das F-Modell zur Coalgebra A = (A, α A ) mit Belegung V . die Menge aller CML-Formeln. der Zustand a ∈ A des F-Modells M = (A, V ) erfüllt die CMLFormel ϕ. 107 Literaturverzeichnis [Abe] Abels, Jörn. persönliche Kommunikation. [CGP99] Clarke, Edmund M., Orna Grumberg und Doron A. Peled: Model Checking. MIT Press, Cambridge, 1999. [EH85] Emerson, E. Allen und Joseph Y. Halpern: Decision Procedures and Expressiveness in the Temporal Logic of Branching Time. Journal of Computer and System Sciences, 30:1–24, 1985. [GS03] Gumm, H. Peter und Tobias Schröder: Types and coalgebraic structure. 2003. [Gum] Gumm, H. Peter. persönliche Kommunikation. [Gum99] Gumm, H. Peter: Elements of the General Theory of Coalgebras. Lecture notes for LUATCS’99, 1999. [HS73] Herrlich, Horst und George E. Strecker: Category Theory. Heldermann Verlag, Berlin, 1973. [Jac00] Jacobs, Bart: Exercises in Coalgebraic Specification. In: Algebraic and Coalgebraic Methods in the Mathematics of Program Construction, Seiten 237–280, 2000. [JH03] Jacobs, Bart und Jesse Hughes: Simulations in Coalgebra. In: Proc. of 6th Wksh. on Coalgebraic Methods in Computer Science, CMCS’03, Warsaw, 5-6 Apr. 2003, Band 82(1) der Reihe Electronic Notes in Theoretical Computer Science. Elsevier, Amsterdam, 2003. [Kön86] König, Dénes: Theorie der endlichen und unendlichen Graphen. Teubner, Leipzig, erste Auflage, 1986. [Mos99] Moss, Lawrence S.: Coalgebraic Logic. Annals of Pure and Applied Logic, 96(1–3):277–317, 1999. [Pop94] Popkorn, Sally: First steps in Modal Logic. Cambridge University Press, Cambridge, erste Auflage, 1994. 108 [Rut96] Rutten, Jan: Universal Coalgebra: A Theory of Systems. Report CSR9652, CWI, Amsterdam, 1996. [Sch92] Schöning, Uwe: Theoretische Informatik kurzgefasst. schaftsverlag, Mannheim, 1992. [Sch01] Schröder, Tobias: Coalgebren und Funktoren. Doktorarbeit, PhilippsUniversität Marburg, 2001. [Thi94] Thiemann, Peter: Grundlagen der funktionalen Programmierung. Teubner, Stuttgart, 1994. [Trn69] Trnkovà, Vera: Some Properties on Set Functors. Comm. Math. Univ. Carolinae, Seiten 323–352, 1969. 109 BI Wissen- Index Abbildung monoton, 32 Always coalgebraisch, 51 coalgebraische Charakterisierung, 63 duale Eigenschaft zu Sometimes, 51 Erhaltung unter Homomorphismen, 66 Tautologien, 90–91 Aussage duale, 30 verbandstheoretische, 30 Auswahlaxiom, 12 Automat, 22 Belegung, 53 Beweis formaler, 45 bisimilar, 26 Bisimulation coalgebraisch, 26 modallogisch, 37 CML Äquivalenz zu CTL, 57 F-äquivalent, 54 F-Modell, 53 F-Tautologie, 54 gültige Formel eines F-Modells, 54 Semantik, 54 semantisch äquivalent, 54 Syntax, 47 Tautologie, 54 Co-Invariante, 50 Coalgebra, 21 Beispiele, 21 CTL Äquivalenz zu CML, 57 äquivalent, 40 Modell, 40 Monotonie, 41 Semantik, 40 semantisch äquivalent, 40 Syntax, 39 Tautologie, 40 Diagrammlemma erstes für Set, 12 erstes für SetF , 24 zweites für Set, 12 zweites für SetF , 24 Dualität von 2 und 3, 51 Fixpunkt, 32 Gleichungen, 52 größter, 32 kleinster, 32 Funktor, 11 ( ) × ( ) − 4 + {∗}, 14 ( )32 , 13 deterministisch, 20 Erhaltung von Injektionen, 14 Erhaltung von Surjektionen, 14 Erhaltung von verallgemeinerten Schnitten, 17 Identitäts-, 11, 13 konstanter, 13 110 kontravarianter, 11 kontravarianter Potenzmengen-, 13 P+ , 36 P2 , 100 Potenz-, 13 Potenzmengen-, 13 Vergiss-, 11 Hasse-Diagramm, 31 Homomorphismus Coalgebra-, 22 epi-mono-Zerlegung, 23 Graph, 28 Inferenzsystem, 45 CML, 86 CTL, 45 Infimum, 30 Invariante, 50 invertierbar links-, 10 rechts-, 10 kürzbar links-, 10 rechts-, 10 Kategorie, 9 Beispiele, 9 duale, 9 Gruppen, 9 Set, 9 SetF , 22 Kripke-Struktur Berechnungsbaum, 44 bild-endlich, 35 coalgebraisch, 22 modallogisch, 35 total, 35 CTL-Operatoren, 41 Sometimes, 62 Until, 62 Morphismus Epi-, 10 Iso-, 10 Mono-, 10 natürlich isomorph, 14 natürliche Transformation, 14 Nexttime coalgebraisch, 49 Erhaltung unter Homomorphismen, 65 Monotonie, 49 Tautologien, 89–90 Ordnung, 29 Pfad, 36 Prädikatlifting, 48 Pullback, 15 Quelle, 15 Quotient, 14 Lemma von König, 44 Schnitt, 15 Schranke obere, 30 untere, 30 Sometimes coalgebraisch, 51 coalgebraische Charakterisierung, 63 duale Eigenschaft zu Always, 51 Tautologien, 92 Spur, 36 standard, 19 Strukturabbildung, 21 Supremum, 30 Menge geordnet, 29 Monotonie Always, 62 Tarski Satz von, 32 Trägermenge, 21 Transitionssystem, 21 111 Typ, 13 Untercoalgebra, 24 Charakterisierung, 25 Erhaltung unter Homomorphismen, 25 größte, 25 Schnitt, 26 Vereinigung, 25 Unterfunktor, 14 Until coalgebraisch, 51 coalgebraische Charakterisierung, 63 Tautologien, 92 Urbild, 15 Verband, 30 dualer, 30 vollständig, 30 112 Anhang B Danksagungen An dieser Stelle möchte ich mich bedanken • bei Prof. Dr. H.P. Gumm für die gute Zusammenarbeit und viele hilfreiche Diskussionen, • bei Jörn Abels für die engagierte und konstruktive Unterstützung, • bei Inga Petter, Christian Pott und Sylvia Pott für das Korrekturlesen, • bei Claudia Kirch für viele hilfreiche Tipps im Umgang mit LaTeX, • bei all denen, die mich bei der Entstehung dieser Arbeit unterstützt haben, besonders bei Sylvia und meinen Eltern. 113 Erklärung Ich versichere hiermit, dass ich die vorliegende Arbeit Modallogik für Coalgebren selbstständig verfasst habe und ausschließlich die angegebenen Hilfsmittel und Quellen verwendet habe. Marburg, 01. Juni 2004 (Ort, Datum) (Unterschrift) 114