114
Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer Cycles A Project Report Submitted in partial fulfilment of the requirements for the Degree of Master of Technology in Communication and Networks Submitted by K. Vikas Bharadwaj under the guidance of Prof. B. Sundar Rajan Department of Electrical Communication Engineering Indian Institute of Science, Bangalore Bangalore – 560 012 (INDIA) January 2018

Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Optimal Index Codes for Two Classes ofInterlinked Cycle Structures With Outer Cycles

A Project Report

Submitted in partial fulfilment of the

requirements for the Degree of

Master of Technology

in

Communication and Networks

Submitted by

K. Vikas Bharadwaj

under the guidance of

Prof. B. Sundar Rajan

Department of Electrical Communication Engineering

Indian Institute of Science, Bangalore

Bangalore – 560 012 (INDIA)

January 2018

Page 2: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Acknowledgments

I would like to thank my supervisor, Prof. B. Sundar Rajan, for the many insightful

discussions during the development of the ideas in this report and for the helpful com-

ments on the text. His expertise in the area of study has been of immense help in

understanding the concepts and in developing the ideas.

I thank my lab mates with whom I had invaluable discussions which helped me in my

research.

i

Page 3: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Contents

Acknowledgments i

Abstract 1

I Work done till 30th January 2018 3

1 Introduction 4

1.1 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.2 Our Contribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2 Review of Interlinked Cycle Structures 8

3 Motivating Examples 18

4 Main Results 27

5 Illustration of Results 34

6 Conclusion 50

6.1 Summary of the results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

6.2 Scope for further work . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

ii

Page 4: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

CONTENTS iii

II Work done after 30th January 2018 52

7 Introduction 53

7.1 Corrections in literature . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

7.2 Our Contribution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

8 Main Results 56

8.1 Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

8.2 Properties of Intersecting Outer cycles . . . . . . . . . . . . . . . . . . . . 60

8.3 Construction 2 and Algorithm 2 . . . . . . . . . . . . . . . . . . . . . . . . . 72

8.4 Optimality of Index Codes obtained by using Construction 2 . . . . . . . 77

8.5 Error Correcting Index Codes for IC structures with Outer Cycles . . . . 79

8.5.1 Achievability bound of the inequality 8.2. . . . . . . . . . . . . . . 81

9 Examples 83

10 Conclusion 100

10.1 Summary of the results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100

10.2 Future Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100

Bibliography 101

Page 5: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

List of Figures

2.1 3-IC structure G1 with VI = {1, 2, 3}. . . . . . . . . . . . . . . . . . . . . . 9

2.2 Rooted tree for inner vertex 1 of IC-structure G1. . . . . . . . . . . . . . . 10

2.3 Rooted tree for inner vertex 2 of IC-structure G1. . . . . . . . . . . . . . . 10

2.4 Rooted tree for inner vertex 3 of IC-structure G1. . . . . . . . . . . . . . . 11

2.5 4-IC structure G2 with VI = {1, 2, 3, 4}. . . . . . . . . . . . . . . . . . . . . 12

2.6 Rooted tree for inner vertex 1 of IC-structure G2. . . . . . . . . . . . . . . 13

2.7 Rooted tree for inner vertex 2 of IC-structure G2. . . . . . . . . . . . . . . 13

2.8 Rooted tree for inner vertex 3 of IC-structure G2. . . . . . . . . . . . . . . 13

2.9 Rooted tree for inner vertex 4 of IC-structure G2. . . . . . . . . . . . . . . 14

2.10 5-IC structure G3 with VI = {1, 2, 3, 4, 5}. . . . . . . . . . . . . . . . . . . . 15

2.11 Rooted tree for inner vertex 1 of IC-structure G3. . . . . . . . . . . . . . . 16

2.12 Rooted tree for inner vertex 2 of IC-structure G3. . . . . . . . . . . . . . . 16

2.13 Rooted tree for inner vertex 3 of IC-structure G3. . . . . . . . . . . . . . . 16

2.14 Rooted tree for inner vertex 4 of IC-structure G3. . . . . . . . . . . . . . . 17

2.15 Rooted tree for inner vertex 5 of IC-structure G3. . . . . . . . . . . . . . . 17

3.1 6-IC structure G4 with inner vertex set, VI = {1, 2, 3, 4, 5, 6}. . . . . . . . . 19

3.2 Rooted tree for inner vertex 1 of IC-structure G4. . . . . . . . . . . . . . . 19

3.3 Rooted tree for inner vertex 2 of IC-structure G4. . . . . . . . . . . . . . . 20

iv

Page 6: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

LIST OF FIGURES v

3.4 Rooted tree for inner vertex 3 of IC-structure G4. . . . . . . . . . . . . . . 20

3.5 Rooted tree for inner vertex 4 of IC-structure G4. . . . . . . . . . . . . . . 20

3.6 Rooted tree for inner vertex 5 of IC-structure G4. . . . . . . . . . . . . . . 21

3.7 Rooted tree for inner vertex 6 of IC-structure G4. . . . . . . . . . . . . . . 21

3.8 5-IC structure, G5 with VI = {1, 2, 3, 4, 5} that satisfies Lemma 2 and

Lemma 3. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

3.9 Rooted tree for inner vertex 1 of IC-structure G5. . . . . . . . . . . . . . . 24

3.10 Rooted tree for inner vertex 2 of IC-structure G5. . . . . . . . . . . . . . . 24

3.11 Rooted tree for inner vertex 3 of IC-structure G5. . . . . . . . . . . . . . . 24

3.12 Rooted tree for inner vertex 4 of IC-structure G5. . . . . . . . . . . . . . . 25

3.13 Rooted tree for inner vertex 5 of IC-structure G5. . . . . . . . . . . . . . . 25

4.1 Illustration of VI(j). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

4.2 Illustration of Si,j . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

4.3 Illustration of p 6∈ Si,j . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

4.4 Illustration of p 6∈ Si,j . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

4.5 Illustration of p ∈ Si,j . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

4.6 Illustration of existence of a path from i to n through both p and q. . . . . 31

5.1 6-IC structure G6 with VI = {1, 2, 3, 4, 5, 6}. . . . . . . . . . . . . . . . . . . 36

5.2 Rooted tree for inner vertex 1 of IC-structure G6. . . . . . . . . . . . . . . 37

5.3 Rooted tree for inner vertex 2 of IC-structure G6. . . . . . . . . . . . . . . 37

5.4 Rooted tree for inner vertex 3 of IC-structure G6. . . . . . . . . . . . . . . 38

5.5 Rooted tree for inner vertex 4 of IC-structure G6. . . . . . . . . . . . . . . 38

5.6 Rooted tree for inner vertex 5 of IC-structure G6. . . . . . . . . . . . . . . 38

5.7 Rooted tree for inner vertex 6 of IC-structure G6. . . . . . . . . . . . . . . 39

Page 7: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

LIST OF FIGURES vi

5.8 6-IC structure G7 with VI = {1, 2, 3, 4, 5, 6}. . . . . . . . . . . . . . . . . . . 42

5.9 Rooted tree for inner vertex 1 of IC-structure G7. . . . . . . . . . . . . . . 43

5.10 Rooted tree for inner vertex 2 of IC-structure G7. . . . . . . . . . . . . . . 43

5.11 Rooted tree for inner vertex 3 of IC-structure G7. . . . . . . . . . . . . . . 43

5.12 Rooted tree for inner vertex 4 of IC-structure G7. . . . . . . . . . . . . . . 44

5.13 Rooted tree for inner vertex 5 of IC-structure G7. . . . . . . . . . . . . . . 44

5.14 Rooted tree for inner vertex 6 of IC-structure G7. . . . . . . . . . . . . . . 44

5.15 5-IC structure G8 with VI = {1, 2, 3, 4, 5}. . . . . . . . . . . . . . . . . . . . 46

5.16 Rooted tree for inner vertex 1 of IC-structure G8. . . . . . . . . . . . . . . 47

5.17 Rooted tree for inner vertex 2 of IC-structure G8. . . . . . . . . . . . . . . 47

5.18 Rooted tree for inner vertex 3 of IC-structure G8. . . . . . . . . . . . . . . 47

5.19 Rooted tree for inner vertex 4 of IC-structure G8. . . . . . . . . . . . . . . 48

5.20 Rooted tree for inner vertex 5 of IC-structure G8. . . . . . . . . . . . . . . 48

8.1 Figure showing outer-cycle group of vertex 2 . . . . . . . . . . . . . . . . 57

8.2 Figure showing outer-cycle group of vertex 3 . . . . . . . . . . . . . . . . 57

8.3 Figure illustrating two non-isolated MOCGs. . . . . . . . . . . . . . . . . 59

8.4 outer-cycle group of vertex 2. . . . . . . . . . . . . . . . . . . . . . . . . . 59

8.5 outer-cycle group of vertices 5 and 6. . . . . . . . . . . . . . . . . . . . . . 60

8.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

8.7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

8.8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

8.9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

8.10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

8.11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

8.12 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66

Page 8: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

LIST OF FIGURES vii

8.13 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

8.14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

8.15 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

8.16 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

8.17 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69

8.18 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

8.19 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

8.20 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

9.1 IC structure G9 with outer cycles. . . . . . . . . . . . . . . . . . . . . . . . 84

9.2 Rooted tree of inner vertex 1 in G9. . . . . . . . . . . . . . . . . . . . . . . 84

9.3 Rooted tree of inner vertex 2 in G9. . . . . . . . . . . . . . . . . . . . . . . 84

9.4 Rooted tree of inner vertex 3 in G9. . . . . . . . . . . . . . . . . . . . . . . 85

9.5 Rooted tree of inner vertex 4 in G9. . . . . . . . . . . . . . . . . . . . . . . 85

9.6 Rooted tree of inner vertex 5 in G9. . . . . . . . . . . . . . . . . . . . . . . 85

9.7 Rooted tree of inner vertex 6 in G9. . . . . . . . . . . . . . . . . . . . . . . 86

9.8 Induced acyclic subgraph of G9, obtained by removing the vertices 2, 3, 6, 10, 16. 89

9.9 10-IC structure with outer cycles, G. . . . . . . . . . . . . . . . . . . . . . 90

9.10 Rooted tree of inner vertex 1 in G. . . . . . . . . . . . . . . . . . . . . . . . 90

9.11 Rooted tree of inner vertex 2 in G. . . . . . . . . . . . . . . . . . . . . . . . 91

9.12 Rooted tree of inner vertex 3 in G. . . . . . . . . . . . . . . . . . . . . . . . 91

9.13 Rooted tree of inner vertex 4 in G. . . . . . . . . . . . . . . . . . . . . . . . 91

9.14 Rooted tree of inner vertex 5 in G. . . . . . . . . . . . . . . . . . . . . . . . 91

9.15 Rooted tree of inner vertex 6 in G. . . . . . . . . . . . . . . . . . . . . . . . 91

9.16 Rooted tree of inner vertex 7 in G. . . . . . . . . . . . . . . . . . . . . . . . 92

9.17 Rooted tree of inner vertex 8 in G. . . . . . . . . . . . . . . . . . . . . . . . 92

Page 9: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

LIST OF FIGURES viii

9.18 Rooted tree of inner vertex 9 in G. . . . . . . . . . . . . . . . . . . . . . . . 92

9.19 Rooted tree of inner vertex 10 in G. . . . . . . . . . . . . . . . . . . . . . . 92

9.20 Induced acyclic subgraph of G obtained by removing the 12 vertices in

the set {1, 2, 3, 4, 6, 7, 8, 9, 15, 17, 29, 32}. . . . . . . . . . . . . . . . . . . . . 99

Page 10: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

List of Tables

5.1 Table that illustrates c2 for G1. . . . . . . . . . . . . . . . . . . . . . . . . . 35

5.2 Table that illustrates c2 for G2. . . . . . . . . . . . . . . . . . . . . . . . . . 35

5.3 Table that illustrates c1 for G3. . . . . . . . . . . . . . . . . . . . . . . . . . 35

5.4 Table that illustrates c2 for G3. . . . . . . . . . . . . . . . . . . . . . . . . . 36

5.5 Table that verifies c1 for G6. . . . . . . . . . . . . . . . . . . . . . . . . . . 39

5.6 Table that verifies c2 for G6. . . . . . . . . . . . . . . . . . . . . . . . . . . 40

5.7 Table that shows the working of Algorithm 1 on index code obtained

from Construction 1 on G6. . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

5.8 Table that shows decoding of messages using Algorithm 1 on index code

obtained from Construction 1 on G6. . . . . . . . . . . . . . . . . . . . . . . 41

5.9 Table that verifies c1 for G7. . . . . . . . . . . . . . . . . . . . . . . . . . . 41

5.10 Table that verifies c2 for G7. . . . . . . . . . . . . . . . . . . . . . . . . . . 42

5.11 Table that shows the working of Algorithm 1 on index code obtained

from Construction 1 on G7. . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

5.12 Table that shows the decoding of messages using Algorithm 1 on index

code obtained from Construction 1 on G7. . . . . . . . . . . . . . . . . . . . 45

5.13 Table that verifies c1 for G8. . . . . . . . . . . . . . . . . . . . . . . . . . . 46

5.14 Table that verifies c2 for G8. . . . . . . . . . . . . . . . . . . . . . . . . . . 49

5.15 Table that shows the working of Algorithm 1 on index code obtained

from Construction 1 on G8. . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

ix

Page 11: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

LIST OF TABLES x

5.16 Table that shows the decoding of messages using Algorithm 1 on index

code obtained from Construction 1 on G8. . . . . . . . . . . . . . . . . . . . 49

Page 12: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Abstract

We consider unicast index coding problems where a server broadcasts coded messages

over a noiseless channel, to a set of receivers which knows some messages apriori, in

such a way that all the receivers can decode their desired messages. Thapa, Ong and

Johnson [1] proposed an index code construction (referred to as Construction 1 in this

report) and decoding algorithm (referred to as Algorithm 1 in this report) for a class

of side information graphs called interlinked cycle (IC) structures. Motivated by ex-

amples of IC structures for which Algorithm 1 does not work [8], we propose a set of

necessary and sufficient conditions for the index code obtained by using Construction

1 on a given IC structure to be decodable using Algorithm 1. In other words, we intro-

duce additional conditions on a given IC structure with which the index code obtained

by using Construction 1 on given IC structure is decodable using Algorithm 1.

In the second part of the work, we start by considering a correction made by Thapa,

Ong and Johnson to the definition of IC structures based on the work done in [8] and

[11]. A new condition is introduced in the definition of IC structures in [10]. We con-

sider the side-information graphs satisfying the old definition of IC structures and refer

to them as IC structures with outer cycles. For IC structures with outer cycles, index

code construction is presented along with a decoding algorithm and some classes of

IC structures with outer cycles are found for which the obtained index codes are of op-

timal length. Then for these classes of IC structures with outer cycles, optimum error

correcting index code construction is also presented.

1

Page 13: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Abstract 2

Page 14: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Part I

Work done till 30th January 2018

3

Page 15: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 1

Introduction

1.1 Background

The index coding problem (ICP) with side information was first studied in [2] and

[3] as an Informed-Source Coding-On-Demand (ISCOD) problem, in which a central

server (sender) wants to broadcast data blocks to a set of clients (users) which has a

subset of the data blocks. The problem is to minimise the data that must be broadcast,

so that each user can derive its required data blocks. The index coding problem was

generalised by Maleki, Cadambe and Jafar [4] as follows. The index coding problem

consists of a single sender with a set of M independent messages

X = {x1, x2, . . . , xM},

and a set of K users

D = {D1, D2, . . . , DK},

connected to the sender by a single shared error-free link, with the kth user Dk identi-

fied as

Dk = (Xk,Ak),

4

Page 16: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 1. Introduction 5

where Xk ⊆ X is the set of messages desired by Dk, the set Ak ⊂ X is comprised of the

