1 index coding part ii of tutorial netcod 2013 michael langberg open university of israel caltech...

32
1 Index Coding Part II of tutorial NetCod 2013 Michael Langberg Open University of Israel Caltech (sabbatical)

Upload: jean-alder

Post on 14-Dec-2015

217 views

Category:

Documents


1 download

TRANSCRIPT

1

Index Coding

Part II of tutorialNetCod 2013

Michael LangbergOpen University of Israel

Caltech (sabbatical)

OutlineThis part of tutorial:

•Will show an equivalence between the network coding and index coding problems.

• Outline:• Preliminary: Network Coding model.

• Preliminary: Index Coding model.

• Equivalence for linear encoding/decoding [ElRouayhebSprintsonGeorghiades].

• Equivalence for general encoding/decoding [EffrosElRouayhebLangberg].

•Multicast vs. Unicast Index Coding [MalekiCadambeJafar].

•Open Questions.

2

General theme

Will show an equivalence between the network coding and index coding problems.

• An efficient reduction that allows to solve NC using any scheme to solve IC.

3

s1

t2t1

t3

s2

s1 s2 s3 s4 s5 s6

t1 t2 t3 t4 t5 t6

Solve ICObtain solution to NC

NC IC

• Network communication challenging: combines topology with information.

• Reduction separates information from topology.

• Significantly simplifies the study of Network Comm.

• Index Coding is a simple but representative instance of general network communication.

• Directed acyclic network N.• Edge e has capacity ce.• Source vertices S.• Terminal vertices T.• Requirement matrix:

• Transfer information from S to T.

• Objective: • Information flow using Network Coding that satisfies

terminals.

4

General Network Codings1

t2t1

t3

s2

s3

5

Assumptions

• Sources Si hold independent information.• Zero error in communication.

• We consider the multiple unicast communication requirement (w.l.o.g. [DoughertyZeger]):• k source/terminal pairs (Si,Ti) that wish to communicate over

N.

NS2

S1

S4

S3

T2

T1

T4

T3

S1

t2t1

S2

6

NC preliminaries

Communication at rate R = (R1,…,Rk) is achievable

over instance NC with block length n if random variables {Si},{Xe}:

• Rate: Source Si = R.V. independent and uniform over [2Rin].

• Edge capacity: For each edge e: Xe = R.V. with support [2cen].

• Functionality: for each edge e we have fe = function from

incoming R.V.’s Xe1,…,Xe,in(e) to Xe (i.e., Xe=fe(Xe1,…,Xe,in(e))).

• Decoding: for each terminal ti we define

a decoding function yielding sources Si reqired.

• R=(R1,…Rk) is ”n-feasible” if code with block length

n.

• Alternatively we say that NC is (R,n)-feasible.

s2

s1

s4

s3

t2

t1

t4

t3

X1

X2

X3

Xe

fe

Index Coding [Birk,Bar-Yossef et al.]

• IC is a special case of NC

• A set S of sources.

• A set T of terminals.

• Each terminal has some subset of sources (as side info.) and wants some subset of sources.

• Broadcast link has capacity cB.

•Other links have unlimited cap.

• Objective: To satisfy all terminals. using broadcast rate cB.

s1 s2 s3 s4

t1 t2 t3 t4

cB

Index Coding Communication at rate R = (R1,…,Rk) is achievable

with block length n if random variables {Si},XB:

• Rate: Source Si = R.V. independent and uniform over [2Rin].

• Encoding: XB = fB(S1,…,Sk) is R.V. with support [2cBn].

• Decoding: for each terminal ti we define a decoding function gi taking as input the broadcasted message XB and the side information of ti; and returning the sources Si wanted by ti.

• R=(R1,…Rk) is ”n-feasible” if

code with block length n.

• Will use notation: IC is (R,n)-feasible.

s1 s2 s3 s4

t1 t2 t3 t4

IC is a simple instance of the NC problem: only a single encoding node.

cB

Connecting NC to IC

• Step 1: Need to define reduction from NC to IC.

• Step 2: Need to proveNC is (R,n)-feasible iff IC is (R’,n)-feasible.

• Would like: Reduction/code const. to be very efficient. 9

s1

t2t1

s2

s1 s2 s3 s4 s5 s6

t1 t2 t3 t4 t5 t6

