tut07_1.pdf

93
Universität Karlsruhe (TH) Forschungsuniversität · gegründet 1825

Transcript of tut07_1.pdf

Page 1: tut07_1.pdf

Informatik I - Tutorium� Wintersemester 2007/08 �

Christian Jülg

http://infotut.blogspot.com

10. Dezember 2007

Universität Karlsruhe (TH)Forschungsuniversität · gegründet 1825

Quellennachweis & Dank an:

Susanne Dinkler, Bernhard Müller, Joachim Wilke

Page 2: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Übersicht

1 Organisatorisches

2 Übungsblatt 6

3 Relationen/Graphen

4 GraphenWarshall-Algorithmus

5 AlgebraNormalformen

6 Semi-Thue-Termersetzungen

7 AbschlussFeedback

Informatik I - Tutorium Christian Jülg

Page 3: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

1 Organisatorisches

2 Übungsblatt 6

3 Relationen/Graphen

4 GraphenWarshall-Algorithmus

5 AlgebraNormalformen

6 Semi-Thue-Termersetzungen

7 AbschlussFeedback

Informatik I - Tutorium Christian Jülg

Page 4: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Wenn doch noch Fragen auftauchen...

Kontakt

Kontakt: [email protected]

Homepage: http://infotut.blogspot.com

bitte beachten:

Im Betre� der Emails [08] einfügen!

Informatik I - Tutorium Christian Jülg

Page 5: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Wenn doch noch Fragen auftauchen...

Kontakt

Kontakt: [email protected]

Homepage: http://infotut.blogspot.com

bitte beachten:

Im Betre� der Emails [08] einfügen!

Informatik I - Tutorium Christian Jülg

Page 6: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Organisatorisches

Rechnerübung

Nächste normale RÜ mit Anmeldung am Di, 11.12. im RZ, Pool B- aber nur wenn es Anmeldungen gibt. Anmeldung per Email oderdirekt im Tut.

Informatik I - Tutorium Christian Jülg

Page 7: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

1 Organisatorisches

2 Übungsblatt 6

3 Relationen/Graphen

4 GraphenWarshall-Algorithmus

5 AlgebraNormalformen

6 Semi-Thue-Termersetzungen

7 AbschlussFeedback

Informatik I - Tutorium Christian Jülg

Page 8: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Übungsblatt 6

Kurzer Rückblick...

Informatik I - Tutorium Christian Jülg

Page 9: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Übungsblatt 6

Kurzer Rückblick...

Fragen?

Informatik I - Tutorium Christian Jülg

Page 10: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

call-by-reference am Werk

Listing 1: visible e�ect1 class Data{

2 String data = "";

3 }

4 class CallByRef{

5 static void m(Data in){

6 in.data += " And more text.";

7 }

8 public static void main(String cmd []){

9 Data d = new Data();

10 d.data = "A text.";

11 System.out.println( d.data );

12 m( d );

13 System.out.println( d.data );

14 }

15 }

Informatik I - Tutorium Christian Jülg

Page 11: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

call-by-reference bei Arrays

1 class CallByRefArray{

2 public static void main(String [] args) {

3 int []a = {1};

4 m( a );

5 System.out.println(a[0]);

6 } // Output: 42

7 static void m(int[] b) {

8 b[0] = 42;

9 }

10 }

wichtig:Array-Variablen sind lediglich Verweise auf das jeweilige Array⇒ immer call-by-referenceTipp:sobald Zuweisung mit new möglich, ist die Variable ein Verweis

Informatik I - Tutorium Christian Jülg

Page 12: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Und nochmal...

Schleifeninvarianten sind Aussagen ...1 ... die während des gesamten Schleifendurchlaufs gelten.2 ... die helfen, die Korrektheit von Programmen zu beweisen.3 ... die man am schnellsten durch einen Gegenbeispiel beweist.

for (;;) { Out.print("a"); } ist ...1 ... eine Endlosschleife.2 ... unnötig, weil Out.print nie ausgeführt wird.3 ... ein Sytaxfehler.

Ein ungerichteter Graph ...1 ... lässt sich leicht in einen gerichteten Graphen umformen.2 ... hat nur Knoten mit �Eingangsgrad = Ausgangsgrad�.3 ... hat immer mindestens eine Kante.

Informatik I - Tutorium Christian Jülg

Page 13: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Und nochmal...

Schleifeninvarianten sind Aussagen ...1 ... die während des gesamten Schleifendurchlaufs gelten.2 ... die helfen, die Korrektheit von Programmen zu beweisen.3 ... die man am schnellsten durch einen Gegenbeispiel beweist.

for (;;) { Out.print("a"); } ist ...1 ... eine Endlosschleife.2 ... unnötig, weil Out.print nie ausgeführt wird.3 ... ein Sytaxfehler.

Ein ungerichteter Graph ...1 ... lässt sich leicht in einen gerichteten Graphen umformen.2 ... hat nur Knoten mit �Eingangsgrad = Ausgangsgrad�.3 ... hat immer mindestens eine Kante.

Informatik I - Tutorium Christian Jülg

Page 14: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Und nochmal...

Schleifeninvarianten sind Aussagen ...1 ... die während des gesamten Schleifendurchlaufs gelten.2 ... die helfen, die Korrektheit von Programmen zu beweisen.3 ... die man am schnellsten durch einen Gegenbeispiel beweist.

for (;;) { Out.print("a"); } ist ...1 ... eine Endlosschleife.2 ... unnötig, weil Out.print nie ausgeführt wird.3 ... ein Sytaxfehler.

Ein ungerichteter Graph ...1 ... lässt sich leicht in einen gerichteten Graphen umformen.2 ... hat nur Knoten mit �Eingangsgrad = Ausgangsgrad�.3 ... hat immer mindestens eine Kante.

Informatik I - Tutorium Christian Jülg

Page 15: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Und nochmal...

Schleifeninvarianten sind Aussagen ...1 ... die während des gesamten Schleifendurchlaufs gelten.2 ... die helfen, die Korrektheit von Programmen zu beweisen.3 ... die man am schnellsten durch einen Gegenbeispiel beweist.

for (;;) { Out.print("a"); } ist ...1 ... eine Endlosschleife.2 ... unnötig, weil Out.print nie ausgeführt wird.3 ... ein Sytaxfehler.

Ein ungerichteter Graph ...1 ... lässt sich leicht in einen gerichteten Graphen umformen.2 ... hat nur Knoten mit �Eingangsgrad = Ausgangsgrad�.3 ... hat immer mindestens eine Kante.

Informatik I - Tutorium Christian Jülg

Page 16: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

1 Organisatorisches

2 Übungsblatt 6

3 Relationen/Graphen

4 GraphenWarshall-Algorithmus

5 AlgebraNormalformen

6 Semi-Thue-Termersetzungen

7 AbschlussFeedback

Informatik I - Tutorium Christian Jülg

Page 17: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Relationen � Überblick

Durch Relationen werden Elemente einer oder mehrerer Mengen inBeziehung gesetzt

Praktisch jede Aussage enhält Relationen.

Beispiel: �Das Haus hat vier Auÿenwände�

In der Informatik werden Relationen zur Modellierung von Systemenbenötigt.

Relationen sind wesentlicher Bestandteil der verschiedenenDiagramme der Uni�ed Modeling Language

Aus der graphischen Darstellung von Relationen resultieren dieGraphen.

Informatik I - Tutorium Christian Jülg

Page 18: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Relationen mathematisch

