Grundbegriffe der Informatik

Werbung
Grundbegriffe der Informatik
Einheit 17: Relationen
Thomas Worsch
Karlsruher Institut für Technologie, Fakultät für Informatik
Wintersemester 2013/2014
1/61
Anmerkung
Änderung im Wintersemester 2013/2014:
I
nichts über Nerode-Äquivalenzen
I
auch nicht in der Klausur
2/61
Überblick
Äquivalenzrelationen
Kongruenzrelationen
Halbordnungen
Ordnungen
Überblick
3/61
Überblick
Äquivalenzrelationen
Kongruenzrelationen
Halbordnungen
Ordnungen
Äquivalenzrelationen
4/61
Definition
I
Eine Äquivalenzrelation ist eine Relation R ⊆ M × M auf einer
Menge M, die
I
I
I
I
ist.
typischerweise
I
I
I
reflexiv,
symmetrisch und
transitiv
Notation ≡, ∼, ≈, oder ähnlich
Infixschreibweise
also
I
I
I
∀x ∈ M : x ≡ x,
∀x ∈ M : ∀y ∈ M : x ≡ y =⇒ y ≡ x
∀x ∈ M : ∀y ∈ M : ∀z ∈ M : x ≡ y ∧ y ≡ z =⇒ x ≡ z
Äquivalenzrelationen
5/61
Einfachstes Beispiel: Identität
I = {(x,x ) | x ∈ M } ist Äquivalenzrelation (für jede Menge M), denn
I
∀x ∈ M : x = x,
I
∀x ∈ M : ∀y ∈ M : x = y =⇒ y = x
I
∀x ∈ M : ∀y ∈ M : ∀z ∈ M : x = y ∧ y = z =⇒ x = z
Äquivalenzrelationen
6/61
Wichtiges Beispiel: Kongruenz modulo n
I
I
Es sei n ∈ N+ .
x,y ∈ Z heißen kongruent modulo n, wenn
I
I
I
I
die Differenz x − y durch n teilbar ist
also x und y gleichen Rest bei Division durch n liefern
Schreibweise x ≡ y (mod n)
Das ist für jedes n ∈ N+ eine Äquivalenzrelation, denn
I
I
I
Reflexivität:
x − x = 0 ist Vielfaches von n
Symmetrie:
mit x − y ist auch y − x = −(x − y) Vielfaches von n
Transitivität:
I
I
Wenn x − y = k 1n und y − z = k 2n (mit k 1 ,k 2 ∈ Z),
dann auch x − z = (x − y) + (y − z) = (k 1 + k 2 )n ganzzahliges
Vielfaches von n
Äquivalenzrelationen
7/61
Beispiel: asymtptotisch gleiches Wachstum
I
f (n) д(n)
I
I
∃c,c 0 ∈ R+ : ∃n 0 ∈ N0 : ∀n ≥ n 0 : c f (n) ≤ д(n) ≤ c 0 f (n) .
reflexiv, symmetrisch, transitiv
I
siehe Kapitel 13
Äquivalenzrelationen
8/61
Verallgemeinerung: Urbildmengen einer Funktion
I
Es sei f : M → M 0
I
definiere binäre Relation ≡f auf M vermöge
∀x ∈ M ∀y ∈ M : x ≡f y
I
genau dann wenn
f (x ) = f (y)
Behauptung: ≡f ist eine Äquivalenzrelation
I
I
I
Reflexivität: ∀x ∈ M:
f (x ) = f (x ) also
x ≡f x
Symmetrie: ∀x ∈ M ∀y ∈ M:
f (x ) = f (y) =⇒ f (y) = f (x )
also x ≡f y =⇒ y ≡f x
Transitivität: ∀x ∈ M ∀y ∈ M ∀z ∈ M:
f (x ) = f (y) ∧ f (y) = f (z) =⇒ f (x ) = f (z) also
x ≡f y ∧ y ≡f z =⇒ x ≡f z
Äquivalenzrelationen
9/61
Bild einer Äquivalenzrelation
Äquivalenzrelationen
10/61
Bild einer Äquivalenzrelation
Äquivalenzrelationen
11/61
Definitionen
I
Äquivalenzklasse von x ∈ M ist {y ∈ M | x ≡ y}
I
Schreibweise [x]≡ oder einfach [x], falls ≡ klar ist
I
Faktormenge (oder Faserung) von M nach ≡ ist
die Menge aller Äquivalenzklassen.
I
Schreibweise M /≡ = {[x]≡ | x ∈ M }
Äquivalenzrelationen
12/61
Beispiel: Äquivalenzklassen von Kongruenz modulo 2
I
schreiben kurz ≡2
Äquivalenzrelationen
13/61
Beispiel: Äquivalenzklassen von Kongruenz modulo 2
I
schreiben kurz ≡2
I
x ≡2 y genau dann, wenn x − y durch 2 teilbar,
also
Äquivalenzrelationen
13/61
Beispiel: Äquivalenzklassen von Kongruenz modulo 2
I
schreiben kurz ≡2
I
x ≡2 y genau dann, wenn x − y durch 2 teilbar,
also
I
je zwei gerade Zahlen sind äquivalent
Äquivalenzrelationen
13/61
Beispiel: Äquivalenzklassen von Kongruenz modulo 2
I
schreiben kurz ≡2
I
x ≡2 y genau dann, wenn x − y durch 2 teilbar,
also
I
I
je zwei gerade Zahlen sind äquivalent
je zwei ungerade Zahlen sind äquivalent
Äquivalenzrelationen
13/61
Beispiel: Äquivalenzklassen von Kongruenz modulo 2
I
schreiben kurz ≡2
I
x ≡2 y genau dann, wenn x − y durch 2 teilbar,
also
I
I
I
je zwei gerade Zahlen sind äquivalent
je zwei ungerade Zahlen sind äquivalent
eine gerade und eine ungerade Zahl sind nicht äquivalent
Äquivalenzrelationen
13/61
Beispiel: Äquivalenzklassen von Kongruenz modulo 2
I
schreiben kurz ≡2
I
x ≡2 y genau dann, wenn x − y durch 2 teilbar,
also
I
I
I
I
je zwei gerade Zahlen sind äquivalent
je zwei ungerade Zahlen sind äquivalent
eine gerade und eine ungerade Zahl sind nicht äquivalent
zwei Äquivalenzklassen
Äquivalenzrelationen
13/61
Beispiel: Äquivalenzklassen von Kongruenz modulo 2
I
schreiben kurz ≡2
I
x ≡2 y genau dann, wenn x − y durch 2 teilbar,
also
I
I
I
I
je zwei gerade Zahlen sind äquivalent
je zwei ungerade Zahlen sind äquivalent
eine gerade und eine ungerade Zahl sind nicht äquivalent
zwei Äquivalenzklassen
I
[0] = {. . . , −4, −2, 0, 2, 4, . . . }
Äquivalenzrelationen
13/61
Beispiel: Äquivalenzklassen von Kongruenz modulo 2
I
schreiben kurz ≡2
I
x ≡2 y genau dann, wenn x − y durch 2 teilbar,
also
I
I
I
I
je zwei gerade Zahlen sind äquivalent
je zwei ungerade Zahlen sind äquivalent
eine gerade und eine ungerade Zahl sind nicht äquivalent
zwei Äquivalenzklassen
I
I
[0] = {. . . , −4, −2, 0, 2, 4, . . . }
[1] = {. . . , −5, −3, −1, 1, 3, 5, . . . }
Äquivalenzrelationen
13/61
Beispiel: Äquivalenzklassen von Kongruenz modulo 2
I
schreiben kurz ≡2
I
x ≡2 y genau dann, wenn x − y durch 2 teilbar,
also
I
I
I
I
zwei Äquivalenzklassen
I
I
I
je zwei gerade Zahlen sind äquivalent
je zwei ungerade Zahlen sind äquivalent
eine gerade und eine ungerade Zahl sind nicht äquivalent
[0] = {. . . , −4, −2, 0, 2, 4, . . . }
[1] = {. . . , −5, −3, −1, 1, 3, 5, . . . }
statt Z/≡n schreibt man oft Zn
Äquivalenzrelationen
13/61
Beispiel: Äquivalenzklassen von Kongruenz modulo 2
I
schreiben kurz ≡2
I
x ≡2 y genau dann, wenn x − y durch 2 teilbar,
also
I
I
I
I
zwei Äquivalenzklassen
I
I
I
I
je zwei gerade Zahlen sind äquivalent
je zwei ungerade Zahlen sind äquivalent
eine gerade und eine ungerade Zahl sind nicht äquivalent
[0] = {. . . , −4, −2, 0, 2, 4, . . . }
[1] = {. . . , −5, −3, −1, 1, 3, 5, . . . }
statt Z/≡n schreibt man oft Zn
mehr z. B. in „Theoretische Grundlagen der Informatik“
Äquivalenzrelationen
13/61
Beispiel: Äquivalenzklassen von Kongruenz modulo 2
I
schreiben kurz ≡2
I
x ≡2 y genau dann, wenn x − y durch 2 teilbar,
also
I
I
I
I
zwei Äquivalenzklassen
I
I
I
I
je zwei gerade Zahlen sind äquivalent
je zwei ungerade Zahlen sind äquivalent
eine gerade und eine ungerade Zahl sind nicht äquivalent
[0] = {. . . , −4, −2, 0, 2, 4, . . . }
[1] = {. . . , −5, −3, −1, 1, 3, 5, . . . }
statt Z/≡n schreibt man oft Zn
mehr z. B. in „Theoretische Grundlagen der Informatik“
I
Nerode-Äquivalenz für formale Sprachen
Äquivalenzrelationen
13/61
Was ist wichtig
Das sollten Sie mitnehmen:
I Äquivalenzrelationen
I
Beispiel Kongruenz modulo n
Das sollten Sie üben:
I
definierenden Eigenschaften überprüfen
I
Anzahl Äquivalenzklassen bestimmen
Äquivalenzrelationen
14/61
Überblick
Äquivalenzrelationen
Kongruenzrelationen
Halbordnungen
Ordnungen
Kongruenzrelationen
15/61
Äquivalenzrelationen auf Mengen mit „Struktur“
I
Beispiel: ≡n auf additiver Gruppe (oder Ring) Z
I
Frage: Wie ändern sich Funktionswerte, wenn man Argumente
durch äquivalente ersetzt?
Kongruenzrelationen
16/61
Verträglichkeit mit einstelligen Funktionen und binären Operationen
I
Sei ≡ Äquivalenzrelation auf M und f : M → M eine Abbildung.
I
≡ ist mit f verträglich, wenn für alle x 1 ,x 2 ∈ M gilt:
x 1 ≡ x 2 =⇒ f (x 1 ) ≡ f (x 2 ) .
I
Sei ≡ Äquivalenzrelation und ut eine binäre Operation auf M.
I
≡ ist mit ut verträglich, wenn für alle x 1 ,x 2 ∈ M und alle y1 ,y2 ∈ M
gilt:
x 1 ≡ x 2 ∧ y1 ≡ y2 =⇒ x 1 ut y1 ≡ x 2 ut y2 .
Kongruenzrelationen
17/61
Veträglichkeit: Beispiel modulo
I
Äquivalenz „modulo n“.
I
Diese Relationen sind mit Addition, Subtraktion und
Multiplikation verträglich.
I
Beispiel: ist
und
x 1 ≡ x 2 (mod n)
also x 1 − x 2 = kn
y1 ≡ y2 (mod n)
also y1 − y2 = mn
dann auch
(x 1 + y1 ) − (x 2 + y2 ) = (x 1 − x 2 ) + (y1 − y2 ) = (k + m)n .
mit anderen Worten
x 1 + y1 ≡ x 2 + y2
Kongruenzrelationen
(mod n) .
18/61
Kongruenzrelationen
Eine Äquivalenzrelation, die mit allen gerade interessierenden
Funktionen oder/und Operationen verträglich ist, nennt man auch eine
Kongruenzrelation.
Kongruenzrelationen
19/61
Eine Operation für Äquivalenzklassen modulo n
I
es sei n beliebig, aber fest
I
für die Äquivalenzklassen von ≡n schreiben wir [x]n
I
Was ist mit dem Folgenden?
+ : Zn × Zn → Zn : [x]n + [y]n = [x + y]n
Kongruenzrelationen
20/61
Eine Operation für Äquivalenzklassen modulo n
I
es sei n beliebig, aber fest
I
für die Äquivalenzklassen von ≡n schreiben wir [x]n
I
Was ist mit dem Folgenden?
+ : Zn × Zn → Zn : [x]n + [y]n = [x + y]n
I
Ist das in Ordnung?
I
Ist das eine Definition?
I
Wo kann ein Problem sein?
Kongruenzrelationen
20/61
Induzierte Abbildungen für Äquivalenzklassen
Allgemein gilt:
I
Wenn ≡ mit f : M → M verträglich ist, dann ist
f 0 : M /≡ → M /≡ : f 0 ([x]) = [f (x )]
wohldefiniert.
I
Wenn ≡ mit ut : M × M → M verträglich ist, dann ist
t
u
0
: M /≡ × M /≡ → M /≡ : [x] ut 0 [y] = [x ut y]
wohldefiniert.
Kongruenzrelationen
21/61
Was ist wichtig
Das sollten Sie mitnehmen:
I
Kongruenzrelationen: Verträglichkeit
I
induzierte Abbildungen/Operationen für Äquivalenzklassen
Das sollten Sie üben:
I
mit Äquivalenzklassen rechnen
Kongruenzrelationen
22/61
Überblick
Äquivalenzrelationen
Kongruenzrelationen
Halbordnungen
Ordnungen
Halbordnungen
23/61
Definition antisymmetrischer Relationen
I
Relation R ⊆ M × M heißt antisymmetrisch, wenn für alle
x,y ∈ M gilt:
xRy ∧ yRx =⇒ x = y
I
Beispiel Mengeninklusion:
I
I
0
zum Beispiel M = 2M Potenzmenge einer Menge M 0
Relation
R = {(A,B) | A ⊆ M 0 ∧ B ⊆ M 0 ∧ A ⊆ B}
= {(A,B) | A ∈ M ∧ B ∈ M ∧ A ⊆ B}
⊆M ×M
I
R ist antisymmetrisch:
A ⊆ B ∧ B ⊆ A =⇒ A = B
Halbordnungen
24/61
Definition Halbordnung
I
Relation R ⊆ M × M heißt Halbordnung, wenn sie
I
I
I
reflexiv,
antisymmetrisch und
transitiv
ist.
I
Wenn R Halbordnung auf Menge M ist, nennt man auch M eine
halbgeordnete Menge.
Halbordnungen
25/61
Definition Halbordnung
I
Relation R ⊆ M × M heißt Halbordnung, wenn sie
I
I
I
reflexiv,
antisymmetrisch und
transitiv
ist.
I
Wenn R Halbordnung auf Menge M ist, nennt man auch M eine
halbgeordnete Menge.
I
Beispiel Mengeninklusion:
I
I
I
A⊆A
A ⊆ B ∧ B ⊆ A =⇒ A = B
A ⊆ B ∧ B ⊆ C =⇒ A ⊆ C
Halbordnungen
25/61
Definition Halbordnung
I
Relation R ⊆ M × M heißt Halbordnung, wenn sie
I
I
I
reflexiv,
antisymmetrisch und
transitiv
ist.
I
Wenn R Halbordnung auf Menge M ist, nennt man auch M eine
halbgeordnete Menge.
I
Beispiel Mengeninklusion:
I
I
I
I
A⊆A
A ⊆ B ∧ B ⊆ A =⇒ A = B
A ⊆ B ∧ B ⊆ C =⇒ A ⊆ C
Beachte: es gibt im allgemeinen unvergleichbare Elemente
I
z. B. {1, 2, 3} * {3, 4, 5} und {3, 4, 5} * {1, 2, 3}
Halbordnungen
25/61
Beispiel: Halbordnung auf Wörtern
I
M = A∗
I
Relation vp auf A∗ :
w 1 vp w 2 ⇐⇒ ∃u ∈ A∗ : w 1u = w 2
I
zum Beispiel im Duden:
I
I
„Klaus“ kommt vor „Klausur“
aber: vp ist echte Halbordnung
I
keine Beziehung zwischen Klausur und Übung
Halbordnungen
26/61
Darstellung von Halbordnungen (1): Graph der gesamten Relation
I
Beispiel (2 {a,b,c } , ⊆)
{a,b,c}
{a,b}
{a}
{a,c}
{b}
{b,c}
{c}
{}
Halbordnungen
27/61
Darstellung von Halbordnungen (2): Hassediagramm
I
I
zeichne nur H R = (R r I ) r (R r I ) 2
Beispiel (2 {a,b,c } , ⊆)
{a,b}
{a}
{a,b,c}
{a,c}
{b}
{b,c}
{c}
{}
Halbordnungen
28/61
Hassediagramm: enthält „alles Wesentliche“
I
Wenn R Halbordnung auf einer endlichen Menge M ist,
I
dann kann man aus H R das R wieder rekonstruieren:
Halbordnungen
29/61
Hassediagramm: enthält „alles Wesentliche“
I
Wenn R Halbordnung auf einer endlichen Menge M ist,
I
dann kann man aus H R das R wieder rekonstruieren:
H R∗ = R
Halbordnungen
29/61
Minimale und maximale Elemente
sei (M, v) halbgeordnet und T ⊆ M.
I
x ∈ T heißt minimales Element von T ,
wenn es kein y ∈ T gibt mit y v x und y , x.
I
x ∈ T heißt maximales Element von T ,
wenn es kein y ∈ T gibt mit x v y und x , y.
Halbordnungen
30/61
Minimale und maximale Elemente: Beispiele
I
Teilmenge von (2 {a,b,c } , ⊆):
ab
bc
b
c
{}
I
zwei maximale Elemente: ab und bc
I
ein minimales Element: {}
Halbordnungen
31/61
Kleinste und größte Elemente
sei (M, v) halbgeordnet und T ⊆ M.
I
x ∈ T heißt kleinstes Element von T ,
wenn für alle y ∈ T gilt: x v y.
I
x ∈ T heißt größtes Element von T ,
wenn für alle y ∈ T gilt: y v x.
Halbordnungen
32/61
Kleinte und größte Elemente: Beispiele
I
Teilmenge von (2 {a,b,c } , ⊆):
ab
bc
b
c
{}
I
kein größtes Element
I
kleinstes Element: {}
Halbordnungen
33/61
Kleinte und größte Elemente: Beispiele
I
Teilmenge von (2 {a,b,c } , ⊆):
ab
bc
b
c
{}
I
kein größtes Element
I
kleinstes Element: {}
I
Achtung: Eine unendliche Teilmenge kann z. B. genau ein
minimales Element haben und trotzdem kein kleinstes!
Halbordnungen
33/61
Kleinste und größte Elemente
sei (M, v) halbgeordnet und T ⊆ M.
I
I
T kann nicht zwei verschiedene kleinste (bzw. größte) Elemente
haben.
Beweis für Eindeutigkeit des kleinsten Elements
I
I
I
I
I
seien x 1 und x 2 kleinste Elemente,
dann ist x 1 v x 2 , weil x 1 kleinstes Element,
und es ist x 2 v x 1 , weil x 2 kleinstes Element,
also wegen Antisymmetrie: x 1 = x 2
Beweis für Eindeutigkeit des größten Elements analog
Halbordnungen
34/61
Untere und obere Schranken
sei (M, v) halbgeordnet und T ⊆ M.
I
x ∈ M heißt obere Schranke von T ,
wenn für alle y ∈ T gilt: y v x.
I
x ∈ M heißt untere Schranke von T ,
wenn für alle y ∈ T gilt: x v y.
Halbordnungen
35/61
Untere und obere Schranken
sei (M, v) halbgeordnet und T ⊆ M.
I
x ∈ M heißt obere Schranke von T ,
wenn für alle y ∈ T gilt: y v x.
I
x ∈ M heißt untere Schranke von T ,
wenn für alle y ∈ T gilt: x v y.
I
Beachte: untere und obere Schranken von T dürfen
außerhalb von T liegen.
Halbordnungen
35/61
Untere und obere Schranken: Beispiele
I
Standardbeispiel:
abc
ab
a
ac
b
bc
c
{}
I
T = {{}, {a}, {b}}: obere Schranken {a,b} und {a,b,c}.
I
T = {{}, {a}, {b}, {a,b}}: die gleichen oberen Schranken.
Halbordnungen
36/61
Untere und obere Schranken: Beispiele
I
Standardbeispiel:
abc
ab
a
ac
b
bc
c
{}
I
T = {{}, {a}, {b}}: obere Schranken {a,b} und {a,b,c}.
I
T = {{}, {a}, {b}, {a,b}}: die gleichen oberen Schranken.
Halbordnungen
37/61
Untere und obere Schranken: Beispiele
I
Standardbeispiel:
abc
ab
a
ac
b
bc
c
{}
I
T = {{}, {a}, {b}}: obere Schranken {a,b} und {a,b,c}.
I
T = {{}, {a}, {b}, {a,b}}: die gleichen oberen Schranken.
Halbordnungen
38/61
Untere und obere Schranken müssen nicht existieren
I
Teilmenge muss keine obere Schranke besitzen
I
In
besitzt z. B. die Gesamtmenge keine obere Schranke.
Halbordnungen
39/61
Untere und obere Schranken müssen nicht existieren
I
Teilmenge muss keine obere Schranke besitzen
I
In
I
In (N0 , ≤) besitzt die Gesamtmenge keine obere Schranke.
besitzt z. B. die Gesamtmenge keine obere Schranke.
Halbordnungen
39/61
Supremum und Infimum
I
Besitzt die Menge aller oberen Schranken einer Teilmenge T ein
kleinstes Element, so heißt dies das Supremum von T
I
I
Schreibweisen
F
T oder sup(T )
Besitzt die Menge aller unteren Schranken einer Teilmenge T ein
größtes Element, so heißt dies das Infimum von T .
I
brauchen wir hier nicht
Halbordnungen
40/61
Supremum und Infimum
I
Besitzt die Menge aller oberen Schranken einer Teilmenge T ein
kleinstes Element, so heißt dies das Supremum von T
I
I
F
T oder sup(T )
Besitzt die Menge aller unteren Schranken einer Teilmenge T ein
größtes Element, so heißt dies das Infimum von T .
I
I
Schreibweisen
brauchen wir hier nicht
Supremum (bzw. Infimum) einer Teilmenge müssen nicht
existieren
I
I
weil gar keine oberen Schranken vorhanden oder
weil von den oberen Schranken keine die kleinste ist
Halbordnungen
40/61
Supremum und Infimum: Beispiele
I
0
Bei Halbordnungen (2M , ⊆) existieren Suprema immer:
I
I
0
Supremum von T ⊆ 2M ist die Vereinigung aller Teilmengen von
M, die in T liegen
Beispiel für das Beispiel:
I
I
I
M 0 = {a, b}∗
0
also ist M = 2M die Menge aller formalen Sprachen L ⊆ M 0
für i ∈ N0 sei Li = {aj bj | j ≤ i}
I
I
I
I
I
I
L 0 = {ε}
L 1 = {ε, ab}
L 2 = {ε, ab, aabb}
...
sei T = {Li | i ∈ N0 }
F
S∞
dann ist T = i=0
Li = {aj bj | j ∈ N0 }
Halbordnungen
41/61
Aufsteigende Ketten
I
aufsteigende Kette
I
I
I
abzählbar unendliche Folge (x 0 , x 1 , x 2 , . . . ) von Elementen
mit der Eigenschaft: ∀i ∈ N0 : x i v x i+1 .
kurz
x0 v x1 v x2 v x3 v · · ·
Halbordnungen
42/61
Aufsteigende Ketten
I
aufsteigende Kette
I
I
I
I
abzählbar unendliche Folge (x 0 , x 1 , x 2 , . . . ) von Elementen
mit der Eigenschaft: ∀i ∈ N0 : x i v x i+1 .
kurz
x0 v x1 v x2 v x3 v · · ·
Beispiel: (2 {a,b } , ⊆)
∗
{ε} ⊆ {ε, ab} ⊆ {ε, ab, aabb} ⊆ {ε, ab, aabb, aaabbb} . . .
Halbordnungen
42/61
Vollständige Halbordnungen
I
Eine Halbordnung heißt vollständig, wenn
I
I
sie ein kleinstes Element ⊥ hat und
jede aufsteigende Kette x 0 v x 1 v x 2 v · · ·
F
ein Supremum i x i besitzt.
Halbordnungen
43/61
Vollständige Halbordnungen
I
Eine Halbordnung heißt vollständig, wenn
I
I
I
sie ein kleinstes Element ⊥ hat und
jede aufsteigende Kette x 0 v x 1 v x 2 v · · ·
F
ein Supremum i x i besitzt.
0
Beispiele: (2M , ⊆)
I
I
kleinstes Element {}
S
Supremum von T0 ⊆ T1 ⊆ T2 ⊆ · · · ist Ti .
Halbordnungen
43/61
Vollständige Halbordnungen: weitere (Nicht-)Beispiele
I
(N0 , ≤) ist keine vollständige Halbordung
I
I
Ergänze weiteres Element u „über“ allen Zahlen:
I
I
I
I
unbeschränkt wachsende aufsteigende Ketten wie z. B.
0 ≤ 1 ≤ 2 ≤ · · · besitzen kein Supremum in N0 .
N = N0 ∪ {u}
und
x v y ⇐⇒ x,y ∈ N0 ∧ x ≤ y ∨ (y = u)
also sozusagen
0 v 1 v 2 v 3 v ··· vu
später noch nützlich
I
I
I
N 0 = N0 ∪ {u
1 ,u 2 } und
x v y ⇐⇒ x,y ∈ N0 ∧ x ≤ y
∨ x ∈ N0 ∪ {u 1 } ∧ y = u 1 ∨ y = u 2
also sozusagen
0 v 1 v 2 v 3 v · · · v u1 v u2
Halbordnungen
44/61
Monotone Abbildungen
I
v eine Halbordnung auf einer Menge M.
I
Abbildung f : M → M monoton, wenn für alle x,y ∈ M gilt:
x v y =⇒ f (x ) v f (y)
Halbordnungen
45/61
Monotone Abbildungen
I
v eine Halbordnung auf einer Menge M.
I
Abbildung f : M → M monoton, wenn für alle x,y ∈ M gilt:
x v y =⇒ f (x ) v f (y)
I
Beispiel: (N0 , ≤) mit Abbildung f (x ) = x + 1
I
I
x ≤ y =⇒ x + 1 ≤ y + 1
Nichtbeispiel: (N0 , ≤) mit Abbildung f (x ) = x mod 5
I
3 ≤ 10, aber f (3) = 3 0 = f (10).
Halbordnungen
45/61
Stetige Abbildungen
I
(D, v) sei vollständige Halbordnung
I
Abbildung f : D → D heißt stetig,
wenn für jede aufsteigende Kette x 0 v x 1 v x 2 v · · · gilt:
G
G
f ( xi ) =
f (x i )
i
Halbordnungen
i
46/61
Stetige Abbildungen: Beispiele (1)
I
N 0 = N0 ∪ {u 1 ,u 2 } mit v wie eben
I
Abbildung f : N 0 → N 0 mit