Solve ICObtain solution to NC

NC IC

10

Outline

• Step 1: Present reduction from NC to IC.

• Step 2: Equivalence for linear and general encoding/decoding. [ElRouayhebSprintsonGeorghiades],

[EffrosElRouayhebLangberg].

s1

t2t1

s2

s1 s2 s3 s4 s5 s6

t1 t2 t3 t4 t5 t6

NC IC

Theorem: For any NC, R one can construct IC, R’ such that for any n: NC is (R,n)-feasible iff IC is (R’,n)-feasible.

The reductionNC sources

Network: edges

NC terminals

NC sources NC edges

NC term. NC edges

NC IC

•Index Coding instance:•Sources corresponding to NC sources, and NC edges.

•Terminals corresponding to NC term., NC edges, special terminal.

•For edge e: terminal te in IC wants IC source Xe and has as side information all IC sources incoming to e in NC.

IC encodes topology of NC in its terminals!

X1

X2

X3

Xe

The reduction in more detail

NC sources

Network: edges

NC terminals

NC sources NC edges

NC term. NC edges

NC IC

•Sources: |S|+|E| sources, one for each source of NC and one for each edge of NC: {Si’} and {Se’}.

•Terminals: |T|+|E|+1 terminals:•One terminal ti’ for each ti: wants Si’ and has {Se’} for e in In(ti).

• te’ for each edge e: wants Se’ and has {Sa’} for edge a in In(e).

•One special terminal tall: wants {Se’} and has {Si’}.

X1

X2

X3

ti

The reduction in more detail

NC sources

Network: edges

NC terminals

NC sources NC edges

NC term. NC edges

•Sources: |S|+|E| sources, one for each source of NC and one for each edge of NC: {Si’} and {Se’}.

•Terminals: |T|+|E|+1 terminals:

•One for each terminal ti: wants Si’ and has {Se’} for e in In(ti).

•One for each edge e: wants Se’ and has {Sa’} for edges a in In(e).

•One special terminal tall: wants {Se’} and has {Si’}.

•Bottle neck edge of capacity cB=ce.

•Given rate vector R=(R1,…,Rk) we construct rate vector R’=({Ri’};{Re’}):

•Ri’=Ri and Re’=ce.

Has Wants

ti’ {Se’} for e in In(ti).

Si’

te’ {Sa’} for a in In(e).

Se’

tall {Si’} {Se’} Theorem: For any NC, R one can construct IC, R’ such that for any n: NC is (R,n)-feasible iff IC is (R’,n)-feasible.

Reduction

NC IC

Sources S1,…,Sk {Si’}, {Se’}

Terminals t1,…,tk {ti’},{te’},tall

Capacities ce cB=ce

Rate R1,…,Rk {Ri’}, {Re’}Ri’=Ri

Re’=ce

X1

X2

X3

ti

Theorem

•Theorem: NC is (R,n)-feasible iff IC is (R’,n)-feasible.

NC sources

NC edges

NC terminals

NC sources NC edges

NC term. NC edges

Reduction

NC IC

Sources S1,…,Sk {Si’}, {Se’}

Terminals t1,…,tk {ti’},{te’},tall

Capacities

ce cB=ce

Rate R1,…,Rk

{Ri’}, {Re’}Ri’=Ri

Re’=ce

s1 s2 s3 s4 s5 s6

t1 t2 t3 t4 t5 t6

s1

t2t1

s2Has Wants

ti’ {Se’} for e in In(ti). Si’

te’ {Sa’} for a in In(e). Se’

tall {Si’} {Se’}

Geometric view

•Theorem: NC is (R,n)-feasible iff IC is (R’,n)-feasible.

NC sources

NC edges

NC terminals

NC sources NC edges

NC term. NC edges

Reduction

NC IC

Sources S1,…,Sk {Si’}, {Se’}

Terminals t1,…,tk {ti’},{te’},tall

Capacities

ce cB=ce

Rate R1,…,Rk

{Ri’}, {Re’}Ri’=Ri

Re’=ce

s1 s2 s3 s4 s5 s6

t1 t2 t3 t4 t5 t6

s1

t2t1

s2

e: Re’=ce

What now?

Outline:

• NC feasible implies IC feasible (works for both linear and non-linear).