Eine Relation ρ bezieht sich auf zwei Grundmengen U,V und es giltρ ⊆ U × V .Eine Relation heiÿt homogen, wenn U = V gilt. I.d.R. nennt mandie Grundmenge dann E , also ρ ⊆ E × E .

Attribute von homogenen Relationen

re�exiv xρx

transitiv Aus xρy und yρz folgt xρz

symmetrisch Aus xρy folgt yρx

Für uns wichtig: Homogene Relationen mit einer endlichenGrundmenge E .

Wir benennen die Elemente aus E mit ei , i = 0, . . . , n − 1

Diese kann man anschaulich als gerichtete Graphen darstellen.

Informatik I - Tutorium Christian Jülg

Page 19: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Relationen mathematisch

Eine Relation ρ bezieht sich auf zwei Grundmengen U,V und es giltρ ⊆ U × V .Eine Relation heiÿt homogen, wenn U = V gilt. I.d.R. nennt mandie Grundmenge dann E , also ρ ⊆ E × E .

Attribute von homogenen Relationen

re�exiv xρx

transitiv Aus xρy und yρz folgt xρz

symmetrisch Aus xρy folgt yρx

Für uns wichtig: Homogene Relationen mit einer endlichenGrundmenge E .

Wir benennen die Elemente aus E mit ei , i = 0, . . . , n − 1

Diese kann man anschaulich als gerichtete Graphen darstellen.

Informatik I - Tutorium Christian Jülg

Page 20: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Gerichteter Graph

Ein gerichteter Graph G ist ein Tupel G = (E ,K ) mit

der Grundmenge E = {ei} (die Menge der Ecken)

der Relation K ⊆ E × E (die Menge der Kanten)Notationen für Kanten:

(e, e′) ∈ Ke →G e

e → e′

Ein Graph heiÿt endlich, wenn E endlich ist (|E | <∞)

Informatik I - Tutorium Christian Jülg

Page 21: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Zeichnerische Darstellung von gerichteten Graphen

Man malt die Ecken als Punkte und die Kanten als Pfeile.

a b

c

d

e

a

b

c

d

e

Sind die beiden Graphen gleich?

Gebt die Graphen in Tupelschreibweise an!

Informatik I - Tutorium Christian Jülg

Page 22: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Zeichnerische Darstellung von gerichteten Graphen

Man malt die Ecken als Punkte und die Kanten als Pfeile.

a b

c

d

e

a

b

c

d

e

Die Anordnung der Knoten, sowie Bahn der Kanten ist egal.

Gebt den Graph in Tupelschreibweise an!

Informatik I - Tutorium Christian Jülg

Page 23: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Zeichnerische Darstellung von gerichteten Graphen

Man malt die Ecken als Punkte und die Kanten als Pfeile.

a b

c

d

e

a

b

c

d

e

Die Anordnung der Knoten, sowie Bahn der Kanten ist egal.

G = ({a, b, c , d , e}, {(a, b), (a, c), (a, d), (b, c), (d , b), (d , c)})

Informatik I - Tutorium Christian Jülg

Page 24: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Ungerichteter Graph

Ein ungerichteter Graph ist ein gerichteter Graph G = (E ,K ) mit

∀(e, e ′) ∈ K ⇒ (e ′, e) ∈ K

oder, anders formuliert:

∀e, e ′ ∈ E : e → e ′ ⇔ e ′ → e

Graphisch werden die Kanten als Verbindungslinen ohne

Pfeilspitzen (oder manchmal auch mit Pfeilspitzen auf beidenSeiten) dargestellt.

a

b c

d

Informatik I - Tutorium Christian Jülg

Page 25: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Beispiele (für sinnvolle Graphen)

Gerichtete Graphen

Verlinkung auf Webseiten (oder Buchreferenzen)

Bahn- Flugverbindungen

Stammbäume

Ungerichtete Graphen

Stromnetz

Irrgarten

Lagepläne

Informatik I - Tutorium Christian Jülg

Page 26: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Beispiele (für sinnvolle Graphen)

Gerichtete Graphen

Verlinkung auf Webseiten (oder Buchreferenzen)

Bahn- Flugverbindungen

Stammbäume

Ungerichtete Graphen

Stromnetz

Irrgarten

Lagepläne

Informatik I - Tutorium Christian Jülg

Page 27: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Beispiele (für sinnvolle Graphen)

Gerichtete Graphen

Verlinkung auf Webseiten (oder Buchreferenzen)

Bahn- Flugverbindungen

Stammbäume

Ungerichtete Graphen

Stromnetz

Irrgarten

Lagepläne

Informatik I - Tutorium Christian Jülg

Page 28: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Weg und Zyklus

Weg

Zyklus (Kreis)

Einfacher Zyklus

Hamiltonscher Kreis

Eulerscher Zyklus

Informatik I - Tutorium Christian Jülg

Page 29: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Weg und Zyklus

Weg Eine Folge von e0 nach en über e1, . . . , en−1heiÿt Weg der Länge n.Wenn es so einen Weg gibt, dann heiÿt en vone0 aus erreichbar. Wir schreiben: e0 →∗ en

Zyklus (Kreis)

Einfacher Zyklus

Hamiltonscher Kreis

Eulerscher Zyklus

Informatik I - Tutorium Christian Jülg

Page 30: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Weg und Zyklus

Weg Eine Folge von e0 nach en über e1, . . . , en−1heiÿt Weg der Länge n.Wenn es so einen Weg gibt, dann heiÿt en vone0 aus erreichbar. Wir schreiben: e0 →∗ en

Zyklus (Kreis) Ein Weg e →∗ e der Länge n ≥ 1

Einfacher Zyklus

Hamiltonscher Kreis

Eulerscher Zyklus

Informatik I - Tutorium Christian Jülg

Page 31: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Weg und Zyklus

Weg Eine Folge von e0 nach en über e1, . . . , en−1heiÿt Weg der Länge n.Wenn es so einen Weg gibt, dann heiÿt en vone0 aus erreichbar. Wir schreiben: e0 →∗ en

Zyklus (Kreis) Ein Weg e →∗ e der Länge n ≥ 1

Einfacher Zyklus Ein Zyklus, in dem alle Ecken verschiedensind.

Hamiltonscher Kreis

Eulerscher Zyklus

Informatik I - Tutorium Christian Jülg

Page 32: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Weg und Zyklus

Weg Eine Folge von e0 nach en über e1, . . . , en−1heiÿt Weg der Länge n.Wenn es so einen Weg gibt, dann heiÿt en vone0 aus erreichbar. Wir schreiben: e0 →∗ en

Zyklus (Kreis) Ein Weg e →∗ e der Länge n ≥ 1

Einfacher Zyklus Ein Zyklus, in dem alle Ecken verschiedensind.

Hamiltonscher Kreis Ein Kreis, in dem jede Ecke des Graphengenau einmal enthalten ist.

Eulerscher Zyklus

Informatik I - Tutorium Christian Jülg

Page 33: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Weg und Zyklus

Weg Eine Folge von e0 nach en über e1, . . . , en−1heiÿt Weg der Länge n.Wenn es so einen Weg gibt, dann heiÿt en vone0 aus erreichbar. Wir schreiben: e0 →∗ en

Zyklus (Kreis) Ein Weg e →∗ e der Länge n ≥ 1

Einfacher Zyklus Ein Zyklus, in dem alle Ecken verschiedensind.

Hamiltonscher Kreis Ein Kreis, in dem jede Ecke des Graphengenau einmal enthalten ist.