messages available to user Dk as side information (antidotes). The set of antidotes Ak

satisfies Xk ∩ Ak = φ, i.e., a user does not desire a message that is already available to

it.

An (S, n,R) index coding scheme corresponds to the choice of a finite alphabet S of

cardinality |S| > 1, a coding function, f , and a decoding function gk,i, for each desired

messageWi at each userDk. The coding function maps all the messages to the sequence

of transmitted symbols

f(x1, x2, . . . , xM) = Sn

where Sn ∈ Sn is the sequence of symbols transmitted over n channel uses. Here

∀m ∈ {1, 2, . . . ,M}, message xm is a random variable uniformly distributed over the

set

xm ∈ {1, 2, . . . , |S|nRm},

andR ∈ RM+ is simply a rate vector

R = (R1, R2, . . . , RM)

that satisfies the condition that |S|nRm is an integer for every m ∈ {1, 2, . . . ,M}. At

each user, Dk, there is a decoding function for each desired message

gk,i(Sn,Ak) = xi,

for all i such that xi ∈ Xk.

The integer n, as defined above, is called the length of the index code. An index code

of minimum length is called an optimal index code [6]. An index coding scheme is said

to be a linear index coding scheme if the coding and the decoding functions are linear

and the alphabet S is a finite field [4]. An index coding scheme is said to be a scalar

Page 17: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 1. Introduction 6

index coding scheme if

R =

(1

n,1

n, . . . ,

1

n

).

In other words, in a scalar index coding scheme, the sender sends one symbol for each

message over n channel uses.

Ong and Ho [6] classified the index coding problems into different classes based on

the side information set Ak and the want set Xk of receivers. An index coding prob-

lem is said to be multiple unicast (or simply, unicast) if Xk ∩ Xj = φ for k 6= j and

k, j ∈ {1, 2, . . . , K}, ie., no message is desired by more than one user. The problem is

said to be single unicast if the problem is unicast and |Xk| = 1 for all k ∈ {1, 2, . . . , K}.

A unicast index coding problem can be reduced into single unicast index coding prob-

lem, by splitting the user demanding more than one message into several users, each

demanding one message and with the same side information as the original user. For

example, let there are 5 messages at the sender, {x1, x2, x3, x4, x5}. A user demanding

three messages x1, x2 and x3 and with side information x4 and x5 is split into three

users, each with side information x4 and x5 and demanding one message x1, x2 and x3

respectively. For single unicast index coding problems, the number of receivers equals

the number of messages (K = M ). An index coding problem of this class can be char-

acterised by a side information graph which is a simple directed graph with n vertices

(representing the messages as well as the receivers) and a set of edges, where an edge

from vertex i to vertex j exists if and only if the receiver Di has side information xj [7].

Interlinked Cycle Cover (ICC) scheme is proposed by Thapa et. al. [1] as a scalar

linear index coding scheme to solve unicast index coding problems corresponding to

a class of side information graphs called Interlinked Cycle (IC) structures. Optimal

index code construction for a new class of interlinked cycle structures, for which ICC

scheme does not give valid index codes is presented in [8].

Page 18: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 1. Introduction 7

1.2 Our Contribution

Thapa et. al. proposed an index code construction Construction 1 for IC structures. With

the help of a decoding algorithm Algorithm 1, it is claimed in [1] that the index code

thus obtained is valid, i.e., it is claimed that using the index coded symbols and side

information, each user can decode the message requested by it. Our contributions are

summerised as follows.

• Examples of IC structures for which Algorithm 1 does not work are presented.

• Motivated by the examples, we propose a set of necessary and sufficient condi-

tions which are to be satisfied by a given IC structure for an index code obtained

by using Construction 1 on the given IC structure to be decodable using Algorithm

1.

• A property of certain vertices in an IC structure is found and is presented as Claim

1.

• In [1], Lemma 3 (stated as Lemma 2 in this report), which was used to prove the

validity of index code obtained by Construction 1, which is assumed to be true for

any IC structure, is shown to be not true for all IC structures, using examples.

• However, an IC structure which belongs to the class of IC structures presented in

this report need not satisfy Lemma 2. It is shown in Ex. 12

Page 19: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 2

Review of Interlinked Cycle Structures

In this chapter, we present the definition of interlinked cycle (IC) structure, the index

code construction for IC structures and decoding algorithm proposed in [1] and intro-

duce the notations used in this report. We consider single unicast setting where the

number of messages at the sender is equal to the number of users and is assumed

to be equal to N . The messages are X = {x1, x2, . . . xN} and say xi ∈ Fq for all

i ∈ {1, 2, . . . , N}. The users are referred to by the index of the messages they demand

respectively.

Notation. The set of vertices in a directed graph G is denoted by V (G) and the set of

vertices in the out-neighbourhood of a vertex j in G is denoted by N+G (j). ⊕ denotes

modulo addition over Fq.

Definition 1 (IC Structure [1]). A side information graph G is called a K-IC structure

with inner vertex set VI ⊆ V (G), such that |VI | = K if G satisfies the following three

conditions.

1. There is no I-Cycle in G, where I-Cycle is defined as a cycle which contains only

one inner vertex.

2. There is a unique I-Path between any two different inner vertices in G, where an

I-path is defined as a path from one inner vertex to another inner vertex without

8

Page 20: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 2. Review of Interlinked Cycle Structures 9

passing through any other inner vertex (as a result, K rooted trees can be drawn

where each rooted tree is rooted at an inner vertex and has the remaining inner

vertices as the leaves).

3. G is the union of the K rooted trees.

The set of the vertices V (G)\VI is called the set of non-inner vertices, denoted by VNI .

Examples of IC structures which are presented in [1] are given below.

Example 1. Consider G1, a side information graph which is a 3-IC structure shown in

Fig. 2.1 G1 is a 3-IC structure with inner vertex set VI = {1, 2, 3} because

1

2

3

4

6

5

Figure 2.1: 3-IC structure G1 with VI = {1, 2, 3}.

1. there are no cycles containing only one vertex from the set {1, 2, 3} in G1 (i.e., no

I-cycles),

2. using the rooted trees for each vertex in the set {1, 2, 3}, which are given in Fig.

2.2, 2.3 and 2.4, respectively, it is verified that there exists a unique path between

Page 21: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 2. Review of Interlinked Cycle Structures 10

1

2

3 6

5

Figure 2.2: Rooted tree for inner vertex 1 of IC-structure G1.

1

2

3

4

6

Figure 2.3: Rooted tree for inner vertex 2 of IC-structure G1.

any two different vertices in VI in G1 and does not contain any other vertex in VI

(i.e., unique I-path between any pair of inner vertices),

3. G1 is the union of all the 3 rooted trees.

Example 2. Consider G2, a side information graph which is a 4-IC structure shown in

Fig. 2.5. G2 is a 4-IC structure with inner vertex set VI = {1, 2, 3, 4} because

1. there are no cycles with only one vertex from the set {1, 2, 3, 4} in G2 (i.e., no I-

cycles),

2. using the rooted trees for each vertex in the set {1, 2, 3, 4}, which are given in

Fig. 2.6, 2.7, 2.8 and 2.9, respectively, it is verified that there exists a unique path

Page 22: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 2. Review of Interlinked Cycle Structures 11

1

2

3

4

5

Figure 2.4: Rooted tree for inner vertex 3 of IC-structure G1.

between any two different vertices in VI in G2 and does not contain any other

vertex in VI (i.e., unique I-path between any pair of inner vertices),

3. G2 is the union of all the 4 rooted trees.

Example 3. Consider G3, a side information graph which is a 5-IC structure, shown in

Fig. 2.10. G3 is a 5-IC structure with inner vertex set VI = {1, 2, 3, 4, 5} because

1. there are no cycles with only one vertex from the set {1, 2, 3, 4, 5} in G3 (i.e., no

I-cycles),

2. using the rooted trees for each vertex in the set {1, 2, 3, 4, 5}, which are given in

Fig. 2.11, 2.12, 2.13, 2.14 and 2.15, respectively, it is verified that there exists a

unique path between any two different vertices in VI in G3 and does not contain

any other vertex in VI (i.e., unique I-path between any pair of inner vertices),

3. G3 is the union of all the 5 rooted trees.

The ICC scheme finds disjoint IC structures in given side-information graph and then

constructs an index code for each IC structure using the following construction pro-

posed by Thapa et al. [1] (stated below as Construction 1).

Page 23: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 2. Review of Interlinked Cycle Structures 12

5

6

4

3

2

1

Figure 2.5: 4-IC structure G2 with VI = {1, 2, 3, 4}.

Construction 1 (Index code construction for a K-IC structure). Let the K-IC structure

be called G and let |V (G)| = N . Let V (G) = {1, 2, . . . , N}, VI = {1, 2, . . . , K) be the set

of the K inner vertices and hence VNI = {K + 1, K + 2, . . . , N}. Let xn ∈ Fq be the

message corresponding to the vertex n ∈ V (G) and where Fq is the finite field to which

the all the N messages at the sender belong to (note that in single unicast setting, the

number of messages will be equal to the number of users).

1. An index code symbol WI obtained by XOR of messages corresponding to inner

vertices is transmitted, where

WI =K⊕i=1

xi. (2.1)

2. An index code symbol corresponding to each non-inner vertex, obtained by XOR

Page 24: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 2. Review of Interlinked Cycle Structures 13

5

4

3

2

1

Figure 2.6: Rooted tree for inner vertex 1 of IC-structure G2.

6

4

3

2

1

Figure 2.7: Rooted tree for inner vertex 2 of IC-structure G2.

4

3

2

1

Figure 2.8: Rooted tree for inner vertex 3 of IC-structure G2.

Page 25: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 2. Review of Interlinked Cycle Structures 14

4

3

2

1

Figure 2.9: Rooted tree for inner vertex 4 of IC-structure G2.

of message corresponding to the non-inner vertex with the messages correspond-

ing to the vertices in the out-neighbourhood of the non-inner vertex is transmit-

ted, i.e., for j ∈ VNI , Wj is transmitted, where

Wj = xj⊕

q∈N+G (j)

xq, (2.2)

where ⊕ denotes modulo addition over Fq.

Let G be a K-IC structure with inner vertex set VI ⊆ V (G) and let Ti and Tj be the

rooted trees corresponding to two inner vertices i and j respectively, where i, j ∈ VI

and i 6= j. The following lemmas are presented in [1].

Lemma 1 (Lemma 2 in [1]). For any vertex v ∈ V (Ti) ∩ V (Tj), and v 6∈ VI , the set of leaf

vertices that fan out from the common vertex v in each tree is a subset of VI\{i, j}.

Lemma 2 (Lemma 3 in [1]). For any vertex v ∈ V (Ti) ∩ V (Tj), and v 6∈ VI , the out-

neighborhood of vertex v is the same in both trees, that is, N+Ti(v) = N+

Tj(v).

Lemma 3 (Lemma 4 in [1]). If a vertex v ∈ V (Ti) such that v 6∈ VI , then its out-

neighborhood is the same in Ti and in G, that is, N+Ti(v) = N+

G (v).

Algorithm 1. It is the algorithm proposed in [1] to decode an index code obtained by

using Construction 1 on an IC structure, G.

Page 26: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 2. Review of Interlinked Cycle Structures 15

9 10

8 7 6

5 4 3 2 1

Figure 2.10: 5-IC structure G3 with VI = {1, 2, 3, 4, 5}.

• The message xj corresponding to a non-inner vertex j is decoded directly using

the transmission Wj and

• the message xi corresponding to an inner vertex i is decoded using

Zi = WI

⊕q∈VNI)(i)

Wq =⇒ Zi = xi⊕

k:k∈N+Ti

(i)

xk.

Page 27: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 2. Review of Interlinked Cycle Structures 16

8 7 6

5 4 3 2 1

Figure 2.11: Rooted tree for inner vertex 1 of IC-structure G3.

1 2 3 4 5

Figure 2.12: Rooted tree for inner vertex 2 of IC-structure G3.

10

8 7

5 4 3 2 1

Figure 2.13: Rooted tree for inner vertex 3 of IC-structure G3.

Page 28: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 2. Review of Interlinked Cycle Structures 17

9 10

5 4 3 2 1

Figure 2.14: Rooted tree for inner vertex 4 of IC-structure G3.

9 10

5 4 3 2 1

Figure 2.15: Rooted tree for inner vertex 5 of IC-structure G3.

Page 29: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 3

Motivating Examples

In this chapter, we provide examples of IC structures for which Algorithm 1 does not

work for decoding using the index code obtined by using Construction 1.

Example 4. Consider G4, a side information graph which is a 6- IC structure with inner

vertex set VI = {1, 2, 3, 4, 5, 6} given in Fig. 3.1. G4 is a 6-IC structure with inner vertex

set VI = {1, 2, 3, 4, 5, 6} because

1. there are no cycles containing only one vertex from the set {1, 2, 3, 4, 5, 6} in G4

(i.e., no I-cycles),

2. using the rooted trees for each vertex in the set {1, 2, 3, 4, 5, 6}, which are given

in Fig. 3.2, 3.3, 3.4, 3.5, 3.6 and 3.7, respectively, it is verified that there exists a

unique path between any two different vertices in VI in G4 and does not contain

any other vertex in VI (i.e., unique I-path between any pair of inner vertices),

3. G4 is the union of all the 6 rooted trees.

18

Page 30: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 3. Motivating Examples 19

1 14

2

3

4

5

6

7

8

9

10

11

12

13

Figure 3.1: 6-IC structure G4 with inner vertex set, VI = {1, 2, 3, 4, 5, 6}.

1 14

2

3

4

5

6

7

9

10

11

12

13

Figure 3.2: Rooted tree for inner vertex 1 of IC-structure G4.

Page 31: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 3. Motivating Examples 20

1

2

3

4

5

6

10

11

12

13

Figure 3.3: Rooted tree for inner vertex 2 of IC-structure G4.

1

2

3

4

5

6

11

12

13

Figure 3.4: Rooted tree for inner vertex 3 of IC-structure G4.

1

2

3

4

5

6

7

8

Figure 3.5: Rooted tree for inner vertex 4 of IC-structure G4.

Page 32: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 3. Motivating Examples 21

1

2

3

4

5

6

Figure 3.6: Rooted tree for inner vertex 5 of IC-structure G4.

1

2

3

4

5

6

9

10

11

12

13

Figure 3.7: Rooted tree for inner vertex 6 of IC-structure G4.

Page 33: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 3. Motivating Examples 22

Using Construction 1, the transmitted index code symbols are

WI = x1 ⊕ x2 ⊕ x3 ⊕ x4 ⊕ x5 ⊕ x6

W7 = x7 ⊕ x2 ⊕ x6

W8 = x8 ⊕ x3 ⊕ x5

W10 = x10 ⊕ x11

W11 = x11 ⊕ x12

W12 = x12 ⊕ x4 ⊕ x13

W13 = x13 ⊕ x5 ⊕ x9

W14 = x14 ⊕ x9.

Now consider the rooted tree of the inner vertex 2. It is given in Fig. 3.3. Applying

Algorithm 1 to decode x2, we get

Z2 = WI ⊕W10 ⊕W11 ⊕W12 ⊕W13

which results in

Z2 = x1 ⊕ x2 ⊕ x3 ⊕ x6 ⊕ x10 ⊕ x9

using which message x2 cannot be decoded by the user requesting it since x9 is not

availabe at that user as side information. It can be observed that Lemma 3 is not true for

