Theoretische Grundlagen der Informatik

Größe: px
Ab Seite anzeigen:

Download "Theoretische Grundlagen der Informatik"

Transkript

1 Theoretische Grundlagen der Informatik Informationstheorie Vorlesung vom 2. und 4. Februar 26 INSTITUT FÜR THEORETISCHE KIT Universität des Gog, Landes Sanders, Baden-Württemberg Wagner - Theoretische und Grundlagen der Informatik INSTITUT FÜR THEORETISCHE nationales Forschungszentrum in der Helmholtz-Gemeinschaft

2 Thema dieses Kapitels Informationstheorie hat Anwendungen in Quellkodierung Kanalkodierung Kryptographie Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

3 Thema dieses Kapitels Informationstheorie hat Anwendungen in Quellkodierung Reduktion von Redundanz/Irrelevanz am Ausgang einer Informationsquelle Hauptaufgabe: Datenkompression Interessante Anwendung: Komprimierte Datenstrukturen Unterscheidung: Verlustfrei vs. verlustbehaftete Kompression Hohe wirtschaftliche Bedeutung Kanalkodierung Kryptographie Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

4 Thema dieses Kapitels Informationstheorie hat Anwendungen in Quellkodierung Kanalkodierung Übertragung von digitalen Daten über gestörte Kanäle Schutz vor Übertragungsfehlern durch Redundanz Fehlerkorrektur Kryptographie Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

5 Thema dieses Kapitels Informationstheorie hat Anwendungen in Quellkodierung Kanalkodierung Kryptographie Informationssicherheit: Konzeption, Definition und Konstruktion von Informationssystemen, die widerstandsfähig gegen unbefugtes Lesen und Verändern sind Kryptographie bildet zusammen mit Kryptoanalyse die Kryptologie Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

6 Material für Informationstheorie Vorlesungsfolien Martin Werner: Information und Codierung, VIEWEG TEUBNER, Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

7 Information Sei Σ = {,..., n} eine Menge von Zeichen mit Wahrscheinlichkeiten {p,..., p n }. Wir betrachten eine Informationsquelle X, die Zeichen i Σ mit Wahrscheinlichkeit p i liefert. Bemerkung: X wird auch diskrete, endliche Zufallsvariable genannt Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

8 Information Sei Σ = {,..., n} eine Menge von Zeichen mit Wahrscheinlichkeiten {p,..., p n }. Wir betrachten eine Informationsquelle X, die Zeichen i Σ mit Wahrscheinlichkeit p i liefert. Bemerkung: X wird auch diskrete, endliche Zufallsvariable genannt. Beispiel Ein idealer Würfel wird durch die Wahrscheinlichkeiten ( 6, 6, 6, 6, 6, 6 ) dargestellt. Das Ergebnis des idealen Würfels ist schwer vorherzusagen. Der Erkenntnisgewinn nach Ausgang des Experiments ist deshalb groß Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

9 Information Sei Σ = {,..., n} eine Menge von Zeichen mit Wahrscheinlichkeiten {p,..., p n }. Wir betrachten eine Informationsquelle X, die Zeichen i Σ mit Wahrscheinlichkeit p i liefert. Bemerkung: X wird auch diskrete, endliche Zufallsvariable genannt. Beispiel Betrachte den gezinkten Würfel mit Wahrscheinlichkeiten (,,,,, 2 ). Hier ist schon klarer, welche Zahl als nächstes gewürfelt wird. Der Erkenntnisgewinn ist also kleiner Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

10 Information Sei Σ = {,..., n} eine Menge von Zeichen mit Wahrscheinlichkeiten {p,..., p n }. Wir betrachten eine Informationsquelle X, die Zeichen i Σ mit Wahrscheinlichkeit p i liefert. Bemerkung: X wird auch diskrete, endliche Zufallsvariable genannt. Frage Wir suchen ein Maß für den Erkenntnisgewinn nach Ausgang k mit Wahrscheinlichkeit p k. Wir bezeichnen diesen Erkenntnisgewinn als Information I pk Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

11 Information Sei Σ = {,..., n} eine Menge von Zeichen mit Wahrscheinlichkeiten {p,..., p n }. Wir betrachten eine Informationsquelle X, die Zeichen i Σ mit Wahrscheinlichkeit p i liefert. Bemerkung: X wird auch diskrete, endliche Zufallsvariable genannt. Wünsche an die Definition von Information Information soll nicht negativ sein. In Formeln: I pi Ein sicheres Ereignis (also p i = ) soll keine Information liefern. Kleine Änderungen an der Wahrscheinlichkeit sollen nur kleine Änderungen an der Information bewirken. Etwas mathematischer ausgedrückt: Information soll stetig sein Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

12 Information Sei Σ = {,..., n} eine Menge von Zeichen mit Wahrscheinlichkeiten {p,..., p n }. Wir betrachten eine Informationsquelle X, die Zeichen i Σ mit Wahrscheinlichkeit p i liefert. Bemerkung: X wird auch diskrete, endliche Zufallsvariable genannt. Wünsche an die Definition von Information Wunsch: Eine doppelt so lange Zeichenkette soll doppelte Information enthalten können Deshalb fordern wir, dass I pi p j = I pi + I pj Dies soll später sicherstellen, dass die Information einer (unabhängigen) Zeichenkette gleich der Summe der Einzelinformationen ist Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

13 Information Sei Σ = {,..., n} eine Menge von Zeichen mit Wahrscheinlichkeiten {p,..., p n }. Wir betrachten eine Informationsquelle X, die Zeichen i Σ mit Wahrscheinlichkeit p i liefert. Bemerkung: X wird auch diskrete, endliche Zufallsvariable genannt. Definition Information Sei p eine Wahrscheinlichkeit. Die Information von p (zur Basis b) ist I p = log b ( p ) = log b(p) Im Folgenden verwenden wir immer die Basis b = Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

14 Wiederholung: Rechenregeln Logarithmus log a (x y) = log a (x) + log a (y) log a (/x) = log a (x) Basiswechsel: log a (x) = log b(x) log b (a) 2 K p K4 K6 Nützliche Ungleichung: K8 log e x x bzw. log 2 x log 2 e (x ) Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

15 Information Definition Information Sei p eine Wahrscheinlichkeit. Die Information von p (zur Basis b) ist I p = log b ( p ) = log b(p) Im Folgenden verwenden wir immer die Basis b = 2. Beispiel 2: Betrachte einen Münze mit Seiten, und Wkten p = p = 2. Die Information eines Münzwurfs ist log(/ 2 ) = log(2) =. Werfen wir die Münze k mal, so ist die Wahrscheinlichkeit für einen bestimmen Ausgang gleich =. 2 k Die Information ist dann log( 2 k ) = log(2 k ) = k Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

16 Entropie Anschaulich formuliert Entropie ist ein Maß für den mittleren Informationsgehalt pro Zeichen einer Quelle Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

17 Entropie Entropie Die Entropie (zur Basis 2) einer diskreten Zufallsvariable mit Ereignissen (Zeichen) X und Wahrscheinlichkeiten p(x) für x X, ist definiert durch H(X ) = p(x) log 2 ( p(x) ) x X dabei gelten die folgenden Konventionen log :=, a log a := Bemerkung Es gilt immer H(X ) Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

18 Bemerkungen zur Entropie H(X ) = x X p(x) log 2 ( p(x) ) Die Entropie einer diskreten, endlichen Zufallsvariable mit n Zeichen wird maximal, wenn alle Zeichen gleichwahrscheinlich sind. Die maximale Entropie beträgt dann log 2 (n). Die Entropie der deutschen Sprache liegt etwa bei 4,. Bei 26 Buchstaben ergibt sich eine maximale Entropie von log 2 (26) 4, Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

19 Entropie einer Münze mit Wkt p für Zahl..75 H(X) [Bit].5.25 H(X ) = x X p p(x) log 2 ( p(x) ) = p log 2(p) ( p) log 2 ( p) Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

20 (Platzsparende) Codierungen Wir betrachten eine Informationsquelle X, die Zeichen i Σ mit Wahrscheinlichkeit p i liefert. Zum Codieren der Zeichen aus Σ haben wir aber nur Zeichenketten aus {, } zur Verfügung. Wie können wir Σ ohne Informationsverlust codieren, dass die erwartete Länge der Ausgabe möglichst klein wird? Formal Wir ordnen jedem Zeichen i Σ ein Codewort z i {, } mit n i Zeichen zu. Die mittlere Codewortlänge ist n = i Σ p i n i Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

21 Codierungsbäume Wir codieren im Folgenden binär. Sei Σ = {,... n} ein Alphabet mit Präfix-Code C = {c,... c n }. Der Codierungsbaum T von (Σ, C) ist ein gerichteter, binärer Baum so dass jede Kante mit oder annotiert ist, ausgehend von einem Knoten höchstens eine Kante mit und höchstens eine Kante mit annotiert ist, die Blätter von T genau die Elemente in Σ sind, der Weg von der Wurzel zu i Σ mit c i annotiert ist. a b c d e f g h Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

22 Codierungsbäume a b c d e f g h Beispiele Zeichen c hat Code Zeichen f hat Code Zeichen h hat Code Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

23 Codierungsbäume Bemerkungen a b c d e f g h Es besteht ein direkter Zusammenhang zwischen Codierungen und den zugehörigen Bäumen. Die Tiefe d T (v) eines Knotens v in einem Baum T ist die Anzahl der Kanten auf einem kürzesten Weg von der Wurzel zu v Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

24 Codierungsbäume Bemerkungen a b c d e f g h Gegeben sei eine Codierung für Alphabet Σ mit Wahrscheinlichkeit p i für i Σ, Codewortlänge n i für i Σ und zugehörigem Codierungsbaum T. Die mittlere Codewortlänge ist n = i Σ p i n i = v Σ p v d T (v) Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

25 Beispiel Betrachte eine Informationsquelle X mit Σ = {a, b, c, d, e, f, g, h} und Wahrscheinlichkeiten p s = /8 für s Σ. a b c d e f g h Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

26 Beispiel Betrachte eine Informationsquelle X mit Σ = {a, b, c, d, e, f, g, h} und Wahrscheinlichkeiten p s = /8 für s Σ. a b c d e f g h Mittlere Codewortlänge Hier haben alle Codes Länge 3. Die mittlere Codewortlänge ist also Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

27 Beispiel Betrachte eine Informationsquelle X mit Σ = {a, b, c, d, e, f, g, h} und Wahrscheinlichkeiten p s = /8 für s Σ. a b c d e f g h Anzahl der codierten Zeichen Mit jedem zusätzlichen Bit verdoppelt sich die Größe des darstellbaren Alphabets. Um ein Alphabet Σ mit Wörtern gleicher Länge zu kodieren braucht man also log( Σ ) Bits Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

28 Präfix-Codes Bei Codes mit variabler Länge muss man wissen, wann ein neues Codewort beginnt. Ein Präfix-Code ist ein Code, so dass kein Codewort Anfang eines anderen Codeworts ist. Für Präfix-Codes benötigt man deswegen keine Trennzeichen. Jeder Präfix-Code kann auf die in der letzten Folie benutze Art als Baum dargestellt werden Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