Eulerscher Zyklus ein Zyklus, in dem jede Kante genau einmalenthalten ist.

Informatik I - Tutorium Christian Jülg

Page 34: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

1 Organisatorisches

2 Übungsblatt 6

3 Relationen/Graphen

4 GraphenWarshall-Algorithmus

5 AlgebraNormalformen

6 Semi-Thue-Termersetzungen

7 AbschlussFeedback

Informatik I - Tutorium Christian Jülg

Page 35: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Re�exive Transitive Hülle nach Warshall

Gegeben sei eine re�exive Relation ρ über einer endlichenEckenmenge E = {0, . . . , n − 1}. σ(k) sei folgende Relation:

σ(k) = {(i , j) ∈ E × E |∃Weg i → e1 → · · · → el−1 → j

mit l ≤ k + 2, er ∈ {0, . . . , k} für 1 ≤ r ≤ l − 1}

0 1

23

σ(0) :

1 0 1 00 1 0 00 1 1 01 0 0 1

σ(2) :

1 0 1 00 1 0 00 1 1 01 0 1 1

σ(1) :

1 0 1 00 1 0 00 1 1 01 0 1 1

σ(3) :

1 1 1 00 1 0 00 1 1 01 1 1 1

Informatik I - Tutorium Christian Jülg

Page 36: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Re�exive Transitive Hülle nach Warshall

Gegeben sei eine re�exive Relation ρ über einer endlichenEckenmenge E = {0, . . . , n − 1}. σ(k) sei folgende Relation:

σ(k) = {(i , j) ∈ E × E |∃Weg i → e1 → · · · → el−1 → j

mit l ≤ k + 2, er ∈ {0, . . . , k} für 1 ≤ r ≤ l − 1}

0 1

23

σ(0) :

1 0 1 00 1 0 00 1 1 01 0 1 1

σ(2) :

1 0 1 00 1 0 00 1 1 01 0 1 1

σ(1) :

1 0 1 00 1 0 00 1 1 01 0 1 1

σ(3) :

1 1 1 00 1 0 00 1 1 01 1 1 1

Informatik I - Tutorium Christian Jülg

Page 37: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Re�exive Transitive Hülle nach Warshall

Gegeben sei eine re�exive Relation ρ über einer endlichenEckenmenge E = {0, . . . , n − 1}. σ(k) sei folgende Relation:

σ(k) = {(i , j) ∈ E × E |∃Weg i → e1 → · · · → el−1 → j

mit l ≤ k + 2, er ∈ {0, . . . , k} für 1 ≤ r ≤ l − 1}

0 1

23

σ(0) :

1 0 1 00 1 0 00 1 1 01 0 1 1

σ(2) :

1 0 1 00 1 0 00 1 1 01 0 1 1

σ(1) :

1 0 1 00 1 0 00 1 1 01 0 1 1

σ(3) :

1 1 1 00 1 0 00 1 1 01 1 1 1

Informatik I - Tutorium Christian Jülg

Page 38: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Re�exive Transitive Hülle nach Warshall

Gegeben sei eine re�exive Relation ρ über einer endlichenEckenmenge E = {0, . . . , n − 1}. σ(k) sei folgende Relation:

σ(k) = {(i , j) ∈ E × E |∃Weg i → e1 → · · · → el−1 → j

mit l ≤ k + 2, er ∈ {0, . . . , k} für 1 ≤ r ≤ l − 1}

0 1

23

σ(0) :

1 0 1 00 1 0 00 1 1 01 0 1 1

σ(2) :

1 0 1 00 1 0 00 1 1 01 0 1 1

σ(1) :

1 0 1 00 1 0 00 1 1 01 0 1 1

σ(3) :

1 1 1 00 1 0 00 1 1 01 1 1 1

Informatik I - Tutorium Christian Jülg

Page 39: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Re�exive Transitive Hülle nach Warshall

Gegeben sei eine re�exive Relation ρ über einer endlichenEckenmenge E = {0, . . . , n − 1}. σ(k) sei folgende Relation:

σ(k) = {(i , j) ∈ E × E |∃Weg i → e1 → · · · → el−1 → j

mit l ≤ k + 2, er ∈ {0, . . . , k} für 1 ≤ r ≤ l − 1}

0 1

23

σ(0) :

1 0 1 00 1 0 00 1 1 01 0 1 1

σ(2) :

1 0 1 00 1 0 00 1 1 01 0 1 1

σ(1) :

1 0 1 00 1 0 00 1 1 01 0 1 1

σ(3) :

1 1 1 00 1 0 00 1 1 01 1 1 1

Informatik I - Tutorium Christian Jülg

Page 40: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Re�exive Transitive Hülle nach Warshall

Gegeben sei eine re�exive Relation ρ über einer endlichenEckenmenge E = {0, . . . , n − 1}. σ(k) sei folgende Relation:

σ(k) = {(i , j) ∈ E × E |∃Weg i → e1 → · · · → el−1 → j

mit l ≤ k + 2, er ∈ {0, . . . , k} für 1 ≤ r ≤ l − 1}

0 1

23

σ(0) :

1 0 1 00 1 0 00 1 1 01 0 1 1

σ(2) :

1 1 1 00 1 0 00 1 1 01 1 1 1

σ(1) :

1 0 1 00 1 0 00 1 1 01 0 1 1

σ(3) :

1 1 1 00 1 0 00 1 1 01 1 1 1

Informatik I - Tutorium Christian Jülg

Page 41: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Re�exive Transitive Hülle nach Warshall

Gegeben sei eine re�exive Relation ρ über einer endlichenEckenmenge E = {0, . . . , n − 1}. σ(k) sei folgende Relation:

σ(k) = {(i , j) ∈ E × E |∃Weg i → e1 → · · · → el−1 → j

mit l ≤ k + 2, er ∈ {0, . . . , k} für 1 ≤ r ≤ l − 1}

0 1

23

σ(0) :

1 0 1 00 1 0 00 1 1 01 0 1 1

σ(2) :

1 1 1 00 1 0 00 1 1 01 1 1 1

σ(1) :

1 0 1 00 1 0 00 1 1 01 0 1 1

σ(3) :

1 1 1 00 1 0 00 1 1 01 1 1 1

Informatik I - Tutorium Christian Jülg

Page 42: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Der Warshall-Algorithmus

Anforderungsbeschreibung

Eingabe: Adjazenzmatrix A einer Relation σ

Ausgabe: Adjanzenzmatrix S von σ∗

Der Algorithmus

1 S := A

2 // Reflexivität auf der Diagonalen ergänzen

3 for i = 0, . . . , n − 1 set sii := 14 // Transitive Hülle berechnen

5 for k = 0, . . . , n − 16 for i = 0, . . . , n − 17 for j = 0, . . . , n − 18 if (sij + sik * skj ) >= 1 set sij := 1

Informatik I - Tutorium Christian Jülg

Page 43: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Der Warshall-Algorithmus

Anforderungsbeschreibung

Eingabe: Adjazenzmatrix A einer Relation σ

Ausgabe: Adjanzenzmatrix S von σ∗

Der Algorithmus

1 S := A

2 // Reflexivität auf der Diagonalen ergänzen

3 for i = 0, . . . , n − 1 set sii := 14 // Transitive Hülle berechnen

5 for k = 0, . . . , n − 16 for i = 0, . . . , n − 17 for j = 0, . . . , n − 18 if (sij + sik * skj ) >= 1 set sij := 1

Informatik I - Tutorium Christian Jülg