IC structure G4 (it is violated by the non-inner vertex 13 which has out-neighbourhood

{5} in rooted tree of inner vertex 2 and has out-neighbourhood {5, 9} in G4. Also, it is

observed that the non-inner vertex 13 has out-neighbourhood {5} and {5, 9} in rooted

trees of inner vertices 2 and 6, respectively and thus Lemma 2 is also violated by G4.

However, it is not true that Algorithm 1 does not work in Ex. 4 because of Lemma 2

and Lemma 3 being not true for G4. This fact is illustrated by the following example. An

Page 34: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 3. Motivating Examples 23

1 2

9

11

3

8

10

4 5

7

6

Figure 3.8: 5-IC structure, G5 with VI = {1, 2, 3, 4, 5} that satisfies Lemma 2 and Lemma3.

IC structure for which Lemma 2 and Lemma 3 are true is given in Fig. 3.8.

Example 5. Consider G5, a side information graph which is a 5-IC structure with inner

vertex set VI = {1, 2, 3, 4, 5}, given in Fig. 3.8. G5 is a 5-IC structure with inner vertex

set {1, 2, 3, 4, 5} because

1. there are no cycles containing only one vertex from the set {1, 2, 3, 4, 5} in G5 (i.e.,

no I-cycles),

2. using the rooted trees for each vertex in the set {1, 2, 3, 4, 5}, which are given in

Fig. 3.9, 3.10, 3.11, 3.12 and 3.13, respectively, it is verified that there exists a

unique path between any two different vertices in VI in G5 and does not contain

any other vertex in VI (i.e, unique I-path between any pair of inner vertices),

3. G5 is the union of all the 5 rooted trees.

Page 35: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 3. Motivating Examples 24

1 2

9

3

8

4 5

7

6

Figure 3.9: Rooted tree for inner vertex 1 of IC-structure G5.

1 2 3 4 5

Figure 3.10: Rooted tree for inner vertex 2 of IC-structure G5.

1 2

9

11

3

8

4 5

Figure 3.11: Rooted tree for inner vertex 3 of IC-structure G5.

Page 36: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 3. Motivating Examples 25

1 2

11

3

10

4 5

Figure 3.12: Rooted tree for inner vertex 4 of IC-structure G5.

1 2

11

3

10

4 5

Figure 3.13: Rooted tree for inner vertex 5 of IC-structure G5.

Page 37: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 3. Motivating Examples 26

Using Construction 1, the transmitted index code symbols are

WI = x1 ⊕ x2 ⊕ x3 ⊕ x4 ⊕ x5

W6 = x6 ⊕ x3

W7 = x7 ⊕ x8

W8 = x8 ⊕ x4 ⊕ x9

W9 = x9 ⊕ x5 ⊕ x8

W10 = x10 ⊕ x3 ⊕ x11

W11 = x11 ⊕ x1.

Consider the rooted tree for the inner vertex 1, shown in Fig. 3.9. By applying Algorithm

1 to decode x1, we get

Z1 = WI ⊕W6 ⊕W7 ⊕W8 ⊕W9

which results in

Z1 = x1 ⊕ x2 ⊕ x6 ⊕ x7 ⊕ x8,

using which, message x1 is not decodable by the user requesting it because x8 is not

availabe at that user as side information.

So, it is obsesrved that even if Lemma 1, Lemma 2 and Lemma 3 are true for an IC

structre, the index code obtained by Construction 1 is not decodable using Algorithm 1.

This observation motivates Theorem 1 which imposes a set of necessary and sufficient

conditions on a given IC structure for an index code constructed using Construcion 1

for that IC structure to be decodable using Algorithm 1.

Page 38: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 4

Main Results

In this chapter, we presents our main results in which the class of IC structures for

which Algorithm 1 works is given.

Let the K-IC structure, G, have inner vertex set VI = {1, 2, . . . , K} and non-inner

vertex set VNI = {K + 1, K + 2, . . . , N}. Let Ti be the rooted tree corresponding to an

inner vertex i, where i ∈ {1, 2, . . . , K}. Let VNI(i) be the set of non-inner vertices in G

which appear in the rooted tree Ti of an inner vertex i. For each i ∈ {1, 2, . . . , K} and

for a non-inner vertex j which is at a depth > 2 in the rooted tree Ti, define ai,j as the

number of verices in VNI(i)\{j} for which j is in out-neighbourhood in G, i.e., for each

i ∈ {1, 2, . . . , K} and for each j ∈ V (Ti)\{VI ∪N+G (i)},

ai,j , |{v : v ∈ VNI(i)\{j}, j ∈ N+G (v)}|.

Also, for each i ∈ {1, 2, . . . , K} and for a non-inner vertex j not in the rooted tree Ti,

define bi,j as the number of vertices in VNI(i) for which j is in out-neighbourhood in

G,i.e., for each i ∈ {1, 2, . . . , K} and j ∈ V (G)\V (Ti),

bi,j , |{v : v ∈ VNI(i), j ∈ N+G (v)}|.

27

Page 39: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 4. Main Results 28

Claim 1. Given an IC structure G with inner vertex set VI = {1, 2, . . . , K}, bi,j ∈ {0, 1}

for each i ∈ {1, 2, . . . , K} and j ∈ V (G)\V (Ti).

Proof. Suppose, for an i ∈ {1, 2, . . . , K} and a j ∈ VNI(i), let bi,j = m, for some m > 2.

Let p and q be any two different vertices in the set {v : v ∈ VNI(i), j ∈ N+G (v)}. Then

j ∈ N+G (p) and j ∈ N+

G (q). In Ti, p and q can be predecessors of a common inner vertex

or two different inner vertices. Consider the case where p and q are predecessors of a

single inner vertex, n ∈ VI\{i}, i.e., non-inner vertices p and q are on the I-path from

inner vertex i to inner vertex n. Also let q be reached from p, i.e., in the I-path from i

to n, p is reached first and q is reached from p. Since every non-inner vertex has to be

a predecessor of atleast one inner vertex (by definition of IC structure), the non-inner

vertex j must also be a predecessor of an inner vertex. Let j be predecessor of an inner

vertex m ∈ VI\{i, n}. Since the arc from p to j does not exist in Ti but exists in G,

there exists an I-path from an inner vertex s ∈ VI\{i, n} to the inner vertex m, passing

through the non-inner vertex p and then through j and then through atleast one non-

inner vertex which is a predecessor of p in the I-path from i to n or else uniqueness of

I-path will be violated. But now, there exist two I-paths in G from s to m, one that has

a direct arc between p and j, and one in which j is reached from p through q. Hence

uniqueness of I-path is violated and as a result j cannot be a predecessor of any vertex

m ∈ VI\{i, n}. Obviously, j cannot be a predecessor of i since it forms an I-cycle at

the inner vertex i. The remaining possibility is where j is a predecessor of n which is

also not possible since there already exists a path from p to n passing through q and

not passing through j. Hence uniqueness of I-path will be violated if j is a predecessor

of the inner vertex n. This means that j cannot be predecessor of any inner vertex

implying that the considered case where p and q being the predecessors of a common

inner vertex is not possible.

The other case is where p and q are predecessors of different inner vertices. Let p be

predecessor of an inner vertex m ∈ VI\{i} and q be predecessor of an inner vertex

Page 40: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 4. Main Results 29

n ∈ VI\{i,m}. Let the set of inner vertices that are reached from the non-inner vertex j

through some path in G be VI(j). Define Sj as the set of vertices that are successors of

j and predecessors of veritces in VI(j). See Fig. 4.1. Dotted arrows indicate presence

of some vertices in the path. Since VI(j) ⊂ VI , it follows that VI(j) ⊂ V (Ti). The paths

j

VI( j )

Sj

Figure 4.1: Illustration of VI(j).

from i to some vertices in VI(j) pass through some vertices in Sj and paths from i to

remaining vertices in VI(j) will not pass through any vertex in Sj . The subset of vertices

in Sj which are also successors of the inner vertex i is denoted by Si,j . Fig. 4.2 illustrates

j

VI( j )

Si,j

i

Figure 4.2: Illustration of Si,j .

Si,j . Now, p must be in Si,j . This is inferred as follows. It is true that VI(j) ∩ VI(p) 6= φ

because there exists a path from p to j in G due to which VI(j) ⊆ VI(p). So there exists

atleast one vertex tp ∈ VI(j) ∩ VI(p), which implies that there exists a path from i to tp

Page 41: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 4. Main Results 30

through p in Ti. If p 6∈ Si,j , it results in multiple I-paths between i and tp as there exists

an edge between p to j and tp ∈ VI(j) means that there is a path from j to tp. Fig. 4.3

j

tp

VI( j )

i

p

Figure 4.3: Illustration of p 6∈ Si,j .

j

tp

VI( j )

i

p

Figure 4.4: Illustration of p 6∈ Si,j .

and Fig. 4.4 show the two possible cases when p 6∈ Si,j . For simplicity, only tp is shown

in VI(j) in Fig. 4.3, 4.4 and 4.5. It is seen that there exist two I-paths between i and tp in

those two cases. So tp ∈ Si,j which means that there exists a path from j to p. This case

is shown in Fig. 4.5. Similarly, there exists atleast one inner vertex tq ∈ VI(j) ∩ VI(q),

which implies that q ∈ Si,j and hence there exists a path from j to q. Thus there exists a

path from p to q through j in G which implies there exists an I- path from i to n through

p and q, which is a contradiction to the assumption that p and q don’t lead to the same

inner vertex. Fig. 4.6 shows the final possibility and the contradiction. Therefore, such

Page 42: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 4. Main Results 31

j tp

VI( j )

p

i

Figure 4.5: Illustration of p ∈ Si,j

.

j tp p

i q tq

m

n

Figure 4.6: Illustration of existence of a path from i to n through both p and q.

p and q cannot exist. Thus bi,j cannot take values more than 1. Hence bi,j ∈ {0, 1}.

Theorem 1. The index code obtained from Construction 1 on G is decodable using Al-

gorithm 1 if and only if the IC structure, G, satisfies the following two conditions c1 and

c2.

Condition 1 (c1). ai,j must be an odd number for each i ∈ {1, 2, . . . , K} and j ∈ VNI(i)\N+Ti(i).

Condition 2 (c2). bi,j must be zero for each i ∈ {1, 2, . . . , K} and j ∈ V (G)\V (Ti).

Proof. The proof of the if part is as follows. Let the inner vertex of interest be i and its

Page 43: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 4. Main Results 32

rooted tree be Ti. Using Algorithm 1 to decode xi, Zi is computed as

Zi = WI ⊕j:j∈VNI(i)

Wj.

In Zi, the messages corresponding to the inner vertices that are not directly connected

to i will be cancelled since each such message appears exactly twice, once in WI and

once in the index code symbol corresponding to the non-inner vertex which is the

immediate predecessor of the inner vertex in Ti. Message xj that corresponds to a non-

inner vertex j at a depth > 2 in Ti appears exactly even number of times in Zi, once in

Wj and in odd number of index code symbols corresponding to the non-inner vertices

that are in Ti as it is in out-neighbourhood of odd number of vertices in VNI(i), in G,

by hypothesis and hence it is also cancelled. Finally, message corresponding to a non-

inner vertex that is not in Ti appears zero times in Zi as it appears in zero index code

symbols corresponding to the vertices VNI(i), since, by hypothesis, a non-inner vertex

not in Ti, is in out-neighbourhood of zero vertices that are in VNI(i), in G and is, hence,

cancelled. So, Zi will be of the form

Zi = xi ⊕k:k∈N+

Ti(i)

xk

and hence xi is decodable by the user requesting xi as the user will have messages

corresponding to vertices in N+Ti)(i) as side information.

The proof of the only if part is by contradiction. Let c1 be violated and c2 be true, and

let the index code be decodable. That is, in the rooted tree Ti of an inner vertex i, a

non-inner vertex j at depth > 2 is in out-neighbourhood of even number of vertices in

VNI(i), in G i.e., ai,j is even. It is evident that xj is not cancelled in Zi because xj appears

once in Wj and in even number of index code symbols corresponding to vertices in

VNI(i)\{j}. As a result, xi is not decodable by user requesting it since xj is not available

to the user requesting xi as side information. This is a contradiction.

Page 44: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 4. Main Results 33

Now, let c1 be true and c2 be false. Let the non-inner vertex j violate c2 for a rooted

tree Ti corresponding to an inner vertex i, i.e., bi,j = 1. Then xj is not cancelled in Zi

because it appears only once in the index code symbols corresponding to the vertices

that are in VNI(i) and thus inhibiting decodability of xi for the user requesting it, since

the user does not have xj as side information. This is also a contradiction.

Page 45: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 5

Illustration of Results

In this chapter we illustrate Theorem 1 for different IC structures.

Example 6. Consider Fig. 3.2, in which the rooted tree T1 of inner vertex 1 of the 6-IC

structure, G4, is shown. Now,

VNI(1) = {7, 9, 10, 11, 12, 13, 14}.

9 is a non-inner vertex at depth 2 in T1. In G4, 9 is in out-neighbourhood of two vertices

(vertices 13 and 14) in SG4(1)\{9}. Hence, a1,9 = 2 (even number). Hence c1 is violated

by G4.

Consider Fig. 3.3, in which the rooted tree T2 of G4 is shown. Now,

VNI(2) = {10, 11, 12, 13}.

9 is a non-inner vertex which does not appear in T2. In G4, 9 appears in out-neighbourhood

of one vertex (vertex 13), in VNI(2). Hence, b2,9 = 1 because of which, c2 is violated by

G4. As a result, the index code obtained by Construction 1 on G4 was not decodable by

Algorithm 1, as shown in Ex. 4.

Ex. 7, Ex. 8 and Ex. 9 illustrate the conditions c1 and c2 for the IC structures used in

34

Page 46: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 5. Illustration of Results 35

Rooted tree, Ti VNI(i) j ∈ V (G)\V (Ti) bi,j

T1 {5, 6} {4} 0T2 {4, 6} {5} 0T3 {4, 5} {6} 0

Table 5.1: Table that illustrates c2 for G1.

Rooted tree, Ti VNI j ∈ V (G2)\V (Ti) bi,j

T1 {5} {6} 0T2 {6} {5} 0T3 φ {5, 6} −T4 φ {5, 6} −

Table 5.2: Table that illustrates c2 for G2.

[1]. i.e, for IC structures in Ex. 1, Ex. 2 and Ex. 3 respectively.

Example 7. Conditions c1 and c2 are illustrated for G1 as follows. The rooted trees T1,

T2 and T3 have no non-inner vertices at depth > 2 and hence c1 need not be verified.

From Table 5.1, it is clear that bi,j = 0 for each i ∈ {1, 2, 3} and j ∈ V (G)\V (Ti). It is

thus verified that c1 and c2 are satisfied by G1.

Example 8. Conditions c1 and c2 are illustrated for G2 as follows. The rooted trees T1,

T2, T3 and T4 have no non-inner vertices at depth > 2 and hence c1 need not be verified.

Verification of c2 is done using Table 5.2. It is thus verified that c1 and c2 are satisfied

by G2.

Rooted tree, Ti VNI(i) j ∈ V (Ti)\{VI ∪N+Ti(i)} ai,j

T1 {6, 7, 8} {8} 1T2 φ φ −T3 {7, 8, 10} {7} 1T4 {9, 10} {10} 1T5 {9, 10} {10} 1

Table 5.3: Table that illustrates c1 for G3.

Example 9. Conditions c1 and c2 are illustrated for G3 in Table 5.3 and Table 5.4, respec-

tively. As a result, Algorithm 1 can be used to decode an index code obtained by using

Construction 1 on the IC structure G3.

Page 47: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 5. Illustration of Results 36

Rooted tree, Ti VNI(i) j ∈ V (G3)\V(Ti) bi,j

T1 {6, 7, 8} {9, 10} 0, 0T2 φ {6, 7, 8, 9, 10} −T3 {7, 8, 10} {6, 9} 0, 0T4 {9, 10} {6, 7, 8} 0, 0, 0T5 {9, 10} {6, 7, 8} 0, 0, 0

Table 5.4: Table that illustrates c2 for G3.

The following examples illustrate Theorem 1 for some more IC structures.

Example 10. Consider G6, a side information graph which is a 6-IC structure, shown in