29 Beispiel: Morse-Alphabet Das Morse-Alphabet hat variable Länge. Das Morse-Alphabet ist kein Präfix-Code. Zur Unterscheidung von A und ET benötigt man ein Trennzeichen. Das Morsealphabet besteht deswegen aus 3 Zeichen. Buchstabe Morsezeichen Buchstabe Morsezeichen A N B O C P D Q E R F S G T H U I V J W K X L Y M Z Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

30 Quellencodierungstheorem Es seien Codes mit variabler Länge erlaubt. Es ist dann nützlich, häufige Zeichen mit kurzen Wörtern zu codieren. Dies verkleinert die mittlere Codewortlänge. Satz (Shannon s Quellencodierungstheorem): Sei X eine diskrete endliche Zufallsvariable mit Entropie H(X ). Dann existiert ein Präfix-Code für X mit einem Codealphabet aus D Zeichen so, dass für die mittlerer Codewortlänge n gilt H(X ) log 2 D n < H(X ) log 2 D +. Bemerkung In der Vorlesung betrachten wir den Fall D = 2, d.h. wir verwenden den binären Code. Entropie und mittlere Codewortlänge werden dann in Anzahl Binärzeichen (Bit) angegeben Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

31 Quellencodierungstheorem Beweis Schritt Kraftsche Ungleichung Für die Existenz eines binären Präfixcodes mit K Codewörtern der Länge n, n 2,..., n K ist notwendig und hinreichend, dass die kraftsche Ungleichung erfüllt ist. 2 n k i Beweis Auf der i-ten Ebene des Coderierungsbaum gibt es 2 i Konten Zu jedem Knoten der i-ten Ebene gehören genau 2 n i Knoten in der letzten (n-ten) Ebene Der Codebaum liefert einen Präfixcode Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

32 Quellencodierungstheorem Beweis Ebene # Knoten 2 = 2 = 2 z = 4 z 3 z = 8 z z z 9 z 8 z 7 z 6 z 5 z = Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

33 Quellencodierungstheorem Beweis Ordne Codewortlänge der Größe nach n n 2 n K = n Das Codewort z i sperrt 2 n n i Blattknoten; da die gesperrten Blätter unterschiedlicher Codewörter nicht überlappen gilt insgesamt: K 2 n n k k= Blätter gesperrt. Ein Code mit maximaler Länge n hat maximal 2 n Wörter. D.h. K k= 2n n k 2 n. Division mit 2 n liefert also: K 2 n k k= Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

34 Quellencodierungstheorem Beweis Wir haben gerade die Präfixeigenschaft des Codes benutzt. Die Aussage lässt sich von Präfixcodes auf eindeutig decodierbare Codes erweitern. Satz von Mc Millan Jeder eindeutig decodierbare Code erfüllt die kraftsche Ungleichung Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