Page 44: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

1 Organisatorisches

2 Übungsblatt 6

3 Relationen/Graphen

4 GraphenWarshall-Algorithmus

5 AlgebraNormalformen

6 Semi-Thue-Termersetzungen

7 AbschlussFeedback

Informatik I - Tutorium Christian Jülg

Page 45: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Signatur und Gesetze der booleschen Algebra

Signatur der booleschen Algebra

B = B(A,⊥,>,$,∨,∧)

⊥ ist kleinstes Element und > ist gröÿtes Element

V1 Assoziativität (x ∧ y) ∧ z = x ∧ (y ∧ z)(x ∨ y) ∨ z = x ∨ (y ∨ z)

V2 Kommutativität x ∧ y = y ∧ x x ∨ y = y ∨ x

V3 Idempontenz x ∧ x = x x ∨ x = x

V4 Verschmelzung (x ∨ y) ∧ x = x (x ∧ y) ∨ x = x

V5 Distributivität x ∧ (y ∨ z) = (x ∧ y) ∨ (x ∧ z)x ∨ (y ∧ z) = (x ∨ y) ∧ (x ∨ z)

V6 Modularität (für z ≤ x) x ∧ (y ∨ z) = (x ∧ y) ∨ z

V7 Neutrales Element x ∧ ⊥ = ⊥ x ∨ ⊥ = x

x ∧ > = x x ∨ > = >V8 Komplement x ∧$x = ⊥ x ∨$x = >V9 Involution $($x) = x

V10 DeMorgan $(x ∧ y) = $x ∨$y $(x ∨ y) = $x ∧$y

Informatik I - Tutorium Christian Jülg

Page 46: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Beispiel: Anwendung der Regeln

Vereinfache (verkürze) den folgenden booleschen Ausdruck durch Anwendungvon Regeln der Booleschen Algebra so weit es geht.

$(b ⇔ (a ∧ b))

Def. Äquivalenz

= $((b ∧ (a ∧ b)) ∨ ($b ∧$(a ∧ b)))Komm., Ass. und Indempotenz = $((b ∧ a) ∨ ($b ∧$(a ∧ b)))DeMorgan = $((b ∧ a) ∨ ($b ∧ ($a ∨$b)))DeMorgan = $(b ∧ a) ∧$($b ∧ ($a ∨$b))2ÖDeMorgan und Involution = ($b ∨$a) ∧ (b ∨$($a ∨$b))DeMorgan und Involution = ($b ∨$a) ∧ (b ∨ (a ∧ b))2ÖKomm. und Verschmelzung = ($b ∨$a) ∧ b

Kommutativität und Distributivität = ($b ∧ b) ∨ ($a ∧ b)Komplement und neutr. Elem. = $a ∧ b

Informatik I - Tutorium Christian Jülg

Page 47: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Beispiel: Anwendung der Regeln

Vereinfache (verkürze) den folgenden booleschen Ausdruck durch Anwendungvon Regeln der Booleschen Algebra so weit es geht.

$(b ⇔ (a ∧ b))

Def. Äquivalenz = $((b ∧ (a ∧ b)) ∨ ($b ∧$(a ∧ b)))Komm., Ass. und Indempotenz

= $((b ∧ a) ∨ ($b ∧$(a ∧ b)))DeMorgan = $((b ∧ a) ∨ ($b ∧ ($a ∨$b)))DeMorgan = $(b ∧ a) ∧$($b ∧ ($a ∨$b))2ÖDeMorgan und Involution = ($b ∨$a) ∧ (b ∨$($a ∨$b))DeMorgan und Involution = ($b ∨$a) ∧ (b ∨ (a ∧ b))2ÖKomm. und Verschmelzung = ($b ∨$a) ∧ b

Kommutativität und Distributivität = ($b ∧ b) ∨ ($a ∧ b)Komplement und neutr. Elem. = $a ∧ b

Informatik I - Tutorium Christian Jülg

Page 48: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Beispiel: Anwendung der Regeln

Vereinfache (verkürze) den folgenden booleschen Ausdruck durch Anwendungvon Regeln der Booleschen Algebra so weit es geht.

$(b ⇔ (a ∧ b))

Def. Äquivalenz = $((b ∧ (a ∧ b)) ∨ ($b ∧$(a ∧ b)))Komm., Ass. und Indempotenz = $((b ∧ a) ∨ ($b ∧$(a ∧ b)))DeMorgan

= $((b ∧ a) ∨ ($b ∧ ($a ∨$b)))DeMorgan = $(b ∧ a) ∧$($b ∧ ($a ∨$b))2ÖDeMorgan und Involution = ($b ∨$a) ∧ (b ∨$($a ∨$b))DeMorgan und Involution = ($b ∨$a) ∧ (b ∨ (a ∧ b))2ÖKomm. und Verschmelzung = ($b ∨$a) ∧ b

Kommutativität und Distributivität = ($b ∧ b) ∨ ($a ∧ b)Komplement und neutr. Elem. = $a ∧ b

Informatik I - Tutorium Christian Jülg

Page 49: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Beispiel: Anwendung der Regeln

Vereinfache (verkürze) den folgenden booleschen Ausdruck durch Anwendungvon Regeln der Booleschen Algebra so weit es geht.

$(b ⇔ (a ∧ b))

Def. Äquivalenz = $((b ∧ (a ∧ b)) ∨ ($b ∧$(a ∧ b)))Komm., Ass. und Indempotenz = $((b ∧ a) ∨ ($b ∧$(a ∧ b)))DeMorgan = $((b ∧ a) ∨ ($b ∧ ($a ∨$b)))DeMorgan

= $(b ∧ a) ∧$($b ∧ ($a ∨$b))2ÖDeMorgan und Involution = ($b ∨$a) ∧ (b ∨$($a ∨$b))DeMorgan und Involution = ($b ∨$a) ∧ (b ∨ (a ∧ b))2ÖKomm. und Verschmelzung = ($b ∨$a) ∧ b

Kommutativität und Distributivität = ($b ∧ b) ∨ ($a ∧ b)Komplement und neutr. Elem. = $a ∧ b

Informatik I - Tutorium Christian Jülg

Page 50: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Beispiel: Anwendung der Regeln

Vereinfache (verkürze) den folgenden booleschen Ausdruck durch Anwendungvon Regeln der Booleschen Algebra so weit es geht.

$(b ⇔ (a ∧ b))

Def. Äquivalenz = $((b ∧ (a ∧ b)) ∨ ($b ∧$(a ∧ b)))Komm., Ass. und Indempotenz = $((b ∧ a) ∨ ($b ∧$(a ∧ b)))DeMorgan = $((b ∧ a) ∨ ($b ∧ ($a ∨$b)))DeMorgan = $(b ∧ a) ∧$($b ∧ ($a ∨$b))2ÖDeMorgan und Involution

= ($b ∨$a) ∧ (b ∨$($a ∨$b))DeMorgan und Involution = ($b ∨$a) ∧ (b ∨ (a ∧ b))2ÖKomm. und Verschmelzung = ($b ∨$a) ∧ b

Kommutativität und Distributivität = ($b ∧ b) ∨ ($a ∧ b)Komplement und neutr. Elem. = $a ∧ b

Informatik I - Tutorium Christian Jülg

Page 51: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Beispiel: Anwendung der Regeln

Vereinfache (verkürze) den folgenden booleschen Ausdruck durch Anwendungvon Regeln der Booleschen Algebra so weit es geht.