x +1





f (x ) = u 1


u
 2
falls x ∈ N0
falls x = u 1
falls x = u 2
ist stetig.
I
warum?
Halbordnungen
47/61
Stetige Abbildungen: Beispiele (2)

x + 1 falls x ∈ N0
f (x ) = 
u j
falls x = u j
(für j = 1, 2)

Zwei Fälle für aufsteigende Kette x 0 v x 1 v x 2 v · · · :
1. Die Kette wird konstant.
I
I
also x 0 v x 1 v xF2 v · · · v x i = x i+1 = x i+2 = · · · = n 0.
also jedenfalls i x i = n 0;
Halbordnungen
48/61
Stetige Abbildungen: Beispiele (2)

x + 1 falls x ∈ N0
f (x ) = 
u j
falls x = u j
(für j = 1, 2)

Zwei Fälle für aufsteigende Kette x 0 v x 1 v x 2 v · · · :
1. Die Kette wird konstant.
I
I
also x 0 v x 1 v xF2 v · · · v x i = x i+1 = x i+2 = · · · = n 0.
also jedenfalls i x i = n 0; zwei Unterfälle:
I
I
Wenn n 0 = u j ist, dann ist wegen f (u j ) = u j ist auch
F
F
F
i ) = i f (x i ).
i f (x i ) = u j , also ist f ( i xF
Wenn n 0 ∈ N0 ist, dann ist f ( i x i ) = f (n 0 ) = n 0 + 1. Andererseits
ist die Kette der Funktionswerte f (x 0 ) v f (x 1 ) v f (x 2 ) v · · · v
f (x i ) = f (x i+1 ) = f (x i+2 ) = · · · = f (n 0 ) = n 0 + 1. Also ist
F
F
f ( i x i ) = i f (x i ).
Halbordnungen
48/61
Stetige Abbildungen: Beispiele (2)

x + 1 falls x ∈ N0
f (x ) = 
u j
falls x = u j
(für j = 1, 2)

Zwei Fälle für aufsteigende Kette x 0 v x 1 v x 2 v · · · :
1. Die Kette wird konstant.
I
I
also x 0 v x 1 v xF2 v · · · v x i = x i+1 = x i+2 = · · · = n 0.
also jedenfalls i x i = n 0; zwei Unterfälle:
I
I
Wenn n 0 = u j ist, dann ist wegen f (u j ) = u j ist auch
F
F
F
i ) = i f (x i ).
i f (x i ) = u j , also ist f ( i xF
Wenn n 0 ∈ N0 ist, dann ist f ( i x i ) = f (n 0 ) = n 0 + 1. Andererseits
ist die Kette der Funktionswerte f (x 0 ) v f (x 1 ) v f (x 2 ) v · · · v
f (x i ) = f (x i+1 ) = f (x i+2 ) = · · · = f (n 0 ) = n 0 + 1. Also ist
F
F
f ( i x i ) = i f (x i ).
2. Die Kette wird nicht konstant.
I
I
I
dann alle x i ∈ N0 und die Kette wächst unbeschränkt
gleiches gilt für Kette der Funktionswerte.
Also haben beide Ketten Supremum u 1 und wegen f (u 1 ) = u 1 ist
F
F
f ( i x i ) = i f (x i ).
Halbordnungen
48/61
Stetige Abbildungen: Beispiele (3)
I
N 0 = N0 ∪ {u 1 ,u 2 } mit v wie eben
I
Abbildung д : N 0 → N 0 mit

x +1





д(x ) = u 2


u
 2
falls x ∈ N0
falls x = u 1
falls x = u 2
ist nicht stetig
Halbordnungen
49/61
Stetige Abbildungen: Beispiele (3)
I
N 0 = N0 ∪ {u 1 ,u 2 } mit v wie eben
I
Abbildung д : N 0 → N 0 mit

x +1





д(x ) = u 2


u
 2
falls x ∈ N0
falls x = u 1
falls x = u 2
ist nicht stetig
I
Unterschied zu f : д(u 1 ) = u 2
I
unbeschränkt wachsende Kette x 0 v x 1 v x 2 v · · · natürlicher
Zahlen hat Supremem u 1
F
also д( i x i ) = u 2 ,
I
I
aber Kette der Funktionswerte д(x 0 ) v д(x 1 ) v д(x 2 ) v · · · hat
F
F
Supremem i д(x i ) = u 1 , д( i x i ).
Halbordnungen
49/61
Fixpunktsatz
Satz
I
Es sei f : D → D eine monotone und stetige Abbildung auf einer
vollständigen Halbordnung (D, v) mit kleinstem Element ⊥ .
I
Elemente x i ∈ D seien wie folgt definiert:
x0 = ⊥
∀i ∈ N0 : x i+1 = f (x i )
I
Dann gilt:
1. Die x i bilden eine Kette: x 0 v x 1 v x 2 v · · · .
F
2. Das Supremum x f = i x i dieser Kette ist Fixpunkt von f , also
f (x f ) = x f .
3. x f ist der kleinste Fixpunkt von f : Wenn f (yf ) = yf ist, dann ist
x f v yf .
Anwendung: siehe Vorlesungen zu Semantik von Programmiersprachen
Halbordnungen
50/61
Fixpunktsatz: Beweis
1. Behauptung: ∀i ∈ N0 gilt x i v x i+1
vollständige Induktion:
I
I
x 0 v x 1 , weil x 0 = ⊥ das kleinste Element
wenn x i v x i+1 , dann wegen Monotonie von f auch
f (x i ) v f (x i+1 ), also x i+1 v x i+2 .
Halbordnungen
51/61
Fixpunktsatz: Beweis
1. Behauptung: ∀i ∈ N0 gilt x i v x i+1
vollständige Induktion:
I
I
x 0 v x 1 , weil x 0 = ⊥ das kleinste Element
wenn x i v x i+1 , dann wegen Monotonie von f auch
f (x i ) v f (x i+1 ), also x i+1 v x i+2 .
2. Behauptung: x f =
I
I
I
I
F
i
x i ist Fixpunkt, also f (x f ) = x f
Wegen Stetigkeit von f ist
F
F
F
f (x f ) = f ( i x i ) = i f (x i ) = i x i+1 .
Folge der x i+1 unterscheidet sich von Folge der x i nur durch
fehlendes erstes Element ⊥ .
Also haben beide Folgen das gleiche Supremum x f (klar?)
F
F
also i x i+1 = i x i = x f
also ist f (x f ) = x f
Halbordnungen
51/61
Fixpunktsatz: Beweis
1. Behauptung: ∀i ∈ N0 gilt x i v x i+1
vollständige Induktion:
I
I
x 0 v x 1 , weil x 0 = ⊥ das kleinste Element
wenn x i v x i+1 , dann wegen Monotonie von f auch
f (x i ) v f (x i+1 ), also x i+1 v x i+2 .
2. Behauptung: x f =
I
I
I
I
F
i
x i ist Fixpunkt, also f (x f ) = x f
Wegen Stetigkeit von f ist
F
F
F
f (x f ) = f ( i x i ) = i f (x i ) = i x i+1 .
Folge der x i+1 unterscheidet sich von Folge der x i nur durch
fehlendes erstes Element ⊥ .
Also haben beide Folgen das gleiche Supremum x f (klar?)
F
F
also i x i+1 = i x i = x f
also ist f (x f ) = x f
3. Behauptung: x f ist kleinster Fixpunkt. Sei f (yf ) = yf .
I
I
I
Induktion lehrt: ∀i ∈ N0 : x i v yf .
also ist yf eine obere Schranke der Kette,
F
also ist gilt für die kleinste obere Schranke: x f = i x i v yf .
Halbordnungen
51/61
Was ist wichtig
Das sollten Sie mitnehmen:
I Halbordnungen sind
I
I
I
reflexiv,
antisymmetrisch und
transitiv
I
vollständige Halbordnungen: jede aufsteigende Kette hat
Supremum
F
F
stetige Abbildungen: f ( x i ) = f (x i )
I
Fixpunktsatz
I
Das sollten Sie üben:
I
Nachweis der Eigenschaften von (vollständigen) Halbordnungen
I
Beweise einfacher Aussagen
I
an ungewohnte Eigenschaften von Halbordnungen gewöhnen
(Unendlichkeit lässt grüßen) (siehe auch gleich)
Halbordnungen
52/61
Überblick
Äquivalenzrelationen
Kongruenzrelationen
Halbordnungen
Ordnungen
Ordnungen
53/61
Totale Ordnungen: Definition
I
Relation R ⊆ M × M ist eine Ordnung oder genauer totale
Ordnung, wenn
I
I
R Halbordnung ist
und gilt:
∀x,y ∈ M : xRy ∨ yRx
Ordnungen
54/61
Totale Ordnungen: Definition
I
Relation R ⊆ M × M ist eine Ordnung oder genauer totale
Ordnung, wenn
I
I
R Halbordnung ist
und gilt:
∀x,y ∈ M : xRy ∨ yRx
I
I
Es gibt keine unvergleichbaren Elemente.
Beispiele:
I
I
I
(N0 , ≤)
(Z × Z, v) mit (x 1 ,x 2 ) v (y1 ,y2 ) ⇐⇒ x 1 < y1 ∨ (x 1 = y1 ∧ x 2 ≤ y2 )
({a, b}∗ , v1 ) mit v1 „wie im Wörterbuch“
Ordnungen
54/61
Totale Ordnungen auf A∗
I
Relation vp auf {a, b}∗ :
w 1 vp w 2 ⇐⇒ ∃u ∈ A∗ : w 1u = w 2
ist keine totale Ordnung
I
I
z. B. sind a und b unvergleichbar
Wie kann man aus vp eine totale Ordnung machen?
Ordnungen
55/61
Totale Ordnungen auf A∗
I
Relation vp auf {a, b}∗ :
w 1 vp w 2 ⇐⇒ ∃u ∈ A∗ : w 1u = w 2
ist keine totale Ordnung
I
z. B. sind a und b unvergleichbar
I
Wie kann man aus vp eine totale Ordnung machen?
I
jedenfalls totale Ordnung vA auf A nötig, z. B. a vA b
I
und dann?
I
mehrere Möglichkeiten . . .
Ordnungen
55/61
Lexikographische Ordnung v1 (Wörterbuch)
Suche längstes gemeinsames Präfix v
w1
v
?
w2
Ordnungen
56/61
Lexikographische Ordnung v1 (Wörterbuch)
Suche längstes gemeinsames Präfix v
w1
v
?
w2
I
ein gemeinsames Präfix gibt es immer: ε
I
stets |v | ≤ min(|w 1 |, |w 2 |)
I
es gibt ein längstes
I
das längste ist eindeutig bestimmt
Ordnungen
56/61
Lexikographische Ordnung v1 (Wörterbuch)
1. Fall: |v | = min(|w 1 |, |w 2 |)
drei Möglichkeiten
I
|v | = |w 1 | < |w 2 |
I
|v | = |w 1 | = |w 2 | = |v |
I
|w 1 | > |w 2 | = |v |
Ordnungen
56/61
Lexikographische Ordnung v1 (Wörterbuch)
1. Fall: |v | = min(|w 1 |, |w 2 |)
drei Möglichkeiten
I
|v | = |w 1 | < |w 2 |
I
|v | = |w 1 | = |w 2 | = |v |
I
|w 1 | > |w 2 | = |v |
:
definiere w 1 v1 w 2
w1
v
w2
Ordnungen
56/61
Lexikographische Ordnung v1 (Wörterbuch)
1. Fall: |v | = min(|w 1 |, |w 2 |)
drei Möglichkeiten
I
|v | = |w 1 | < |w 2 |
I
|v | = |w 1 | = |w 2 | = |v |:
I
:
definiere w 1 v1 w 2
definiere w 1 v1 w 2 und w 2 v1 w 1
|w 1 | > |w 2 | = |v |
w1
v
w2
Ordnungen
56/61
Lexikographische Ordnung v1 (Wörterbuch)
1. Fall: |v | = min(|w 1 |, |w 2 |)
drei Möglichkeiten
I
|v | = |w 1 | < |w 2 |
I
|v | = |w 1 | = |w 2 | = |v |:
I
|w 1 | > |w 2 | = |v |:
:
definiere w 1 v1 w 2
definiere w 1 v1 w 2 und w 2 v1 w 1
definiere w 2 v1 w 1
w1
v
w2
Ordnungen
56/61
Lexikographische Ordnung v1 (Wörterbuch)
2. Fall: |v | < min(|w 1 |, |w 2 |)
w1
v
w2
Ordnungen
56/61
Lexikographische Ordnung v1 (Wörterbuch)
2. Fall: |v | < min(|w 1 |, |w 2 |)
x
M
v
,
w1
w2
y
M
Ordnungen
56/61
Lexikographische Ordnung v1 (Wörterbuch)
2. Fall: |v | < min(|w 1 |, |w 2 |)
x
M
v
,
w1
w2
y
M
I
wenn x vA y dann w 1 v1 w 2
I
wenn y vA x dann w 2 v1 w 1
Ordnungen
56/61
Lexikographische Ordnung v1 (Wörterbuch)
I
seien w 1 ,w 2 ∈ A∗
I
sei v ∈ A∗ das maximal lange Präfix,
so dass es u 1 ,u 2 ∈ A∗ gibt mit w 1 = v u 1 und w 2 = v u 2 .
Fallunterscheidung:
I
1. Falls v = w 1 ist, gilt w 1 v1 w 2
Falls v = w 2 ist, gilt w 2 v1 w 1
2. Falls w 1 , v , w 2 , gibt es x,y ∈ A und u 10,u 20 ∈ A∗ mit
I
I
x , y und
w 1 = v x u 10 und w 2 = v y u 20
Dann gilt w 1 v1 w 2 ⇐⇒ x vA y.
I
Beispiele
1. „Klaus“ kommt vor „Klausur“
2. „Klausur“ kommt vor „Übung“
(im Duden, aber nicht im Studium!)
Ordnungen
57/61
Lexikographische Ordnung v1 (2)
I
Wenn man nur endlich viele Wörter ordnen muss (Wörterbuch),
dann „harmlos“; Beispiel:
a v1 aa v1 aaa v1 aaaa
v1 ab v1 aba v1 abbb
v1 b v1 baaaaaa v1 baab
v1 bbbbb
Ordnungen
58/61
Lexikographische Ordnung v1 (2)
I
Wenn man nur endlich viele Wörter ordnen muss (Wörterbuch),
dann „harmlos“; Beispiel:
a v1 aa v1 aaa v1 aaaa
v1 ab v1 aba v1 abbb
v1 b v1 baaaaaa v1 baab
v1 bbbbb
I
wenn man A∗ ordnet, nicht ganz so harmlos; unvollständig
I
I
ε v1 a v1 aa v1 aaa v1 aaaa v1 · · · besitzt kein Supremum,
denn
I
I
I
jedes Wort, das mindestens ein b enthält, ist obere Schranke,
zu jeder oberen Schranke w ist a |w | b ist eine echt kleine obere
Schranke (weil w ein b enthält)
b w1 ab w1 aab w1 aaab w1 aaaab w1 · · · hat kein Infimum
Ordnungen
58/61
Lexikographische Ordnung v2
I
andere lexikographische Ordnung v2 auf A∗ :
w 1 v2 w 2 gilt genau dann, wenn
I
I
I
entweder |w 1 | < |w 2 |
oder |w 1 | = |w 2 | und w 1 v1 w 2 gilt.
Diese Ordnung beginnt also z. B. im Fall A = {a, b} bei
naheliegender Ordnung vA so:
ε v2 a v2 b
v2 aa v2 ab v2 ba v2 bb
v2 aaa v2 · · · v2 bbb
v2 aaaa v2 · · · v2 bbbb
···
Ordnungen
59/61
v1 und v2 sind totale Ordnungen
I
v1 auf Menge An aller Wörter fester Länge n ist totale Ordnung
I
I
I
I
Halbordnung: nachprüfen . . .
für verschiedene Wörter gleicher Länge niemals w 1 = v oder
w 2 = v.
da vA als total vorausgesetzt wird, ist bei w 1 = v x u 10 und
w 2 = v y u 20 stets x vA y oder y vA x
also stets w 1 v1 w 2 oder w 2 v1 w 1 .
I
also v2 auf A∗ totale Ordnung
I
v1 für verschieden lange Wörter: nachprüfen . . .
Ordnungen
60/61
Was ist wichtig
Das sollten Sie mitnehmen:
I totale Ordnungen sind
I
I
I
Halbordnungen
ohne unvergleichbare Elemente
Anwendung an diversen Stellen in der Informatik (z. B. Semantik,
Testmuster, . . . )
Das sollten Sie üben:
I
Nachweis der Eigenschaften von totalen Ordnungen
I
Beweise einfacher Aussagen
I
an ungewohnte Eigenschaften von Ordnungen gewöhnen
(Unendlichkeit lässt grüßen)
Ordnungen
61/61
Herunterladen