35 Quellencodierungstheorem Beweis Schritt 2 Linke Seite: H(X ) n H(X ) n = K k= mit log x (x ) log e p k log p k K p k log 2 n k log e p k= k K k= K k= = log e p k n k = K p k log 2 n k p k= k [ 2 n ] k p k p k K 2 n k k= } {{ } Kraft K p k k= }{{} = Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

36 Quellencodierungstheorem Beweis Schritt 3 Rechte Seite: n < H(X ) + Es gilt die kraftschen Ungl. und es existiert ein Code mit entspr. Längen n,..., n K. Somit K 2 n K k = p k k= k= Solange die kraftsche Ungl. gilt, sind wir frei in der Wahl der n k. Wähle n k so, dass 2 n k p k wobei n k die kleinste nat. Zahl sei, welche die Ungl. erfüllt. Damit gilt für jedes n k p k < 2 n k Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

37 Quellencodierungstheorem Beweis Logarithmieren und multipliziere mit p k ergibt: Aufsummieren über alle k ergibt: p k log p k < n k p k + p k K k= p k log p k < n + n < H(X ) Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

38 Beispiel: Shannon-Fano Codierung Elemente Wahrscheinlichkeiten Codewort,59,388 2,25 3,946 4,796 5,669 6,563 7,473 8,398 9,334,28,237 2, Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

39 Beispiel: Shannon-Fano Codierung Elemente Wahrscheinlichkeiten Codewort,59,388 2,25 3,946 4,796 5,669 6,563 7,473 8,398 9,334,28,237 2, Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

40 Beispiel: Shannon-Fano Codierung Elemente Wahrscheinlichkeiten Codewort,59,388 2,25 3,946 4,796 5,669 6,563 7,473 8,398 9,334,28,237 2, Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

41 Beispiel: Shannon-Fano Codierung Elemente Wahrscheinlichkeiten Codewort,59,388 2,25 3,946 4,796 5,669 6,563 7,473 8,398 9,334,28,237 2, Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

42 Beispiel: Shannon-Fano Codierung Elemente Wahrscheinlichkeiten Codewort,59,388 2,25 3,946 4,796 5,669 6,563 7,473 8,398 9,334,28,237 2, Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

43 Beispiel: Shannon-Fano Codierung Elemente Wahrscheinlichkeiten Codewort,59,388 2,25 3,946 4,796 5,669 6,563 7,473 8,398 9,334,28,237 2, Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

44 Beispiel: Shannon-Fano Codierung Elemente Wahrscheinlichkeiten Codewort,59,388 2,25 3,946 4,796 5,669 6,563 7,473 8,398 9,334,28,237 2, Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

45 Beispiel: Shannon-Fano Codierung Ein paar Zwischenschritte später... Elemente Wahrscheinlichkeiten Codewort,59,388 2,25 3,946 4,796 5,669 6,563 7,473 8,398 9,334,28,237 2, Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

46 Shannon-Fano Codierung Funktion ShannonFano(Z ) Eingabe: Zeichenliste Z = (z,..., z k ) mit Wkten p,... p k Ausgabe: Shannon-Fano Codierung (c,..., c k ) Wenn k = return (c = ɛ) and exit Sortiere Zeichen Z absteigend nach Wkt p i (d.h p p 2,... p k ). Trenne Z in Z (z,... z l ) Z 2 (z l+,... z k ) so dass l i= p i k i=l+ p i minimal ist. (c,... c l ) ShannonFano(Z ) (c l+,... c k ) ShannonFano(Z 2 ) return (c,... c k ) Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

47 Codierungsbaum Shannon-Fano Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

48 Bemerkung Die mittlere Codewortlänge der Shannon-Fano Codierung muss nicht optimal sein. Sie ist deswegen nicht sehr verbreitet. Wir werden sehen, dass die Huffman-Codierung optimale mittlere Codewortlänge besitzt Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

49 Beispiel: Huffman-Codierung d, 4 f, 2 b, 5 e, 5 a, 5 c, Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

50 Beispiel: Huffman-Codierung d, 4 f, 2 b, 5 e, 5 a, 5 c, 5, Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

51 Beispiel: Huffman-Codierung d, 4 f, 2 b, 5 e, 5 a, 5 c, 5,, Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

52 Beispiel: Huffman-Codierung d, 4 f, 2 b, 5 e, 5 a, 5 c, 5, 35,, Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

53 Beispiel: Huffman-Codierung d, 4 f, 2 b, 5 e, 5 a, 5 c, 5, 35,, 25, Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

54 Beispiel: Huffman-Codierung d, 4 f, 2 b, 5 e, 5 a, 5 c, 5, 35,, 25, Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

55 Beispiel: Huffman-Codierung d, 4 f, 2 b, 5 e, 5 a, 5 c, 5, 35,, 25, 6 Beispiele Zeichen c hat Code Zeichen e hat Code Zeichen d hat Code Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

56 Huffman-Codierung Eingabe: Zeichen,..., n mit Wahrscheinlichkeiten p,..., p n Ausgabe: Baum T des Huffman-Codes Menge Q = {,... n} Füge alle Zeichen aus Q als Blätter in T ein Für i =,... n Erzeuge neuen Knoten z für T u extrahiere Element x aus Q mit p x minimal Bestimme u als linker Nachfolger von z v extrahiere Element x aus Q mit p x minimal Bestimme v als rechter Nachfolger von z Wahrscheinlichkeit p z von z ist p u + p v Füge z in Q ein r extrahiere letztes Element aus Q return r (r ist Wurzel von T ) Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

57 Optimalität der Huffman-Codierung Satz: Der Huffman-Algorithmus berechnet einen Codierungsbaum mit minimaler mittlerer Codewortlänge Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

58 Vorbereitendes Lemma Satz: Sei Σ = {,..., n} ein Alphabet mit Wahrscheinlichkeiten P, wobei P = {p,..., p n }. Seien x, y Σ, x = y eine beliebige Wahl für die zwei unwahrscheinlichsten Zeichen. Dann gibt es einen Codierungsbaum T für (Σ, P) mit minimaler mittlerer Codewortlänge, so dass x und y den gleichen Elternknoten besitzen Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

59 Vorbereitendes Lemma: Beweis Sei Σ = {,..., n} ein Alphabet mit Wkten P = {p,..., p n }. Seien x, y Σ, x = y eine beliebige Wahl für die zwei unwahrscheinlichsten Zeichen. Beweis Sei T ein beliebiger Codierungsbaum für (Σ, P) mit minimaler mittlerer Codewortlänge. O.B.d.A gelte für die Tiefe, dass d T (x) d T (y). Sei z der Elternknoten von x in T. Fall : z hat nur x als Nachkommen Dann könnte man z löschen und durch x ersetzen. Dieser Baum hätte eine kleinere mittlere Codewortlänge. Widerspruch zur Optimalität von T. x z y Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

60 Vorbereitendes Lemma: Beweis Sei Σ = {,..., n} ein Alphabet mit Wkten P = {p,..., p n }. Seien x, y Σ, x = y eine beliebige Wahl für die zwei unwahrscheinlichsten Zeichen. Beweis Sei T ein beliebiger Codierungsbaum für (Σ, P) mit minimaler mittlerer Codewortlänge. O.B.d.A gelte für die Tiefe, dass d T (x) d T (y). Sei z der Elternknoten von x in T. Fall 2: z hat mehr als 2 Nachkommen Sei w = y ein Nachfahre von z von maximaler Tiefe. Optimalität von T : p w p x. Wahl von x, y: p w = p x. Tausche x mit w. Weiter mit Fall 3. x z w q y Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

61 Vorbereitendes Lemma: Beweis Sei Σ = {,..., n} ein Alphabet mit Wkten P = {p,..., p n }. Seien x, y Σ, x = y eine beliebige Wahl für die zwei unwahrscheinlichsten Zeichen. Beweis Sei T ein beliebiger Codierungsbaum für (Σ, P) mit minimaler mittlerer Codewortlänge. O.B.d.A gelte für die Tiefe, dass d T (x) d T (y). Sei z der Elternknoten von x in T. Fall 3: z hat genau 2 Nachkommen Sei q = x der andere Nachfahre von z. Tausche q mit y. q und y gleiche Tiefe: Tauschen ok. q tiefer als y: Wegen Optimalität p q = p y. x z q y Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

62 Optimalität der Huffman-Codierung Satz: Der Huffman-Algorithmus berechnet einen Codierungsbaum mit minimaler mittlerer Codewortlänge. Beweis Wir benutzen Induktion nach der Anzahl der Zeichen Σ des Alphabets Σ. Induktionsanfang: Die Aussage ist für ein Zeichen erfüllt Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

63 Beweis - Induktionsschluss Induktions-Voraussetzung Der Huffman-Algorithmus berechnet einen optimalen Codierungsbaum für alle Alphabete Σ mit Σ n und alle Möglichkeiten für P. Induktions-Schluss Gegeben sei Alphabet Σ = {,..., n + } mit Wahrscheinlichkeiten P = {p,... p n+ }. Für einen Codierungsbaum T bezeichne f (T ) = v Σ p v d T (v) die zugehörige mittlere Wortlänge. Wir machen einen Widerspruchsbeweis. Bezeichne T huff einen Huffman-Baum für (Σ, P). Sei T opt einen Codierungsbaum für (Σ, P) mit f (T opt ) < f (T huff ) Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

64 Beweis - Induktionsschluss Seien x, y Σ die Zeichen, die im Huffman-Algorithmus zuerst zusammengefasst werden. Vorbereitendes Lemma: Wir können T opt so wählen, dass x und y den gleichen Elternknoten besitzen. T opt T huff x y x y Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

65 Beweis - Induktionsschluss Seien x, y Σ die Zeichen, die im Huffman-Algorithmus zuerst zusammengefasst werden. Vorbereitendes Lemma: Wir können T opt so wählen, dass x und y den gleichen Elternknoten besitzen. T opt T huff z z Sei Σ = Σ \ {x, y} {z} Instanz für neues Zeichen z mit Wkt p x + p y. Seien T opt und T huff die Bäume, die sich aus T opt und T huff ergeben, wenn man x, y mit ihrem Elternknoten zu Knoten z verschmilzt Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

66 Beweis - Induktionsschluss Sei Σ = Σ \ {x, y} {z} Instanz für neues Zeichen z mit Wkt p x + p y. Seien T opt und T huff die Bäume, die sich aus T opt und T huff ergeben, wenn man x, y mit ihrem Elternknoten zu Knoten z verschmilzt. T opt T huff z z Es gilt: T huff ist ein Huffman-Baum für Instanz Σ mit den neuen Wkten. T opt ist ein Codierungs-Baum für Instanz Σ mit den neuen Wkten Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

67 Beweis - Induktionsschluss Sei Σ = Σ \ {x, y} {z} Instanz für neues Zeichen z mit Wkt p x + p y. Seien T opt und T huff die Bäume, die sich aus T opt und T huff ergeben, wenn man x, y mit ihrem Elternknoten zu Knoten z verschmilzt. T opt T huff z z Es gilt: f (T huff ) = f (T huff) d Thuff (x)p x d Thuff (y)p y + (d T (z) )p z huff = f (T huff ) p x p y f (T opt) = f (T opt ) d Topt (x)p x d Topt (y)p y + (d T opt (z) )p z = f (T opt ) p x p y Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

68 Beweis - Induktionsschluss Sei Σ = Σ \ {x, y} {z} Instanz für neues Zeichen z mit Wkt p x + p y. Seien T opt und T huff die Bäume, die sich aus T opt und T huff ergeben, wenn man x, y mit ihrem Elternknoten zu Knoten z verschmilzt. T opt T huff z z Damit ist T opt ein besserer Coderierungsbaum für Σ als T huff. Da Σ = n ist dies ein Widerspruch zur Induktionsvoraussetzung Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

69 Nachteile der Huffman-Codierung Unterschiedliche Codewortlängen führen zu unterschiedlichen Bitraten und Decodierungsverzögerung. Datenkompression reduziert die Redundanz und erhöht damit die Fehleranfälligkeit. Die Kenntnis der Wahrscheinlichkeiten der Zeichen wird vorausgesetzt. Universelle Codierverfahren wie der Lempel-Ziv Algorithmus setzen kein a-priori Wissen an die Statistik der Daten voraus Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

70 Lauflängenkodierung Bei der Faxübertragung wird die Vorlage zeilenweise abgetastet und in weiße (w) und schwarze (s) Bildelemente zerlegt. Üblicherweise ist die Zahl der weißen Elemente viel höher als die der schwarzen. Wir nehmen der Einfachheit halber an, dass die Bildpunkte voneinander unabhängig sind. Bei 5% Schwärzungsgrad ergibt sich eine Entropie von H =.85 log 2 (.85).5 log 2 (.5).6 Bei guter Codierung sollte eine entsprechende mittlere Codewortlänge zu erwarten sein Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

71 Lauflängenkodierung Bei der Faxübertragung wird die Vorlage zeilenweise abgetastet und in weiße (w) und schwarze (s) Bildelemente zerlegt. Üblicherweise ist die Zahl der weißen Elemente viel höher als die der schwarzen. Wir nehmen der Einfachheit halber an, dass die Bildpunkte voneinander unabhängig sind. Bei 5% Schwärzungsgrad ergibt sich eine Entropie von H =.85 log 2 (.85).5 log 2 (.5).6 Bei guter Codierung sollte eine entsprechende mittlere Codewortlänge zu erwarten sein. Problem: Wie ist platzsparende Codierung von einem Alphabet mit zwei Zeichen möglich? Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

72 Lauflängencodierung Problem: Wie ist platzsparende Codierung von einem Alphabet mit zwei Zeichen möglich? Möglicher Ansatz: Blockcodes Fasse k Zeichen zu Blöcken zusammen und codiere diesen Beispiel k = 2: Beispiel: Neues Alphabet: ww,ws,sw,ss. Dieses kann platzsparend codiert werden. Zeichen ww ws sw ss 2 2 Wkt 2 Huffman Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

73 Lauflängencodierung Lauflängencodierung Spezielle Zusammenfassung für Bildcodierung bei Fax/Videoanwendungen Die Länge der Blöcke ist variabel. Idee: Codiere nicht die Bildpunkte, sondern den Abstand zwischen zwei schwarzen Bildpunkten. Beispiel: wwwswwsswwwwswswwwwwwswwwwwws wird aufgefasst als Für eine Binärcodierung braucht man noch Codes für die Abstände (also für N). Um dies platzsparend zu machen, benötigt man Wahrscheinlichkeiten für einzelne Abstände Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

74 Lauflängencodierung Lauflängencodierung Wie groß sind die Wkten für die einzelnen Abstände? Annahme: Die Bildpunkte sind voneinander unabhängig. Sei p l die Wkt für einen Block aus l aufeinanderfolgenden weißen Bildpunkten mit einem schwarzen Bildpunkten am Schluss p l = P(w l s) = P l (w) P(s) = P(s) ( P(s)) l. Es ergibt sich eine geometrische Verteilung. Erwartungswert der geometrische Verteilung ist /P(s) Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

75 Geometrische Verteilung.8 Wahrscheinlichkeit p i Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

76 Lauflängencodierung Man kann ein Schwarzweißbild über Angabe der Lauflängen verlustfrei rekonstruieren. Sonderbehandlung für letzten Block erforderlich. Weiteres Problem: Lauflängen können beliebig groß werden. Shannon-Fano-Codierung kann trotzdem einfach angewandt werden. Abstand Wkten Codewort,59,388 2,25 3,946 4,796 5,669 6,563 7,473 8,398 9,334,28,237 2, Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

77 Succinct Datenstrukturen Sei ein kombinatorisches Objekt T fester Größe n gegeben. Wenn f T (n) die Anzahl verschiedener Instanzen von T ist, dann ist die Informationstheoretische Schranke um alle Instanzen von T eindeutig darzustellen Z T = log 2 f T (n) Bits. Eine Datenstruktur für Objekt T nennen wir succinct, wenn die Platzkomplexität nicht größer als Z T + o(n) ist und Operationen auf T effizient (sublinear) ausführbar sind. Der sublineare Platz wird für den Indexteil benötigt, der die effiziente Ausführung der Operationen ermöglicht Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

78 Succinct Datenstrukturen Beispiel Bitvektor B der Länge n (=Sequenz der Länge n über binärem Alphabet) mit Zugriff (access) und Rang (rank ) Operation. access(i): Wert an i-ter Stelle rank (i): i j= B[i] 2 n verschiedene Instanzen der Länge n. Z = n Bits Mit naiver Darstellung des Bitvektors wird access im RAM Modell in O() Zeit unterstützt. Wie kann man rank (i) in O() Zeit realisieren? Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

79 Bitvektoren mit Zugriff und Rank Operation o(n)-bit Index für die rank Operation Unterteile B in Blöcke der Länge L = log 2 n Berechne und speichere P [i] = rank (i L ) für i {,..., n/l } Unterteile B in Blöcke der Länge L 2 = 2 log n Berechne und speichere P 2 [i] = rank (i L 2 ) P [ (i L 2 )/L ] für i = {,..., n/l 2 } L n. L 2 L L L 2 L 2 L 2. L 2 L 2 L 2 L Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

80 Bitvektoren mit Zugriff und Rank Operation o(n)-bit Index für die rank Operation Für alle n verschiedene Bitvectoren der Länge L 2 = log 2 n berechnen wir für alle i {,..., L 2 } den Wert rank (i) in einer Tabelle P 3 vor. Platzbedarf n L log n+ (für P ) n L 2 2 log log n+ (für P 2 ) n L2 log L 2 (für P 3 ) o(n) für unsere Wahl für L und L 2 L n. L 2 L L L 2 L 2 L 2. L 2 L 2 L 2 L Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

81 Bitvektoren mit Zugriff und Rank Operation Berechnung von rank (i) mit dem o(n)-bit Index Sei j = i/l 2 L 2 und B[l..r] ein Teilvektor rank (i) = P [ i/l ] + P 2 [ i/l 2 ] + P 3 [B[j..j + L 2 ]][(i mod L 2 )] L n. L 2 L L L 2 L 2 L 2. L 2 L 2 L 2 L Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

82 Bitvektoren mit Zugriff und Rank Operation Bemerkung Die inverse Operation zu rank ist die Operation select. Sie gibt die Position der i-ten Eins im Bitvektor zurück. Die select Operation kann ähnlich zu rank auch in konstanter Zeit mit einem o(n)-bit Index realisiert werden Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

83 Komprimierte Datenstrukturen Für eine gegebene Instanz eines Objekt fester Länge n (etwa einer Sequenz) werden die Wkten der Symbole durch Zählen bestimmt. Sei etwa eine Sequenze S der Länge n über einem Alphabet Σ = {,..., σ} und n c sei die Anzahl an Vorkommen des Symbols c in S. Dann ist p(c) = n c n und wir nennen H (S) = c Σ p(c) log 2 ( p(c) ) die empirische Entropie von S. Komprimierte Datenstrukturen repräsentieren die Instanz in n H (S) + o(n) Bits. Der n H (S) Teil repräsentiert die Daten, während der sublineare Term o(n) Indexinformation zur effizienten Ausführung von Operationen enthählt Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

84 Komprimierte Datenstrukturen: Wavelet Tree Der Wavelet Tree ist eine komprimierte Datenstruktur für Sequenzen. Folgende Operationen sollen effizient ausführbar sein: access(i, S): Zugriff auf S[i]. rank(i, c, S): Anzahl an Vorkommen des Symbols c im Präfix S[,..., i ], formal: {j S[j] = c j < i} Wavelet Tree Sei S eine Sequenz der Länge n über Alphabet Σ = {,..., σ }. Jedem c Σ sei ein Wort z c aus einem Präfix-Code C zugeordnet. Ein Wavelet Tree ist ein binärer Baum, dessen Topologie der des Codierungsbaum T von C entspricht. Jedem Knoten v mit Pfadbeschriftung ω(v) der Länge l wird die Teilsequenz S v = {S[i] ω(v) ist Präfix von z S[i] } konzeptionell zugeordnet Knoten v enthält ein Bitvector B v der Länge n v = S v mit B v [i] = ω(s v [i])[l] für l < z Sv [] Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

85 Komprimierte Datenstrukturen: Wavelet Tree arrd$rcbbraaaaaabba a$bbaaaaaabba a$aaaaaaa bbbb dc rrdrcr rrrr Beispiel c z c n c $ a 8 b 4 c d r 4 $ aaaaaaaa c d Tiefe des Wavelet Tree ist log σ = 3. Summe der Bitvektoren und die O(σ) Zeichen um die Topologie darzustellen: n log σ + O(σ log n) Bits Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

86 Komprimierte Datenstrukturen: Wavelet Tree arrd$rcbbraaaaaabba a$bbaaaaaabba a$aaaaaaa bbbb dc rrdrcr rrrr Berechnung von rank a (i) z a entspricht Pfad im WT Bestimme Position i ω (v) von i in jedem S v des Pfads mittels rank (rank ) auf Bitvektoren i za = rank a (i) $ aaaaaaaa c d Beispiel rank a () z a = i ɛ = i = Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

87 Komprimierte Datenstrukturen: Wavelet Tree arrd$rcbbraaaaaabba a$bbaaaaaabba a$aaaaaaa bbbb dc rrdrcr rrrr Berechnung von rank a (i) z a entspricht Pfad im WT Bestimme Position i ω (v) von i in jedem S v des Pfads mittels rank (rank ) auf Bitvektoren i za = rank a (i) $ aaaaaaaa c d Beispiel rank a () z a = i ɛ = i =,i = rank (i ɛ ) = Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

88 Komprimierte Datenstrukturen: Wavelet Tree arrd$rcbbraaaaaabba a$bbaaaaaabba a$aaaaaaa bbbb dc rrdrcr rrrr Berechnung von rank a (i) z a entspricht Pfad im WT Bestimme Position i ω (v) von i in jedem S v des Pfads mittels rank (rank ) auf Bitvektoren i za = rank a (i) $ aaaaaaaa c d Beispiel rank a () z a = i ɛ = i =,i = rank (i ɛ ) = 5, i = rank (i ) = Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

89 Komprimierte Datenstrukturen: Wavelet Tree arrd$rcbbraaaaaabba a$bbaaaaaabba a$aaaaaaa bbbb dc rrdrcr rrrr Berechnung von rank a (i) z a entspricht Pfad im WT Bestimme Position i ω (v) von i in jedem S v des Pfads mittels rank (rank ) auf Bitvektoren i za = rank a (i) $ aaaaaaaa c d Beispiel rank a () z a = i ɛ = i =,i = rank (i ɛ ) = 5, i = rank (i ) = 3, i = rank (i ) = Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

90 Komprimierte Datenstrukturen: Wavelet Tree Die worst case und average case Komplexität der rank-funktion für einen Präfix-Code mit maximaler Tiefe log σ liegt in O(log σ) Platz und average Komplexität lassen sich durch Nutzung des Huffman Codes verbessern: Platz auf n(h (S) + ) + o(n) + O(σ log n) Bits Average Laufzeit auf H (S) Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

91 Komprimierte Datenstrukturen: Wavelet Tree $c d$c arrd$rcbbraaaaaabba rrd$rcbbrbb d$cbbbb d bbbb rrrr aaaaaaaa Beispiel H (S) = 3 log log log Bits Optimale Darstellung von S mit nh (S) < 4 Bits Gesamtlänge der Bitvektoren 49 Bits (mit balancierter Topologie) 42 Bits (mit Huffman Topologie, s.l.) $ c Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

92 Elias-Fano Kodierung Elias-Fano Kodierung Sei X eine aufsteigende Sequenz aus {,..., n }. Es gibt eine Darstellung für X in m log m n + 3m + o(m) Bits die Zugriff auf jedes X [i] in konstanter Zeit erlaubt. Naive Darstellung von X würde m log n Platz benötigen X kann auch als Bitvektor der Länge n mit m gesetzten Bits aufgefasst werden. Analog zu der rank Datenstruktur gibt es eine Struktur, welche die Position der i-te in einem Bitvektor in konstanter Zeit berechnet und nur sublinear Platz benötigt. Aufsteigende Sequenzen treten in vielen Anwendungen auf: Adjazenlisten, invertierte Indizes, Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

93 Elias-Fano Kodierung Funktionsweise Teile jedes Element von X in zwei Teile: die unteren r = log m n Bits (low part) die oberen log n r Bits (high part) Die low parts werden in einem Array L mit r-bit Einträgen gespeichert. Die Sequenz der high parts ist nicht absteigend. Sei δ i die Differenz des high parts von X [i] und X [i ]. Erzeuge einen Bitvektor H durch die Konkatenation der unären Codierung von δ, δ,..., δ m. Unäre Codierung Eine nicht negative Zahl x wird durch den String u(x) = x unär kodiert. Also gilt u() =, u() =, u(2) =, Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

94 Elias-Fano Kodierung Funktionsweise X = δ = H = L = H enthält m Nullen und höchstens 2 log n log n/m 2 log n (log n/m ) = 2 log m+ = 2m Einsen. Damit benötigt die Elias-Fano Codierung höchstens m log n/m + 3m Bits Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

95 Elias-Fano Codierung Funktionsweise Rekonstruktion eines beliebigen X [i] access(i) p select (i, H) x p i return x 2 log n/m + L[i] Beispiel: X [2] = (5 2) = = Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

96 Elias-Fano Kodierung Anwendung Gegeben ein String S der Länge n über einem Alphabet Σ der Größe σ, etwa die Konkatenation von k Webseiten. Speichere für jedes Symbol c Σ eine Liste, welche an Position i die Position des i-ten Vorkommen von c in S enthält. Sei n i die Länge der Liste Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

97 Elias-Fano Kodierung Anwendung Platzanalyse: = n i log n + 3n n i + o(n i ) + O(log n) c Σ i ( ni ) + 3n + o(n) + O(σ log n) n n log n n c Σ i = n H (S) + 3n + o(n) + O(σ log n) Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

98 Wechselseitiger und bedingter Informationsgehalt Quelle X Ereignispaar,,Kopplung (x i,y j ) Quelle Y Betrachte Zeichen/Ergebnispaar zweier Quellen X und Y Für die Wkt gilt: p(x i, y j ) = p(x i y j ) p(y j ) = p(y j x i ) p(x j ) Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

99 Wechselseitiger und bedingter Informationsgehalt Durch Logarithmieren: log p(x i, y j ) }{{} I(x i,y j ) Umgestellt: = log p(x i y j ) + log p(y j ) }{{} I(y j ) = log p(y j x i ) + log p(x j ) }{{} I(x j ) I(x i, y j ) = I(y j ) log p(x i y j ) = I(x i ) log p(y j x i ) Addiere = I(x i ) log p(x i ) bzw. = I(y i) log p(y j ) : I(x i, y j ) = I(y j ) + I(x i ) log p(x i y j ) p(x i ) = I(x i ) + I(y j ) log p(y j x i ) p(y j ) Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

100 Wechselseitiger und bedingter Informationsgehalt Die wechselseitige Information eines Zeichenpaares ist I(x i ; y j ) = log p(x i y j ) p(x i ) = log p(y j x i ) p(y j ) I(x i ) I(x i ;y j ) I(y j ) und stellt die aufgelöste Ungewissheit über das Zeichen y j dar, wenn x i bekannt ist und umgekeht. Für unabhängige Quellen X und Y gilt: I(x i ; y j ) = Für streng gekoppelte Quellen X und Y gilt: I(x i ; y j ) = I(x i ) = I(y j ), da p(x i y j ) = p(y j x i ) = Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

101 Verbundentropie und bedingte Entropie Verbundentropie Die Verbundentropie zweiter Quellen X und Y ist H(X, Y ) = X p(x, y) log Y p(x, y) Bedingte oder relative Entropie Die bedingte Entropie zweiter Quellen X und Y ist H(X Y ) = X p(x, y) log Y p(x y) und H(Y X ) = X p(x, y) log Y p(y x) Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

102 Verbundentropie und bedingte Entropie Zusammenhänge H(X, Y ) = H(X ) + H(Y X ) = H(Y ) + H(X Y ) H(X, Y ) H(X ) + H(Y ) Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

103 Übertragungsmodell Sender Quelle X Kanal Empfänger Quelle Y Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

104 Der Symmetrische Binärkanal Quelle X x x -ε ε ε -ε Quelle Y y y Ein simples Beispiel für die Kopplung zweier Quelle ist der symmetrische Binärkanal (Binary Symmetric Channel, BSC) Ein Zeichen x i der Binärquelle X wird mit Fehlerwahrscheinlichkeit ɛ [, 2 ] in y i überführt Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

105 Der Symmetrische Binärkanal Mit Gleichverteilung an den Eingängen gilt für den bedingten Informationsgehalt: und I(y x ) = I(y x ) = log ɛ I(y x ) = I(y x ) = log ɛ Für den wechselseitigen Informationsgehalt eines Paares gilt: I(x ; y ) = I(x ; y ) = log = log( ɛ) Bits 2 ( ɛ) I(x ; y ) = I(x ; y ) = log = log(ɛ) Bits ɛ Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

106 ..75 Bit.5 I(x ; y ) I(y x ) ɛ ɛ = : I(x ; y ) = ; Die Information wird vollständig weitergegeben Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

107 ..75 Bit.5 I(x ; y ) I(y x ) ɛ ɛ = 2 : I(x ; y ) = : Kein Informationsaustausch; X und Y sind unabhängig Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

108 ..75 Bit.5 I(x ; y ) I(y x ) ɛ ɛ = : I(x ; y ) = ; Die Information wird vollständig vertauscht weitergegeben Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

109 Transinformation (mutual information) Definition Die Transinformation zweier diskreten Quellen X und Y gibt die mittlere Informationsgehalt zwischen X und Y an und ist definiert durch I(X; Y ) = X p(y x) p(x, y) log p(y) Y = X p(x y) p(x, y) log p(x) Y Oder auch: I(X; Y ) = p(x, y) log p(x y) log p(x) p(x, y) X } Y {{ } X Y } {{ } H(X Y ) } {{ =p(x) } =H(X ) Analog: I(X; Y ) = H(Y ) H(Y X ) Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

110 Transinformation (mutual information) Rückschlussentropie H(X Y) H(X) Transinformation I(X;Y) =H(X)-H(X Y)=H(Y)-H(Y X) H(Y) Streuentropie H(Y X) I(X; Y ) wobei X (X; Y ) = genau dann ist wenn X und Y unabhängig sind Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

111 Kanalkapazität Definition Die Kanalkapazität eines Kanals K ist definiert durch C = max X I(X; Y ) wobei X die speisende Quelle ist und I(X; Y ) über alle möglichen Wahrscheinlichkeitsverteilungen von X maximiert wird. Bemerkung Berechnung der Kanalkapazität ist ein Optimierungsproblem Wähle Wkten p(x) der Quelle X so, dass I(X; Y ) maximal wird unter Nebenbedingungen < p(x) und p(x) = X Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

112 Kanalkapazität des BSC Für den BSC ist H(X Y ) = ɛ log ɛ + ( ɛ) log ɛ (also unabhängig von der Verteilung der Wkten von X) Damit wird I(X; Y ) maximal wenn H(X ) maximal wird (bei Gleichverteilung) ( ) C BSC = ɛ log ɛ + ( ɛ) log ɛ = H({ɛ, ɛ}) Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

113 Kanalkapazität des BSC. C BSC [Bit/Zeichen] ɛ Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

114 Codierung zum Schutz gegen Übertragungsfehler Quelle Störung Kanal Senke Kanaldecodierung Quellendecodierung Quellencodierung Kanalcodierung Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

115 Codierung zum Schutz gegen Übertragungsfehler Qualität einer digitalen Übertragung wird häufig als gemessene Bitfehlerquote bzw. Bitfehlerwahrscheinlichkeit angegeben. Beherrschung von Übertragungsfehlern: Fehlerkorrektur (beim Empfänger), Fehlererkennung und Wiederholungsanforderung. Tradeoff: Wahrscheinlichkeit unentdeckter Fehler vs. Datendurchsatz Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

116 Paritätscodes - Einfach Binär Quelle: Wikipedia Paritätscode der RS232-Schnittstelle. Neunpoliges Kabel ermöglicht die parallele Übertragung von 8 Bit. Dabei werden nur sieben Bits b,... b 7 für die Nachrichtenübertragung genutzt. Das achte Bit b 8 wird Paritätsbit genannt Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

117 Paritätscodes - Einfach Binär Paritätscode der RS232-Schnittstelle. Neunpoliges Kabel ermöglicht die parallele Übertragung von 8 Bit. Dabei werden nur sieben Bits b,... b 7 für die Nachrichtenübertragung genutzt. Das achte Bit b 8 wird Paritätsbit genannt. Wiederholung XOR-Verknüpfung Es wird b 8 so gesendet, dass b 8 = b b 2 b 3 b 4 b 5 b 6 b Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

118 Paritätscodes - Einfach Binär Wiederholung XOR-Verknüpfung Es wird b 8 so gesendet, dass b 8 = b b 2 b 3 b 4 b 5 b 6 b 7. Mit dem Paritätscode werden einfache Fehler im Codewort erkannt. Gleichzeitiger Übertragungsfehler von 2 Fehlern werden nicht erkannt. Falls ein Fehler erkannt wird, kann die ursprüngliche Nachricht nicht rekonstruiert werden: Die Fehlerstelle ist unbekannt Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

119 Kreuzsicherung Dient zum Schutz gegen Doppelfehler Erklärung am Beispiel Lochkarte Paritätszeichen Längsparität Paritätszeichen Querparität Transportrichtung Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

120 Kreuzsicherung Alle,2,3 fachen Fehler sind erkennbar Ab 4 Fehlern nicht zwingend erkennbar Paritätszeichen Längsparität Paritätszeichen Querparität Transportrichtung Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

121 Kreuzsicherung Alle,2,3 fachen Fehler sind erkennbar Ab 4 Fehlern nicht zwingend erkennbar Paritätszeichen Längsparität Paritätszeichen Querparität Transportrichtung Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

122 Kreuzsicherung Alle,2,3 fachen Fehler sind erkennbar Ab 4 Fehlern nicht zwingend erkennbar Paritätszeichen Längsparität Paritätszeichen Querparität Transportrichtung Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

123 Kreuzsicherung Alle,2,3 fachen Fehler sind erkennbar Ab 4 Fehlern nicht zwingend erkennbar Paritätszeichen Längsparität Paritätszeichen Querparität Transportrichtung Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

124 Paritätscodes Paritätscodes Gegeben ein Alphabet Σ = {, 2,..., q }. Ein Code der Länge n zur Basis q sei eine Menge von Folgen mit Elementen aus Σ. Einzelne Folgen werden Codewörter genannt. Ein Paritätscode liegt vor, wenn für jedes Codewort a, a 2,..., a n gilt. (a + a a n ) mod q = Satz: Jeder Paritätscode erkennt Einzelfehler Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

125 Beweis Sei a,..., a n das ursprüngliche Codewort. Annahme: Das i-te Element wurde fehlerhaft als ã i übertragen. Ein Übertragungsfehler liegt vor, wenn (a + a ã i a n ) mod q =. Für das ursprüngliche Codewort gilt: Also (a + a a n ) mod q =. = (a + a ã i a n ) mod q = (a + a a n ) mod q Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

126 Beweis = (a + a ã i a n ) mod q = (a + a a n ) mod q Damit = (a + a ã i a n ) mod q (a + a a n ) mod q = (ã i a i ) mod q Um dies zu erfüllen muss (ã i a i ) durch q teilbar sein. Weil aber a i < q folgt ã i a i < q Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

127 Paritätscodes gegen Vertauschungsfehler Häufige Fehlerart bei manueller Eingabe: Vertauschungsfehler. Diese werden von gewöhnlichen Paritätscodes nicht erkannt. Sei wieder a,..., a n ein Codewort. Paritätscode mit Gewichten: Wir führen zusätzlich ganzzahlige Gewichte w,..., w n ein, so dass (w a + w 2 a w n a n + a n ) mod q = gilt. Zusatzbedingung: Alle Gewichte w i müssen teilerfremd zu q sein Gog, Sanders, Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Informationstheorie INSTITUT FÜR THEORETISCHE KIT 8.2.22 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der Informatik INSTITUT

Mehr

Klausur Informationstheorie und Codierung

Klausur Informationstheorie und Codierung Klausur Informationstheorie und Codierung WS 2013/2014 23.01.2014 Name: Vorname: Matr.Nr: Ich fühle mich gesundheitlich in der Lage, die Klausur zu schreiben Unterschrift: Aufgabe A1 A2 A3 Summe Max. Punkte

Mehr

2. Woche Eindeutige Entschlüsselbarleit, Sätze von Kraft und McMillan, Huffmancodierung

2. Woche Eindeutige Entschlüsselbarleit, Sätze von Kraft und McMillan, Huffmancodierung 2 Woche Eindeutige Entschlüsselbarleit, Sätze von Kraft und McMillan, Huffmancodierung 2 Woche: Eindeutige Entschlüsselbarleit, Sätze von Kraft und McMillan, Huffmancodierung 24/ 44 Zwei Beispiele a 0

Mehr

Einleitung. Kapitel 1

Einleitung. Kapitel 1 Kapitel 1 Einleitung In diesem Abschnitt geben wir einen kurzen Überblick über den Inhalt der Vorlesung. Wir werden kurz die wesentlichen Probleme erläutern, die wir ansprechen wollen. Wir werden auch

Mehr

2.7 Der Shannon-Fano-Elias Code

2.7 Der Shannon-Fano-Elias Code 2.7 Der Shannon-Fano-Elias Code Die Huffman-Codierung ist ein asymptotisch optimales Verfahren. Wir haben auch gesehen, dass sich die Huffman-Codierung gut berechnen und dann auch gut decodieren lassen.

Mehr

1. Woche Einführung in die Codierungstheorie, Definition Codes, Präfixcode, kompakte Codes

1. Woche Einführung in die Codierungstheorie, Definition Codes, Präfixcode, kompakte Codes 1 Woche Einführung in die Codierungstheorie, Definition Codes, Präfixcode, kompakte Codes 1 Woche: Einführung in die Codierungstheorie, Definition Codes, Präfixcode, kompakte Codes 5/ 44 Unser Modell Shannon

Mehr

Grundlagen der Informationstheorie. Hanna Rademaker und Fynn Feldpausch

Grundlagen der Informationstheorie. Hanna Rademaker und Fynn Feldpausch Grundlagen der Informationstheorie Hanna Rademaker und Fynn Feldpausch . Thema Informationstheorie geht zurück auf Claude Shannon The Mathematical Theory of Communication beschäftigt sich mit Information

Mehr

Wann sind Codes eindeutig entschlüsselbar?

Wann sind Codes eindeutig entschlüsselbar? Wann sind Codes eindeutig entschlüsselbar? Definition Suffix Sei C ein Code. Ein Folge s {0, 1} heißt Suffix in C falls 1 c i, c j C : c i = c j s oder 2 c C und einen Suffix s in C: s = cs oder 3 c C

Mehr

Einführung in die Informatik II Aus der Informationstheorie: Datenkompression

Einführung in die Informatik II Aus der Informationstheorie: Datenkompression Einführung in die Informatik II Aus der Informationstheorie: Datenkompression Prof. Bernd Brügge, Ph.D Institut für Informatik Technische Universität München Sommersemester 2 2. Juli 2 Copyright 2 Bernd

Mehr

Redundanz. Technische Informationsquelle Entropie und Redundanz Huffman Codierung. Martin Werner WS 09/10. Martin Werner, Dezember 09 1

Redundanz. Technische Informationsquelle Entropie und Redundanz Huffman Codierung. Martin Werner WS 09/10. Martin Werner, Dezember 09 1 Information, Entropie und Redundanz Technische Informationsquelle Entropie und Redundanz Huffman Codierung Martin Werner WS 9/ Martin Werner, Dezember 9 Information und Daten Informare/ Informatio (lat.)

Mehr

Entropie. Um der Begriff der Entropie zu erläutern brauchen wir erst mal einige Definitionen, z.b.

Entropie. Um der Begriff der Entropie zu erläutern brauchen wir erst mal einige Definitionen, z.b. Entropie Grundlegend für das Verständnis des Begriffes der Komprimierung ist der Begriff der Entropie. In der Physik ist die Entropie ein Maß für die Unordnung eines Systems. In der Informationstheorie

Mehr

Wir erinnern uns: Um eine Zufallsvariable mit N verschiedenen, gleichwahrscheinlichen Zuständen binär zu codieren, benötigen wir

Wir erinnern uns: Um eine Zufallsvariable mit N verschiedenen, gleichwahrscheinlichen Zuständen binär zu codieren, benötigen wir Kapitel 3: Entropie Motivation Wir erinnern uns: Um eine Zufallsvariable mit N verschiedenen, gleichwahrscheinlichen Zuständen binär zu codieren, benötigen wir log N Bits log p N Bits Die Information steht

Mehr

Technische Informatik - Eine Einführung

Technische Informatik - Eine Einführung Martin-Luther-Universität Halle-Wittenberg Fachbereich Mathematik und Informatik Lehrstuhl für Technische Informatik Prof. P. Molitor Technische Informatik - Eine Einführung Darstellung von Zeichen und

Mehr

1 Grundlagen. 1.1 Erste Grundbegriffe 1.2 Kryptographische Systeme 1.3 Informationstheoretische Grundlagen

1 Grundlagen. 1.1 Erste Grundbegriffe 1.2 Kryptographische Systeme 1.3 Informationstheoretische Grundlagen 1 Grundlagen 1.1 Erste Grundbegriffe 1.2 Kryptographische Systeme 1.3 Informationstheoretische Grundlagen Die Überlegungen dieses Kapitels basieren auf der Informationstheorie von Shannon. Er beschäftigte

Mehr

Referat zum Thema Huffman-Codes

Referat zum Thema Huffman-Codes Referat zum Thema Huffman-Codes Darko Ostricki Yüksel Kahraman 05.02.2004 1 Huffman-Codes Huffman-Codes ( David A. Huffman, 1951) sind Präfix-Codes und das beste - optimale - Verfahren für die Codierung

Mehr

Übungsaufgaben zur Vorlesung Quellencodierung

Übungsaufgaben zur Vorlesung Quellencodierung Übungsaufgaben zur Vorlesung Quellencodierung Aufgabe 1: Gegeben seien die Verbundwahrscheinlichkeiten zweier diskreter Zufallsvariablen x und y: P(x, y) x 1 = 1 x 2 = 2 x 3 = 3 y 1 = 1 0.1 0.1 0.1 y 2

Mehr

(Prüfungs-)Aufgaben zur Codierungstheorie

(Prüfungs-)Aufgaben zur Codierungstheorie (Prüfungs-)Aufgaben zur Codierungstheorie 1) Gegeben sei die folgende CCITT2-Codierung der Dezimalziffern: Dezimal CCITT2 0 0 1 1 0 1 1 1 1 1 0 1 2 1 1 0 0 1 3 1 0 0 0 0 4 0 1 0 1 0 5 0 0 0 0 1 6 1 0 1

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Vorlesung am 20. November 2014 INSTITUT FÜR THEORETISCHE 0 KIT 20.11.2014 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Übung 8 Dirk Achenbach 7. Februar 2013 I NSTITUT FÜR K RYPTOGRAPHIE UND S ICHERHEIT KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum

Mehr

Grundbegriffe der Informatik Tutorium 3

Grundbegriffe der Informatik Tutorium 3 Grundbegriffe der Informatik Tutorium 3 Tutorium Nr. 16 Philipp Oppermann 18. November 2014 KARLSRUHER INSTITUT FÜR TECHNOLOGIE KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum

Mehr

Gierige Algorithmen Interval Scheduling

Gierige Algorithmen Interval Scheduling Gierige Algorithmen Interval Scheduling IntervalScheduling(s,f). n length[s] 2. A {} 3. j 4. for i 2 to n do 5. if s[i] f[j] then 6. A A {i} 7. j i 8. return A Gierige Algorithmen Interval Scheduling Beweisidee:

Mehr

Informationstheorie und Codierung

Informationstheorie und Codierung Informationstheorie und Codierung 3. Codierung diskreter Quellen Gleichmäßiger Code Ungleichmäßiger Code Fano-, Huffman-Codierung Optimalcodierung von Markoff-Quellen Lauflängencodes nach Golomb und Rice

Mehr

Dynamisches Huffman-Verfahren

Dynamisches Huffman-Verfahren Dynamisches Huffman-Verfahren - Adaptive Huffman Coding - von Michael Brückner 1. Einleitung 2. Der Huffman-Algorithmus 3. Übergang zu einem dynamischen Verfahren 4. Der FGK-Algorithmus 5. Überblick über