$(b ⇔ (a ∧ b))

Def. Äquivalenz = $((b ∧ (a ∧ b)) ∨ ($b ∧$(a ∧ b)))Komm., Ass. und Indempotenz = $((b ∧ a) ∨ ($b ∧$(a ∧ b)))DeMorgan = $((b ∧ a) ∨ ($b ∧ ($a ∨$b)))DeMorgan = $(b ∧ a) ∧$($b ∧ ($a ∨$b))2ÖDeMorgan und Involution = ($b ∨$a) ∧ (b ∨$($a ∨$b))DeMorgan und Involution

= ($b ∨$a) ∧ (b ∨ (a ∧ b))2ÖKomm. und Verschmelzung = ($b ∨$a) ∧ b

Kommutativität und Distributivität = ($b ∧ b) ∨ ($a ∧ b)Komplement und neutr. Elem. = $a ∧ b

Informatik I - Tutorium Christian Jülg

Page 52: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Beispiel: Anwendung der Regeln

Vereinfache (verkürze) den folgenden booleschen Ausdruck durch Anwendungvon Regeln der Booleschen Algebra so weit es geht.

$(b ⇔ (a ∧ b))

Def. Äquivalenz = $((b ∧ (a ∧ b)) ∨ ($b ∧$(a ∧ b)))Komm., Ass. und Indempotenz = $((b ∧ a) ∨ ($b ∧$(a ∧ b)))DeMorgan = $((b ∧ a) ∨ ($b ∧ ($a ∨$b)))DeMorgan = $(b ∧ a) ∧$($b ∧ ($a ∨$b))2ÖDeMorgan und Involution = ($b ∨$a) ∧ (b ∨$($a ∨$b))DeMorgan und Involution = ($b ∨$a) ∧ (b ∨ (a ∧ b))2ÖKomm. und Verschmelzung

= ($b ∨$a) ∧ b

Kommutativität und Distributivität = ($b ∧ b) ∨ ($a ∧ b)Komplement und neutr. Elem. = $a ∧ b

Informatik I - Tutorium Christian Jülg

Page 53: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Beispiel: Anwendung der Regeln

Vereinfache (verkürze) den folgenden booleschen Ausdruck durch Anwendungvon Regeln der Booleschen Algebra so weit es geht.

$(b ⇔ (a ∧ b))

Def. Äquivalenz = $((b ∧ (a ∧ b)) ∨ ($b ∧$(a ∧ b)))Komm., Ass. und Indempotenz = $((b ∧ a) ∨ ($b ∧$(a ∧ b)))DeMorgan = $((b ∧ a) ∨ ($b ∧ ($a ∨$b)))DeMorgan = $(b ∧ a) ∧$($b ∧ ($a ∨$b))2ÖDeMorgan und Involution = ($b ∨$a) ∧ (b ∨$($a ∨$b))DeMorgan und Involution = ($b ∨$a) ∧ (b ∨ (a ∧ b))2ÖKomm. und Verschmelzung = ($b ∨$a) ∧ b

Kommutativität und Distributivität

= ($b ∧ b) ∨ ($a ∧ b)Komplement und neutr. Elem. = $a ∧ b

Informatik I - Tutorium Christian Jülg

Page 54: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Beispiel: Anwendung der Regeln

Vereinfache (verkürze) den folgenden booleschen Ausdruck durch Anwendungvon Regeln der Booleschen Algebra so weit es geht.

$(b ⇔ (a ∧ b))

Def. Äquivalenz = $((b ∧ (a ∧ b)) ∨ ($b ∧$(a ∧ b)))Komm., Ass. und Indempotenz = $((b ∧ a) ∨ ($b ∧$(a ∧ b)))DeMorgan = $((b ∧ a) ∨ ($b ∧ ($a ∨$b)))DeMorgan = $(b ∧ a) ∧$($b ∧ ($a ∨$b))2ÖDeMorgan und Involution = ($b ∨$a) ∧ (b ∨$($a ∨$b))DeMorgan und Involution = ($b ∨$a) ∧ (b ∨ (a ∧ b))2ÖKomm. und Verschmelzung = ($b ∨$a) ∧ b

Kommutativität und Distributivität = ($b ∧ b) ∨ ($a ∧ b)Komplement und neutr. Elem.

= $a ∧ b

Informatik I - Tutorium Christian Jülg

Page 55: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Beispiel: Anwendung der Regeln

Vereinfache (verkürze) den folgenden booleschen Ausdruck durch Anwendungvon Regeln der Booleschen Algebra so weit es geht.

$(b ⇔ (a ∧ b))

Def. Äquivalenz = $((b ∧ (a ∧ b)) ∨ ($b ∧$(a ∧ b)))Komm., Ass. und Indempotenz = $((b ∧ a) ∨ ($b ∧$(a ∧ b)))DeMorgan = $((b ∧ a) ∨ ($b ∧ ($a ∨$b)))DeMorgan = $(b ∧ a) ∧$($b ∧ ($a ∨$b))2ÖDeMorgan und Involution = ($b ∨$a) ∧ (b ∨$($a ∨$b))DeMorgan und Involution = ($b ∨$a) ∧ (b ∨ (a ∧ b))2ÖKomm. und Verschmelzung = ($b ∨$a) ∧ b

Kommutativität und Distributivität = ($b ∧ b) ∨ ($a ∧ b)Komplement und neutr. Elem. = $a ∧ b

Informatik I - Tutorium Christian Jülg

Page 56: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Ihr seid dran...

Sind folgende Formeln boolesche Ausdrücke? Begründe deineAussage, wenn es sich um keinen booleschen Ausdruck handelt.(Alle Variablen seien ∈ {>,⊥})

Aufgabe

((y − z) ∨ z) ∨ (x ∧ y)

nein, da in der Booleschen Algebra der Operator � nichtde�niert ist.

Aufgabe

((($$$$$$$$$$(($a ∨ c ∧$b) ∧ a) ∨ b) ∧ c) ∨ a)

ja!

Informatik I - Tutorium Christian Jülg

Page 57: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Ihr seid dran...

Sind folgende Formeln boolesche Ausdrücke? Begründe deineAussage, wenn es sich um keinen booleschen Ausdruck handelt.(Alle Variablen seien ∈ {>,⊥})

Aufgabe

((y − z) ∨ z) ∨ (x ∧ y)

nein, da in der Booleschen Algebra der Operator � nichtde�niert ist.

Aufgabe

((($$$$$$$$$$(($a ∨ c ∧$b) ∧ a) ∨ b) ∧ c) ∨ a)

ja!

Informatik I - Tutorium Christian Jülg

Page 58: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Ihr seid dran...

Sind folgende Formeln boolesche Ausdrücke? Begründe deineAussage, wenn es sich um keinen booleschen Ausdruck handelt.(Alle Variablen seien ∈ {>,⊥})

Aufgabe

((y − z) ∨ z) ∨ (x ∧ y)

nein, da in der Booleschen Algebra der Operator � nichtde�niert ist.

Aufgabe

((($$$$$$$$$$(($a ∨ c ∧$b) ∧ a) ∨ b) ∧ c) ∨ a)

ja!

Informatik I - Tutorium Christian Jülg

Page 59: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Aufgabe

Aufgabe

Gegeben sei folgender Term:

((N ∧ >) ∨ ⊥) ∧$(P ∨$W )

Begründe, dass der gegebene Term den in der Vorlesungeingeführten Bildungsgesetzen entspricht.

Informatik I - Tutorium Christian Jülg