Fig. 5.1. G6 is a 6-IC structure with inner vertex set VI = {1, 2, 3, 4, 5, 6} because

1

2

3

4

5

6

7

8

9

11

10

Figure 5.1: 6-IC structure G6 with VI = {1, 2, 3, 4, 5, 6}.

1. there are no cycles with only one vertex from the set {1, 2, 3, 4, 5, 6} in G6 (i.e., no

I-cycles),

2. using the rooted trees for each vertex in the set, {1, 2, 3, 4, 5, 6}, which are given

in Fig. 5.2, 5.3, 5.4, 5.5, 5.6 and 5.7, respectively, it is verified that there exists a

Page 48: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 5. Illustration of Results 37

1

2

3

4

5

6

7

8

9

Figure 5.2: Rooted tree for inner vertex 1 of IC-structure G6.

1

2

3

4

5

6

11

10

Figure 5.3: Rooted tree for inner vertex 2 of IC-structure G6.

unique path between any two different vertices in VI in G6 and does not contain

any other vertex in VI (i.e., unique I-path between any pair of inner vertices),

3. G6 is the union of all the 6 rooted trees.

Verification of c1 and c2. From Table 5.5 and Table 5.6, it is observed that c1 and c2 are

satisfied by G6. As a result, Algorithm 1 can be used to decode an index code obtained

by using Construction 1 on the IC structure G6.

Page 49: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 5. Illustration of Results 38

1

2

3

4

5

6

8

9

11

10

Figure 5.4: Rooted tree for inner vertex 3 of IC-structure G6.

1

2

3

4

5

6

11

10

Figure 5.5: Rooted tree for inner vertex 4 of IC-structure G6.

1

2

3

4

5

6

11

10

Figure 5.6: Rooted tree for inner vertex 5 of IC-structure G6.

Page 50: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 5. Illustration of Results 39

1

2

3

4

5

6

Figure 5.7: Rooted tree for inner vertex 6 of IC-structure G6.

Rooted tree, Ti VNI(i) j ∈ V (Ti)\{VI ∪N+Ti(i)} ai,j

T1 {7, 8, 9} {9} 1T2 {10, 11} {10} 1T3 {8, 9, 10, 11} {8, 11} 1,1T4 {10, 11} {11} 1T5 {10, 11} {11} 1T6 φ φ −

Table 5.5: Table that verifies c1 for G6.

The index code obtained is

WI = x1 ⊕ x2 ⊕ x3 ⊕ x4 ⊕ x5 ⊕ x6

W7 = x7 ⊕ x3

W8 = x8 ⊕ x4 ⊕ x9

W9 = x9 ⊕ x5 ⊕ x8

W10 = x10 ⊕ x6 ⊕ x11

W11 = x11 ⊕ x1 ⊕ x10.

Messages x7, x8, x9, x10 and x11 are decoded directly using W7, W8, W9, W10 and W11

respectively. The computation of Zi, for i = 1, 2, . . . , 6 using Algorithm 1 is shown in

Table 5.7 and the decoding of messages x1, x2, x3, x4, x5 and x6 is shown in Table 5.8.

Thus, Algorithm 1 is used to decode the index code constructed using Construction1 on

Page 51: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 5. Illustration of Results 40

Rooted tree, Ti VNI(i) j ∈ V (G6)\V (Ti) bi,j

T1 {7, 8, 9} {10, 11} 0, 0T2 {10, 11} {7, 8, 9} 0, 0, 0T3 {8, 9, 10, 11} {7} 0T4 {10, 11} {7, 8, 9} 0, 0, 0T5 {10, 11} {7, 8, 9} 0, 0, 0T6 φ {7, 8, 9, 10, 11} −

Table 5.6: Table that verifies c2 for G6.

Message xi Computaion of Zi

x1 WI ⊕W7 ⊕W8 ⊕W9

x2 WI ⊕W10 ⊕W11

x3 WI ⊕W8 ⊕W9 ⊕W10 ⊕W11

x4 WI ⊕W10 ⊕W11

x5 WI ⊕W10 ⊕W11

x6 WI

Table 5.7: Table that shows the working of Algorithm 1 on index code obtained fromConstruction 1 on G6.

G6.

Example 11. Consider G7, a side information graph which is a 6-IC structure, shown in

Fig. 5.8. G7 is a 6-IC structure with inner vertex set VI = {1, 2, 3, 4, 5, 6} because

1. there are no cycles with only one vertex from the set {1, 2, 3, 4, 5, 6} in G7 (i.e., no

I-cycles),

2. using the rooted trees for each vertex in the set, {1, 2, 3, 4, 5, 6}, which are given in

Fig. 5.9, 5.10, 5.11, 5.12, 5.13 and 5.14, respectively, it is verified that there exists a

unique path between any two different vertices in VI in G7 and does not contain

any other vertex in VI (i.e., unique I-path between any pair of inner vertices),

3. G7 is the union of all the 6 rooted trees.

Verification of c1 and c2. From Table 5.9 and Table 5.10, it is observed that c1 and c2 are

satisfied by G7. As a result, Algorithm 1 can be used to decode an index code obtained

by using Construction 1 on the IC structure G7.

Page 52: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 5. Illustration of Results 41

Message xi Zi N+G6(i)

x1 x1 ⊕ x2 ⊕ x6 ⊕ x7 ⊕ x8 x2, x6, x7, x8x2 x2 ⊕ x3 ⊕ x4 ⊕ x5 ⊕ x11 x3, x4, x5, x11x3 x3 ⊕ x2 ⊕ x9 ⊕ x10 x2, x9, x10x4 x4 ⊕ x2 ⊕ x3 ⊕ x5 ⊕ x10 x2, x3, x5, x10x5 x5 ⊕ x2 ⊕ x3 ⊕ x4 ⊕ x10 x2, x3, x4, x10x6 x1 ⊕ x2 ⊕ x3 ⊕ x4 ⊕ x5 ⊕ x6 x1, x2, x3, x4, x5

Table 5.8: Table that shows decoding of messages using Algorithm 1 on index codeobtained from Construction 1 on G6.

Rooted tree, Ti VNI(i) j ∈ V (Ti)\{VI ∪N+Ti(i)} ai,j

T1 {8, 9, 10, 11} {9, 11} 1, 1T2 {7, 8, 9, 12} {8, 12} 1, 1T3 {10, 11} {10} 1T4 {7, 12} {7} 1T5 {7, 12} {7} 1T6 φ φ −

Table 5.9: Table that verifies c1 for G7.

The index code obtained is

WI = x1 ⊕ x2 ⊕ x3 ⊕ x4 ⊕ x5 ⊕ x6

W7 = x7 ⊕ x1 ⊕ x12

W8 = x8 ⊕ x3 ⊕ x9

W9 = x9 ⊕ x4 ⊕ x8

W10 = x10 ⊕ x5 ⊕ x11

W11 = x11 ⊕ x6 ⊕ x10

W12 = x12 ⊕ x6 ⊕ x7.

Messages x7, x8, x9, x10, x11 and x12 are decoded directly using W7, W8, W9, W10, W11

and W12 respectively. The computation of Zi, for i = 1, 2, . . . , 6 using Algorithm 1 is

shown in Table 5.11 and the decoding of messages x1, x2, x3, x4, x5 and x6 is shown

in Table 5.12. Thus, Algorithm 1 is used to decode the index code constructed using

Page 53: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 5. Illustration of Results 42

1

2

3

4

5

6

8

11

10

7

12

9

Figure 5.8: 6-IC structure G7 with VI = {1, 2, 3, 4, 5, 6}.

Rooted tree, Ti VNI(i) j ∈ V (G7)\V (Ti) bi,j

T1 {8, 9, 10, 11} {7, 12} 0, 0T2 {7, 8, 9, 12} {10, 11} 0, 0T3 {10, 11} {7, 8, 9, 12} 0, 0, 0, 0T4 {7, 12} {8, 9, 10, 11} 0, 0, 0, 0T5 {7, 12} {8, 9, 10, 11} 0, 0, 0, 0T6 φ {7, 8, 9, 10, 11, 12} −

Table 5.10: Table that verifies c2 for G7.

Construction1 on G7.

Ex. 10 and Ex. 11 show examples of IC structures that have two and three cycles

of only non-inner vertices, respectively. These IC structures satisfied the conditions c1

and c2. It can also be observed that Lemma 1, Lemma 2, and Lemma 3 are satisfied by

the IC structures G6 and G7. It then raises a question if this is always the case, i.e., if

an IC structure satisfies c1 and c2, does it mean that Lemma 1, Lemma 2, and Lemma 3

are satisfied by that IC structure? It turns out that it is not always the case. This is

illustrated in the following example.

Page 54: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 5. Illustration of Results 43

1

2

3

4

5

6

8

11

10

9

Figure 5.9: Rooted tree for inner vertex 1 of IC-structure G7.

1

2

3

4

5

6

8 7

12

9

Figure 5.10: Rooted tree for inner vertex 2 of IC-structure G7.

1

2

3

4

5

6

11

10

Figure 5.11: Rooted tree for inner vertex 3 of IC-structure G7.

Page 55: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 5. Illustration of Results 44

1

2

3

4

5

6

7

12

Figure 5.12: Rooted tree for inner vertex 4 of IC-structure G7.

1

2

3

4

5

6

7

12

Figure 5.13: Rooted tree for inner vertex 5 of IC-structure G7.

1

2

3

4

5

6

Figure 5.14: Rooted tree for inner vertex 6 of IC-structure G7.

Page 56: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 5. Illustration of Results 45

Message xi Computaion of Zi

x1 WI ⊕W8 ⊕W9 ⊕W10 ⊕W11

x2 WI ⊕W7 ⊕W8 ⊕W9 ⊕W12

x3 WI ⊕W10 ⊕W11

x4 WI ⊕W7 ⊕W12

x5 WI ⊕W7 ⊕W12

x6 WI

Table 5.11: Table that shows the working of Algorithm 1 on index code obtained fromConstruction 1 on G7.

Message xi Zi N+G7(i)

x1 x1 ⊕ x2 ⊕ x8 ⊕ x10 x2, x8, x10x2 x2 ⊕ x5 ⊕ x7 ⊕ x9 x5, x7, x9x3 x3 ⊕ x1 ⊕ x2 ⊕ x4 ⊕ x11 x1, x2, x4, x11x4 x4 ⊕ x2 ⊕ x3 ⊕ x5 ⊕ x12 x2, x3, x5, x12x5 x5 ⊕ x2 ⊕ x3 ⊕ x4 ⊕ x12 x2, x3, x4, x12x6 x1 ⊕ x2 ⊕ x3 ⊕ x4 ⊕ x5 ⊕ x6 x1, x2, x3, x4, x5

Table 5.12: Table that shows the decoding of messages using Algorithm 1 on index codeobtained from Construction 1 on G7.

Example 12. Consider G8, a side information graph which is a 5-IC structure, shown in

Fig. 5.15. G8 is a 5-IC structure with inner vertex set VI = {1, 2, 3, 4, 5} because

1. there are no cycles with only one vertex from the set{1, 2, 3, 4, 5} in G8 (i.e., no

I-cycles),

2. using the rooted trees for each vertex in the set, {1, 2, 3, 4, 5}, which are given in

Fig. 5.16, 5.17, 5.18, 5.19 and 5.20, respectively, it is verified that there exists a

unique path between any two different vertices in VI in G8 and does not contain

any other vertex in VI (i.e., unique I-path between any pair of inner vertices),

3. G8 is the union of all the 5 rooted trees.

Verification of c1 and c2. From Table 5.13 and Table 5.14, it is observed that c1 and c2 are

satisfied by G8. As a result, Algorithm 1 can be used to decode an index code obtained

by using Construction 1 on the IC structure G8.

Page 57: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 5. Illustration of Results 46

1 2 3 4 5

6

8

7

10 9

Figure 5.15: 5-IC structure G8 with VI = {1, 2, 3, 4, 5}.

Rooted tree, Ti VNI(i) j ∈ V (Ti)\{VI ∪N+Ti(i)} ai,j

T1 {6, 7, 8} {7, 8} 1, 1T2 {6, 7, 8} {6, 7} 1, 1T3 {φ} {φ} −T4 {9, 10} {9} 1T5 {9, 10} {10} 1

Table 5.13: Table that verifies c1 for G8.

The index code obtained is

WI = x1 ⊕ x2 ⊕ x3 ⊕ x4 ⊕ x5

W6 = x6 ⊕ x3 ⊕ x7

W7 = x7 ⊕ x8 ⊕ x4

W8 = x8 ⊕ x5 ⊕ x6

W9 = x9 ⊕ x1 ⊕ x2 ⊕ x10

W10 = x10 ⊕ x3 ⊕ x9.

Page 58: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 5. Illustration of Results 47

1 2 3 4 5

6

8

7

Figure 5.16: Rooted tree for inner vertex 1 of IC-structure G8.

1 2 3 4 5

6

8

7

Figure 5.17: Rooted tree for inner vertex 2 of IC-structure G8.

1 2 3 4 5

Figure 5.18: Rooted tree for inner vertex 3 of IC-structure G8.

Page 59: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 5. Illustration of Results 48

1 2 3 4 5

10 9

Figure 5.19: Rooted tree for inner vertex 4 of IC-structure G8.

1 2 3 4 5

10 9

Figure 5.20: Rooted tree for inner vertex 5 of IC-structure G8.

Page 60: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 5. Illustration of Results 49

Rooted tree, Ti VNI(i) j ∈ V (G8)\V (Ti) bi,j

T1 {6, 7, 8} {9, 10} 0, 0T2 {6, 7, 8} {9, 10} 0, 0T3 {φ} {6, 7, 8, 9, 10} −T4 {9, 10} {6, 7, 8} 0, 0, 0T5 {9, 10} {6, 7, 8} 0, 0, 0

Table 5.14: Table that verifies c2 for G8.

Messages x6, x7, x8, x9 and x10 are decoded directly using W6, W7, W8, W9 and W10

respectively. The computation of Zi, for i = 1, 2, . . . , 5 using Algorithm 1 is shown in

Table 5.15 and the decoding of messages x1, x2, x3, x4 and x5 is shown in Table 5.16.

Thus, Algorithm 1 is used to decode the index code constructed using Construction1 on

Message xi Computaion of Zi

x1 WI ⊕W6 ⊕W7 ⊕W8

x2 WI ⊕W6 ⊕W7 ⊕W8

x3 WI

x4 WI ⊕W9 ⊕W10

x5 WI ⊕W9 ⊕W10

Table 5.15: Table that shows the working of Algorithm 1 on index code obtained fromConstruction 1 on G8.

Message xi Zi N+G8(i)

x1 x1 ⊕ x2 x2, x6x2 x2 ⊕ x1 x1, x8x3 x3 ⊕ x1 ⊕ x2 ⊕ x4 ⊕ x5 x1, x2, x4, x5x4 x4 ⊕ x5 x5, x10x5 x5 ⊕ x4 x4, x10

Table 5.16: Table that shows the decoding of messages using Algorithm 1 on index codeobtained from Construction 1 on G8.

G8.

It is seen that in Ex. 12, Lemma 2 is not true for the non-inner vertex 8 when the rooted

trees of the inner vertices 1 and 2 are considered and as a result, Lemma 3 is also not

true for the non-inner vertex 8 in G8.

Page 61: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 6

Conclusion

6.1 Summary of the results

The results obtained in this report are summerised as follows.

• Examples of IC structures for which index code obtained by Construction 1 is not

decodable using Algorithm 1 are presented.

• A property of non-inner vertices that do not appear in some rooted trees is found

and is presented as Claim 1.

• A set of necessary and sufficient conditions (c1 and c2) on the given IC structure

for the index code obtained by using Construction 1 on the given IC structure to

be decodable using Algorithm 1 are presented in Theorem 1.

• Lemma 2 and Lemma 3 which are assumed to be true for all IC structures in [1] are