Mehr

Seminar Kompressionsalgorithmen Huffman-Codierung, arithmetische Codierung

Seminar Kompressionsalgorithmen Huffman-Codierung, arithmetische Codierung Huffman-Codierung, arithmetische Codierung Theoretische Informatik RWTH-Aachen 4. April 2012 Übersicht 1 Einführung 2 3 4 5 6 Einführung Datenkompression Disziplin,die Kompressionsalgorithmen entwirft

Mehr

Übungsblatt Nr. 6. Lösungsvorschlag

Übungsblatt Nr. 6. Lösungsvorschlag Institut für Kryptographie und Sicherheit Prof. Dr. Jörn Müller-Quade Nico Döttling Dirk Achenbach Tobias Nilges Vorlesung Theoretische Grundlagen der Informatik Übungsblatt Nr. 6 Aufgabe (K) (4 Punkte)

Mehr

15 Optimales Kodieren

15 Optimales Kodieren 15 Optimales Kodieren Es soll ein optimaler Kodierer C(T ) entworfen werden, welcher eine Information (z.b. Text T ) mit möglichst geringer Bitanzahl eindeutig überträgt. Die Anforderungen an den optimalen

Mehr

Kapitel 9: Informationstheorie. 2. Entropie

Kapitel 9: Informationstheorie. 2. Entropie ZHAW, NT, FS2008, Rumc, Kapitel 9: 2-1 Kapitel 9: Informationstheorie 2. Entropie Inhaltsverzeichnis 2.1. INFORATIONSQUELLEN...2 2.2. INFORATIONSGEHALT...3 2.3. INIALE ANZAHL BINÄRE FRAGEN...5 2.4. ENTROPIE

