540 likes | 654 Views
Cell Probe Complexity - An Invitation. Peter Bro Miltersen University of Aarhus. The “Were-you-last?” Game. m players wait in separate cubicles. One by one, they are taken to a game room .
E N D
Cell Probe Complexity - An Invitation Peter Bro Miltersen University of Aarhus
The “Were-you-last?” Game • m players wait in separate cubicles. • One by one, they are taken to a game room. • When a player leaves the game room, he is asked if he was the last of the m players to go there and must answer correctly.
Inside the Game Room 1 2 0 4 3 6 8 10 11 9
Inside the Game Room, II • The player can open at most t boxes • He can put a pebble in an empty box or remove the pebble from a full box • He must close a box before opening the next one
Winning the Game • The players win if all players answer correctly. • How small can t be as a function of m to ensure that the players have a winning strategy?
A Counter • The players make boxes 0,1,..,t-1represent the number of players having already been in the room • The counter can be incremented and read opening at most t boxes
Alternative Counter I Number of blocks Type of first block Size of each block
Alternative Counter, II • Each entry in (1,5; 1,1,3,5,2) can be specified using ≈ log log m bits. • The Counter can be incremented touching only 4 entries ≈ 4 log log m bits.
Problem: How can a player tell if the value m has been reached?
Alternative Counter, III • Test for 0: The vector should start (0,1; …). • Start the counter at m – Each player decrements the counter.
Problem: The players can’t make the counter start at m – initially, all boxes must be empty!
Alternative Counter, IV • The players would have liked boxes to contain pebbles initially. • Patch: They follow their protocol, but maintain that boxes are in the opposite state of what they are supposed to. Thus, the players win!
Decision Assignment Tree Strategy for a player: Open box 7 7 If it contains a pebble, Remove it, and go here 0/1 1/0 5 0/0 1/0 yes no no yes
Sunflower Sunflower center is the same for all i,j
Every large set system contains a large sunflower. Erdös-Rado Sunflower Lemma
Why the players lose: : The boxes appearing in the decision assignment tree of each player : A big sunflower. : The other sets
Why the players lose, II Sequence: Center states: Pigeon hole principle: for some k, l, New sequence:
The Game = A Dynamic Problem Maintain a subset S of {1,..,m} under Insert(x): Insert x into S. Full(): Is S={1,..,m}?
The Room = Cell Probe Model • Boxes = memory cells. • Pebble or no pebble = 0 or 1 (word size w=1) • Opening a box = accessing a memory cell. • Decision assignment tree for a player = implementation of an operation.
The Cell Probe Model • An information theoretic model for solutions to dynamic data structure problems • Only memory accesses are counted • Each operation in the solution is assigned a decision assignment tree – the worst case complexity is the depth of the tree.
Why study cell probe complexity? • Lower bounds in the cell probe model are valid for a unit cost random access machine with the same word size, independent of the instruction set. • Fundamental combinatorial complexity measure.
This invitation to cell probe complexity • Focuses on worst case time per operation (rather than amortized, and/or tradeoffs) • Focuses on dynamic problems (rather than static ones) • Focuses first on w = 1, i.e., on bit probe complexity
Why Study Bit Probe Complexity? • Log cost RAM. • Large lower bounds would be still be large if divided by w. • Coding theoretic interpretation: Locally decodable source codes. • All known results have easy proofs.
Dynamic Graph Problems Dynamic Graph Connectivity: Maintain G =({1,..,n},E) under Insert(e):Insert e into E. Delete(e):Delete e from E. Connected(u,v):Are u and v connected?
DGC, best known bounds Upper bounds: • Worst case time bit probes per operation [Henzinger and King] • Amortized time bit probes per operation [Holm, de Lichtenberg, Thorup] Lower bound: • Ω(log n/log log n) bit probes per operation [Fredman]
A lower bound for dynamic connectivity State 0=(0,0,0,…,0) State 3 State 1 State 2 State 4
Lower Bound For DGC, II • State 1,2,..,n all have Hamming weight at most t. • We can distinguish between the states using a decision tree of depth d=O(t log n).
Lower Bound For DGC, III 7 The sequence 001 is unique for State 3 and contains at most t zeros 0 1 5 0 1 0 1 State 3
Lower bound for DGC, IV n≤ # ways to arrange at most t ones in a sequence of length at most d t = Ω(log n/log log n)
Dynamic Circuit Value Maintain Boolean Circuit C under Insert(g,h):Insert wire from output of gate g to input of gate h Switch(g): Switch gate g between AND,OR Evaluate(): Return value of circuit
Dynamic Circuit Value Best known algorithm for DCV: Reevaluate from scratch. Best known lower bound in bit probe model: Ω(log n) bits must be touched in some operation.
Dynamic Language Membership Problems Given Boolean language L. Maintain Boolean string x of length n under Change(i,a): Set ith bit of x to a. Member(): Is x a member of L? Dynamic graph connectivity Dynamic UGAP
Completeness of DCV Dynamic circuit value needs Ω(log n) bit probes per operation The dynamic language membership problem for some language in P needs Ω(log n) bit probes per operation.
Element distinctness Element distinctness language: ED = binary strings x consisting of n blocks, each of length 2 log n, all different. Dynamic ED needs Ω(log n) bit probes per operation.
Lower bound for dynamic ED By fixing all blocks, except the first, we create a solution to a subproblem. #decision assignment tree systems of depth t ≥ #subproblems Dynamic ED needs Ω(log n) bit probes per operation.
A sad situation • We don’t know any lower bounds for DCV better than Ω(log n) bit probes. • Thus we don’t know any lower bound for any dynamic language membership problem in P better than Ω(log n) bit probes. • We suspect many problems in P needs Ω(n) bit probes.
The transdichotomous model Problem: • Problem over universe of size m. • Problem instance of size (i.e., #elements of universe) n. Cell probe solution: • Word size w = log m. • Time bound should be a function ofn only.
Dynamic Search Problems Maintain subset S of {1,..,m} under Insert(x): Insert x into S. Delete(x): Delete x from S. and queries like Member(x): Is x in S ? Predecessor(x): What is max{y| y≤x, y in S} ? HammingNeighbor(x): Return Hamming neighbor of x in S.
Transdichotomous upper bounds Dynamic member and predecessor : • AVL trees: O(log n) cell probes per operation. • Andersson/Thorup’99: cell probes per operation. Dynamic Hamming neighbor: • Trivial bound: O(n) cell probes per operation.
Dynamic algebraic problems Dynamic polynomial multiplication: Maintain two polynomials f,g of degree at most n over GF(m) under Change-f(i,a): Let ith coefficient of f be a. Change-g(i,a): Let ith coefficient of g be a. Query(j): What is the jth coefficient of fg?
Transdichotomous upper bound Dynamic polynomial multiplication: • cell probes per operation [Reif and Tate]
Transdichotomous lower bounds Lower bound of Ω(f(n)) No transdichotomous upper bound of o(f(n)). There are c, , so that any solution with parameters uses at least cell probes.
Transdichotomous lower bounds, II • We are free to choose the size of the universe as large as we want. • This makes large lower bounds possible using current techniques. • It also makes the lower bounds somewhat less interesting.
Transdichotomous lower bounds, III • Dynamic predecessor: cell probes per operation is necessary [Beame and Fich] • Dynamic Hamming neighbor:cell probes per operation is necessary [Barkol and Rabani] • Dynamic polynomial multiplication: cell probes per operation is necessary [Frandsen,Hansen,Miltersen] • Dynamic graph connectivity: cell probes per operation is necessary [Fredman and Saks]
Two main techniques • Communication complexity method [Ajtai] • Time stamp method [Fredman and Saks]
Communication Complexity Technique Given dynamic problem, construct two-party communication problem: Alice gets state reachable within d operations from the initial state. Bob gets a query operation. Upper bound for dynamic problem implies upper bound for communication problem Hence, lower bound for communication problem implies lower bound for dynamic problem.