• IC feasible implies NC feasible (will show new proof for linear that modifies to non linear).

16

Theorem: For any NC, R one can construct IC, R’ such that for any n: NC is (R,n)-feasible iff IC is (R’,n)-feasible.

• Use global NC encoding functions.

• Seen that Xe = fe(XIn(e)).

• Edge e also has a function Fe:

• Xe = Fe(S1,…,Sk).

• IC: We need to define XB of rate cB.

• Recall that cB=Σce.

• Recall that Xe of rate ce.

• For all e let XB(e)=Se’+Fe(S1’,…,Sk’).

• There is a separation between {Si’} and {Se’}.

• Lets see that this works (decoding …).17

NC ICReduction

NC IC

Sources S1,…,Sk {Si’}, {Se’}

Terminals t1,…,tk {ti’},{te’},tall

Capacities

ce cB=ce

Rate R1,…,Rk {Ri’}, {Re’}Ri’=Ri

Re’=ceHas Wants

ti’ {Se’} for e in In(ti).

Si’

te’ {Sa’} for a in In(e).

Se’

tall{Si’} {Se’}

Theorem: For any NC, R one can construct IC, R’ such that for any n: NC is (R,n)-feasible iff IC is (R’,n)-feasible.

•Rate: Source Si = R.V. independent and uniform over

[2Rin].

•Edge capacity: For each edge e: Xe = R.V. with support

[2cen].

•Functionality: for each edge e we have fe = function

from incoming R.V.’s Xe1,…,Xe,in(e) to Xe (i.e., Xe=fe(Xe1,

…,Xe,in(e))).

•Decoding: for each terminal ti we define a decoding function yielding sources Si required.

• Use global encoding functions of NC.

• Each edge e has a function Fe such that Fe(S1,…,Sk)=Xe.

• Recall Xe of support [2cen].

• Recall cB=Σce.

• We need to define XB of total support [2cBn].

• Let XB(e)=Se’+Fe(S1’,…,Sk’).

• Decoding:• Consider terminal te’: wants Se’ and has {Sa’} for edges a in

In(e).

• te’ also receives the broadcast XB.

• For each a compute XB(a)-Sa’ = Sa’+Fa(S1’,…,Sk’)-Sa’ = Fa(S1’,…,Sk’).

• Use local encoding function fe to compute:

fe(Fa1(S1’,…,Sk’),…, Fa3(S1’,…,Sk’)) = Fe(S1’,…,Sk’)

• Compute XB(e)-Fe(S1’,…,Sk’) = Se’+Fe(S1’,…,Sk’)-Fe(S1’,…,Sk’) = Se’.

• Same process for other terminals.

18

NC ICReduction

NC IC

Sources S1,…,Sk {Si’}, {Se’}

Terminals t1,…,tk {ti’},{te’},tall

Capacities

ce cB=ce

Rate R1,…,Rk {Ri’}, {Re’}Ri’=Ri

Re’=ce

Xa1

Xa2

Xa3

Xe

Has Wants

ti’ {Se’} for e in In(ti).

Si’

te’ {Sa’} for a in In(e).

Se’

tall{Si’} {Se’}

fe(Xa1,Xa2,Xa3)=Xe

te’ will simulate the NC solution on edge e.

Basic idea: simulate the NC solution!

What now?

Outline:

• NC feasible implies IC feasible (works for both linear and non-linear).

• IC feasible implies NC feasible (will show new proof for linear that modifies to non linear).

19

20

• Given a linear code for IC, how do we build one for NC?

• Encoding for IC includes a linear encoding function fB

fB({Si’}, {Se’}) =

• Can prove that AE is square and full rank.

• Crucial property:

• Fix any value sI’ for SI’=S1’,…,Sk’

• There exists unique value sE’ for SE’=Se1’,…,Sem’ such that fB(sI’, sE’) =0.

• This will allow the construction of a NC!

AS AE+

Linear: IC NCReduction

NC IC

Sources S1,…,Sk {Si’}, {Se’}

Terminals T1,…,Tk {ti’},{te’},tall

Capacities

ce cB=ce

Rate R1,…,Rk {Ri’}, {Re’}Ri’=Ri

Re’=ce

tall only has {Si’} and wants all {Se’}

Has Wants

ti’ {Se’} for e in In(ti).

Si’