shown to be not true for all IC structures.

• It is also found that an IC structure satisfying c1 and c2 need not satisfy Lemma 1

and Lemma 2.

50

Page 62: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 6. Conclusion 51

6.2 Scope for further work

• In [1], Algorithm 1 is presented as a proof that index code obtained by using Con-

struction 1 on a given IC structure is a valid index code. But Algorithm 1 is valid

only for a class of IC structures. Hence the validity of index code obtained by

Construction 1 is an open problem.

• It is an open problem to find if there exist IC structures for which Construction

1 works, with some other decoding algorithms (i.e., not necessarily Algortihm 1)

and classifying them.

• It is an open problem to find if there exist IC structures for which Construction 1

fails to give a valid index code, i.e., if there exists some user which cannot de-

code its required message using any linear combination of the index code words

obtained by Construction 1 and classifying them.

• In [1], ICC scheme is claimed to be optimal for some classes of IC structures. But

the proof of optimality assumes that the Construction 1 - Algorithm 1 pair to be

valid for those classes of IC structures. Verifying the validity of Construction 1 -

Algorithm 1 pair for those classes of IC structures is a further line of work that

settles the optimality of ICC scheme for those IC structures.

• In [8], it is found that ICC scheme is not valid for a class of IC structures. Finding

the classes of IC structures for which ICC scheme is valid and optimum, for which

it is not valid, for which it is valid but not optimum are further problems that are

open.

• It is an open problem to find if the valid index codes obtained by using Construc-

tion 1 are optimum.

• Finding error correcting index codes for IC structures is an interesting line of

work [9].

Page 63: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Part II

Work done after 30th January 2018

52

Page 64: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 7

Introduction

7.1 Corrections in literature

A correction is made to the definition of IC structures in [10] as follows. (The entire

correction is presented in the appendix)

Definition 2 (IC Structure [10]). A side information graph G is called a K-IC structure

with inner vertex set VI ⊆ V (G), such that |VI | = K if G satisfies the following four

conditions.

1. There is no I-Cycle in G, where I-Cycle is defined as a cycle which contains only

one inner vertex.

2. There is a unique I-Path between any two different inner vertices in G, where an

I-path is defined as a path from one inner vertex to another inner vertex without

passing through any other inner vertex. As a result, K rooted trees can be drawn

where each rooted tree is rooted at an inner vertex and has the remaining inner

vertices as the leaves. (This is referred to as unique I-path rule).

3. G is the union of the K rooted trees.

53

Page 65: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 7. Introduction 54

4. There are no cycles in G containing only non-inner vertices (called as outer cy-

cles), i.e., there are no outer cycles.

The set of vertices V (G)\VI is called the set of non-inner vertices, denoted by VNI . Let

VNI(i) be the set of non-inner vertices that are present in the rooted tree Ti of the inner

vertex i.

Side-information graphs which satisfy only the first three conditions of Definition 2

are referred to as IC structures with outer cycles. In this view, [8] is the first work

which explores construction of index codes for IC structures with outer cycles. In [8],

optimal index code construction and decoding algorithm for one class of IC structures

with outer cycles is given. Optimality of the index code is proved using a lower bound

which is referred to as MIAS bound. Given a directed graph G, the induced acyclic sub-

graph obtained by removing minimum number of vertices is called Maximum Induced

Acyclic Subgraph (MIAS) of G. Let MIAS(G) denote the number of vertices in MIAS of

G. It has been shown in [5] that MIAS(G) lower bounds the optimal length of the index

coding problem described by G. That is, if nopt(G) is the optimum length of index code

for the index coding problem described by G, then

nopt(G) ≥MIAS(G) (7.1)

Then, finding an index code whose length is lower bound to MIAS(G) results in the

index code being optimal.

7.2 Our Contribution

Our contribution is summarised as follows.

• A property of intersecting outer cycles is found and is presented as Theorem 2.

Page 66: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 7. Introduction 55

• Index code construction (presented as Construction 2 in this report) for any IC

structure with outer cycles is presented along with a decoding algorithm (pre-

sented as Algorithm 2 in this report).

• Two classes of IC structures with outer cycles for which the proposed index code

construction is optimal are presented in Theorems 5 and 6, respectively.

• Optimum error correcting index code construction is presented for these two

classes of IC structures with outer cycles in Theorem 7.

Page 67: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 8

Main Results

Now, some definitions are given before Construction 2 and Algorithm 2 are presented.

8.1 Definitions

Definition 3 (An outer-cycle group). Consider a vertex j which is present in at least

two outer cycles. The subgraph which is formed by the union of all outer cycles which

contain j is called the outer-cycle group of j.

Example. Consider Fig. 8.1. Let the cycles of this figure be all the outer cycles in an IC

structure G (there are no other outer cycles in G). Vertices 2 and 3 are present in at least two

outer cycles. The outer-cycle group of vertex 2 is as shown in Fig. 8.1. The outer-cycle group

of vertex 3 is shown in Fig. 8.2.

Definition 4 (A maximal outer-cycle group (MOCG) and its central cycle vertex (CCV)).

Consider a non-inner vertex j which is present in at least two outer cycles. If the outer-

cycle group of j is not a subgraph of outer-cycle group of any other non-inner vertex,

then the outer-cycle group of j is called a maximal outer-cycle group (MOCG) and the

vertex j is called the central cycle vertex (CCV) corresponding to that MOCG. In the

56

Page 68: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 8. Main Results 57

1

2

3

4

6

5

7

8

9

Figure 8.1: Figure showing outer-cycle group of vertex 2

1

2

3

4

6

5

7

8

Figure 8.2: Figure showing outer-cycle group of vertex 3

Page 69: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 8. Main Results 58

case where more than one non-inner vertices have same outer-cycle group and if that

outer-cycle group is not subgraph of any other outer-cycle group, then the outer-cycle

group is also called an MOCG and its CCV is the vertex with highest in-degree in the

MOCG.

Example. From Fig. 8.1 and 8.2, it can be seen that the outer-cycle group of vertex 3 is not an

MOCG because it is subgraph of outer-cycle group of vertex 2. Since the outer-cycle group of

vertex 2 is not a subgraph of any other outer-cycle group, Fig. 8.1 is an MOCG with CCV 2.

Definition 5 (Pre-central cycle vertex set of a CCV). Consider an MOCG. Let the MOCG

be union of n ≥ 2 outer cycles. Let the CCV of the MOCG be j. The set of n vertices

of the MOCG which have j in their out-neighborhood is called the pre-central cycle

vertex set of j and the n vertices are called pre-central cycle vertices of j.

Example. Consider the MOCG shown in Fig. 8.1. The CCV of that MOCG is 2. It can be

seen that the MOCG is union of 3 outer cycles and the pre-central cycle vertex set is {1, 8, 9}.

Definition 6 (Isolated and Non-Isolated MOCGs). If the outer cycles present in an

MOCG are not present in any other MOCG, then the MOCG is called an isolated

MOCG. Else, the considered MOCG is called a non-isolated MOCG.

Example. Consider Fig. 8.3. Let the cycles be outer cycles in an IC structure G ′. (It is assumed

that there are no other outer cycles in G ′). Vertices 2, 5 and 6 are present in at least two outer

cycles. The outer-cycle group of vertex 2 is shown in Fig. 8.4 and the outer-cycle groups of

vertices 5 and 6 are both the same and are as shown in Fig. 8.5. Since, one outer-cycle group

is not subgraph of the other outer-cycle group, there are two MOCGs, one with CCV 2 and one

with CCV 6, in Fig. 8.3. The MOCG with CCV 2 is as shown in Fig. 8.4 and the MOCG with

CCV 6 is as shown in Fig. 8.5 (CCV is 6 because 6 has an in-degree of 2 and 5 has an in-degree

of 1 in the MOCG). It can be observed that the outer cycle with vertex set {1, 2, 3, 4, 5, 6} is

common to both the MOCGs. Hence the two MOCGs, one with CCV 2 and one with CCV 6,

are non-isolated MOCGs.

Page 70: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 8. Main Results 59

1

2

3

4

5

6 7

8

9

Figure 8.3: Figure illustrating two non-isolated MOCGs.

1

2

3

4

5

6

9

Figure 8.4: outer-cycle group of vertex 2.

Page 71: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 8. Main Results 60

1

2

3

4

5

6 7

8

Figure 8.5: outer-cycle group of vertices 5 and 6.

8.2 Properties of Intersecting Outer cycles

Now, three Lemmas and a Theorem are proved using which it shall be shown that an

MOCG will have a unique CCV. The setting is as follows. Let in an IC structure with

outer cycles G, c1 and c2 be two outer cycles which have m ≥ 2 vertices in common

(the case of m = 1 corresponds to the case where there is only one vertex in common to

both the cycles). Let V (c1) and V (c2) denote the sets of vertices in c1 and c2 respectively

and Vcm = V (c1) ∩ V (c2). Let G ′ be the subgraph of G containing the vertices in the

set V (c1) ∪ V (c2) and all the edges present in G that connect any two vertices in the set

V (c1) ∪ V (c2).

Lemma 4. Let v, v1 and v2 be three vertices in an outer cycle in G, such that v2 is reached

from v through v1. An edge from v to v2 cannot exist in G.

Proof. It is proved by contradiction. Suppose that there exists an edge from v to v2 in G.

See Fig 8.6. This means that there exists at least one rooted tree in which the edge from

v to v2 is present (since every edge in G is present in at least one rooted tree). Let v′ be

the inner vertex in whose rooted tree, Tv′ , the edge from v to v2 is present. The set of

Page 72: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 8. Main Results 61

v v2

v1

Figure 8.6

v’

v

v2

x

v1

Figure 8.7

Page 73: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 8. Main Results 62

v’ v1

v2

v

Figure 8.8

vertices in that path are denoted by Vp(v1 → v2). In Tv, there are only two possibilities

listed below.

• The path from v′ to v contains at least one vertex present in Vp(v1 → v2). See Fig.

8.7. Let a vertex x ∈ Vp(v1 → v2) be present in the path from v′ to v. Then there

exist two paths from x to v2, one passing through v (as in Tv′) and other without

passing through v, by definition of x. This results in multiple I-paths between v′

and an inner vertex which is a successor of v2, which is violation of unique I-path

rule.

• The path from v′ to v does not contain any vertex present in Vp(v1 → v2). See

Fig. 8.8. Then, there exist two paths from v to v2, one is a direct edge from v to

v2 and the other is path from v to v2 through v1. This results in multiple I-paths

between v′ and an inner vertex which is a successor of v2, which is violation of

unique I-path rule.

In other words Lemma 4 claims that an edge cannot exist between two vertices of an

Page 74: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 8. Main Results 63

outer cycle, which already have another path between them.

Lemma 5. There exists only one vertex in Vcm whose in-neighbourhood in G ′ consists

of only one vertex in the set V (c1)\Vcm and only one vertex in the set V (c2)\Vcm.

Proof. The proof is done in three steps.

• (Step 1) There does not exist a vertex in Vcm whose in-neighbourhood in G ′ con-

sists of at least two vertices both from the set V (ci)\Vcm for i = 1 or i = 2 because

if there exists a vertex v in Vcm such that the in-neighbourhood of v in G ′ consists

of two vertices v1, v2 ∈ V (ci)\Vcm for i = 1 or i = 2, it violates Lemma 4. See Fig.

8.9

• (Step 2) There does not exist a vertex V (ci)\Vcm, for i = 1 or i = 2, which is in

the in-neighbourhood in G ′ of at least two vertices from the set Vcm because if

there exists a vertex v ∈ V (ci)\Vcm which has two vertices v1, v2 ∈ Vcm in its

out-neighbourhood in G ′, it violates Lemma 4. See Fig. 8.10.

• (Step 3) Now let Lemma 5 be not true. This means that there are at least two

vertices vi, vj ∈ Vcm and two vertices v1, v2 ∈ V (cl)\Vcm (for l = 1 or l = 2),

such that vi is in the out-neighbourhood of v1 and vj is in the out-neighbourhood

of v2, in G ′. Also, it can be assumed, without loss of generality, that there are paths

from vi to vj and from v2 to v1, by definition of the vertices. Now there are two

possible sub-cases.

– (Sub-case 1) Path from v2 to v1 does not contain either vi or vj . See Fig. 8.11.

When the vertices v2, vi and vj are considered, it can be seen that Lemma 4 is

violated, which is not allowed in an IC structure with outer cycles.

– (Sub-case 2) Path from v2 to v1 contains either only vi or only vj . See Fig.

8.12. In such cases, there will exist two paths from vi to vj which results in

multiple I-paths between an inner vertex which is a predecessor of vi and an

Page 75: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 8. Main Results 64

v

v1

v2

Figure 8.9

inner vertex which is a successor of vj which is not allowed in an IC structure

with outer cycles.

So Lemma 5 is true.

Lemma 6. There exists only one vertex in Vcm whose out-neighbourhood in G ′ consists

of only one vertex in the set V (c1)\Vcm and only one vertex in the set V (c2)\Vcm.

Proof. The proof is done in three steps.

• (step 1) There does not exist a vertex in Vcm whose out-neighbourhood in G ′ con-

sists of at least two vertices both from V (ci)\Vcm, for i = 1 or i = 2 because if there

exists a vertex v ∈ Vcm and two vertices v1, v2 ∈ V (ci)\Vcm (for i = 1 or i = 2),

such that v1 and v2 are in the out-neighbourhood of v in G ′, it violates Lemma 4.

See Fig. 8.13.

• (step 2) There does not exist a vertex in V (ci)\Vcm, for i = 1 or i = 2, which is in

the out-neighbourhood of at least two vertices in Vcm in G ′ because if there exists

Page 76: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 8. Main Results 65

v1

v

v2

Figure 8.10

vi

v1

v2

vj

Figure 8.11

Page 77: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 8. Main Results 66

vi

v1

vj

v2

Figure 8.12

a vertex v ∈ V (ci)\Vcm (for i = 1 or i = 2) and two vertices v1, v2 ∈ Vcm, such

that v1 and v2 are in the out-neighbourhood of v in G ′, it violates Lemma 4. See

Fig. 8.14.

• (step 3) Now let Lemma 6 be not true. This means that there are at least two

vertices vi, vj ∈ Vcm and two vertices v1, v2 ∈ V (cl)\Vcm (for l = 1 or l = 2)

such that v1 is in the out-neighbourhood of vi and v2 is in the out-neighbourhood

of vj in G ′. Also, it can be assumed, without loss of generality, that there are paths

from vi to vj and from v2 to v1 in G ′, by definition of the vertices. Now there are

two possible subcases.

– (subcase 1) Path from v2 to v1 does not contain either vi or vj . See Fig. 8.15.

When the vertices vi, v2 and v1 are considered, Lemma 4 is violated, which is

not allowed in an IC structure with outer cycles.

– (subcase 2) Path from v2 to v1 contains either only vi or only vj . See Fig.

8.16. In such cases, there will exist two paths from vi to vj which results in

Page 78: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 8. Main Results 67

v1

v2

v

Figure 8.13

multiple I-paths between an inner vertex which is a predecessor of vi and an

inner vertex which is a successor of vj which is not allowed in an IC structure

with outer cycles.

So, Lemma 6 is true.

Theorem 2. G ′ is union of two cycles which have only a single path or only a single

vertex in common to both the cycles.

Remark: Theorem 2 is stated as a property of IC structures with outer cycles in [12].

The following proof shows that this property always holds in an IC structure with

outer cycles.

Proof. Let the unique vertex mentioned in Lemma 5 be va and that mentioned in Lemma

6 be vb. (Note that it is considered that there are m ≥ 2 common vertices).

Claim 2. va and vb are two different vertices.

Page 79: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 8. Main Results 68

v1

v

v2

Figure 8.14

vi

vj

v2

v1

Figure 8.15

Page 80: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 8. Main Results 69