Page 60: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Lösung von ((N ∧ >) ∨ ⊥) ∧$(P ∨$W )

Σ(0) = {>,⊥}Der Terme >,⊥ sind Konstanten (liefern immer dasselbe Resultat)und erfüllen somit die erste Regel für korrekte Terme. Dies gilt auchfür die Variablen N,P und W .

Σ(1) = {$}$W : Der Operator $ist einstellig und wird auf den elementarenOperator W angewendet, daraus folgt, dass $W korrekt ist.$(P ∨$W ): Mit $und (P ∨$W ) wird ein neuer Term auf dembestehenden Term (P ∨$W ) aufgebaut. (P ∨$W ) ist somitUnterterm. Ist (P ∨$W ) korrekt, so ist auch $(P ∨$W ) korrekt.Bleibt noch zu zeigen, dass (P ∨$W ) ein korrekter Term ist (sieheΣ(2)).

Informatik I - Tutorium Christian Jülg

Page 61: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Lösung von ((N ∧ >) ∨ ⊥) ∧$(P ∨$W )

Σ(0) = {>,⊥}Der Terme >,⊥ sind Konstanten (liefern immer dasselbe Resultat)und erfüllen somit die erste Regel für korrekte Terme. Dies gilt auchfür die Variablen N,P und W .

Σ(1) = {$}$W : Der Operator $ist einstellig und wird auf den elementarenOperator W angewendet, daraus folgt, dass $W korrekt ist.$(P ∨$W ): Mit $und (P ∨$W ) wird ein neuer Term auf dembestehenden Term (P ∨$W ) aufgebaut. (P ∨$W ) ist somitUnterterm. Ist (P ∨$W ) korrekt, so ist auch $(P ∨$W ) korrekt.Bleibt noch zu zeigen, dass (P ∨$W ) ein korrekter Term ist (sieheΣ(2)).

Informatik I - Tutorium Christian Jülg

Page 62: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Lösung von ((N ∧ >) ∨ ⊥) ∧$(P ∨$W )

Σ(0) = {>,⊥}Der Terme >,⊥ sind Konstanten (liefern immer dasselbe Resultat)und erfüllen somit die erste Regel für korrekte Terme. Dies gilt auchfür die Variablen N,P und W .

Σ(1) = {$}$W : Der Operator $ist einstellig und wird auf den elementarenOperator W angewendet, daraus folgt, dass $W korrekt ist.$(P ∨$W ): Mit $und (P ∨$W ) wird ein neuer Term auf dembestehenden Term (P ∨$W ) aufgebaut. (P ∨$W ) ist somitUnterterm. Ist (P ∨$W ) korrekt, so ist auch $(P ∨$W ) korrekt.Bleibt noch zu zeigen, dass (P ∨$W ) ein korrekter Term ist (sieheΣ(2)).

Informatik I - Tutorium Christian Jülg

Page 63: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Lösung von ((N ∧ >) ∨ ⊥) ∧$(P ∨$W )

Σ(2) = {∨,∧}(N ∧ >): Der Operator ∧ ist zweistellig und wird hier aufelementare Operanden angewendet, daraus folgt, dass der Term(N ∧ >) korrekt ist.((N ∧>) ∨⊥): Der Operator ∨ ist zweistellig und wird hier auf denUnterterm (N ∧ >) und den elementaren Operator ⊥ angewendet,daraus folgt, dass der Term ((N ∧ >) ∨ ⊥) korrekt ist.(P ∨$W ): Der Operator ∧ wird hier auf elementaren Operanden P

und den Unterterm $W (siehe Σ(1)) angewendet, daraus folgt dieKorrektheit.((N ∧>) ∨⊥) ∧$(P ∨$W ): Der Operator ∨ wird hier auf korrekteUnterterme ((N ∧>) ∨⊥) und (P ∨$W ) angewendet, daraus folgtdie Korrektheit des Terms.

Informatik I - Tutorium Christian Jülg

Page 64: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Lösung von ((N ∧ >) ∨ ⊥) ∧$(P ∨$W )

Σ(2) = {∨,∧}(N ∧ >): Der Operator ∧ ist zweistellig und wird hier aufelementare Operanden angewendet, daraus folgt, dass der Term(N ∧ >) korrekt ist.((N ∧>) ∨⊥): Der Operator ∨ ist zweistellig und wird hier auf denUnterterm (N ∧ >) und den elementaren Operator ⊥ angewendet,daraus folgt, dass der Term ((N ∧ >) ∨ ⊥) korrekt ist.(P ∨$W ): Der Operator ∧ wird hier auf elementaren Operanden P

und den Unterterm $W (siehe Σ(1)) angewendet, daraus folgt dieKorrektheit.((N ∧>) ∨⊥) ∧$(P ∨$W ): Der Operator ∨ wird hier auf korrekteUnterterme ((N ∧>) ∨⊥) und (P ∨$W ) angewendet, daraus folgtdie Korrektheit des Terms.

Informatik I - Tutorium Christian Jülg

Page 65: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Lösung von ((N ∧ >) ∨ ⊥) ∧$(P ∨$W )

Σ(2) = {∨,∧}(N ∧ >): Der Operator ∧ ist zweistellig und wird hier aufelementare Operanden angewendet, daraus folgt, dass der Term(N ∧ >) korrekt ist.((N ∧>) ∨⊥): Der Operator ∨ ist zweistellig und wird hier auf denUnterterm (N ∧ >) und den elementaren Operator ⊥ angewendet,daraus folgt, dass der Term ((N ∧ >) ∨ ⊥) korrekt ist.(P ∨$W ): Der Operator ∧ wird hier auf elementaren Operanden P

und den Unterterm $W (siehe Σ(1)) angewendet, daraus folgt dieKorrektheit.((N ∧>) ∨⊥) ∧$(P ∨$W ): Der Operator ∨ wird hier auf korrekteUnterterme ((N ∧>) ∨⊥) und (P ∨$W ) angewendet, daraus folgtdie Korrektheit des Terms.

Informatik I - Tutorium Christian Jülg

Page 66: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Lösung von ((N ∧ >) ∨ ⊥) ∧$(P ∨$W )

Σ(2) = {∨,∧}(N ∧ >): Der Operator ∧ ist zweistellig und wird hier aufelementare Operanden angewendet, daraus folgt, dass der Term(N ∧ >) korrekt ist.((N ∧>) ∨⊥): Der Operator ∨ ist zweistellig und wird hier auf denUnterterm (N ∧ >) und den elementaren Operator ⊥ angewendet,daraus folgt, dass der Term ((N ∧ >) ∨ ⊥) korrekt ist.(P ∨$W ): Der Operator ∧ wird hier auf elementaren Operanden P

und den Unterterm $W (siehe Σ(1)) angewendet, daraus folgt dieKorrektheit.((N ∧>) ∨⊥) ∧$(P ∨$W ): Der Operator ∨ wird hier auf korrekteUnterterme ((N ∧>) ∨⊥) und (P ∨$W ) angewendet, daraus folgtdie Korrektheit des Terms.

Informatik I - Tutorium Christian Jülg

Page 67: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Kantorowic-Bäume bei Boolscher Algebra

Boolsche Algebra graphisch

Kantorowic-Bäume sind eineMöglichkeit Formeln der BoolschenAlgebra graphisch darzustellen. Überlegteuch zunächst wie ein solcher Baumaufgebaut ist.

Ihr seid dran 5 Min

Gegeben sei folgender Term:

