Fundamentals of Index Coding

The index coding problem provides a simple yet rich model for several important engineering tasks such as satellite communication, content broadcasting, distributed caching, device-to-device relaying, and interference management. This monograph provides a broad overview of this fascinating subject, focusing on the simplest form of multiple-unicast index coding.

The main objectives in studying the index coding problem are to characterize the capacity region for a general index coding instance in a computable expression and to develop the coding scheme that can achieve it. Despite their simplicity, these two closely related questions are extremely difficult and precise answers to them, after twenty years of vigorous investigation, are still in terra incognita. There are, nonetheless, many elegant results that shed light on the fundamental challenges in multiple-unicast network communication and expose intriguing interplay between coding theory, graph theory, and information theory. This monograph contains a concise survey of these results in a unified framework. It further discusses the relation to Network Coding and Distributed Storage.

This monograph gives the reader a concise, yet comprehensive, overview of the work undertaken on this important topic; its relationship to adjacent areas and lays the groundwork for future research. It is a valuable starting point for all researchers and students in Information Theory.