vj

v2

vi

v1

Figure 8.16

va

vb

v1

v2

Figure 8.17

Page 81: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 8. Main Results 70

va

v1

vb

v2

Figure 8.18

va

vb

v1

Figure 8.19

Page 82: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 8. Main Results 71

va

vb

Figure 8.20

Proof. Suppose not. This means that there is a unique vertex v ∈ Vcm whose in-

neighbourhood and out-neighbourhood in G ′ consists of only one vertex in the set

V (c1)\Vcm and only one vertex from the set V (c2)\Vcm. Since m ≥ 2, there exists an-

other vertex v1 ∈ Vcm which is in the in-neighbourhood (or out-neighbourhood) of a

vertex in V (ci)\Vcm for i = 1 or i = 2, which violates Lemma 5 (or Lemma 6). So, va and

vb are two different vertices.

Consider the following cases.

• There is at least one vertex in the set V (ci)\Vcm which is in the out/in-neighbourhood

of at least two other vertices in the set V (ci)\Vcm (for i = 1 or i = 2). See Fig. 8.17.

• There is at least one vertex in the set Vcm is in the out-neighbourhood of at least

two other vertices in Vcm. See Fig. 8.18

• va is in the out-neighbourhood of any other vertex in Vcm. See Fig. 8.19.

• vb is in the in-neighbourhood of any other vertex in Vcm. See Fig. 8.20.

Page 83: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 8. Main Results 72

All these cases are not allowed in an IC structure with outer cycles as Lemma 4 will be

violated in all these cases. Hence, it follows that the vertices in Vcm form a single path,

from va to vb, in G ′.

Lemma 5 and Lemma 6 imply that the vertices in the set V (c1) ∪ V (c2) do not form any

other structure among themselves except that of two cycles which have a single path

or a single vertex in common.

Any structure other than that of two cycles which have only a single vertex or only

a single path in common, formed by the vertices in the set V (c1) ∪ V (c2) will violate

Lemma 4 or Lemma 5 or Lemma 6 and hence will not exist in an IC structure with outer

cycles.

Theorem 3. An MOCG will have a unique CCV.

Proof. MOCGs can be categorized into two types. MOCG which is an outer-cycle

group of a unique non-inner vertex and MOCG which is an outer-cycle group of more

than one non-inner vertices. In the former case CCV is unique. In the latter case, con-

sider that an MOCG G is union of n ≥ 2 outer cycles and let m ≥ 2 non-inner vertices

have G as their outer-cycle group. This means that those m vertices are common to all

the n outer cycles. It follows from Theorem 2 that all the n outer cycles have a single

path in common. Let the vertex va be the vertex present at the beginning of the path.

Hence, va will have an in-degree of n in the MOCG and all the other vertices in the

MOCG will have an in-degree of 1. Note that, excpet for va, there cannot be any other

vertex in the MOCG which has an in-degree of n. So, va will be the unique CCV.

8.3 Construction 2 and Algorithm 2

Construction 2. Given VI = {1, 2, . . . , K} and VNI = {K + 1, K + 2, . . . , N}.

1. An index code symbol WI obtained by XOR of messages corresponding to inner

Page 84: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 8. Main Results 73

vertices is transmitted, where

WI =K⊕i=1

xi.

2. For non-inner vertices not in any outer cycle, an index code symbol correspond-

ing to each such non-inner vertex, obtained by XOR of message corresponding

to the non-inner vertex with the messages corresponding to the vertices in the

out-neighborhood excluding non-inner vertices that are part of outer cycles of

the non-inner vertex is transmitted, i.e., for j ∈ VNI\VOC ,

Wj = xj⊕

q∈N+G (j)\VOC

xq.

3. Consider the isolated MOCGs and non-isolated MOCGs which are union of even

number of outer cycles. For each such MOCG

• Let the CCV of the MOCG be j1 and let j be an arbitrary element in pre-

central cycle vertex set of j1.

• For the vertex j, Wj is transmitted, where

Wj = xj⊕

q∈{N+G (j)\VOC}∪{N+

C (j)\{j1}}

xq.

4. Consider the non-isolated MOCGs which are union of odd number of outer cy-

cles. For each such MOCG

• Let the CCV of the MOCGs be j1.

• Let PV (j1) be the set of two arbitrary elements in pre-central cycle vertex set

of j1.

• For each j ∈ PV (j1), Wj is transmitted, where

Wj = xj⊕

q∈{N+G (j)\VOC}∪{N+

C (j)\{j1}}

xq.

Page 85: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 8. Main Results 74

5. For all other non-inner vertices j, Wj is transmitted, where

Wj = xj⊕

q∈{N+G (j)\VOC}∪N+

C (j)

xq.

Since an index code symbol is transmitted for every non-inner vertex and one in-

dex code symbol is transmitted for all the inner vertices, the length of the index code

obtained is N −K + 1.

The intuition behind Construction 2 is that, from Construction ??, the vertices that are

not cancelled while decoding are identified and are encoded in to index code symbols

in such a way that they are cancelled. Also, Construction 2 will give same index code

as given by the index code construction proposed in [8] when there is only one outer

cycle in the IC structure with outer cycles.

Algorithm 2. Let the inner vertex be i. Let the subset of vertices in VNI(i) which are

part of outer cycles be called VNIC(i). Now, define the set V ′NI(i) as

V ′NI(i) =

⋃j∈VNIC(i)

VOC(j)

Compute Zi as

Zi = WI

⊕q∈VNI(i)\VNIC(i)

Wq

⊕j∈V ′

NI(i)

Wj

to decode xi for i ∈ {1, 2, . . . , K}. The messages corresponding to non-inner vertices

are decoded directly by using the index code symbols corresponding to the respective

non-inner vertices.

Theorem 4. An index code obtained by using Construction 2 on an IC structure with

outer cycles, G, is decodable using Algorithm 2.

Proof. IC structures with outer cycles can be categorized into two classes. One class is

of those IC structures with outer cycles that satisfy c2 and the other class is of those IC

Page 86: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 8. Main Results 75

structures that do not satisfy c2. Consider an inner vertex i and its rooted tree Ti. It

shall be shown that the inner and non-inner vertices at depth≥ 2 in Ti will be cancelled

in the computation of Zi irrespective of whether c2 is satisfied or not. The messages

corresponding to the non-inner vertices can be decoded directly by using the index

code symbols corresponding to the respective non-inner vertices. The different type of

vertices that can be present at depth ≥ 2 in a rooted tree Ti are listed as follows.

• (Type 1 vertices) Inner vertices.

• (Type 2 vertices) Non-inner vertices that are not present in any outer cycle.

• (Type 3 vertices) CCVs corresponding to non-isolated and isolated MOCGs which

are union of even number of outer cycles.

• (Type 4 vertices) CCVs corresponding to non- isolated MOCGs which are union

of odd number of outer cycles.

• (Type 5 vertices) Vertices present in outer cycles that are not part of any MOCG,

vertices which are not CCVs but present in MOCGs and CCVs corresponding to

isolated MOCGs which are union of even number of outer cycles.

The message corresponding to a type 1 vertex appears exactly twice in Zi, once in WI

and once in the index code symbol corresponding to its immediate predecessor in Ti,

and is, hence, cancelled.

The message corresponding to a type 2 vertex appears exactly twice in Zi, once in in-

dex code symbol corresponding to itself and once in index code symbol corresponding

to its immediate predecessor in the rooted tree, and is, hence, cancelled.

The message corresponding to a type 3 vertex appears even number of times in Zi,

once in index code symbol corresponding to itself and odd number of times in index

code symbols corresponding to its pre-central cycle vertices (as it is not encoded in the

index code symbol of one pre-central cycle vertex, in step 3 of Construction 2), and is,

Page 87: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 8. Main Results 76

hence, cancelled.

The message corresponding to a type 4 vertex appears even number of times in Zi,

once in index code symbol corresponding to itself and odd number of times in index

code symbols corresponding to its pre-central cycle vertices (as it is not encoded in the

index code symbols of two pre-central cycle vertices, in step 4 of Construction 2), and

is, hence, cancelled.

Among messages corresponding to type 5 vertices, the messages corresponding to ver-

tices present in outer cycles that are not part of any MOCG and vertices which are not

CCVs but present in MOCGs appear exactly twice, once in index code symbol corre-

sponding to their immediate predecessor in the outer cycles and MOCG, respectively,

and once in index code symbols corresponding to themselves and are, hence, cancelled.

A message corresponding to the CCV of an isolated MOCG appears even number of

times in Zi, once in index code symbol corresponding to itself and in all of the index

code symbols corresponding to its pre-central cycle vertices (which are odd in num-

ber), and is, hence, cancelled.

Remark: If any type k vertex, j, where k ∈ {3, 4, 5}, is present in Ti at a depth ≥ 2,

then all the vertices in VOC(j) are included in Zi (if c2 is violated in Ti, these are in-

cluded as V ′NI(i) in Zi and if c2 is not violated in Ti, then the vertices in VOC(j) are

present in VNI(i) and are hence included in Zi) due to which cancellation of the mes-

sage corresponding to that type k vertex happens. Also, in Construction 2, a message

corresponding to a non-inner vertex q, in an outer cycle is not encoded into index code

symbol corresponding to a non-inner vertex which is not present in outer-cycle group

of q.

Thus an index code obtained by using Construction 2 on an IC structure with outer

cycles, G, is decodable using Algorithm 2.

Page 88: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 8. Main Results 77

8.4 Optimality of Index Codes obtained by using Con-

struction 2

Now, some classes of IC structures with outer cycles which have N vertices and K

inner vertices for which the optimal length of index code is N −K + 1 are presented.

Consider the following class of IC structures with outer cycles.

Class 1: The IC structures with outer cycles which contain only one MOCG.

For a side-information graph G which is an IC structure with outer cycles of class 1, it

shall be shown that MIAS(G) ≥ N −K + 1.

Theorem 5. An IC structure with outer cycles, G with N vertices and K inner vertices,

which has only one MOCG will have MIAS(G) ≥ N −K + 1.

Proof. Let the CCV of the MOCG be v. Now

Claim 3. Consider the subgraph which is MOCG corresponding to the CCV v. Remov-

ing the vertex v from this subgraph will result in an acyclic subgraph.

Proof. The MOCG will be union of l ≥ 2 outer cycles. Vertex v will either be the only

vertex common to all the l outer cycles or it will be the starting vertex in the path

formed by the vertices which are common to the l outer cycles. Hence removing v

makes the MOCG corresponding to v to be acyclic.

Let v1 and v2 be two inner vertices in G such that the I-path from v1 to v2 consists of

the vertex v. There always exist such v1 and v2 because every non-inner vertex has to

be on at least one I-path. Now, removing the vertex v and all the inner vertices from

the set VI\{v1, v2} from G will result in an acyclic subgraph because there are no outer

cycles (since v is removed) and there are no cycles containing inner vertices v1 and

v2 (since the path from v1 to v2 passes through v) and all the other inner vertices are

removed. Note that K − 1 vertices are removed from G. Since the obtained induced

Page 89: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 8. Main Results 78

subgraph is acyclic, we have MIAS(G) ≥ N −K + 1. From the inequality 7.1, we have

nopt(G) ≥ MIAS(G) ≥ N −K + 1. Since an code of length N −K + 1 exists (from the

Construction 2), we get nopt(G) = MIAS(G) = N −K + 1.

Definition 7 (Acyclic outer cycle number of an IC structure with outer cycles, G). It is

the minimum number of non-inner vertices that are to be removed from an IC structure

with outer cycles so that the obtained induced subgraph does not contain any outer

cycles. It is denoted by na(G).

Definition 8 (Inner cycle of a pair of inner vertices). Let a and b be two inner vertices in

an IC structure with outer cycles. Then the cycle formed by union of the I-path from a

to b and the I-path from b to a is called an inner cycle of the pair of inner vertices a and

b.

Consider the following class of outer cycles.

Class 2: The IC structures with outer cycles, with N vertices and K inner vertices for

which the acyclic outer cycle number is t for 2 ≤ t ≤ K − 1.

Theorem 6. For an IC structure with outer cycles of class 2, G, since na(G) = t, there

will exist t vertices cj ∈ VNI for j ∈ {1, 2, . . . , t} whose removal from G will result in

an induced subgraph which will not contain any outer cycles. If there exists a set S of

t+1 inner vertices such that the inner cycle of any pair of vertices in S contains at least

one vertex in the set {c1, c2, . . . , ct}, then nopt(G) = N −K + 1.