((N ∧ >) ∨ ⊥) ∧$(P ∨$W )

Erstellt den Kantorowic-Baum an.

N >

$

P $

W

Informatik I - Tutorium Christian Jülg

Page 68: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Kantorowic-Bäume bei Boolscher Algebra

Boolsche Algebra graphisch

Kantorowic-Bäume sind eineMöglichkeit Formeln der BoolschenAlgebra graphisch darzustellen. Überlegteuch zunächst wie ein solcher Baumaufgebaut ist.

Ihr seid dran 5 Min

Gegeben sei folgender Term:

((N ∧ >) ∨ ⊥) ∧$(P ∨$W )

Erstellt den Kantorowic-Baum an.

N >

$

P $

W

Informatik I - Tutorium Christian Jülg

Page 69: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Normalformen

Gegeben ist folgende Formel:

(a⇔ b)⇔ c

1 Bringe diese Formel durch Umformung mit den Regeln derBooleschen Algebra in disjunktive Normalform. Gib bei denUmformungen jeweils die verwendeten Regeln an.

2 Zeige durch eine Wertetabelle, dass dein Ergebnis ausTeilaufgabe 1 korrekt ist.

Informatik I - Tutorium Christian Jülg

Page 70: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Lösung zu Normalformen: (a⇔ b)⇔ c

Def. Äquivalenz≡ (a ∧ b) ∨ ($a ∧$b))⇔ c

Def. Äquivalenz≡ (((a ∧ b) ∨ ($a ∧$b)) ∧ c) ∨ ($((a ∧ b) ∨ ($a ∧$b)) ∧$c)DeMorgan, Assoz.≡ (((a ∧ b) ∨ ($a ∧$b)) ∧ c) ∨ ($(a ∧ b) ∧$($a ∧$b) ∧$c)DeMorgan, Inv.≡ (((a ∧ b) ∨ ($a ∧$b)) ∧ c) ∨ (($a ∨$b) ∧ (a ∨ b) ∧$c)Distributivität, Assoz.≡ (a ∧ b ∧ c) ∨ ($a ∧$b ∧ c) ∨ (($a ∨$b) ∧ (a ∨ b) ∧$c)2 ÖDistributivität≡ (a ∧ b ∧ c) ∨ ($a ∧$b ∧ c) ∨ ((($a ∧ a) ∨ ($a ∧ b) ∨ ($b ∧ a) ∨ ($b ∧ b)) ∧$c)Komplement≡ (a ∧ b ∧ c) ∨ ($a ∧$b ∧ c) ∨ (⊥ ∨ ($a ∧ b) ∨ ($b ∧ a) ∨ ⊥) ∧$c)Neutr. Element, Komm.≡ (a ∧ b ∧ c) ∨ ($a ∧$b ∧ c) ∨ ((($a ∧ b) ∨ (a ∧$b)) ∧$c)Distributivität, Assoz.≡ (a ∧ b ∧ c) ∨ ($a ∧$b ∧ c) ∨ ($a ∧ b ∧$c) ∨ (a ∧$b ∧$c)

Informatik I - Tutorium Christian Jülg

Page 71: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Normalformen

Lösung Teilaufgabe 2)a b c a⇔b (a⇔b)⇔c a∧b∧c $a∧$b∧c $a∧b∧$c a∧$b∧$c Erg.0 0 0 1 0 0 0 0 0 00 0 1 1 1 0 1 0 0 10 1 0 0 1 0 0 1 0 10 1 1 0 0 0 0 0 0 01 0 0 0 1 0 0 0 1 11 0 1 0 0 0 0 0 0 01 1 0 1 0 0 0 0 0 01 1 1 1 1 1 0 0 0 1

Informatik I - Tutorium Christian Jülg

Page 72: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

1 Organisatorisches

2 Übungsblatt 6

3 Relationen/Graphen

4 GraphenWarshall-Algorithmus

5 AlgebraNormalformen

6 Semi-Thue-Termersetzungen

7 AbschlussFeedback

Informatik I - Tutorium Christian Jülg

Page 73: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Semi-Thue

Aufbau

Semi-Thue-Systeme bestehen aus dem Zeichenvorrat Σ und derMenge der Termersetzungsregeln T.Regeln in T werden durch ein → dargestellt.Beispiel:Σ = {|} und T = { |→|| , ||→|}

Anwendung

Semi-Thue-Systeme sind nicht an ein Startwort gebunden undterminieren nur, wenn sie für jedes Wort aus Σ terminieren.Die Regeln des Systemes haben keine Anwendungsreihenfolge→ ε - Produktionen terminieren nie.

Informatik I - Tutorium Christian Jülg

Page 74: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Terminieren folgende Semi-Thue-Systeme?

Gebt für folgende Semi-Thue-Systeme Σ, T und Eingaben vonWörtern aus der Sprache L jeweils an, ob das Semi-Thue-Systemimmer, nie oder nur in bestimmten Fällen Terminiert

1 Σ = {a, b} und T = ab → b, b → ε

Terminiert immer, da die Wortlänge durch beide Regeln kleinerwird.

2 Σ = {a} und T = aaa→ aa, a→ aaa

Terminiert nie, da die Wortlänge durch keine Regel kleiner als2 werden kann

3 Σ = {a, b} und T = aaa→ aa, aa→ b, a→ aaa

Terminiert nicht immer. Bei Anwendung der 1. und 3. Regelterminiert das Semi-Thue System entsprechend derBegründung aus Aufgabe 2 nie. Durch die Anwendung der 2.Regel kann man zu einer Situation kommen, in der das Systemterminiert.

Informatik I - Tutorium Christian Jülg

Page 75: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Terminieren folgende Semi-Thue-Systeme?

Gebt für folgende Semi-Thue-Systeme Σ, T und Eingaben vonWörtern aus der Sprache L jeweils an, ob das Semi-Thue-Systemimmer, nie oder nur in bestimmten Fällen Terminiert

1 Σ = {a, b} und T = ab → b, b → εTerminiert immer, da die Wortlänge durch beide Regeln kleinerwird.

2 Σ = {a} und T = aaa→ aa, a→ aaa

Terminiert nie, da die Wortlänge durch keine Regel kleiner als2 werden kann

3 Σ = {a, b} und T = aaa→ aa, aa→ b, a→ aaa

Terminiert nicht immer. Bei Anwendung der 1. und 3. Regelterminiert das Semi-Thue System entsprechend derBegründung aus Aufgabe 2 nie. Durch die Anwendung der 2.Regel kann man zu einer Situation kommen, in der das Systemterminiert.

Informatik I - Tutorium Christian Jülg

Page 76: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Terminieren folgende Semi-Thue-Systeme?

Gebt für folgende Semi-Thue-Systeme Σ, T und Eingaben vonWörtern aus der Sprache L jeweils an, ob das Semi-Thue-Systemimmer, nie oder nur in bestimmten Fällen Terminiert

1 Σ = {a, b} und T = ab → b, b → εTerminiert immer, da die Wortlänge durch beide Regeln kleinerwird.

2 Σ = {a} und T = aaa→ aa, a→ aaa

Terminiert nie, da die Wortlänge durch keine Regel kleiner als2 werden kann

3 Σ = {a, b} und T = aaa→ aa, aa→ b, a→ aaa

Terminiert nicht immer. Bei Anwendung der 1. und 3. Regelterminiert das Semi-Thue System entsprechend derBegründung aus Aufgabe 2 nie. Durch die Anwendung der 2.Regel kann man zu einer Situation kommen, in der das Systemterminiert.

