31
A logicians approach to Network Coding Søren Riis The Isaac Newton Institute, Cambridge 7 February, 2012

A logicians approach to Network Coding

Embed Size (px)

DESCRIPTION

A logicians approach to Network Coding. Søren Riis The Isaac Newton Institute, Cambridge 7 February, 2012. Outline. The talk presents “recreational” as well as “fundamental” problems from my research in Network Coding. Most of the talk could be titled: - PowerPoint PPT Presentation

Citation preview

A logicians approach to Network Coding

A logicians approach to Network Coding

Søren Riis

The Isaac Newton Institute,

Cambridge

7 February, 2012

Søren Riis

The Isaac Newton Institute,

Cambridge

7 February, 2012

22

OutlineOutlineThe talk presents “recreational” as well as “fundamental” problems from my research in Network Coding.

Most of the talk could be titled:

a mathematicians approach to Network Coding

It takes more than 30 min to get the logicians approach but i will try to give some hints how to get there.

Only a brief taster...There is an partial overlap between this talk and other introductory talks I have given:

i) Lecture series of 3 lectures given at the University of Bielefeld (2007) ii) Lecture given at 21st Postgraduate Combinatorics Conference (2010)

iii) Lecture given at IEEE International Symposium on Information Theory (2011)

iv) Public lecture given at Queen Mary, University of London (2011)

The talk presents “recreational” as well as “fundamental” problems from my research in Network Coding.

Most of the talk could be titled:

a mathematicians approach to Network Coding

It takes more than 30 min to get the logicians approach but i will try to give some hints how to get there.

Only a brief taster...There is an partial overlap between this talk and other introductory talks I have given:

i) Lecture series of 3 lectures given at the University of Bielefeld (2007) ii) Lecture given at 21st Postgraduate Combinatorics Conference (2010)

iii) Lecture given at IEEE International Symposium on Information Theory (2011)

iv) Public lecture given at Queen Mary, University of London (2011)

2

Network codingNetwork coding

Research field concerning multi-user communication. First papers occurred around 2000.

So far mainly a field of Electrical Engineering (Transactions on Information Theory etc.)

The field contains many interesting problems relevant for mathematicians.

Research field concerning multi-user communication. First papers occurred around 2000.

So far mainly a field of Electrical Engineering (Transactions on Information Theory etc.)

The field contains many interesting problems relevant for mathematicians.

Ordinary routing and data storageOrdinary routing and data storage

In Internet and wireless communication messages are treated similarly to cars in a traffic system

In communication messages are split into packets

In data storage data is split into disjoint items

Network Coding challenge this paradigm

In Internet and wireless communication messages are treated similarly to cars in a traffic system

In communication messages are split into packets

In data storage data is split into disjoint items

Network Coding challenge this paradigm

Basic ideas of Network CodingBasic ideas of Network Coding

Example 1: (Satellite Communication) Yeung and Zhang (1999)

Example 1: (Satellite Communication) Yeung and Zhang (1999)

Message x ∈ A to be sent from east to west

Message y ∈ A to be sent from west to east

The satellite transmits a message f(x,y) ∈ A

66

Satellite Communication (continued)

Satellite Communication (continued)

East and West each receive a message f(x,y) A ∈

East: Knows x A, receives f(x,y) A, requires y A∈ ∈ ∈

West: Knows y A, receives f(x,y) A, requires x A∈ ∈ ∈

Which “coding functions” f:A2 → A solves this problem?

East and West each receive a message f(x,y) A ∈

East: Knows x A, receives f(x,y) A, requires y A∈ ∈ ∈

West: Knows y A, receives f(x,y) A, requires x A∈ ∈ ∈

Which “coding functions” f:A2 → A solves this problem?

6

77

Basic ideas of Network CodingBasic ideas of Network Coding

Observation:

The function f:A2 → A solves the communication problem if and only f is latin.

0 1 00 01 10 11

0 00

1 01

10

|A|=2 11

|A|=4

Observation:

The function f:A2 → A solves the communication problem if and only f is latin.

0 1 00 01 10 11

0 00

1 01

10

|A|=2 11

|A|=47

0 11 0

00 01 10 11

10 11 00 01

11 10 01 00

01 00 11 10

Basic ideas of Network CodingBasic ideas of Network Coding

Example 2: The Butterfly Network

This problem equivalent to the satellite communication problem.

Example 2: The Butterfly Network

This problem equivalent to the satellite communication problem.

Basic ideas of Network CodingBasic ideas of Network Coding

Example 3: (Orthogonal Latin Squares)Example 3: (Orthogonal Latin Squares)Two messages x,y ∈ A

