310 likes | 392 Views
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:
E N D
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: • 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 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.
Ordinary 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
Basic ideas of Network Coding • 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
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? 6
Basic 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 7
Basic ideas of Network Coding • Example 2: The Butterfly Network • This problem equivalent to the satellite communication problem.
Basic ideas of Network Coding • 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)
Basic 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) Observation: f,g: A2 →A solves the problem if and only (f,g) defines two orthogonal latin squares of order |A| 10
00 01 10 11 10 11 00 01 11 10 01 00 01 00 11 10 Basic 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 11
Digital 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
Guessing Games on Graphs • The following class of problems looks recreational but they go straight to the heart of central problems in Network Coding • Guessing Game (Riis1997) • Requirements: n players + n dice each withs 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
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? 14
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. 15
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 16
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. 17
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.
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.
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
Network 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. 22
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). 23
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. 26
This 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. 27
This was a basic introduction • 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
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) ∈ Mn : 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 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
Application in many-to-many casting • ..to meet all demands simultaneously. Thank you