Proof. The proof is as follows. The vertices in the set {c1, c2, . . . ct are removed and

the inner vertices not present in the set S are removed from G. There will no outer

cycles in the resulting subgraph by definition of t and there will be no cycles containing

inner vertices, since by hypothesis, when the vertices c1, c2, . . . , ct are removed, at

least one vertex will be removed in each of inner cycles formed by every pair of inner

vertices present in S. Also, all the other inner vertices which are not present in S are

Page 90: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 8. Main Results 79

removed which means there are no other inner cycles. Hence the induced sub graph

is acyclic. The number of non-inner vertices removed is t and the number of inner

vertices removed is K − (t+1). Thus the remaining number of vertices is N − (t+K −

(t+ 1)) = N −K + 1. Hence MIAS(G) ≥ N −K + 1 and it follows from the inequality

7.1 that nopt(G) ≥ N −K + 1. Since an index code of length N −K + 1 exists (from the

Construction 2), we get nopt(G) = MIAS(G) = N −K + 1.

The following are the classes of IC structures with outer cycles of class 2 with the

parameter acyclic outer cycle number 2, i.e., there exist two vertices c1 and c2 which

when removed from G, there will be no outer cycles in the induced subgraph.

• The IC structures with outer cycles which have one MOCG and only one outer

cycle which is disjoint with the MOCG and no other outer cycles. Here CCV of

the MOCG will be c1 and any one vertex of the outer cycle can be c2.

• The IC structures with outer cycles which have two disjoint outer cycles and no

other outer cycles. Here, any two vertices such that each vertex is from each outer

cycle can be c1 and c2.

• the IC structures with outer cycles which have two MOCGs (either isolated or

non-isolated) and no other outer cycles. Here the CCVs corresponding to the two

MOCGs will be c1 and c2.

8.5 Error Correcting Index Codes for IC structures with

Outer Cycles

Dau, Skachek and Chee in [13] defined error correcting index codes. An index code

is said to correct δ errors if after receiving the broadcast symbols with atmost δ errors,

each receiver is able to decode its demand by using the received broadcast symbols

Page 91: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 8. Main Results 80

and its side information. For an ICP with side information graph G, an optimal linear δ

error correcting index code over field Fq is the δ error correcting index code over field

Fq with smallest possible length Nq[G; δ]. Define

Yk , {x1, x2, . . . xN}\({xk} ∪ Ak)

for k ∈ {1, 2, . . . N} and

I(G) ,⋃

k∈{1,2,...,N}

{{xk} ∪ Yk : Yk ⊆ Yk}.

A subset H of {x1, x2, . . . , xN} is called a generalised independent set in G if every non-

empty subset of H belongs to I(G). A generalised independent set of the largest size

in G is called maximum generalised independent set and its size is called generalised

independence number, denoted by α(G). For a single unicast index coding problem

represented by a side-information graph G, it is shown in [13] that

α(G) = MIAS(G). (8.1)

A matrix A = (ai,j) is said to fit a side-information graph G if ai,i = 1 for all i and

ai,j = 0 if there is no edge from i to j in G. Let rkq(A) denote the rank of the matrix A

over the field Fq. The minrank κq(G) is defined as κq(G) , min{rkq(A) : A fits G}. It

is shown in [5] that the length of an optimum scalar linear index code is equal to the

minrank of the corresponding side-information graph.

LetNq[k, d] refer to the length of optimal linear classical error correcting code of dimen-

sion k and minimum distance d over the field Fq. Then, it is shown in [13] that

Nq[α(G), 2δ + 1] ≤ Nq[G; δ] ≤ Nq[κq(G), 2δ + 1] (8.2)

where δ is the number of errors to be corrected.

Page 92: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 8. Main Results 81

8.5.1 Achievability bound of the inequality 8.2.

The achievability bound Nq[G; δ] ≤ Nq[κq(G), 2δ + 1] is obtained in [13] as follows.

First an index code of length κq(G) is constructed and these κq(G) symbols are used as

message symbols to obtain a classical error correcting code with distance 2δ+1, so that δ

errors are corrected. This implies that for a side-information graph G for which α(G) =

κq(G), optimal δ error correcting index code can be obtained by first constructing an

optimum index code and the constructing an optimum classical error correcting code

which corrects δ errors. All the existing optimum classical error correcting codes in the

literature can be found in [14].

Theorem 7. Consider the following classes of IC structures with outer cycles.

• The IC structures with outer cycles which contain only one MOCG.

• The IC structures with outer cycles, with N vertices and K inner vertices for

which the acyclic outer cycle number is t for 2 ≤ t ≤ K − 1 such that there exists

a set S of t+ 1 inner vertices such that the inner cycle of any pair of vertices in S

contains at least one vertex in the set {c1, c2, . . . , ct}, where the vertices c1, c2, . . . , ct

are as defined in Theorem 6.

For these two classes of IC structures with outer cycles, optimum δ error correcting

index codes are obtained by using an optimum classical δ error correcting index code

on the N −K + 1 index code symbols obtained by using Construction 2.

Proof. The proof is as follows.

1. First there is the inequality 7.1 which is nopt(G) ≥MIAS(G).

2. Then, there are two classes of IC structures with outer cycles for which nopt(G) =

κq(G) = MIAS(G) = N −K + 1.

Page 93: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 8. Main Results 82

3. Next, from Eq. 8.1, we have α(G) = MIAS(G) for single unicast problems.

4. Hence, for the considered classes of IC structures with outer cycles, α(G) = κq(G).

5. Then, from the inequality 8.2, we haveNq[G; δ] = Nq[α(G), 2δ+1] = Nq[κq(G), 2δ+

1].

Then from the discussion in subsection 8.5.1 and the optimum classical error correcting

codes in [14], the theorem is proved.

Page 94: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 9

Examples

In this chapter, we provide examples that illustrate Construction 2 and Algorithm 2 along

with optimality. The following example illustrates Theorem 4.

Example 13. Consider G9, a side information graph which is an IC structure with inner

vertex set VI = {1, 2, 3, 4, 5, 6} given in Fig. 9.1. It can be verified that

1. there are no cycles containing only one vertex from the set {1, 2, 3, 4, 5, 6} in G9

(i.e., no I-cycles),

2. using the rooted trees for each vertex in the set {1, 2, 3, 4, 5, 6}, which are given in

Fig. 9.2, 9.3, 9.4, 9.5, 9.6 and 9.7 respectively, there exists a unique path between

any two different vertices in VI in G9 and does not contain any other vertex in VI

(i.e., unique I-path between any pair of inner vertices),

3. G9 is the union of all the 6 rooted trees.

Now, we have

VI = {1, 2, 3, 4, 5, 6}.

VNI = {7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17}.

VOC = {8, 9, 10, 13, 15, 16}.

83

Page 95: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 9. Examples 84

1

2

3

4

5

6

17

7

8

9

1011

12

13

14

15

16

Figure 9.1: IC structure G9 with outer cycles.

1

2

3

4

5

6

7

8

9

1011

13

14

15

16

Figure 9.2: Rooted tree of inner vertex 1 in G9.

1

2

3

4

5

6

8

1011

13

Figure 9.3: Rooted tree of inner vertex 2 in G9.

Page 96: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 9. Examples 85

1

2

3

4

5

6

15

16

Figure 9.4: Rooted tree of inner vertex 3 in G9.

1

2

3

4

5

6

Figure 9.5: Rooted tree of inner vertex 4 in G9.

1

2

3

4

5

6

8

1011

12

13

Figure 9.6: Rooted tree of inner vertex 5 in G9.

Page 97: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 9. Examples 86

1

2

3

4

5

6

17

15

16

Figure 9.7: Rooted tree of inner vertex 6 in G9.

VMOCG = {8, 9, 10, 13}.

There is one isolated MOCG with CCV 10, formed by the union of two outer cycles with

vertex sets {8, 9, 10} and {10, 13}. Since there are no other MOCGs, VOCGI = VMOCG.

Construction 2 is carried out as follows.

1. WI = x1 ⊕ x2 ⊕ x3 ⊕ x4 ⊕ x5 ⊕ x6.

2. VNI\VOC = {7, 11, 12, 14, 17}.

• j = 7 and N+G9(7)\VOC = φ. Hence W7 = x7.

• j = 11 and N+G9(11)\VOC = {4}. Hence W11 = x11 ⊕ x4.

• j = 12 and N+G9(12)\VOC = φ. Hence W12 = x12.

• j = 14 and N+G9(14)\VOC = φ. Hence W14 = x14.

• j = 17 and N+G9(17)\VOC = {3, 4}. Hence W17 = x17 ⊕ x3 ⊕ x4.

3. The isolated MOCG with CCV 10 is union of even number of cycle sets.

• j1 = 10. j can be 9 or 13. Let j = 9 (The case of j = 13 is considered in the

end).

N+G (9)\VOC = φ.

N+C (9) = {10}. Hence

Page 98: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 9. Examples 87

{N+G (9)\VOC} ∪ {N+

C (9)\{10}} = φ. So,

W9 = x9.

4. Step 4 can be skipped as there are no non-isolated MOCGs.

5. The remaining non-inner vertices are {8, 10, 13, 15, 16}.

• j = 8. N+G9(8)\VOC = {3} and N+

C (8) = {9} and hence {N+G9(8)\VOC} ∪

N+C (8) = {3, 9}. So, W8 = x8 ⊕ x3 ⊕ x9.

• j = 10. N+G9(10)\VOC = {11} andN+

C (10) = {8, 13} and hence {N+G9(10)\VOC}∪

N+C (10) = {8, 11, 13}. So, W10 = x10 ⊕ x8 ⊕ x11 ⊕ x13.

• j = 13. N+G9(13)\VOC = {6} and N+

C (13) = {10} and hence {N+G9(13)\VOC} ∪

N+C (13) = {6, 10}. So, W13 = x13 ⊕ x6 ⊕ x10.

• j = 15. N+G9(15)\VOC = {2} and N+

C (15) = {16} and hence {N+G9(15)\VOC} ∪

N+C (15) = {2, 16}. So, W15 = x15 ⊕ x2 ⊕ x16.

• j = 16. N+G9(16)\VOC = {5} and N+

C (16) = {15} and hence {N+G9(16)\VOC} ∪

N+C (16) = {5, 15}. So, W16 = x16 ⊕ x5 ⊕ x15.

The obtained index code symbols are listed as follows.

WI = x1 ⊕ x2 ⊕ x3 ⊕ x4 ⊕ x5 ⊕ x6.

W7 = x7.

W8 = x8 ⊕ x3 ⊕ x9.

W9 = x9.

W10 = x10 ⊕ x8 ⊕ x11 ⊕ x13.

W11 = x11 ⊕ x4.

W12 = x12.

W13 = x13 ⊕ x6 ⊕ x10.

W14 = x14.

W15 = x15 ⊕ x2 ⊕ x16.

Page 99: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 9. Examples 88

W16 = x16 ⊕ x5 ⊕ x15.

W17 = x17 ⊕ x3 ⊕ x4.

If in step 3 where j1 = 10, if j = 13, index code symbols W9 and W13 will be

W9 = x9 ⊕ x10.

W13 = x13 ⊕ x6

and all the remaining index code symbols will remain same. The decoding is done for

messages corresponding to non-inner vertices using respective index code symbols.

The decoding of messages corresponding to inner vertices is done using Algorithm 2 as

follows.

• i = 1. VNIC(1) = {8, 9, 10, 13, 15, 16}. Hence V ′NI(1) = {8, 9, 10, 13, 15, 16} and

VNI(1)\VNIC(1) = {7, 11, 14}. Z1 = WI⊕W7⊕W8⊕W9⊕W10⊕W11⊕W13⊕W14⊕

W15⊕W16 which results in Z1 = x1⊕ x7⊕ x14 and user 1 has x7 and x14 in its side

information.

• i = 2. VNIC(2) = {8, 10, 13}. Hence V ′NI(2) = {8, 9, 10, 13} and VNI(2)\VNIC(2) =

{11}. Z2 = WI ⊕W8 ⊕W9 ⊕W10 ⊕W11 ⊕W13 which results in Z2 = x1 ⊕ x2 ⊕ x5

and user 2 has x1 and x5 in its side information.

• i = 3. VNIC(3) = {15, 16}. Hence V ′NI(3) = {15, 16} and VNI(i)\VNIC(i) = φ.

Z3 = WI ⊕W15 ⊕W16 which results in Z3 = x3 ⊕ x1 ⊕ x4 ⊕ x6 and user 3 has x1,

x4 and x6 in its side information.

• i = 4. VNIC(4) = φ. Hence V ′NI(4) = φ and VNI(4)\VNIC(4) = φ. Z4 = WI =

x1⊕x2⊕x3⊕x4⊕x5⊕x6 and user 4 has x1, x2, x3, x5 and x6 in its side information.

• i = 5. VNIC(5) = {8, 10, 13}. Hence V ′NI(5) = {8, 9, 10, 13} and VNI(5)\VNIC(5) =

{11, 12}. Z5 = WI ⊕W8 ⊕W9 ⊕W10 ⊕W11 ⊕W12 ⊕W13 which results in Z5 =

x5 ⊕ x1 ⊕ x2 ⊕ x12 and user 5 has x1, x2 and x12 in its side information.

• i = 6. VNIC(6) = {15, 16}. Hence V ′NI(6) = {15, 16} and VNI(6)\VNIC(6) = {17}.

Page 100: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 9. Examples 89

1

4

5 17

7

8

9

11

12

13

14

15

Figure 9.8: Induced acyclic subgraph of G9, obtained by removing the vertices2, 3, 6, 10, 16.

Z6 = WI ⊕W15 ⊕W16 ⊕W17 which results in Z6 = x6 ⊕ x1 ⊕ x17 and user 6 has x1

and x17 in its side information.

It can be seen that G9 has an acyclic outer cycle number 2 since at least 2 non-inner

vertices (either 10 and 15 or 10 and 16) have to removed in order for G9 to not have any

outer cycles. Now if the vertices 2, 3, 6, 10, 16 are removed, the graph will be acyclic as

shown in Fig. 9.8.

The number of vertices in resulting acyclic graph is 12. This means that MIAS(G9) ≥

12. Also, the length of the index code given by Construction 2 is 12. Hence nopt(G9) = 12.

Example 14. Consider G, a side information graph which is a 10-IC structure with outer

cycles and with inner vertex set VI = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10} given in Fig. 9.9. It can

be verified that

1. there are no cycles containing only one vertex from the set {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}

in G (i.e., no I-cycles),

2. using the rooted trees for each vertex in the set {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, which are

given in Fig. 9.10, 9.11, 9.12, 9.13, 9.14, 9.15, 9.16, 9.17, 9.18 and 9.19 respectively,

Page 101: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 9. Examples 90

1 2 3 4 5 6 8 7 9 10

11

12 13

14

15

16

17

18

19

20 21

22 23

24

25

26 27

28

29

30

31

32

33

34

35

36

Figure 9.9: 10-IC structure with outer cycles, G.

1 2 3 4 5 6 8 7 9 10

11

12 13

14

15 17

18

22 23

24

25

26

28

29 31

32

33

34

Figure 9.10: Rooted tree of inner vertex 1 in G.

there exists a unique path between any two different vertices in VI in G and does

not contain any other vertex in VI (i.e., unique I-path between any pair of inner

vertices),

3. G is the union of all the 10 rooted trees.

Now,

VI = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}.

VNI = {11, 12, 13, 14, . . . , 34, 35, 36}.

VOC = {12, 13, 15, 17, 22, 23, 25, 29, 31, 32, 33, 34}.

Page 102: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 9. Examples 91

1 2 3 4 5 6 8 7 9 10

29 31

32

33

34

35

Figure 9.11: Rooted tree of inner vertex 2 in G.

1 2 3 4 5 6 8 7 9 10

18

29

30

31

32

33

34

35

Figure 9.12: Rooted tree of inner vertex 3 in G.

1 2 3 4 5 6 8 7 9 10

12 13

14

15

16

17

18

22 23

24

25

26

Figure 9.13: Rooted tree of inner vertex 4 in G.

1 2 3 4 5 6 8 7 9 10

32

33

34

35

Figure 9.14: Rooted tree of inner vertex 5 in G.

1 2 3 4 5 6 8 7 9 10

12 13

14

15 17

18

19

20

22 23

24

25

26

Figure 9.15: Rooted tree of inner vertex 6 in G.

Page 103: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 9. Examples 92

1 2 3 4 5 6 8 7 9 10

12 13

14

15 17

18 21

22 23

24

25

26

Figure 9.16: Rooted tree of inner vertex 7 in G.

1 2 3 4 5 6 8 7 9 10

32

33

34

36

Figure 9.17: Rooted tree of inner vertex 8 in G.

1 2 3 4 5 6 8 7 9 10

32

33

34

36

Figure 9.18: Rooted tree of inner vertex 9 in G.

1 2 3 4 5 6 8 7 9 10

12 13

14

15 17

18

22 23

24

25

26 27

Figure 9.19: Rooted tree of inner vertex 10 in G.

Page 104: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 9. Examples 93

VMOCG = {12, 13, 15, 17, 22, 23, 25, 32, 33, 34}.

There is one isolated MOCG with CCV 32 formed by the union of two outer cycles

with vertex sets {32, 33} and {32, 34}.

There are two non-isolated MOCGs one with CCV 15 which is formed by the union

of three outer cycles with vertex sets {12, 13, 15}, {15, 17} and {15, 22} respectively and

one with CCV 22 which is formed by union of two outer cycles with vertex sets {15, 22}

and {22, 23, 25}. It is seen that these two MOCGs have the outer cycle with vertex set

{15, 22} in common. Now Construction 2 is carried out as follows.

1. WI = x1 ⊕ x2 ⊕ x3 ⊕ x4 ⊕ x5 ⊕ x6 ⊕ x7 ⊕ x8 ⊕ x9 ⊕ x10.

2. The vertices in VNI\VOC are 11, 14, 16, 18, 19, 20, 21, 24, 26, 27, 28, 30, 35 and 36.

• j = 11. N+G (11)\VOC = φ. Hence, W11 = x11.

• j = 14. N+G (14)\VOC = {3}. Hence, W14 = x14 ⊕ x3.

• j = 16. N+G (16)\VOC = φ. Hence, W16 = x16.

• j = 18. N+G (18)\VOC = {5}. Hence, W18 = x18 ⊕ x5.

• j = 19. N+G (19)\VOC = φ. Hence, W19 = x19.

• j = 20. N+G (20)\VOC = {19}. Hence, W20 = x20 ⊕ x19.

• j = 21. N+G (21)\VOC = φ. Hence, W21 = x21.

• j = 24. N+G (24)\VOC = {8}. Hence, W24 = x24 ⊕ x8.

• j = 26. N+G (26)\VOC = {9}. Hence, W26 = x26 ⊕ x9.

• j = 27. N+G (27)\VOC = φ. Hence, W27 = x27.

• j = 28. N+G (28)\VOC = φ. Hence, W28 = x28.

• j = 30. N+G (30)\VOC = φ. Hence, W30 = x30.

• j = 35. N+G (35)\VOC = {8, 9}. Hence, W35 = x35 ⊕ x8 ⊕ x9.