Mehr

Grundbegriffe der Informatik Tutorium 5

Grundbegriffe der Informatik Tutorium 5 Grundbegriffe der Informatik Tutorium 5 Tutorium Nr. 32 Philipp Oppermann 13. Januar 2015 KARLSRUHER INSTITUT FÜR TECHNOLOGIE KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum

Mehr

Codierung, Codes (variabler Länge)

Codierung, Codes (variabler Länge) Codierung, Codes (variabler Länge) A = {a, b, c,...} eine endliche Menge von Nachrichten (Quellalphabet) B = {0, 1} das Kanalalphabet Eine (binäre) Codierung ist eine injektive Abbildung Φ : A B +, falls

Mehr

Signale und Codes Vorlesung 4

Signale und Codes Vorlesung 4 Signale und Codes Vorlesung 4 Nico Döttling December 6, 2013 1 / 18 2 / 18 Letztes Mal Allgemeine Hamming Codes als Beispiel linearer Codes Hamming Schranke: Obere Schranke für k bei gegebenem d bzw. für

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Vorlesung am 7. Dezember 2017 INSTITUT FÜR THEORETISCHE 0 07.12.2017 Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE KIT Die Forschungsuniversität

Mehr

Molekulare Bioinformatik

Molekulare Bioinformatik Molekulare Bioinformatik Wintersemester 203/204 Prof. Thomas Martinetz Institut für Neuro- und Bioinformatik Universität zu Luebeck 07.0.204 Molekulare Bioinformatik - Vorlesung 0 Wiederhohlung Die Entropie

Mehr

Grundbegrie der Codierungstheorie

Grundbegrie der Codierungstheorie Grundbegrie der Codierungstheorie Pia Lackamp 12. Juni 2017 Inhaltsverzeichnis 1 Einleitung 2 2 Hauptteil 3 2.1 Blockcodes............................ 3 2.1.1 Beispiele.......................... 3 2.2

Mehr

Stochastische Lernalgorithmen

Stochastische Lernalgorithmen Stochastische Lernalgorithmen Gerhard Jäger 14. Mai 2003 Das Maximum-Entropy-Prinzip Der Entropiebegriff Entropie: Chaos, Unordung, Nicht-Vorhersagbarkeit,... Begriff kommt ursprünglich aus der Physik:

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Vorlesung am 17. Januar 2012 INSTITUT FÜR THEORETISCHE 0 KIT 18.01.2012 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der

Mehr

Datenkompression. 1 Allgemeines. 2 Verlustlose Kompression. Holger Rauhut

Datenkompression. 1 Allgemeines. 2 Verlustlose Kompression. Holger Rauhut Datenkompression Holger Rauhut 1. September 2010 Skript für die Schülerwoche 2010, 8.-11.9.2010 Hausdorff Center for Mathematics, Bonn 1 Allgemeines Datenkompression hat zum Ziel, Daten in digitaler Form,

Mehr

Lösungsvorschlag 3. Übung Technische Grundlagen der Informatik II Sommersemester 2009

Lösungsvorschlag 3. Übung Technische Grundlagen der Informatik II Sommersemester 2009 Fachgebiet Rechnerarchitektur Fachbereich Informatik Lösungsvorschlag 3. Übung Technische Grundlagen der Informatik II Sommersemester 2009 Aufgabe 3.1: Codierungen a) Vervollständigen Sie folge Tabelle,

Mehr

CODIERUNGSTHEORIE KURS ZELL AN DER PRAM, FEBRUAR 2005

CODIERUNGSTHEORIE KURS ZELL AN DER PRAM, FEBRUAR 2005 CODIERUNGSTHEORIE KURS ZELL AN DER PRAM, FEBRUAR 2005 1. Das Problem 1.1. Kanalcodierung und Fehlerkorrektur. Wir wollen eine Nachricht über einen digitalen Kanal, der nur 0 oder 1 übertragen kann, schicken.

Mehr

Optimalcodierung. Thema: Optimalcodierung. Ziele

Optimalcodierung. Thema: Optimalcodierung. Ziele Optimalcodierung Ziele Diese rechnerischen und experimentellen Übungen dienen der Vertiefung der Kenntnisse im Bereich der Optimalcodierung, mit der die Zeichen diskreter Quellen codiert werden können.

Mehr

Codierungstheorie Rudolf Scharlau, SoSe 2006 9

Codierungstheorie Rudolf Scharlau, SoSe 2006 9 Codierungstheorie Rudolf Scharlau, SoSe 2006 9 2 Optimale Codes Optimalität bezieht sich auf eine gegebene Quelle, d.h. eine Wahrscheinlichkeitsverteilung auf den Symbolen s 1,..., s q des Quellalphabets

Mehr

Musterlösung zur Hauptklausur Theoretische Grundlagen der Informatik Wintersemester 2013/14

Musterlösung zur Hauptklausur Theoretische Grundlagen der Informatik Wintersemester 2013/14 Institut für Theoretische Informatik Prof. Dr. Jörn Müller-Quade Musterlösung zur Hauptklausur Theoretische Grundlagen der Informatik Wintersemester 23/4 Vorname Nachname Matrikelnummer Hinweise Für die

Mehr

Algorithmen und Datenstrukturen (für ET/IT)

Algorithmen und Datenstrukturen (für ET/IT) Algorithmen und Datenstrukturen (für ET/IT) Sommersemester 206 Dr. Tobias Lasser Computer Aided Medical Procedures Technische Universität München Organisatorisches Weiterer Ablauf: heute und Donnerstag,

Mehr

16 - Kompressionsverfahren für Texte

16 - Kompressionsverfahren für Texte 16 - Kompressionsverfahren für Texte Prof. Dr. S. Albers Kompressionsverfahren für Texte Verlustfreie Kompression Original kann perfekt rekonstruiert werden Beispiele: Huffman Code, Lauflängencodierung,

Mehr

Begriffe aus der Informatik Nachrichten

Begriffe aus der Informatik Nachrichten Begriffe aus der Informatik Nachrichten Gerhard Goos definiert in Vorlesungen über Informatik, Band 1, 1995 Springer-Verlag Berlin Heidelberg: Die Darstellung einer Mitteilung durch die zeitliche Veränderung

Mehr

Seite 2 Information = Unsicherheit e Info (e) := - log p(e) Info ( A und B) = Info (A) + Info (B) Definition: = Info (nie eintretendes Ereignis) eines

Seite 2 Information = Unsicherheit e Info (e) := - log p(e) Info ( A und B) = Info (A) + Info (B) Definition: = Info (nie eintretendes Ereignis) eines Seite 1 Georg-August-Universität Göttingen Robert Schaback Zum Begriff der Information in Mathematik und Informatik Seite 2 Information = Unsicherheit e Info (e) := - log p(e) Info ( A und B) = Info (A)

