Grundbegriffe der Informatik Übung Simon Wacker Karlsruher Institut für Technologie Wintersemester 2015/2016 GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 1 / 19 GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 2 / 19 Block-Codierung aabaacabaacaabaaacacaabbaccabb aaaabbaccaaaaaaabaacaabbabbaca abaacaaccaaaaaaaccaaaaaaaccacc Schritt 1: Wort in Blöcke unterteilen (hier: Länge 3) aab aac aba aca aba aac aca abb acc abb aaa abb acc aaa aaa aba aca abb abb aca aba aca acc aaa aaa acc aaa aaa acc acc Schritt 2: Vorkommen zählen aab aac aba aca abb acc aaa 1 2 4 5 5 6 7 Schritt 3: Baum erstellen GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 3 / 19 acc, 6 aba, 4 aab, 1 aaa, 7 aca, 5 abb, 5 aac, 2 GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 4 / 19 acc, 6 aba, 4 3 aab, 1 aaa, 7 aca, 5 abb, 5 aac, 2 GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 5 / 19 7 aba, 4 3 aab, 1 acc, 6 aaa, 7 aca, 5 abb, 5 aac, 2 GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 6 / 19 7 aba, 4 3 aab, 1 acc, 6 10 aca, 5 aaa, 7 abb, 5 aac, 2 GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 7 / 19 13 7 aba, 4 3 aab, 1 acc, 6 10 aca, 5 aaa, 7 abb, 5 aac, 2 GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 8 / 19 13 7 acc, 6 aba, 4 3 aab, 1 17 10 aca, 5 aaa, 7 abb, 5 aac, 2 GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 9 / 19 30 13 7 acc, 6 aba, 4 3 aab, 1 17 10 aca, 5 aaa, 7 abb, 5 aac, 2 GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 10 / 19 30 0 0 7 0 0 3 1 aab, 1 13 1 1 1 17 1 0 acc, 6 aba, 4 0 10 1 aca, 5 aaa, 7 abb, 5 aac, 2 GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 11 / 19 Block-Codierung Schritt 4: Codierung der einzelnen Blöcke ablesen aab aac aba aca abb acc aaa 0000 0001 001 100 101 01 11 Schritt 5: Wort codieren 00000001001100001000110010101101 11101011111001100101101100 0011000111110111110101 GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 12 / 19 Homomorphismen — Das allgemeine Konzept V , W Mengen ⊙ : V × V → V , ⊕ : W × W → W binäre Operationen Abbildung φ : V → W heißt Homomorphismus bezüglich ⊙ und ⊕ genau dann, wenn für jedes u ∈ V und jedes v ∈ V gilt: φ(u ⊙ v) = φ(u) ⊕ φ(v) Homomorphismen sind strukturerhaltende oder strukturverträgliche Abbildungen Altgriechisch: “homós” (- gleich) und “morphé” (- Form) GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 13 / 19 Homomorphismen — In dieser Vorlesung A, B Alphabete Abbildung h : A∗ → B ∗ heißt Homomorphismus genau dann, wenn für jedes u ∈ A∗ und jedes v ∈ A∗ gilt: h(u · v) = h(u) · h(v) Homomorphismus bezüglich Konkatenation auf A∗ und B ∗ Für jedes n ∈ N0 und jedes w ∈ An gilt: h(w ) = h(w 0w 1 . . . w n−1 ) = h(w 0 )h(w 1 ) . . . h(w n−1 ), wobei w i = w (i) für jedes i ∈ Zn GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 14 / 19 Von ternärer zur binärer Darstellung Frage: Existiert ein Homomorphismus h : Z 3∗ → Z 2∗ derart, dass gilt: Für jedes w ∈ Z 3∗ gilt Num2 (h(w )) = Num3 (w ). (∗) Antwort: Nein! GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 15 / 19 Von ternärer zur binärer Darstellung Frage: Existiert ein Homomorphismus h : Z 3∗ → Z 2∗ derart, dass gilt: Für jedes w ∈ Z 3∗ gilt Num2 (h(w )) = Num3 (w ). (∗) Antwort: Nein! Beweis: Es sei h eine Abbildung, für die (∗) gilt. GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 15 / 19 Von ternärer zur binärer Darstellung Frage: Existiert ein Homomorphismus h : Z 3∗ → Z 2∗ derart, dass gilt: Für jedes w ∈ Z 3∗ gilt Num2 (h(w )) = Num3 (w ). (∗) Antwort: Nein! Beweis: Es sei h eine Abbildung, für die (∗) gilt. Beispielsweise gilt (∗) für Trans2,3 = Repr2 ◦ Num3 . GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 15 / 19 Von ternärer zur binärer Darstellung Frage: Existiert ein Homomorphismus h : Z 3∗ → Z 2∗ derart, dass gilt: Für jedes w ∈ Z 3∗ gilt Num2 (h(w )) = Num3 (w ). (∗) Antwort: Nein! Beweis: Es sei h eine Abbildung, für die (∗) gilt. Beispielsweise gilt (∗) für Trans2,3 = Repr2 ◦ Num3 . Wegen Num2 (h(11)) = Num3 (11) = 4, gilt h(11) ∈ {0}∗ {100}. GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 15 / 19 Von ternärer zur binärer Darstellung Frage: Existiert ein Homomorphismus h : Z 3∗ → Z 2∗ derart, dass gilt: Für jedes w ∈ Z 3∗ gilt Num2 (h(w )) = Num3 (w ). (∗) Antwort: Nein! Beweis: Es sei h eine Abbildung, für die (∗) gilt. Beispielsweise gilt (∗) für Trans2,3 = Repr2 ◦ Num3 . Wegen Num2 (h(11)) = Num3 (11) = 4, gilt h(11) ∈ {0}∗ {100}. Wegen Num2 (h(1)) = Num3 (1) = 1, gilt h(1) ∈ {0}∗ {1}, also h(1)h(1) ∈ {0}∗ {1}{0}∗ {1}. GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 15 / 19 Von ternärer zur binärer Darstellung Frage: Existiert ein Homomorphismus h : Z 3∗ → Z 2∗ derart, dass gilt: Für jedes w ∈ Z 3∗ gilt Num2 (h(w )) = Num3 (w ). (∗) Antwort: Nein! Beweis: Es sei h eine Abbildung, für die (∗) gilt. Beispielsweise gilt (∗) für Trans2,3 = Repr2 ◦ Num3 . Wegen Num2 (h(11)) = Num3 (11) = 4, gilt h(11) ∈ {0}∗ {100}. Wegen Num2 (h(1)) = Num3 (1) = 1, gilt h(1) ∈ {0}∗ {1}, also h(1)h(1) ∈ {0}∗ {1}{0}∗ {1}. Da {0}∗ {100} ∩ {0}∗ {1}{0}∗ {1} = ∅, folgt h(11) , h(1)h(1). GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 15 / 19 Von ternärer zur binärer Darstellung Frage: Existiert ein Homomorphismus h : Z 3∗ → Z 2∗ derart, dass gilt: Für jedes w ∈ Z 3∗ gilt Num2 (h(w )) = Num3 (w ). (∗) Antwort: Nein! Beweis: Es sei h eine Abbildung, für die (∗) gilt. Beispielsweise gilt (∗) für Trans2,3 = Repr2 ◦ Num3 . Wegen Num2 (h(11)) = Num3 (11) = 4, gilt h(11) ∈ {0}∗ {100}. Wegen Num2 (h(1)) = Num3 (1) = 1, gilt h(1) ∈ {0}∗ {1}, also h(1)h(1) ∈ {0}∗ {1}{0}∗ {1}. Da {0}∗ {100} ∩ {0}∗ {1}{0}∗ {1} = ∅, folgt h(11) , h(1)h(1). Somit ist h kein Homomorphismus! GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 15 / 19 Von hexadezimaler zu binärer Darstellung Existiert ein bedeutungserhaltender Homomorphismus von der hexadezimalen in die binäre Darstellung? ∗ → Z ∗ , welcher Ja, gerade jener Homomorphismus h : Z 16 2 eindeutig festgelegt ist durch: Für jedes z ∈ Z 16 gilt h(z) = bin4 (num16 (z)) Je vier binäre Ziffern entsprechen einer hexadezimalen Ziffer: h(0) = 0000, h(1) = 0001, h(2) = 0010, und so weiter Das funktioniert so gut, da 24 = 16 Beispiel: h(A · 1) = h(A) · h(1) = 1010 · 0001 GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 16 / 19 Bedeutungserhaltung Beweise durch vollständige Induktion über die Wortlänge: ∗ Für jedes w ∈ Z 16 gilt Num2 (h(w )) = Num16 (w ) GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 17 / 19 Bedeutungserhaltung Beweise durch vollständige Induktion über die Wortlänge: ∗ Für jedes w ∈ Z 16 gilt Num2 (h(w )) = Num16 (w ) Induktionsanfang: Es gilt h(ϵ ) = ϵ. Somit gilt Num2 (h(ϵ )) = 0 = Num16 (ϵ ). GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 17 / 19 Bedeutungserhaltung Beweise durch vollständige Induktion über die Wortlänge: ∗ Für jedes w ∈ Z 16 gilt Num2 (h(w )) = Num16 (w ) Induktionsanfang: Es gilt h(ϵ ) = ϵ. Somit gilt Num2 (h(ϵ )) = 0 = Num16 (ϵ ). Induktionsschritt: Es sei n ∈ N0 derart, dass gilt: n Für jedes u ∈ Z 16 gilt Num2 (h(u)) = Num16 (u). GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie (I.V.) 17 / 19 Bedeutungserhaltung Beweise durch vollständige Induktion über die Wortlänge: ∗ Für jedes w ∈ Z 16 gilt Num2 (h(w )) = Num16 (w ) Induktionsanfang: Es gilt h(ϵ ) = ϵ. Somit gilt Num2 (h(ϵ )) = 0 = Num16 (ϵ ). Induktionsschritt: Es sei n ∈ N0 derart, dass gilt: n Für jedes u ∈ Z 16 gilt Num2 (h(u)) = Num16 (u). (I.V.) n+1 . Weiter sei w ∈ Z 16 GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 17 / 19 Bedeutungserhaltung Beweise durch vollständige Induktion über die Wortlänge: ∗ Für jedes w ∈ Z 16 gilt Num2 (h(w )) = Num16 (w ) Induktionsanfang: Es gilt h(ϵ ) = ϵ. Somit gilt Num2 (h(ϵ )) = 0 = Num16 (ϵ ). Induktionsschritt: Es sei n ∈ N0 derart, dass gilt: n Für jedes u ∈ Z 16 gilt Num2 (h(u)) = Num16 (u). (I.V.) n+1 . Es gibt ein u ∈ Z n und ein z ∈ Z so, Weiter sei w ∈ Z 16 16 16 dass u · z = w. GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 17 / 19 Bedeutungserhaltung Beweise durch vollständige Induktion über die Wortlänge: ∗ Für jedes w ∈ Z 16 gilt Num2 (h(w )) = Num16 (w ) Induktionsanfang: Es gilt h(ϵ ) = ϵ. Somit gilt Num2 (h(ϵ )) = 0 = Num16 (ϵ ). Induktionsschritt: Es sei n ∈ N0 derart, dass gilt: n Für jedes u ∈ Z 16 gilt Num2 (h(u)) = Num16 (u). (I.V.) n+1 . Es gibt ein u ∈ Z n und ein z ∈ Z so, Weiter sei w ∈ Z 16 16 16 dass u · z = w. Ferner gibt es a, b, c, d ∈ Z 2 , für welche h(z) = abcd gilt. Damit gilt GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 17 / 19 Bedeutungserhaltung Num2 (h(uz)) = Num2 (h(u)h(z)) GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 18 / 19 Bedeutungserhaltung Num2 (h(uz)) = Num2 (h(u)h(z)) = Num2 (h(u)abcd ) GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 18 / 19 Bedeutungserhaltung Num2 (h(uz)) = Num2 (h(u)h(z)) = Num2 (h(u)abcd ) = Num2 (h(u)abc) · 2 + num2 (d ) GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 18 / 19 Bedeutungserhaltung Num2 (h(uz)) = Num2 (h(u)h(z)) = Num2 (h(u)abcd ) = Num2 (h(u)abc) · 2 + num2 (d ) = (Num2 (h(u)ab) · 2 + num2 (c)) · 2 + num2 (d ) = ... GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 18 / 19 Bedeutungserhaltung Num2 (h(uz)) = Num2 (h(u)h(z)) = Num2 (h(u)abcd ) = Num2 (h(u)abc) · 2 + num2 (d ) = (Num2 (h(u)ab) · 2 + num2 (c)) · 2 + num2 (d ) = ... GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 18 / 19 Bedeutungserhaltung Num2 (h(uz)) = Num2 (h(u)h(z)) = Num2 (h(u)abcd ) = Num2 (h(u)abc) · 2 + num2 (d ) = (Num2 (h(u)ab) · 2 + num2 (c)) · 2 + num2 (d ) = ... = Num2 (h(u)) · 16 + num2 (a) · 8 + num2 (b) · 4 + num2 (c) · 2 + num2 (d ) GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 18 / 19 Bedeutungserhaltung Num2 (h(uz)) = Num2 (h(u)h(z)) = Num2 (h(u)abcd ) = Num2 (h(u)abc) · 2 + num2 (d ) = (Num2 (h(u)ab) · 2 + num2 (c)) · 2 + num2 (d ) = ... = Num2 (h(u)) · 16 + num2 (a) · 8 + num2 (b) · 4 + num2 (c) · 2 + num2 (d ) = Num2 (h(u)) · 16 + ((num2 (a) · 2 + num2 (b)) · 2 + num2 (c)) · 2 + num2 (d ) GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 18 / 19 Bedeutungserhaltung Num2 (h(uz)) = Num2 (h(u)h(z)) = Num2 (h(u)abcd ) = Num2 (h(u)abc) · 2 + num2 (d ) = (Num2 (h(u)ab) · 2 + num2 (c)) · 2 + num2 (d ) = ... = Num2 (h(u)) · 16 + num2 (a) · 8 + num2 (b) · 4 + num2 (c) · 2 + num2 (d ) = Num2 (h(u)) · 16 + ((num2 (a) · 2 + num2 (b)) · 2 + num2 (c)) · 2 + num2 (d ) = Num2 (h(u)) · 16 + Num2 (abcd ) GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 18 / 19 Bedeutungserhaltung Num2 (h(uz)) = Num2 (h(u)h(z)) = Num2 (h(u)abcd ) = Num2 (h(u)abc) · 2 + num2 (d ) = (Num2 (h(u)ab) · 2 + num2 (c)) · 2 + num2 (d ) = ... = Num2 (h(u)) · 16 + num2 (a) · 8 + num2 (b) · 4 + num2 (c) · 2 + num2 (d ) = Num2 (h(u)) · 16 + ((num2 (a) · 2 + num2 (b)) · 2 + num2 (c)) · 2 + num2 (d ) = Num2 (h(u)) · 16 + Num2 (abcd ) = Num16 (u) · 16 + Num2 (h(z)) GBI — Grundbegriffe der Informatik (I.V. und Wahl von abcd) Karlsruher Institut für Technologie 18 / 19 Bedeutungserhaltung Num2 (h(uz)) = Num2 (h(u)h(z)) = Num2 (h(u)abcd ) = Num2 (h(u)abc) · 2 + num2 (d ) = (Num2 (h(u)ab) · 2 + num2 (c)) · 2 + num2 (d ) = ... = Num2 (h(u)) · 16 + num2 (a) · 8 + num2 (b) · 4 + num2 (c) · 2 + num2 (d ) = Num2 (h(u)) · 16 + ((num2 (a) · 2 + num2 (b)) · 2 + num2 (c)) · 2 + num2 (d ) = Num2 (h(u)) · 16 + Num2 (abcd ) = Num16 (u) · 16 + Num2 (h(z)) (I.V. und Wahl von abcd) = Num16 (u) · 16 + Num16 (z) (Def. von h) GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 18 / 19 Bedeutungserhaltung Num2 (h(uz)) = Num2 (h(u)h(z)) = Num2 (h(u)abcd ) = Num2 (h(u)abc) · 2 + num2 (d ) = (Num2 (h(u)ab) · 2 + num2 (c)) · 2 + num2 (d ) = ... = Num2 (h(u)) · 16 + num2 (a) · 8 + num2 (b) · 4 + num2 (c) · 2 + num2 (d ) = Num2 (h(u)) · 16 + ((num2 (a) · 2 + num2 (b)) · 2 + num2 (c)) · 2 + num2 (d ) = Num2 (h(u)) · 16 + Num2 (abcd ) = Num16 (u) · 16 + Num2 (h(z)) (I.V. und Wahl von abcd) = Num16 (u) · 16 + Num16 (z) (Def. von h) = Num16 (uz) GBI — Grundbegriffe der Informatik (Def. von Num16 ). Karlsruher Institut für Technologie 18 / 19 Trans2,16 Führende Nullen entfernen, aber mindestens eine Ziffer φ : Z 2∗ → Z 2∗ , ϵ 7→ 0, 1·w → 7 1 · w, wobei w ∈ Z 2∗ , 0·w → 7 φ(w ), wobei w ∈ Z 2∗ . Es gilt Trans2,16 = φ ◦ h Trans2,16 (1E5) = φ(h(1E5)) = φ(h(1) · h(E) · h(5)) = φ(bin4 (num16 (1)) · bin4 (num16 (E)) · bin4 (num16 (5))) = φ(0001 · 1110 · 0101) = 111100101 GBI — Grundbegriffe der Informatik Karlsruher Institut für Technologie 19 / 19
© Copyright 2024 ExpyDoc