- Dieses Buch bietet eine umfassende Darstellung der Kernkonzepte der Codierungstheorie und ihrer modernen Entwicklungen
- Es behandelt die Grundprinzipien von fehlerkorrigierenden Codes, die Struktur und Grenzen verschiedener Codes sowie praktische Anwendungsfelder
- Mit besonderem Fokus werden unter anderem Shannons Theorie und Hamming-Codes sowie in der Praxis weit verbreitete Codes wie Reed-Solomon erläutert
- Auch Anwendungsbeispiele in modernen IT-Systemen wie Hashing, Gruppentests und der Schutz biometrischer Daten werden systematisch dargestellt
- Einschließlich Anhängen, Übungsaufgaben und Literaturverweisen ist das Buch als effektives Nachschlagewerk sowohl für Lernende als auch für Praktiker aufgebaut
Vorwort
- Dieses Buch basiert auf Vorlesungsunterlagen zur Codierungstheorie von Venkatesan Guruswami, Atri Rudra und Madhu Sudan
- Grundlage sind Lehrveranstaltungen an der University of Washington, CMU, University at Buffalo SUNY, Harvard, MIT und weiteren Institutionen
- Unterstützt durch den NSF CAREER grant CCF-0844796
- Die Ansichten und Ergebnisse der Autoren stellen nicht die offizielle Position der NSF dar
- Verfügbar unter der Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License
Inhaltsübersicht
Kapitel 1: Grundlegende Fragen
- Ziel der Codierungstheorie, grundlegende Definitionen und Codes
- Fehlerkorrektur und das Distanzkonzept von Codes, Hamming-Codes und Schranken
- Klassifikation von Codefamilien, einschließlich Übungsaufgaben und Literaturhinweisen
Teil I: Grundlagen
- Einführung mathematischer Strukturen wie lineare Codes, endliche Körper und Vektorräume
- Effiziente Decodierung von Hamming-Codes und Erklärung des Dualcodes
- Einschließlich Übungsaufgaben und Literaturverweisen
Kapitel 3: Wahrscheinlichkeit und q-äre Entropiefunktion
- Grundlagen der Wahrscheinlichkeitstheorie, probabilistische Methoden, Verständnis der q-ären Entropiefunktion
- Mit zugehörigen Übungsaufgaben und Literaturhinweisen
Teil II: Kombinatorik
- Erläuterung von Codeschranken und Grenzen wie Hamming, Gilbert-Varshamov, Singleton und Plotkin
- Reed-Solomon-Codes, Polynome und Anwendungen endlicher Körper
- Shannons Rauschmodell und Grenzen der Informationsübertragung, im Vergleich zu Hamming
- Erweiterungen wie List Decoding, Johnson Bound und die Kapazität des List Decoding
- Neue Grenztheorien wie Elias-Bassalygo und Schranken aus der linearen Programmierung
Teil III: Verschiedene Codestrukturen
- Polynom-basierte Codes und Anwendungen auf binäre Körper, allgemeine Codestrukturen
- Code-Verkettung (concatenation), Zyablov Bound, fortgeschrittene Verkettungstechniken und Zusammenfassung
- Expander-Graphen und Expander-Codes, Distanzverstärkung und Anwendungsfälle
Teil IV: Algorithmen
- Effiziente Decodierungsverfahren für Reed-Solomon-, Reed-Muller- und verkettete Codes
- Methoden zum Erreichen der BSCp-Kanal-Kapazität sowie innere/äußere Codestrukturen
- Polar-Codes, das Polarization-Prinzip sowie die Implementierung von Encoder/Decoder, Fähigkeiten des List Decoding
- Beschreibung von Codes mit linearer Zeitkomplexität bei der Kodierung und lokaler Reparierbarkeit
Teil V: Anwendungen
- Theorie des Hashings und Kollisionsvermeidung, nahezu universelle Hash-Funktionen, Proof of Data Possession
- Das Konzept des Fuzzy Vault zum Schutz biometrischer Authentifizierung (Fingerabdrücke)
- Formalisierung von Gruppentests (Group Testing), Schranken und Anwendungen auf Data-Stream-Algorithmen
- Komplexität von Codierungsproblemen: Nearest Codeword Problem, Decodierung mit Vorverarbeitung, Approximation, Minimum-Distance-Problem usw.
- Als Themen zur rechnerischen Komplexität werden außerdem Kommunikationskomplexität, Randomisierung, Pseudorandomness, Hardcore Predicates, Average-Case-Hardness-Probleme u. a. behandelt
Anhang
- Symbolverzeichnis, nützliche Ungleichungen und Gleichungen, asymptotische Notation, grundlegender Hintergrund zu Algorithmen und Komplexität
- Algebraische Algorithmen, Einführung in endliche Körper und Polynomoperationen
- Wichtige Konzepte der Informationstheorie: Entropie, bedingte Entropie, gegenseitige Information usw.
Merkmale und praktischer Nutzen
- Bietet umfassend den theoretischen Hintergrund und die praktische Anwendung fehlerkorrigierender Algorithmen, die in moderner Informations- und Kommunikationstechnik, Datenspeicherung und kryptografischen Systemen unverzichtbar sind
- Von Grundkonzepten über aktuelle Entwicklungen bis hin zu praktischen Anwendungen aufbereitet und damit eine breit angelegte Wissensquelle für Berufseinsteiger, Forschende und IT-Praktiker
- Jedes Kapitel enthält Übungsaufgaben und Literaturverweise und eignet sich daher gut für Lernen und selbstgesteuertes Studium
- Kann unter der Creative-Commons-Lizenz frei für akademische und nicht-kommerzielle Zwecke genutzt werden
1 Kommentare
Hacker-News-Kommentare
Ich möchte hervorheben, dass Claude Shannons „The Mathematical Theory of Communication“ ein grundlegendes Dokument der Informationstheorie ist, das so zugänglich erklärt ist, dass es auch ohne tiefen mathematischen Hintergrund von praktisch jedem gelesen werden kann Link
Es wäre interessant, mehr dazu aufzunehmen, weil verlustfreie Kompression eng mit generativer KI verbunden ist. Ich möchte eine Dissertation empfehlen, die die Verbindung zwischen verlustfreier Kompression und Machine Learning gut einführt Link
Als gutes neueres Material gibt es das Lehrbuch <i>Information Theory: From Coding to Learning</i>. Es gibt auch eine Online-PDF-Version, die man sich ansehen kann Link
Um die Frage zu beantworten, was „Coding“ hier bedeutet: Gemeint ist das Kodieren und Dekodieren, also das Umwandeln von Information aus einer Darstellung in eine andere. Solche Systeme nennt man Codes, und sie werden so entworfen, dass sie bei der Informationsübertragung gegen Störungen, Verfälschung oder Abhören resistent sind. Coding wird also in vielen Bereichen eingesetzt, darunter Datenkompression, Verschlüsselung, Fehlererkennung und -korrektur sowie Datenübertragung und -speicherung Link
Da hier gerade kostenlose CS-E-Books geteilt werden, möchte ich auch Jeff E.s Algorithms-Buch nachdrücklich empfehlen. Für alle, die Algorithmen lernen oder ihre Kenntnisse auffrischen möchten, ist es Pflichtlektüre Link
Ich habe ein paar Kapitel dieses Buches gelesen und bin wirklich sehr zufrieden damit. Ich habe vor, es in den nächsten Wochen oder vielleicht Monaten langsam weiterzulesen
Wenn man Informationstheorie und Codierungstheorie tiefer studieren möchte, würde ich auch die folgenden Materialien empfehlen. Für Fehlerkorrekturcodes: „Error-Correcting Codes“ von W. Wesley Peterson und E. J. Weldon, Jr.; und für abstrakte Algebra, insbesondere Körpertheorie: „Commutative Algebra“ von Oscar Zariski und Pierre Samuel
Wenn ich ein paar Bücher für Einsteiger empfehlen sollte:
Immer wenn jemand sagt, „das ist essenziell“, ist das für mich als jemanden, der das Thema im Studium höchstens gestreift hat, immer ein leicht einschüchternder Moment
Mit „essenziell“ ist in diesem Kurs weniger gemeint, dass es etwas sei, das alle Informatikstudierenden unbedingt wissen müssten, sondern eher, dass es die Essenz der Codierungstheorie enthält. Einer der Mitautoren des Buches hält an unserer Universität selbst eine Vorlesung dazu, und diese Veranstaltung ist ein Wahlfach in höheren Semestern mit überwältigend viel Mathematik. In einem vierjährigen Informatikstudium belegen sie meist nur sehr wenige Studierende im letzten Studienjahr, und alle Freunde in meinem Umfeld, die den Kurs besucht haben, waren Leute, die mathematische Beweise mochten. Ihnen hat der Kurs gefallen
Wenn irgendwo „essenziell“ oder „Einführung“ draufsteht, ist das oft eine Vorankündigung, dass ein extrem dichtes Lehrbuch auf einen wartet