have to be stored at 4 locations. Find functions f,g: A2 → A

such that x and y can be reconstructed from knowing any two of the values:

x, y, f(x,y), g(x,y)

1010

Basic ideas of Network CodingBasic ideas of Network Coding

Two messages x,y ∈ A stored at 4 locations.

Find functions f,g: A2 → A such that x and y can be reconstructed from knowing any two of the values:

x, y, f(x,y), g(x,y)

Two messages x,y ∈ A stored at 4 locations.

Find functions f,g: A2 → A such that x and y can be reconstructed from knowing any two of the values:

x, y, f(x,y), g(x,y)

10

Observation:f,g: A2 →A solves the problem if and only (f,g) defines two orthogonal latin squares of order |A|

1111

Basic ideas of Network CodingBasic ideas of Network Coding

Observation:f,g: A2 →A solves the problem if and only (f,g) defines two orthogonal latin squares of order |A|

00 01 10 11 00 01 10 11

00 00

01 01

10 10

11 11

f |A|=4 g

Observation:f,g: A2 →A solves the problem if and only (f,g) defines two orthogonal latin squares of order |A|

00 01 10 11 00 01 10 11

00 00

01 01

10 10

11 11

f |A|=4 g 11

00 01 10 11

10 11 00 01

11 10 01 00

01 00 11 10

00 01 10 11

01 00 11 10

10 11 00 01

11 10 01 00

Digital information is not an ordinary commodityDigital information is not an ordinary commodity

How would ordinary goods be distributed if they could be copied during distribution?

Digital information can be copied, transformed and mixed during distribution

How can this be utilised?

This is the main concern of Network Coding

How would ordinary goods be distributed if they could be copied during distribution?

Digital information can be copied, transformed and mixed during distribution

How can this be utilised?

This is the main concern of Network Coding

1313

Guessing Games on GraphsGuessing Games on Graphs

The following class of problems looks recreational but they go straight to the heart of central problems in Network CodingGuessing Game (Riis1997)

Requirements: n players + n dice each with s sides Rules: Each player rolls their die.

A player is NOT allowed to see the value his/her own die value.

Each player is allowed to look at all the other n-1 dice values.

The play: The game is a cooperative game. Each player have to guess (possible by following some protocol) the value of their own dice. No communication between the players is allowed.

The players have to make their guess simultaneously (and independently).

Task: Each player must guess correctly the value of their own die.

The following class of problems looks recreational but they go straight to the heart of central problems in Network CodingGuessing Game (Riis1997)

Requirements: n players + n dice each with s sides Rules: Each player rolls their die.

A player is NOT allowed to see the value his/her own die value.

Each player is allowed to look at all the other n-1 dice values.

The play: The game is a cooperative game. Each player have to guess (possible by following some protocol) the value of their own dice. No communication between the players is allowed.

The players have to make their guess simultaneously (and independently).

Task: Each player must guess correctly the value of their own die.

13

1414

Guessing Games on Graphs(continued)

Guessing Games on Graphs(continued)

Question: What is the probability that each player guess correctly the value of their own die?

Naïve (wrong) answer: Each player have no “relevant” information about their own die value. Each player have probability 1/s of guessing their own dice value. The n dice values are independent so the probability all players guess correctly is (1/s)n

This “argument” is seriously mistaken. Why?

Question: What is the probability that each player guess correctly the value of their own die?

Naïve (wrong) answer: Each player have no “relevant” information about their own die value. Each player have probability 1/s of guessing their own dice value. The n dice values are independent so the probability all players guess correctly is (1/s)n

This “argument” is seriously mistaken. Why?

14

1515

Guessing Games on Graphs(continued)

Guessing Games on Graphs(continued)

Let us check each claim: 1) Each player has no relevant information about their own dice.

This is correct

2) Each player have probability 1/s of guessing their own die value.

This is correct

3) The n dice values are independent

This is correct

4) The probability all players guess correctly is (1/s)n

Serious mistake based on a fallacy.

Let us check each claim: 1) Each player has no relevant information about their own dice.

This is correct

2) Each player have probability 1/s of guessing their own die value.

This is correct

3) The n dice values are independent

This is correct

4) The probability all players guess correctly is (1/s)n

Serious mistake based on a fallacy.

15

1616

Guessing Games on Graphs(continued)

Guessing Games on Graphs(continued)

The players can do MUCH better than (1/s)n

The players have a strategy that can “bootstrap” the success of anyone player such that player is correct if and only if all players are correct.

Strategy: Each player “assume” that the sum of all dice values is 0 modulo s, and guess accordingly.