Informatik I - Tutorium Christian Jülg

Page 77: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Terminieren folgende Semi-Thue-Systeme?

Gebt für folgende Semi-Thue-Systeme Σ, T und Eingaben vonWörtern aus der Sprache L jeweils an, ob das Semi-Thue-Systemimmer, nie oder nur in bestimmten Fällen Terminiert

1 Σ = {a, b} und T = ab → b, b → εTerminiert immer, da die Wortlänge durch beide Regeln kleinerwird.

2 Σ = {a} und T = aaa→ aa, a→ aaa

Terminiert nie, da die Wortlänge durch keine Regel kleiner als2 werden kann

3 Σ = {a, b} und T = aaa→ aa, aa→ b, a→ aaa

Terminiert nicht immer. Bei Anwendung der 1. und 3. Regelterminiert das Semi-Thue System entsprechend derBegründung aus Aufgabe 2 nie. Durch die Anwendung der 2.Regel kann man zu einer Situation kommen, in der das Systemterminiert.

Informatik I - Tutorium Christian Jülg

Page 78: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

1 Organisatorisches

2 Übungsblatt 6

3 Relationen/Graphen

4 GraphenWarshall-Algorithmus

5 AlgebraNormalformen

6 Semi-Thue-Termersetzungen

7 AbschlussFeedback

Informatik I - Tutorium Christian Jülg

Page 79: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Zum Schluss...

Was ihr nun wissen solltet!

Was sind Relationen? Wie kann man sie darstellen?

Welche Eigenschaften kann eine Relation haben?

Wie unterscheiden sich gerichtete und ungerichtete Graphen?

Wie bestimmt man die re�exive transitive Hülle eines Graphen?

Wie funktioniert Boolesche Algebra?

Was sind Semi-Thue-Systeme? Wann terminieren diese?

Informatik I - Tutorium Christian Jülg

Page 80: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Zum Schluss...

Was ihr nun wissen solltet!

Was sind Relationen? Wie kann man sie darstellen?

Welche Eigenschaften kann eine Relation haben?

Wie unterscheiden sich gerichtete und ungerichtete Graphen?

Wie bestimmt man die re�exive transitive Hülle eines Graphen?

Wie funktioniert Boolesche Algebra?

Was sind Semi-Thue-Systeme? Wann terminieren diese?

Informatik I - Tutorium Christian Jülg

Page 81: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Zum Schluss...

Was ihr nun wissen solltet!

Was sind Relationen? Wie kann man sie darstellen?

Welche Eigenschaften kann eine Relation haben?

Wie unterscheiden sich gerichtete und ungerichtete Graphen?

Wie bestimmt man die re�exive transitive Hülle eines Graphen?

Wie funktioniert Boolesche Algebra?

Was sind Semi-Thue-Systeme? Wann terminieren diese?

Informatik I - Tutorium Christian Jülg

Page 82: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Zum Schluss...

Was ihr nun wissen solltet!

Was sind Relationen? Wie kann man sie darstellen?

Welche Eigenschaften kann eine Relation haben?

Wie unterscheiden sich gerichtete und ungerichtete Graphen?

Wie bestimmt man die re�exive transitive Hülle eines Graphen?

Wie funktioniert Boolesche Algebra?

Was sind Semi-Thue-Systeme? Wann terminieren diese?

Informatik I - Tutorium Christian Jülg

Page 83: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Zum Schluss...

Was ihr nun wissen solltet!

Was sind Relationen? Wie kann man sie darstellen?

Welche Eigenschaften kann eine Relation haben?

Wie unterscheiden sich gerichtete und ungerichtete Graphen?

Wie bestimmt man die re�exive transitive Hülle eines Graphen?

Wie funktioniert Boolesche Algebra?

Was sind Semi-Thue-Systeme? Wann terminieren diese?

Informatik I - Tutorium Christian Jülg

Page 84: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Zum Schluss...

Was ihr nun wissen solltet!

Was sind Relationen? Wie kann man sie darstellen?

Welche Eigenschaften kann eine Relation haben?

Wie unterscheiden sich gerichtete und ungerichtete Graphen?

Wie bestimmt man die re�exive transitive Hülle eines Graphen?

Wie funktioniert Boolesche Algebra?

Was sind Semi-Thue-Systeme? Wann terminieren diese?

Informatik I - Tutorium Christian Jülg

Page 85: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Zum Schluss...

Was ihr nun wissen solltet!

Was sind Relationen? Wie kann man sie darstellen?

Welche Eigenschaften kann eine Relation haben?

Wie unterscheiden sich gerichtete und ungerichtete Graphen?

Wie bestimmt man die re�exive transitive Hülle eines Graphen?

Wie funktioniert Boolesche Algebra?

Was sind Semi-Thue-Systeme? Wann terminieren diese?

Informatik I - Tutorium Christian Jülg

Page 86: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Zum Schluss...

Was ihr nun wissen solltet!

Was sind Relationen? Wie kann man sie darstellen?

Welche Eigenschaften kann eine Relation haben?

Wie unterscheiden sich gerichtete und ungerichtete Graphen?

Wie bestimmt man die re�exive transitive Hülle eines Graphen?

Wie funktioniert Boolesche Algebra?

Was sind Semi-Thue-Systeme? Wann terminieren diese?

Ihr wisst was nicht?

Stellt jetzt Fragen!

Informatik I - Tutorium Christian Jülg

Page 87: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Feedback

Dann habe ich noch eine Frage:

Wie fandet ihr dieses Tutorium?

Informatik I - Tutorium Christian Jülg

Page 88: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Feedback

Dann habe ich noch eine Frage:

Wie fandet ihr dieses Tutorium?

War ich zu schnell? Zu langsam?

Informatik I - Tutorium Christian Jülg

Page 89: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Feedback

Dann habe ich noch eine Frage:

Wie fandet ihr dieses Tutorium?

War ich zu schnell? Zu langsam?

Habe ich bestimmte Sachen zu kurz behandelt?

Informatik I - Tutorium Christian Jülg

Page 90: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Feedback

Dann habe ich noch eine Frage:

Wie fandet ihr dieses Tutorium?

War ich zu schnell? Zu langsam?

Habe ich bestimmte Sachen zu kurz behandelt?

Soll ich mehr Theorie/mehr Praxis (Java) behandeln?

Informatik I - Tutorium Christian Jülg

Page 91: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Feedback

Dann habe ich noch eine Frage:

Wie fandet ihr dieses Tutorium?

War ich zu schnell? Zu langsam?

Habe ich bestimmte Sachen zu kurz behandelt?

Soll ich mehr Theorie/mehr Praxis (Java) behandeln?

Soll ich mehr auf den Vorlesungssto� eingehen oder ihn alsbekannt vorraussetzen?

Informatik I - Tutorium Christian Jülg

Page 92: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Feedback

Dann habe ich noch eine Frage:

Wie fandet ihr dieses Tutorium?

War ich zu schnell? Zu langsam?

Habe ich bestimmte Sachen zu kurz behandelt?

Soll ich mehr Theorie/mehr Praxis (Java) behandeln?

Soll ich mehr auf den Vorlesungssto� eingehen oder ihn alsbekannt vorraussetzen?

Was kann ich verbessern?

Informatik I - Tutorium Christian Jülg

Page 93: tut07_1.pdf

Orga Blatt 6 Relationen/Graphen Graphen Algebra Semi-Thue Abschluss Ende

Informatik I - Tutorium Christian Jülg