(data) structures mihai p ă trașcu. lsd dyn. marked ancestor reachability oracles in the butterfly...

Post on 17-Dec-2015

221 Views

Category:

Documents

3 Downloads

Preview:

Click to see full reader

TRANSCRIPT

(Data) STRUCTURES

Mihai Pătrașcu

LSD

dyn. marked ancestor

reachability oracles in the butterfly

partial match (1+ε)-ANN ℓ1, ℓ2

NN in ℓ1, ℓ23-ANN in ℓ∞

worst-caseunion-find dyn. trees, graphs

dyn. 1D stabbing

partial sums

2D stabbing

4D reporting 2D counting

dyn. NN in 2D

dyn. 2D reporting

LSD

dyn. marked ancestor

reachability oracles in the butterfly

partial match (1+ε)-ANN ℓ1, ℓ2

NN in ℓ1, ℓ23-ANN in ℓ∞

worst-caseunion-find dyn. trees, graphs

dyn. 1D stabbing

partial sums

2D stabbing

4D reporting 2D counting

dyn. NN in 2D

dyn. 2D reportingbetter bound

simpler, same bound

simpler, loses lglg n

How Hard is Range Reporting?SELECT * FROM employeesWHERE salary <= 70000 AND startdate <= 1998

70000

69000

68000

71000

Static, 2D: O(lglg n)[Alstrup, Brodal, Rauhe

FOCS’00]

Dynamic, 2D: Ω(lg n / lglg n)[Alstrup,Husfeldt, Rauhe

FOCS’98]

How Hard is Range Reporting?Static, 2D: O(lglg n)

[Alstrup, Brodal, Rauhe FOCS’00]

Dynamic, 2D: Ω(lg n / lglg n)[Alstrup,Husfeldt, Rauhe

FOCS’98]Marked Ancestor: * mark(v) / unmark(v)

* query(v): ? ∃marked ancestor

Dyn. 1D Stabbing: * insert/delete segment * query(x): does

x stab a segment?

Dyn. 2D Range Reporting

How Hard is Range Reporting?Static, 2D: O(lglg n)

[Alstrup, Brodal, Rauhe FOCS’00]

Dynamic, 2D: Ω(lg n / lglg n)[Alstrup,Husfeldt, Rauhe

FOCS’98]

Static 3D ≈ Dynamic 2D ?

Persistence

Persistent : { static data struct. } ⟼ { dynamic data struct. }

Given problem with ℙ updateℙ(x), queryℙ(y)

Persistent( ) = the problem ℙ“preprocess (x1, x2, …, xN) to answer:

query(y, t): answer queryℙ(y) after updateℙ(x1), …, updateℙ(xt)”

Persistent(incremental 2D range reporting)= static 3D range reporting

How Hard is Range Reporting?Static, 2D: O(lglg n)

[Alstrup, Brodal, Rauhe FOCS’00]

Dynamic, 2D: Ω(lg n / lglg n)[Alstrup,Husfeldt, Rauhe FOCS’98]

Static 3D = Persistent(Dynamic 2D)

But: Persistent(Marked Ancestor) has O(1) solution…

[Nekrich SoCG’07] static 3D in O(lg2lg n)…

How Could 4D be Hard?

Fully-persistent data structures:

FullyPersistent(Marked Ancestor)≤ Static 2D Stabbing≤ Static 4D Reporting

v0

v1 v2

v3

v6

v4v5

v7

query(y)?

update(y)

FullyPersistent (Marked Ancestor)

FullyPersistent (Marked Ancestor)

FullyPersistent (Marked Ancestor)

“reachabilityoracles”

Lopsided Set Disjointness

Review: Communication Complexity

set Sset T

“is S ∩ T = ?”∅

LSD Lower Bounds

May assume universe is of size 2T… split in blocks of size B=2T/S

Say Alice sends εS lg B∙ bits ⇒ in average block, Alice’s value is uncertain in a set of B1-ε’

⇒ Bob must identify his elements in uncertainty sets,sending Ω(S B∙ 1-ε’) bits

LSD Reachability Oracles➙

LSD Reachability Oracles➙

T = { } = deleted edges

LSD Reachability Oracles➙

T = { } = deleted edgesS = { } = one out-edge / node

LSD

dyn. marked ancestor

reachability oracles in the butterfly

partial match (1+ε)-ANN ℓ1, ℓ2

NN in ℓ1, ℓ23-ANN in ℓ∞

worst-caseunion-find dyn. trees, graphs

dyn. 1D stabbing

partial sums

2D stabbing

4D reporting 2D counting

dyn. NN in 2D

dyn. 2D reporting

The End

top related