Mehr

x x y x y Informatik II Schaltkreise Schaltkreise Schaltkreise Rainer Schrader 3. November 2008

x x y x y Informatik II Schaltkreise Schaltkreise Schaltkreise Rainer Schrader 3. November 2008 Informatik II Rainer Schrader Zentrum für Angewandte Informatik Köln 3. November 008 1 / 47 / 47 jede Boolesche Funktion lässt mit,, realisieren wir wollen wir uns jetzt in Richtung Elektrotechnik und

Mehr

Formale Methoden 2. Gaetano Geck Lehrstuhl I Logik in der Informatik WS 2015/2016

Formale Methoden 2. Gaetano Geck Lehrstuhl I Logik in der Informatik WS 2015/2016 Formale Methoden 2 Gaetano Geck Lehrstuhl I Logik in der Informatik WS 2015/2016 Teil 3: Kodierung 1 Motivation 2 Exkurs Grundlagen formaler Sprachen 3 Grundlagen 4 Beispielkodierungen FM2 (WS 2014/15,

Mehr

Informationstheorie und Codierung. Prof. Dr.-Ing. Lilia Lajmi

Informationstheorie und Codierung. Prof. Dr.-Ing. Lilia Lajmi Informationstheorie und Codierung Prof. Dr.-Ing. Lilia Lajmi l.lajmi@ostfalia.de Organisatorisches Vorlesung 2 SWS ( 2,5 LP) - Dienstags. 12:00-13:30 Uhr, Raum L122 Unterlagen - Vorlesungsfolien - Übungsaufgaben

Mehr

Information und Codierung

Information und Codierung Richard W. Hamming Information und Codierung Technische Universität Darmstadt FACHBEREICH INFORMATIK BIBLIOTHEK Invantar-Nr.: Sachgebiete:. Standort: VCH Inhalt Vorwort zur 1. Auflage der Originalausgabe

Mehr

Mathematik I für Studierende der Informatik und Wirtschaftsinformatik (Diskrete Mathematik) im Wintersemester 2015/16

Mathematik I für Studierende der Informatik und Wirtschaftsinformatik (Diskrete Mathematik) im Wintersemester 2015/16 Mathematik I für Studierende der Informatik und Wirtschaftsinformatik (Diskrete Mathematik) im Wintersemester 2015/16 21. Januar 2016 Definition 8.1 Eine Menge R zusammen mit zwei binären Operationen

Mehr

Effiziente Algorithmen und Komplexitätstheorie

Effiziente Algorithmen und Komplexitätstheorie 1 Effiziente lgorithmen und Komplexitätstheorie Vorlesung Thomas Jansen 29.06.2006 2 Burrows-Wheeler-Kompression: Verbesserungen dreischrittiges Kompressionsverfahren Burrows- Wheeler- Transformation Globale

Mehr

zu Aufgabe 26: a) A 3 A 2 A 4 A 1 A 5 A 0 A 6