This strategy succeed with probability 1/s i.e. a factor sn-1 better than random guessing

One player is correct if and only if all players are correct

The players can do MUCH better than (1/s)n

The players have a strategy that can “bootstrap” the success of anyone player such that player is correct if and only if all players are correct.

Strategy: Each player “assume” that the sum of all dice values is 0 modulo s, and guess accordingly.

This strategy succeed with probability 1/s i.e. a factor sn-1 better than random guessing

One player is correct if and only if all players are correct16

1717

Guessing Games on Graphs(continued)

Guessing Games on Graphs(continued)

The players have a guessing strategy where they all succeed with probability 1/s

(and independent of n).

The guessing strategy is optimal.

The guessing strategy can described globally:

Each player guess under the assumption that the sum of all dice values is 0 modulo s.

The players have a guessing strategy where they all succeed with probability 1/s

(and independent of n).

The guessing strategy is optimal.

The guessing strategy can described globally:

Each player guess under the assumption that the sum of all dice values is 0 modulo s.

17

1818

Guessing Games on Graphs(continued)

Guessing Games on Graphs(continued)

• The uncoordinated guessing strategy succeed with probability (1/s)n

• The optimal guessing strategy succeed with probability 1/s

• By cooperating the players “bootstrap” their success, by creating a strong correlation between when they succeed: Either all are wrong or all are right.

• The uncoordinated guessing strategy succeed with probability (1/s)n

• The optimal guessing strategy succeed with probability 1/s

• By cooperating the players “bootstrap” their success, by creating a strong correlation between when they succeed: Either all are wrong or all are right.

1919

Guessing Games on Graphs(continued)

Guessing Games on Graphs(continued)

Playing the guessing game on a graph* Requirements: A graph G with n nodes, n players, n dice each

with s sides

Rules: Each player correspond to a node in G. Each player rolls their die. A player is allowed only to see the dice values of the “incoming” nodes.

The play: The game is a cooperative game. Each player have to guess (possible by following some protocol) the value of their own dice. No communication between the players is allowed during the game.

The players have to make their guess simultaneously (and independently).

Task: Each player must guess correctly the value of their own die.

* In this talk graphs are directed graphs. Undirected graphs are treated as graphs with bi-directed edges.

Playing the guessing game on a graph* Requirements: A graph G with n nodes, n players, n dice each

with s sides

Rules: Each player correspond to a node in G. Each player rolls their die. A player is allowed only to see the dice values of the “incoming” nodes.

The play: The game is a cooperative game. Each player have to guess (possible by following some protocol) the value of their own dice. No communication between the players is allowed during the game.

The players have to make their guess simultaneously (and independently).

Task: Each player must guess correctly the value of their own die.

* In this talk graphs are directed graphs. Undirected graphs are treated as graphs with bi-directed edges.

2020

Guessing Games on Graphs(continued)

Guessing Games on Graphs(continued)

The complete graph Kn with bi-directed edges, corresponds to the

guessing game we already considered.

The guessing number of Kn is n-1

because we can do s(n-1) times better than random uncoordinated guessing.

For a general graph the task of the players is still to create a strong correlation between the correctness of their guesses

The complete graph Kn with bi-directed edges, corresponds to the

guessing game we already considered.

The guessing number of Kn is n-1

because we can do s(n-1) times better than random uncoordinated guessing.

For a general graph the task of the players is still to create a strong correlation between the correctness of their guesses

2121

2222

Network Coding ↔ Guessing NumbersNetwork Coding ↔ Guessing Numbers

Let N be a network with k input/output pairs. If we identify each input node with its corresponding output node, we get a graph GN.

Theorem:[Riis 2005] N has a Network coding solution over alphabet A if and only if GN has guessing number ≥ k (equivalent = k) over A.

Let N be a network with k input/output pairs. If we identify each input node with its corresponding output node, we get a graph GN.

Theorem:[Riis 2005] N has a Network coding solution over alphabet A if and only if GN has guessing number ≥ k (equivalent = k) over A.

22

2323

Network Coding ↔ Guessing Numbers(continued)

Network Coding ↔ Guessing Numbers(continued)

An even a stronger result is valid:

Theorem: [Riis 2005] Let N be a network with k

input/output pairs. The number of distinct network coding solutions to N is identical to the number of distinct guessing strategies for GN that achieves guessing number k

(the solutions are counted with respect to the same alphabet A).

An even a stronger result is valid:

Theorem: [Riis 2005] Let N be a network with k

input/output pairs. The number of distinct network coding solutions to N is identical to the number of distinct guessing strategies for GN that achieves guessing number k

(the solutions are counted with respect to the same alphabet A).