te’ {Sa’} for a in In(e).

Se’

tall{Si’} {Se’}

•Rate: Sources S’ = ({Si’},{Se’}) of support [2Ri’n], [2Re’n].

•Bottleneck: XB = fB({Si’},{Se’}) of support [2cBn].

21

fB({Si’}, {Se’}) =

• AE is square and full rank.

• Crucial property: For all sI’ exists sE’ s.t. fB(sI’, sE’) =0.

AS AE+

Linear: IC NCReduction

NC IC

Sources S1,…,Sk {Si’}, {Se’}

Terminals T1,…,Tk {ti’},{te’},tall

Capacities

ce cB=ce

Rate R1,…,Rk {Ri’}, {Re’}Ri’=Ri

Re’=ce

sI’

sE’

fB(sI’, sE’)

Value = 0Will define NC by ‘projecting’ fB onto the white curve!

Has Wants

ti’ {Se’} for e in In(ti).

Si’

te’ {Sa’} for a in In(e).

Se’

tall{Si’} {Se’}

22

• Consider edge e in NC.

• We will define local encoding function fe(Xa1,Xa2,Xa3)=Xe.

• Will define fe based on decoding ge’ function of IC for terminal te’.

ge’(Sa1’,Sa2’,Sa2’, fB({Si’}, {Se’}))=Se’.

• fe(Xa1,Xa2,Xa3)=ge‘(Xa1,Xa2,Xa3, 0).

• fe is a valid local encoding function.

• NC decoding defined similarly.

Xa1

Xa2

Xa3

Xe

Linear: IC NCReduction

NC IC

Sources S1,…,Sk {Si’}, {Se’}

Terminals T1,…,Tk {ti’},{te’},tall

Capacities

ce cB=ce

Rate R1,…,Rk {Ri’}, {Re’}Ri’=Ri

Re’=ce

sI’

sE’

Value = 0

• Consider terminal i in NC.

• We need to define local decoding function gi(Xa1,Xa2,Xa3)=Si.

• Will define gi based on decoding gi’ function of IC for terminal ti’.

gi‘(Sa1’,Sa2’,Sa2’, fB({Si’}, {Se’}))=Si’.

• gi(Xa1,Xa2,Xa3)=gi‘(Xa1,Xa2,Xa3, 0).

• Recall: fe(Xa1,Xa2,Xa3)=ge‘(Xa1,Xa2,Xa3, 0).

• Both fe and gi are valid encoding/decoding functions.

• Need to prove correct decoding!23

Xa1

Xa2

Xa3

Si

Linear: IC NCReduction

NC IC

Sources S1,…,Sk {Si’}, {Se’}

Terminals T1,…,Tk {ti’},{te’},tall

Capacities

ce cb=ce

Rate R1,…,Rk {Ri’}, {Re’}Ri’=Ri

Re’=ce

sI’

sE’

Value = 0

Has Wants

ti’ {Se’} for e in In(ti).

Si’

te’ {Sa’} for a in In(e).

Se’

tall{Si’} {Se’}

24

• fe(Xa1,Xa2,Xa3)=ge’(Xa1,Xa2,Xa3, 0).

• gi(Xa1,Xa2,Xa3)=gi’(Xa1,Xa2,Xa3, 0).

• Consider source info sI=sI’=s1,…,sk

• Let sE’ be corresponding value on curve.

• Will show by induction that running NC on input sI corresponds to running IC on input (sI’, sE’).

• Inductive claim: information xe in NC is exactly se’.

• Now for decoding si at terminal i use gi

Xa1

Xa2

Xa3

Si/Sa

Decoding: IC NC

Reduction

NC IC

Sources S1,…,Sk {Si’}, {Se’}

Terminals T1,…,Tk {Ti’},{Te’},Tall

Capacities

ce cE=ce

Rate R1,…,Rk {Ri’}, {Re’}Ri’=Ri

Re’=ce

sI’

sE’

Value = 0

xe=fe(xa1,xa2,xa3) =

ge’(xa1,xa2,xa3, 0) =

ge’(xa1,xa2,xa3, fB(sI’,sE’)) =

ge’(sa1’,sa2’,sa3’, fB(sI’,sE’)) = se’Decoderi=gi(xa1,xa2,xa3) =

gi’(xa1,xa2,xa3, 0) =