zu Aufgabe 26: a) A 3 A 2 A 4 A 1 A 5 A 0 A 6 zu ufgabe 6: a) 3 5 6 7 p( ) p( ) p( 3 ) p( ) p( 5 ) p( 6 ) p( 7 ) = p( 3 ) = p( 3 ) = p( 3 ) = p( ) = p( ) = p( ) = p( ) = p( ) = p( ) = p( ) = p( ) = 8 p( ) = p( ) = p( ) = p( ) Lösung: b) binär 8 p(

Mehr

Problem: Finde für Alphabet mit n Zeichen einen Binärcode, der die Gesamtlänge eines Textes (über diesem Alphabet) minimiert.

Problem: Finde für Alphabet mit n Zeichen einen Binärcode, der die Gesamtlänge eines Textes (über diesem Alphabet) minimiert. Anwendungen von Bäumen 4.3.2 Huffman Code Problem: Finde für Alphabet mit n Zeichen einen Binärcode, der die Gesamtlänge eines Textes (über diesem Alphabet) minimiert. => nutzbar für Kompression Code fester

Mehr

Statistische Methoden in der Sprachverarbeitung

Statistische Methoden in der Sprachverarbeitung ' Statistische Methoden in der Sprachverarbeitung Gerhard Jäger 7. Mai 22 Inforationstheorie Der Entropiebegriff Entropie: Chaos, Unordung, Nicht-Vorhersagbarkeit,... Begriff kot ursprünglich aus der Physik:

Mehr

Übung zur Vorlesung Berechenbarkeit und Komplexität

Übung zur Vorlesung Berechenbarkeit und Komplexität RWTH Aachen Lehrgebiet Theoretische Informatik Reidl Ries Rossmanith Sanchez Tönnis WS 2012/13 Übungsblatt 7 26.11.2012 Übung zur Vorlesung Berechenbarkeit und Komplexität Aufgabe T15 Entwickeln Sie ein

Mehr

Übung zur Vorlesung. Informationstheorie und Codierung

Übung zur Vorlesung. Informationstheorie und Codierung Übung zur Vorlesung Informationstheorie und Codierung Prof. Dr. Lilia Lajmi Juni 25 Ostfalia Hochschule für angewandte Wissenschaften Hochschule Braunschweig/Wolfenbüttel Postanschrift: Salzdahlumer Str.

Mehr

Theoretische Informatik. Exkurs: Komplexität von Optimierungsproblemen. Optimierungsprobleme. Optimierungsprobleme. Exkurs Optimierungsprobleme

Theoretische Informatik. Exkurs: Komplexität von Optimierungsproblemen. Optimierungsprobleme. Optimierungsprobleme. Exkurs Optimierungsprobleme Theoretische Informatik Exkurs Rainer Schrader Exkurs: Komplexität von n Institut für Informatik 13. Mai 2009 1 / 34 2 / 34 Gliederung Entscheidungs- und Approximationen und Gütegarantien zwei Greedy-Strategien

Mehr

Alle bislang betrachteten Sortieralgorithmen hatten (worst-case) Laufzeit Ω(nlog(n)).

Alle bislang betrachteten Sortieralgorithmen hatten (worst-case) Laufzeit Ω(nlog(n)). 8. Untere Schranken für Sortieren Alle bislang betrachteten Sortieralgorithmen hatten (worst-case) Laufzeit Ω(nlog(n)). Werden nun gemeinsame Eigenschaften dieser Algorithmen untersuchen. Fassen gemeinsame

Mehr

Kapitel 2. Suche nach endlich vielen Wörtern. R. Stiebe: Textalgorithmen, Winter 2005/06 113

Kapitel 2. Suche nach endlich vielen Wörtern. R. Stiebe: Textalgorithmen, Winter 2005/06 113 Kapitel 2 Suche nach endlich vielen Wörtern R. Stiebe: Textalgorithmen, Winter 2005/06 113 Übersicht Aufgabenstellung Gegeben: Text T und eine endliche Menge von Wörtern P = {P 1,..., P r }; Gesucht: alle

Mehr

Algorithmische Methoden für schwere Optimierungsprobleme

Algorithmische Methoden für schwere Optimierungsprobleme Algorithmische Methoden für schwere Optimierungsprobleme Prof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Vorlesung am 15.01.2015 INSTITUT FÜR THEORETISCHE 0 KIT 15.01.2015 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der Informatik

Mehr

Die Größe A(n, d) und optimale Codes

Die Größe A(n, d) und optimale Codes Die Größe A(n, d) und optimale Codes Definition Optimaler Code Wir definieren A(n, d) = max{m binärer (n, M, d) Code} Ein (n, M, d)-code heißt optimal, falls M = A(n, d). Bestimmung von A(n, d) ist offenes

Mehr

Organisation. Was kommt zum Test? Buch Informatik Grundlagen bis inkl. Kapitel 7.4 Wissensfragen und Rechenbeispiele

Organisation. Was kommt zum Test? Buch Informatik Grundlagen bis inkl. Kapitel 7.4 Wissensfragen und Rechenbeispiele Organisation Was kommt zum Test? Buch Informatik Grundlagen bis inkl Kapitel 74 Wissensfragen und Rechenbeispiele 3 Vorträge zur Übung Informationstheorie, Huffman-Codierung und trennzeichenfreie Codierung

Mehr

Übrigens: um den Algorithmus im Unterricht einzuführen, sind keine Formeln notwendig! Warum reicht die normale ASCII-Codierung nicht aus?

Übrigens: um den Algorithmus im Unterricht einzuführen, sind keine Formeln notwendig! Warum reicht die normale ASCII-Codierung nicht aus? Huffman-Code Dieser Text ist als Hintergrundinformation ausschliesslich für die Lehrperson gedacht. Der Text ist deshalb eher technisch gehalten. Er lehnt sich an das entsprechende Kapitel in "Turing Omnibus"

Mehr

Datenstrukturen & Algorithmen Lösungen zu Blatt 4 FS 15

Datenstrukturen & Algorithmen Lösungen zu Blatt 4 FS 15 Eidgenössische Technische Hochschule Zürich Ecole polytechnique fédérale de Zurich Politecnico federale di Zurigo Federal Institute of Technology at Zurich Institut für Theoretische Informatik 18. März

Mehr

Mathe III. Garance PARIS. Mathematische Grundlagen III. Informationstheorie. 20. Juni /1

Mathe III. Garance PARIS. Mathematische Grundlagen III. Informationstheorie. 20. Juni /1 Mathematische Grundlagen III Informationstheorie 20 Juni 20 / Informationstheorie Ein Gerüst, um über den Informationsgehalt von (linguistischen) Ereignissen nachzudenken Einige Beispiele für Anwendungen:

Mehr

Einwegfunktionen. Problemseminar. Komplexitätstheorie und Kryptographie. Martin Huschenbett. 30. Oktober 2008

Einwegfunktionen. Problemseminar. Komplexitätstheorie und Kryptographie. Martin Huschenbett. 30. Oktober 2008 Problemseminar Komplexitätstheorie und Kryptographie Martin Huschenbett Student am Institut für Informatik an der Universität Leipzig 30. Oktober 2008 1 / 33 Gliederung 1 Randomisierte Algorithmen und

Mehr

Greedy Algorithmen. Grundlegendes. Organisatorisches. VL-21: Greedy Algorithmen. (Datenstrukturen und Algorithmen, SS 2017) Gerhard Woeginger

Greedy Algorithmen. Grundlegendes. Organisatorisches. VL-21: Greedy Algorithmen. (Datenstrukturen und Algorithmen, SS 2017) Gerhard Woeginger Organisatorisches VL-21: Greedy Algorithmen (Datenstrukturen und Algorithmen, SS 2017) Gerhard Woeginger Vorlesung: Gerhard Woeginger (Zimmer 4024 im E1) Sprechstunde: Mittwoch 11:15 12:00 Übungen: Tim

Mehr

Woche 2: Zufallsvariablen

Woche 2: Zufallsvariablen Woche 2: Zufallsvariablen Patric Müller ETHZ WBL 17/19, 24.04.2017 Wahrscheinlichkeit und Statistik Patric Müller WBL 2017 Teil III Zufallsvariablen Wahrscheinlichkeit

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Vorlesung am 5. Dezember 2017 INSTITUT FÜR THEORETISCHE 0 05.12.2017 Dorothea Wagner - Theoretische Grundlagen der Informatik INSTITUT FÜR THEORETISCHE KIT Die Forschungsuniversität

Mehr

Huffman-Kodierung. Fachbereich Medieninformatik. Hochschule Harz. Huffman-Kodierung. Referat. Henner Wöhler. Abgabe:

Huffman-Kodierung. Fachbereich Medieninformatik. Hochschule Harz. Huffman-Kodierung. Referat. Henner Wöhler. Abgabe: Fachbereich Medieninformatik Hochschule Harz Huffman-Kodierung Referat Henner Wöhler 11459 Abgabe: 15.01.2007 Inhaltsverzeichnis Einleitung...I 1. Entropiekodierung...1 1.1 Morse Code...2 1.2 Shannon-Fano-Kodierung...3

Mehr

Prof. Dr. Stefan Weinzierl Audiosymbole mit einer Länge von 8 bit werden mit einem Paritätsbit zur Fehlererkennung kodiert.

Prof. Dr. Stefan Weinzierl Audiosymbole mit einer Länge von 8 bit werden mit einem Paritätsbit zur Fehlererkennung kodiert. Audiotechnik II Digitale Audiotechnik: 8. Tutorium Prof. Dr. Stefan Weinzierl 9.2.23 Musterlösung: 9. Dezember 23, 8:34 Fehlerkorrektur II Audiosymbole mit einer Länge von 8 bit werden mit einem Paritätsbit

Mehr

Einführung in die Codierungstheorie

Einführung in die Codierungstheorie Einführung in die Codierungstheorie Monika König 11.12.2007 Inhaltsverzeichnis 1 Einführung und Definitionen 2 2 Fehlererkennende Codes 3 2.1 Paritycheck - Code............................... 3 2.2 Prüfziffersysteme................................

Mehr

5. Woche Perfekte und Optimale Codes, Schranken. 5. Woche: Perfekte und Optimale Codes, Schranken 88/ 142

5. Woche Perfekte und Optimale Codes, Schranken. 5. Woche: Perfekte und Optimale Codes, Schranken 88/ 142 5 Woche Perfekte und Optimale Codes, Schranken 5 Woche: Perfekte und Optimale Codes, Schranken 88/ 142 Packradius eines Codes (Wiederholung) Definition Packradius eines Codes Sei C ein (n, M, d)-code Der

Mehr

Proseminar Datenkompression Universelles Codieren ganzer Zahlen

Proseminar Datenkompression Universelles Codieren ganzer Zahlen Proseminar Datenkompression Universelles Codieren ganzer Zahlen Marcel Heinz, Sebastian Leuoth 17. Januar 2003 Inhaltsverzeichnis 1 Ziel 2 2 Vorbemerkungen 2 2.1 Verwendete Symbole und Begriffe.......................

Mehr

Kodierungsalgorithmen

Kodierungsalgorithmen Kodierungsalgorithmen Komprimierung Verschlüsselung Komprimierung Zielsetzung: Reduktion der Speicherkapazität Schnellere Übertragung Prinzipien: Wiederholungen in den Eingabedaten kompakter speichern

Mehr

Stochastik I. Vorlesungsmitschrift

Stochastik I. Vorlesungsmitschrift Stochastik I Vorlesungsmitschrift Ulrich Horst Institut für Mathematik Humboldt-Universität zu Berlin Inhaltsverzeichnis 1 Grundbegriffe 1 1.1 Wahrscheinlichkeitsräume..................................

Mehr

Datenstrukturen und Algorithmen. Christian Sohler FG Algorithmen & Komplexität

Datenstrukturen und Algorithmen. Christian Sohler FG Algorithmen & Komplexität Datenstrukturen und Algorithmen Christian Sohler FG Algorithmen & Komplexität 1 Clustering: Partitioniere Objektmenge in Gruppen(Cluster), so dass sich Objekte in einer Gruppe ähnlich sind und Objekte

Mehr

Binary Decision Diagrams (Einführung)

Binary Decision Diagrams (Einführung) Binary Decision Diagrams (Einführung) Binary Decision Diagrams (BDDs) sind bestimmte Graphen, die als Datenstruktur für die kompakte Darstellung von booleschen Funktionen benutzt werden. BDDs wurden von

Mehr

Kodierung und Sicherheit

Kodierung und Sicherheit Skript zur Vorlesung: Kodierung und Sicherheit 0000 00000 000 0000 0000 000 00 000 Wintersemester 2004-2005 Dr. Andreas Jakoby Institut für Theoretische Informatik Universität zu Lübeck Inhaltsverzeichnis

Mehr

CODIERUNGSTHEORIE KURS ZELL AN DER PRAM, FEBRUAR 2005

CODIERUNGSTHEORIE KURS ZELL AN DER PRAM, FEBRUAR 2005 CODIERUNGSTHEORIE KURS ZELL AN DER PRAM, FEBRUAR 2005. Das Problem.. Quellcodierung und Datenkompression. Wir wollen eine Nachricht über einen digitalen Kanal, der nur 0 oder übertragen kann, schicken.

Mehr

2. Digitale Codierung und Übertragung

2. Digitale Codierung und Übertragung 2. Digitale Codierung und Übertragung 2.1 Informationstheoretische Grundlagen 2.2 Verlustfreie universelle Kompression 2.3 Digitalisierung, Digitale Medien Weiterführende Literatur zum Thema Informationstheorie:

Mehr

Effiziente Algorithmen 2

Effiziente Algorithmen 2 Effiziente Algorithmen 2 Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Sommersemester 2009 Übersicht Algorithmen

Mehr

5 BINÄRE ENTSCHEIDUNGS- DIAGRAMME (BDDS)

5 BINÄRE ENTSCHEIDUNGS- DIAGRAMME (BDDS) 5 BINÄRE ENTSCHEIDUNGS- DIAGRAMME (BDDS) Sommersemester 2009 Dr. Carsten Sinz, Universität Karlsruhe Datenstruktur BDD 2 1986 von R. Bryant vorgeschlagen zur Darstellung von aussagenlogischen Formeln (genauer:

Mehr

Übungsblatt Nr. 7. Lösungsvorschlag

Übungsblatt Nr. 7. Lösungsvorschlag Institut für Kryptographie und Sicherheit Prof. Dr. Jörn Müller-Quade Nico Döttling Dirk Achenbach Tobias Nilges Vorlesung Theoretische Grundlagen der Informatik Übungsblatt Nr. 7 svorschlag Aufgabe (K)

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Vorlesung am 25. November 2014 INSTITUT FÜR THEORETISCHE 0 KIT 25.11.2014 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der

Mehr

Algorithmen II Vorlesung am

Algorithmen II Vorlesung am Algorithmen II Vorlesung am 0..0 Minimale Schnitte in Graphen INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg und Algorithmen nationales Forschungszentrum

Mehr

Laufzeit einer DTM, Klasse DTIME

Laufzeit einer DTM, Klasse DTIME Laufzeit einer DTM, Klasse DTIME Definition Laufzeit einer DTM Sei M eine DTM mit Eingabealphabet Σ, die bei jeder Eingabe hält. Sei T M (w) die Anzahl der Rechenschritte d.h. Bewegungen des Lesekopfes

Mehr

Codierungstheorie Teil 1: Fehlererkennung und -behebung

Codierungstheorie Teil 1: Fehlererkennung und -behebung Codierungstheorie Teil 1: Fehlererkennung und -behebung von Manuel Sprock 1 Einleitung Eine Codierung ist eine injektive Abbildung von Wortmengen aus einem Alphabet A in über einem Alphabet B. Jedem Wort

Mehr

Grundlagen: Algorithmen und Datenstrukturen

Grundlagen: Algorithmen und Datenstrukturen Grundlagen: Algorithmen und Datenstrukturen Prof. Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Sommersemester 00

Mehr

Die Mathematik in der CD

Die Mathematik in der CD Lehrstuhl D für Mathematik RWTH Aachen Lehrstuhl D für Mathematik RWTH Aachen St.-Michael-Gymnasium Monschau 14. 09. 2006 Codes: Definition und Aufgaben Ein Code ist eine künstliche Sprache zum Speichern

Mehr

Modul Diskrete Mathematik WiSe 2011/12

Modul Diskrete Mathematik WiSe 2011/12 Modul Diskrete Mathematik WiSe / Ergänzungsskript zum Kapitel 3.4. Hinweis: Dieses Manuskript ist nur verständlich und von Nutzen für Personen, die regelmäßig und aktiv die zugehörige Vorlesung besuchen

Mehr

Praktikum Digitaltechnik

Praktikum Digitaltechnik dig A) Vorbereitungsaufgaben: 1) Ermitteln Sie anhand der gegebenen zwei Blockschaltbilder die Schaltgleichungen und vereinfachen Sie weitmöglich! y 1 =(/(/(x 0 x 1 )/(x 0 +x 1 )))+(/(/(x 0 x 1 )+/(x 0

Mehr

Mehrwegbäume Motivation

Mehrwegbäume Motivation Mehrwegbäume Motivation Wir haben gute Strukturen (AVL-Bäume) kennen gelernt, die die Anzahl der Operationen begrenzen Was ist, wenn der Baum zu groß für den Hauptspeicher ist? Externe Datenspeicherung

Mehr

(a, b)-bäume / 1. Datenmenge ist so groß, dass sie auf der Festplatte abgespeichert werden muss.

(a, b)-bäume / 1. Datenmenge ist so groß, dass sie auf der Festplatte abgespeichert werden muss. (a, b)-bäume / 1. Szenario: Datenmenge ist so groß, dass sie auf der Festplatte abgespeichert werden muss. Konsequenz: Kommunikation zwischen Hauptspeicher und Festplatte - geschieht nicht Byte für Byte,

Mehr

Universität Basel Wirtschaftswissenschaftliches Zentrum. Zufallsvariablen. Dr. Thomas Zehrt

Universität Basel Wirtschaftswissenschaftliches Zentrum. Zufallsvariablen. Dr. Thomas Zehrt Universität Basel Wirtschaftswissenschaftliches Zentrum Zufallsvariablen Dr. Thomas Zehrt Inhalt: 1. Einführung 2. Zufallsvariablen 3. Diskrete Zufallsvariablen 4. Stetige Zufallsvariablen 5. Erwartungswert

Mehr

Codierung. Auszug aus dem Skript von Maciej Liśkiewicz und Henning Fernau

Codierung. Auszug aus dem Skript von Maciej Liśkiewicz und Henning Fernau Codierung Auszug aus dem Skript von Maciej Liśkiewicz und Henning Fernau Ein bisschen Informationstheorie Betrachten wir das folgende Problem: Wie lautet eine sinnvolle Definition für das quantitative

Mehr

Informatik II, SS 2014

Informatik II, SS 2014 Informatik II SS 2014 (Algorithmen & Datenstrukturen) Vorlesung 13 (18.6.2014) Binäre Suchbäume IV (Rot Schwarz Bäume) Algorithmen und Komplexität Rot Schwarz Bäume Ziel: Binäre Suchbäume, welche immer

Mehr