23

2424

Network Coding ↔ Guessing Numbers(continued)

Network Coding ↔ Guessing Numbers(continued)

2525

Network Coding ↔ Guessing Numbers(continued)

Network Coding ↔ Guessing Numbers(continued)

2626

Network Coding ↔ Guessing Numbers(continued)

Network Coding ↔ Guessing Numbers(continued)

The networks in b,c and d all appear by “splitting” the graph G in a.

“Splitting” is the opposite operation as identifying input/output pairs.

The networks in b,c and d has exactly the same number of network coding solutions (over a fixed alphabet A). This number is identical to the number of guessing strategies (over A) that achieve guessing number 3 for G.

The networks in b,c and d all appear by “splitting” the graph G in a.

“Splitting” is the opposite operation as identifying input/output pairs.

The networks in b,c and d has exactly the same number of network coding solutions (over a fixed alphabet A). This number is identical to the number of guessing strategies (over A) that achieve guessing number 3 for G.

26

2727

This was a basic introductionThis was a basic introduction

The results in this presentation were all introductory and from 2005

Since then:

Supervised two PhD thesis to completion on Guessing Games and Network Coding

Are 1.5 year into a EPSRC grant supporting 2 Post Docs on these topics.

The results in this presentation were all introductory and from 2005

Since then:

Supervised two PhD thesis to completion on Guessing Games and Network Coding

Are 1.5 year into a EPSRC grant supporting 2 Post Docs on these topics.

27

2828

This was a basic introductionThis was a basic introductionArea contains many deep and open question that are fundamental in understanding network communication

Spin off: The Network Coding - Guessing Game

approach has lead to new areas of research

Combinatorial Representations (2011) (With Peter Cameron and Max Gadouleau)

A generalisation of Matroid theory

Memoryless computation (2011) (With Max Gadouleau)

Dynamic communication networks (2011) (With Max Gadouleau)

Graph entropy and non-shannon information inequalities (Yun Sun PhD Thesis) (Riis 2008)

Construction of new classes of communication networks (with Max Gadouleau) (2010)

New max-flow min-cut theorem for multiuser communication (with Max Gadouleau) (2011)

Area contains many deep and open question that are fundamental in understanding network communication

Spin off: The Network Coding - Guessing Game

approach has lead to new areas of research

Combinatorial Representations (2011) (With Peter Cameron and Max Gadouleau)

A generalisation of Matroid theory

Memoryless computation (2011) (With Max Gadouleau)

Dynamic communication networks (2011) (With Max Gadouleau)

Graph entropy and non-shannon information inequalities (Yun Sun PhD Thesis) (Riis 2008)

Construction of new classes of communication networks (with Max Gadouleau) (2010)

New max-flow min-cut theorem for multiuser communication (with Max Gadouleau) (2011)

28

2929

Work in progress: Links to logic Work in progress: Links to logic

Sample question:

Let L be a first-order language and let

φ(x1,x2,...,xn) be an L-formula in n-variables.

Given s {2,3,4,...} find an L- model M of size s which ∈maximize the size of the set

{(a1,a2,...,an) M∈ n : M ||- φ(a1,a2,...,an)}

This type of questions is very broad - in many ways too broad - but instances for specific choice of the formula φ unifies quite diverse problems (hat-puzzles, guessing games, network coding, dynamic network coding etc.....)

Sample question:

Let L be a first-order language and let

φ(x1,x2,...,xn) be an L-formula in n-variables.

Given s {2,3,4,...} find an L- model M of size s which ∈maximize the size of the set

{(a1,a2,...,an) M∈ n : M ||- φ(a1,a2,...,an)}

This type of questions is very broad - in many ways too broad - but instances for specific choice of the formula φ unifies quite diverse problems (hat-puzzles, guessing games, network coding, dynamic network coding etc.....)

29

Application: By considering special quantifier free formula φ we get a result in many-to-many castingApplication: By considering special quantifier free formula φ we get a result in many-to-many casting

Under very general circumstances (dynamic, changing communication networks with link failure, distributed coding function, various user demands)

The following principle is valid for dispersion of information (like in many-to-many casting).

If there is a way to meet each user’s demands (disregarding all other users) it is possible to …..

*important disclaimer

Under very general circumstances (dynamic, changing communication networks with link failure, distributed coding function, various user demands)

The following principle is valid for dispersion of information (like in many-to-many casting).

If there is a way to meet each user’s demands (disregarding all other users) it is possible to …..

*important disclaimer

Application in many-to-many castingApplication in many-to-many casting

..to meet all demands simultaneously. ..to meet all demands simultaneously.

Thank you