• j = 36. N+G (36)\VOC = {1, 2, 3}. Hence, W36 = x36 ⊕ x1 ⊕ x2 ⊕ x3.

Page 105: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 9. Examples 94

3. The isolated MOCG with CCV 32 is union of two outer cycles and the non-

isolated MOCG with CCV 22 is also union of two outer cycles.

• j1 = 32. j can be 33 or 34. Let j = 33.

N+G (33)\VOC = {4}.

N+C (33) = {32}.

Hence {N+G (33)\VOC} ∪ {N+

C (33)\{32}} = {4}. So, W33 = x33 ⊕ x4.

• j1 = 22. j can be 15 or 25. Let j = 25.

N+G (25)\VOC = {26}.

N+C (25) = {22}.

Hence {N+G (25)\VOC} ∪ {N+

C (25)\{22}} = {26}. So, W25 = x25 ⊕ x26.

4. The non-isolated MOCG with the CCV 15 is union of 3 (odd number) outer cy-

cles.

j1 = 15.

Pre-central cycle vertex set of 15 = {13, 17, 22}.

Hence, let PV (15) = {13, 17}.

• j = 17. N+G (17)\VOC = {18}.

N+C (17) = {15}.

Hence {N+G (17)\VOC} ∪ {N+

C (17)\{15}} = {18}. So, W17 = x17 ⊕ x18.

• j = 13. N+G (13)\VOC = {14}.

N+C (13) = {15}.

Hence {N+G (13)\VOC} ∪ {N+

C (13)\{15}} = {14}. Therefore, W13 = x13 ⊕ x14.

5. The remaining non-inner vertices are {12, 15, 22, 23, 24, 29, 31, 32, 34}.

• j = 12. N+G (12)\VOC = {2} and N+

C (12) = {13} and hence {N+G (12)\VOC} ∪

Page 106: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 9. Examples 95

N+C (12) = {2, 13}. So, W12 = x12 ⊕ x2 ⊕ x13.

• j = 15. N+G (15)\VOC = φ andN+

C (15) = {12, 17, 22} and hence {N+G (15)\VOC}∪

N+C (15) = {12, 17, 22}. So, W15 = x15 ⊕ x12 ⊕ x17 ⊕ x22.

• j = 22. N+G (22)\VOC = φ and N+

C (22) = {15, 23} and hence {N+G (22)\VOC} ∪

N+C (22) = {15, 23}. So, W22 = x22 ⊕ x15 ⊕ x23.

• j = 23. N+G (23)\VOC = {24} and N+

C (23) = {25} and hence {N+G (23)\VOC} ∪

N+C (23) = {24, 25}. So, W23 = x23 ⊕ x24 ⊕ x25.

• j = 29. N+G (29)\VOC = {6} and N+

C (29) = {31} and hence {N+G (29)\VOC} ∪

N+C (29) = {6, 31}. So, W29 = x29 ⊕ x6 ⊕ x31.

• j = 31. N+G (31)\VOC = φ and N+

C (31) = {29} and hence {N+G (31)\VOC} ∪

N+C (31) = {29}. So, W31 = x31 ⊕ x29.

• j = 32. N+G (32)\VOC = φ and N+

C (32) = {33, 34} and hence {N+G (32)\VOC} ∪

N+C (32) = {33, 34}. So, W32 = x32 ⊕ x33 ⊕ x34.

• j = 34. N+G (34)\VOC = {7, 10} andN+

C (34) = {32} and hence {N+G (34)\VOC}∪

N+C (34) = {7, 10, 32}. So, W34 = x34 ⊕ x7 ⊕ x10 ⊕ x32.

The obtained index code symbols are listed as follows.

WI = x1 ⊕ x2 ⊕ x3 ⊕ x4 ⊕ x5 ⊕ x6 ⊕ x7 ⊕ x8 ⊕ x9 ⊕ x10.

W11 = x11.

W12 = x12 ⊕ x2 ⊕ x13.

W13 = x13 ⊕ x14.

W14 = x14 ⊕ x3.

W15 = x15 ⊕ x12 ⊕ x17 ⊕ x22.

W16 = x16.

W17 = x17 ⊕ x18.

W18 = x18 ⊕ x5.

W19 = x19.

Page 107: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 9. Examples 96

W20 = x20 ⊕ x19.

W21 = x21.

W22 = x22 ⊕ x15 ⊕ x23.

W23 = x23 ⊕ x24 ⊕ x25.

W24 = x24 ⊕ x8.

W25 = x25 ⊕ x26.

W26 = x26 ⊕ x9.

W27 = x27.

W28 = x28.

W29 = x29 ⊕ x6 ⊕ x31.

W30 = x30.

W31 = x31 ⊕ x29.

W32 = x32 ⊕ x33 ⊕ x34.

W33 = x33 ⊕ x4.

W34 = x34 ⊕ x7 ⊕ x10 ⊕ x32.

W35 = x35 ⊕ x8 ⊕ x9.

W36 = x36 ⊕ x1 ⊕ x2 ⊕ x3. The decoding of messages corresponding to non-inner ver-

tices can be done using index code symbols corresponding to the respective non-inner

vertices. The decoding of messages corresponding to inner vertices using Algorithm 2

is as follows.

• i = 1.

VNIC(1) = {12, 13, 15, 17, 22, 23, 25, 29, 31, 32, 33, 34}.

V ′NI(1) = VNIC(1) and VNI(1)\VNIC(1) = {11, 14, 18, 24, 26, 28}.

Z1 = WI ⊕W11⊕W12⊕W13⊕W14⊕W15⊕W17⊕W18⊕W22⊕W23⊕W24⊕W25⊕

W26 ⊕W28 ⊕W29 ⊕W31 ⊕W32 ⊕W33 ⊕W34 which results in Z1 = x1 ⊕ x11 ⊕ x28

and user 1 has x11 and x28 in its side information.

• i = 2.

Page 108: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 9. Examples 97

VNIC(2) = {29, 31, 32, 33, 34}.

V ′NI(2) = VNIC(2) and VNI(2)\VNIC(2) = {35}.

Z2 = WI⊕W29⊕W31⊕W32⊕W33⊕W34⊕W28 which results in Z2 = x2⊕x1⊕x3⊕x5

and user 2 has x1, x3 and x5 in its side information.

• i = 3.

VNIC(3) = {29, 31, 32, 33, 34}.

V ′NI(3) = VNIC(3) and VNI(3)\VNIC(3) = {18, 30, 35}.

Z3 = WI ⊕W18 ⊕W29 ⊕W30 ⊕W31 ⊕W32 ⊕W33 ⊕W34 ⊕W35 which results in

Z3 = x3⊕ x1⊕ x2⊕ x18⊕ x30⊕ x35 and user 3 has x1, x2, x18, x30 and x35 in its side

information.

• i = 4.

VNIC(4) = {12, 13, 15, 17, 22, 23, 25}.

V ′NI(4) = VNIC(4) and VNI(4)\VNIC(4) = {14, 16, 18, 24, 26}.

Z4 = WI⊕W12⊕W13⊕W14⊕W15⊕W16⊕W17⊕W18⊕W22⊕W23⊕W24⊕W25⊕W26

which results in Z4 = x4 ⊕ x1 ⊕ x6 ⊕ x7 ⊕ x16 and user 4 has x1, x6, x7 and x16 in

its side information.

• i = 5.

VNIC(5) = {32, 33, 34}.

V ′NI(5) = VNIC(5) and VNI(5)\VNIC(5) = {35}.

Z5 = WI⊕W32⊕W33⊕W34⊕W35 which results in Z5 = x5⊕x1⊕x2⊕x3⊕x6⊕x35

and user 5 has x1, x2, x3, x6 and x35 in its side information.

• i = 6.

VNIC(6) = {12, 13, 15, 17, 22, 23, 25}.

V ′NI(6) = VNIC(6) and VNI(6)\VNIC(6) = {14, 18, 19, 20, 24, 26}.

Z6 = WI ⊕W12⊕W13⊕W14⊕W15⊕W17⊕W18⊕W19⊕W20⊕W22⊕W23⊕W24⊕

W25 ⊕W26 which results in Z6 = x6 ⊕ x1 ⊕ x4 ⊕ x7 ⊕ x10 ⊕ x20 and user 6 has x1,

Page 109: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 9. Examples 98

x4, x7, x10 and x20 in its side information.

• i = 7.

VNIC(7) = {12, 13, 15, 17, 22, 23, 25}.

V ′NI(7) = VNIC(7) and VNI(7)\VNIC(7) = {14, 18, 21, 24, 26}.

Z7 = WI⊕W12⊕W13⊕W14⊕W15⊕W17⊕W18⊕W21⊕W22⊕W23⊕W24⊕W25⊕W26

which results in Z7 = x7 ⊕ x1 ⊕ x4 ⊕ x6 ⊕ x10 ⊕ x21 and user 7 has x1, x4, x6, x10

and x21 in its side information.

• i = 8.

VNIC(8) = {32, 33, 34}.

V ′NI(8) = VNIC(8) and VNI(8)\VNIC(8) = {36}.

Z8 = WI ⊕W32 ⊕W33 ⊕W34 ⊕W36 which results in Z8 = x8 ⊕ x5 ⊕ x6 ⊕ x9 ⊕ x36

and user 8 has x5, x6, x9 and x36 in its side information.

• i = 9.

VNIC(9) = {32, 33, 34}.

V ′NI(9) = VNIC(9) and VNI(9)\VNIC(9) = {36}.

Z9 = WI ⊕W32 ⊕W33 ⊕W34 ⊕W36 which results in Z9 = x9 ⊕ x5 ⊕ x6 ⊕ x8 ⊕ x36

and user 9 has x5, x6, x8 and x36 in its side information.

• i = 10.

VNIC(10) = {12, 13, 15, 17, 22, 23, 25}.

V ′NI(10) = VNIC(10) and VNI(10)\VNIC(10) = {14, 18, 24, 26, 27}.

Z10 = WI⊕W12⊕W13⊕W14⊕W15⊕W17⊕W18⊕W22⊕W23⊕W24⊕W25⊕W26⊕W27

which results in Z10 = x10 ⊕ x1 ⊕ x6 ⊕ x7 ⊕ x24 and user 10 has x1, x6, x7 and x24

in its side information.

Here, na(G) = 4 , i.e., at least 4 non-inner vertices have to be removed from G so that

there are no outer cycles in G. For example, 29, 32, 15 and 22 are 4 such vertices which

Page 110: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 9. Examples 99

5 10

11

12 13

1416

17

18

19

20 21

23

24

25

26 27

28

30

31

33

34

35

36

Figure 9.20: Induced acyclic subgraph of G obtained by removing the 12 vertices in theset {1, 2, 3, 4, 6, 7, 8, 9, 15, 17, 29, 32}.

means {c1, c2, c3, c4} = {29, 32, 15, 22}. As per Theorem 6, there has to be a set of 5

inner vertices such that an inner cycle between any pair of vertices among those 5

inner vertices contains at least one vertex from the set {29, 32, 15, 22}, then nopt(G) =

N −K +1 = 27. But such a set of 5 inner vertices does not exist (verified by exhaustive

search). It is also seen that MIAS(G) ≥ 24 since the induced subgraph obtained by

removing the 12 vertices in the set {1, 2, 3, 4, 6, 7, 8, 9, 15, 17, 29, 32} from G is acyclic as

shown in Fig. 9.20. Hence we have the inequality 24 ≤ nopt(G) ≤ 27.

Page 111: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 10

Conclusion

10.1 Summary of the results

The results obtained in this report are summarised as follows.

• A property of intersecting outer cycles is found and presented as Theorem 2.

• Construction 2 gives an index code for any given IC structure with outer cycles

which is always decodable using Algorithm 2. This is the first work where valid

index code construction is given for any IC structure with outer cycles.

• Two classes of IC structures with outer cycles are found for which index codes

given by Construction 2 are optimum.

10.2 Future Scope

The following are the directions of work which can be pursued following this work.

• Example 14 shows that there exist some classes of IC structures with outer cycles

for which the index code given by Construction 2 is not known if it is optimum.

100

Page 112: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Chapter 10. Conclusion 101

It remains open to find index code construction schemes that are optimal for the

remaining classes of IC structures with outer cycles.

• Finding error correcting index codes for IC structures with outer cycles remains

an open problem. The problem can be restated as finding the IC structures with

outer cycles for which MIAS bound mentioned in the inequality 7.1 is tight.

Page 113: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

Bibliography

[1] C. Thapa, L. Ong, and S. Johnson, “Interlinked Cycles for Index Coding: Gener-

alizing Cycles and Cliques", in IEEE Trans. Inf. Theory, vol. 63, no. 6, Jun. 2017.in

[2] Y. Birk and T. Kol, "Informed-source coding-on-demand(ISCOD) over broadcast

channels," in Proc. 7th Annu. Joint Conf. IEEE Comput. Commun. Soc. (INFOCOM),

vol. 3. Mar./Apr. 1998, pp. 1257-1264.

[3] Y. Birk and T. Kol, "Coding on demand by an informed source (ISCOD)

for efficient broadcast of different supplemental data to caching clients", IEEE

Trans.Inf.Theory, 52(6), June 2006, pp.2825-2830.

[4] H. Maleki, V. R. Cadambe and S. A. Jafar, "Index Coding-An Interference Align-

ment Perspective," in IEEE Trans. Inf. Theory, vol. 60, no. 9, pp. 5402-5432, Sep.

2014.

[5] Z. Bar-Yossef, Y. Birk, T. S. Jayram and T. Kol, "Index Coding with Side Informa-

tion," in IEEE Trans. Inf. Theory, vol. 57, no. 3, pp. 1479-1494, Mar. 2011.

[6] L.Ong and C.K. Ho, " Optimal Index Codes for a Class of Multicast Networks

with Receiver side information", in Proc. IEEE ICC, Ottawa, Canada, June 2012,

pp. 2213-2218.

[7] Z. Bar-Yossef, Z. Birk, T.S. Jayaram, and T. Kol, "Index coding with side informa-

tion", in Proc. 47th Annu. IEEE symp. Found. Comput. Sci, Oct. 2006, pp.197-206.

102

Page 114: Optimal Index Codes for Two Classes of Interlinked Cycle Structures With Outer …bsrajan/Vikas_MTech_Final_report.pdf · 2018-11-08 · report) and decoding algorithm (referred to

BIBLIOGRAPHY 103

[8] Mahesh Babu Vaddi and B. Sundar Rajan, "Optimal Index Codes For A New

Class of Interlinked Cycle Structure", IEEE Communication Letters (To appear).

[9] Mahesh Babu Vaddi and B. Sundar Rajan, "Optimal Index Codes For Two Classes

of Index Coding Problems", Proceedings of 52nd Annual Conference on Information

Sciences and Systems(CISS), Princeton University, March 21-23, 2018 (To appear).

[10] C. Thapa, L. Ong, and S. Johnson, “Interlinked Cycles for Index Coding: Gener-

alizing Cycles and Cliques", in arxiv (arxiv:1603.00092v2 [cs.IT] 25 Feb 2018).

[11] K. V. Bharadwaj and B. S. Rajan, “Index Codes for Interlinked Cy-

cle Structures with Outer Cycles", 18 Apr 2018. [Online]. Available:

https://arxiv.org/abs/1804.06703v1

[12] Shanuja Sasi and B. Sundar Rajan, “On Optimal Index Codes for Inter-

linked Cycle Structures with Outer Cycles", 24 Apr. 2018. [Online]. Available:

https://arxiv.org/abs/1804.09120v1

[13] S. H. Dau, V. Skachek, and Y. M. Chee, “Error correction for index coding with

side information," IEEE Trans. Inf. Theory, vol. 59, no. 3, pp. 1517-1531, March 2013.

[14] M. Grassl, Bounds on the minimum distance of linear codes and quantum codes

[Online]. Available: http://www.codetables.de