gi’(sa1’,sa2’,sa3’, fB(sI’,sE’)) = si’ = si

Basic idea: NC is simulating the IC solution!

We get a valid NC!

What now?

Outline:

• NC feasible implies IC feasible (works for both linear and non-linear).

• IC feasible implies NC feasible (will show new proof for linear that modifies to non linear).

25

• We use exact same proof!

• Where did we use linearity?Crucial property: For all sI’ exists sE’ s.t. fB(sI’, sE’) =0.

• Need to prove property for general encoding functions.

• Property follows from terminal tall.

• Given SI’ and XB=fB(SI’, SE’) we must be able to decode SE’

• Thus fixing sI’, fB is 1-1 as a function of SE’

• Support of XB equals support of SE’.

• Each row is a permutation.

• Thus property holds!26

General: IC NC

Reduction

NC IC

Sources S1,…,Sk {Si’}, {Se’}

Terminals T1,…,Tk {ti’},{te’},tall

Capacities

ce cB=ce

Rate R1,…,Rk {Ri’}, {Re’}Ri’=Ri

Re’=ce

sI’

sE’

Value = 0

Has Wants

ti’ {Se’} for e in In(ti).

Si’

te’ {Sa’} for a in In(e).

Se’

tall{Si’} {Se’}

differ

Number of different XB values is exactly equal to number of different SE’ values.

What now?

Outline:

• NC feasible implies IC feasible (works for both linear and non-linear).

• IC feasible implies NC feasible (will show new proof for linear that modifies to non linear).

• Multicast IC can be represented by Unicast IC (linear only) [MalekiCadambeJafar].

27

• In previous reduction we use an IC instance which “multicasts” information to different terminals.• Same information is wanted by more than one terminal.

• In NC, any (multiple) multicast can be reduced to (multiple) unicast [DoughertyZeger].

• Does the same phenomena hold for IC?28

Multicast vs Unicast

Reduction

NC IC

Sources S1,…,Sk {Si’}, {Se’}

Terminals T1,…,Tk {ti’},{te’},tall

Capacities

ce cB=ce

Rate R1,…,Rk {Ri’}, {Re’}Ri’=Ri

Re’=ce

Has Wants

ti’ {Se’} for e in In(ti).

Si’

te’ {Sa’} for a in In(e).

Se’

tall{Si’} {Se’}

• In previous reduction we use an IC instance which “multicasts” information to different terminals.

• Same information is wanted by more than one terminal.

• In NC, any (multiple) multicast can be reduced to (multiple) unicast.

• Does the same phenomena hold for IC?

• Recent work by [MalekiCadambeJafar] show that unicast suffices in case (if restricted to linear encoding/decoding).

• Implies that for linear encoding: NC reduces to (multiple) unicast IC! • Each terminal wants different message.

• Same number of sources and terminals.

• IC can be characterized by side information graph, rather than side information hypergraph.

29

Multicast vs Unicast

Some open problems

• Multicast vs. Unicast for general encoding.• Would be surprising: problems known to be more

difficult in the multiple-multicast setting (e.g., IC via cycle packing [ChaudhryAsadSprintsonLangberg]).

• Capacity: can one determine if rate R is in capacity region of NC via knowledge of capacity region of IC?• Reduction is not robust enough to withhold the closure

operation in the definition of capacity.

• Answer is yes for linear case. Also for co-located NC sources [WongLangbergEffros].

35

e: Re’=ce

Some open problems

• vs zero error in communication:• Does allowing some error increase rate in NC/IC?

• IC there is no advantage [LangbergEffros] to allowing small error in communication … can this extend to NC?

• NC – not known! In NC “no advantage” known for co-located [ChanGrant] [LangbergEffros] and other cases.

• Can we use equivalence between NC and IC?

• Intriguing connections to other problems such as the edge removal problem [HoEffrosJalali].

• Algorithms!: • Wide open … both in NC setting and IC setting …

36

Conclusions

• Network communication challenging: combines topology with information.

• Discussed equivalence between the network coding and index coding problems.

• Reduction separates information from topology.

• Significantly simplifies the study of Network Comm.

• Index Coding is a simple but representative instance of general network communication.

37

Thanks!

NC sources

NC edges

NC terminals

NC sources NC edges

NC term. NC edges