4. deeper discussions - max planck...
TRANSCRIPT
![Page 1: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/1.jpg)
Chapter 4.
Deeper Discussions
Danupon NanongkaiKTH, Sweden
1ADFOCS 2018Last edited: Aug. 16, 2018
![Page 2: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/2.jpg)
Plan
• Query‐update time tradeoffs• Other conjectures• Unconditional lower bounds• Partially‐dynamic algorithms
2
![Page 3: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/3.jpg)
Part 1
3
Query‐Update Time Tradeoffs
![Page 4: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/4.jpg)
Motivation
• So far, we focuses on outputting something small (yes/no, numbers) after each update.
• More realistic: output when users want.• Also: Users may just want part of the (large) output.
4
![Page 5: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/5.jpg)
5
Single‐Source Reachabilitywith queries
Thanks Thatchaphol Saranurak for slides
Example
![Page 6: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/6.jpg)
How should we define single‐source reachability?
Option 1: Output list of reachable nodes • is an obvious update time lower bound• ... not so interestingOption 2: Answer query “Can s reach u?”• Possible to get polylog update time in this case?
• Let’s look into this
6
![Page 7: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/7.jpg)
S
2 4
1 3
5
1. Preprocess
Single Source Reachability (ss‐Reach)
![Page 8: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/8.jpg)
2 4
1 3
5
1. Preprocess
Reach(1)?Insert(4,5)Delete(s,2)Reach(5)?Delete(3,4)Reach(5)?
……
2. Updates/QueriesNO
Single Source Reachability (ss‐Reach)
S
![Page 9: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/9.jpg)
2 4
1 3
5
Reach(1)?Insert(4,5)Delete(s,2)Reach(5)?Delete(3,4)Reach(5)?
……
2. Updates/Queries1. Preprocess
Single Source Reachability (ss‐Reach)
S
![Page 10: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/10.jpg)
2 4
1 3
5
Reach(1)?Insert(4,5)Delete(s,2)Reach(5)?Delete(3,4)Reach(5)?
……
2. Updates/Queries1. Preprocess
Single Source Reachability (ss‐Reach)
S
![Page 11: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/11.jpg)
2 4
1 3
5
Reach(1)?Insert(4,5)Delete(s,2)Reach(5)?Delete(3,4)Reach(5)?
……
YES2. Updates/Queries1. Preprocess
Single Source Reachability (ss‐Reach)
S
![Page 12: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/12.jpg)
2 4
1 3
5
Reach(1)?Insert(4,5)Delete(s,2)Reach(5)?Delete(3,4)Reach(5)?
……
YES2. Updates/Queries1. Preprocess
Single Source Reachability (ss‐Reach)
S
![Page 13: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/13.jpg)
A Naïve Algorithm for (fully dynamic) ss‐Reach:
Update time
Query time
BFS from when update (worst‐case)
𝑚 = max #edges𝑛 = #nodes
![Page 14: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/14.jpg)
Reduction from ‐OuMv to ss‐Reach (sketched)
Sketch:1. For each 𝑢 , 𝑣 : 𝒏𝜸 updates and 𝒏
queries2. 𝜸‐OuMv implies that amortized time
over 𝒏𝜸 updates and 𝒏 queries cannot be 𝑶 𝒏𝟏 𝜸 𝝐 for any 𝜖 0.
3. If query time is 𝑛 , then update time cannot be 𝑶 𝒏𝟏 𝝐 for any 𝜖 0.
4. For any 𝝐′ 0, update time of 𝐎 𝒎𝟏 𝝐 implies amortized time of 𝑶 𝒏 𝟏 𝜸 𝟏 𝝐 .
5. … which is 𝑂 𝑛 for some 𝜖 0 for small enough 𝛾.
20
![Page 15: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/15.jpg)
Query
Update𝑚𝑚 /
𝑚
𝑚
𝑚
BFS when update
BFS when queryQuery
Update𝑛𝑛
𝑛
𝑛
𝑛
Sankowski’04
𝑛 . , 𝑛 .
Forbiddenby OMv
Forbiddenby OMv
Bounds for ss‐Reach via OMv
![Page 16: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/16.jpg)
Further notes
• OMv (in fact ‐OuMv) gives tight lower bounds of query time and update‐query tradeoffs for many problems
24
![Page 17: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/17.jpg)
Query
Update
Forbiddenby OMv
𝑚𝑚 /
𝑚
𝑚
𝑚
Chan PatrascuRoditty’08
BFS when queryQuery
Update𝑛𝑛
𝑛
𝑛
𝑛
Kapron King Mountjoy’13
𝑚 , 𝑚
Forbiddenby OMv
Open: Close bounds for Subgraph Connectivity via OMv
![Page 18: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/18.jpg)
Part 2
27
Other Conjectures?
![Page 19: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/19.jpg)
As an algorithm designer, I’m not sure I should give up when I see
lower bounds from other conjectures.
28
But they sometimes guide to good directions.
![Page 20: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/20.jpg)
Example: st‐Reach
• Bounds hold only for small preprocessing time
• Time smaller than OMv• Bounds from BMM is only for “combinatorial” algorithms– They were broken by algorithms based on fast matrix multiplication
29
Prepro update query Conj
![Page 21: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/21.jpg)
Should I make new conjectures?Our own study case: st‐reach• After failing to further improve our algebraic algorithms for st‐reach and related problems. We made three conjectures. One of them:
30
v‐hinted OMv (informal) Input: Phase 1: Boolean matrix M, Phase 2: a Boolean matrix V, Phase 3: index 𝑖. Output the matrix‐vector product 𝑴𝑽𝒊, where 𝑉 is the i‐th column of V .Naïve algorithm: Compute 𝑀𝑉 in phase 2 or 𝑀𝑉 in phase 3. Conjecture: Nothing better than the naive algorithm.
• The three together give tight lower bounds for problems, including st‐reach.
![Page 22: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/22.jpg)
Part 3
31
Unconditional Lower Bounds?
![Page 23: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/23.jpg)
Typical Model: Cell‐ProbeDisclaimer: I’m not an expert
32
Conjectures are sometimes attempted in the cell‐probe model.
Examples:• [Cl‐Gr‐L’15]: Cell probe lower bounds for
OMv problem over very large finite fields F, space usage S=min(n log|F|,n2) when |F|=n(1) , S=O(n).– This does not imply the OMv Conjecture (need the
Boolean case).
• [Larsen‐Williams’17]: The OMv conjecture cannot be true on the cell‐probe model.
![Page 24: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/24.jpg)
Patrascu’s multiphase problem and communication modelMultiphase Problem: Three phases of inputs• Phase 1: Boolean matrix • Phase 2: Vector v• Phase 3: Integer Output: Naïve algorithm: Compute in phase 2 ( time) or
in Phase 3 ( time)Observe: OMv implies that the native algorithm is best.Weaker lower bounds can be derived from, e.g., 3SUM
33
![Page 25: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/25.jpg)
Patrascu’s multiphase problem and communication model
Claim: • If exists algorithm A with 𝑂 𝑛 . &
𝑂 𝑛 . ) time in Phases 2 & 3,• Then exists protocol where teacher
sends 𝑂 𝑛 . bits and Alice and Bob exchanges 𝑂 𝑛 . ) bits.
Proof:• Teacher sends what CPU wrote on
memory in Phase 2 to Alice. [𝑂 𝑛 . bits]
• Alice simulate Phase 3, and ask Bob for some missing bits (written in Phase 1). [𝑂 𝑛 . bits]
Enough to show lower bounds for communication with Advice
Naïve: Teacher sends 𝑀 (𝑂 𝑛 ) or Alice sends 𝑣 (𝑂 𝑛 )
Want: 𝑀𝑣
![Page 26: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/26.jpg)
Part 4
36
Partially‐Dynamic Algorithms
![Page 27: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/27.jpg)
Notes
• Partially dynamic means insertions‐only or deletions‐only
• Instead of amortized update time, we can analyze total update time instead.
• We have see:– Incremental connectivity with O(log n) worst‐case update time.
– Incremental single‐source reachability with O(m) total update time (O(1) amortized).
38
![Page 28: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/28.jpg)
Motivation
• Enough for some data: social networks rarely have deletions (“unfriend”)
• Sometimes equivalent to fully‐dynamic case– E.g. fully‐dynamic connectivity is equivalent to the deletion‐only one
• Enough as a subroutine for some problems
39
Decremental All‐Pairs Shortest Paths [Roditty‐Zwick FOCS’04]
Approx. multi‐commodity flow [Madry STOC’10]
Decremental SSSP [HKN FOCS’14, ?] Approx. s‐t flow Decremental min‐cut (restricted) Interval Packing, Traveling salesperson [Chekuri‐Quanrud SODA’17, FOCS’17]
![Page 29: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/29.jpg)
Example: Dyn. Shortest Paths Max Flow
40
s
t
s
t
(1+)
(1+)
s
t
(1+)
(1+)(1+)
(1+)
Known: Randomizedm1+o(1) total update time [HenzingerKN. FOCS’14]
Garg‐Konemann [FOCS’98], Madry [STOC’10]: Deterministic m1+o(1) total update time for weighted (1+)‐approxdecremental st‐shortest path m1+o(1) ‐time (1+)‐approx max flow
Randomized algorithm against adaptive adversary is also enough.
![Page 30: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/30.jpg)
41
st‐Distance under insertions
Thanks Thatchaphol Saranurak for slides
Example 1:
(It is possible to prove tight total update time!)
![Page 31: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/31.jpg)
42
Theorem [Even‐Shiloach JACM’81, Dinitz’71]
A BFS tree can be maintained with O(mn) total time for m edge insertions.
(Thus O(n) amortized over m insertions)
![Page 32: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/32.jpg)
Even‐Shiloach [JACM’81]
43
Well‐known as Even‐Shiloach Tree (ES‐tree)
![Page 33: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/33.jpg)
Dinitz [Voprosy Kibernetiki’71]
44For detail, see “Dinitz' Algorithm: The Original Version and Even's Version”
Original version of Dinitz’s maxflow algorithm
![Page 34: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/34.jpg)
Description of Even‐Shiloach tree as nodes talking to each other
45
![Page 35: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/35.jpg)
\begin{technical}
46
Optional
![Page 36: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/36.jpg)
Compute BFS tree from s. Every node maintains its level.
47
s
e
b
c
f
d
level=2level=2
level=3
level=1 level=1
47
![Page 37: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/37.jpg)
Add edge (s, b) s and b check if their levels should change
48
s
e
b
c
f
d
level=2level=2
level=3
level=1 level=1
48
![Page 38: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/38.jpg)
49
s
e
b c
f
d
level=2
level=1
level=3
level=1 level=1
49
b changes its level. It informs this to all neighbors.
![Page 39: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/39.jpg)
50
s
e
b c
f
d
level=2
level=1
level=2
level=1 level=1
50
Neighbors check if they should change levels.Node e should in this case.Again e informs neighbors.
level(e
)=2
This is what we obtain after adding (s,b)
![Page 40: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/40.jpg)
Even‐Shiloach tree can be implemented in such a way that
total update time = number of messages
51
s
e
b c
f
d
level=2
level=1
level=2
level=1 level=1Takes
2time steps
![Page 41: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/41.jpg)
Exercise
Number of messages (thus time complexity) after m insertions is
O(mn)
52
Hint
Node v sends degree(v) messages every time level(v) decreases.
![Page 42: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/42.jpg)
\end{technical}
53
![Page 43: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/43.jpg)
Tight Lower Bound
Lemma: st‐distance cannot have total update time , assuming the OMv conjecture.
Proof sketch:
54
yes No
dist(s,t)=2n+1 iff “yes” dist(s,t)=2(n‐1)+1 iff “yes”
![Page 44: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/44.jpg)
55
st‐Reach under insertions
Thanks Thatchaphol Saranurak for slides
Example 2
![Page 45: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/45.jpg)
This example shows …
• Converting amortized fully‐dynamic lower to worst‐case (only!) for partially‐dynamic lower bounds.
• It works for most problems.
57
![Page 46: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/46.jpg)
Claim: Incremental st‐Reach has worst‐case lower bound
• Trick: Undo (roll‐back) insertions before new insertions• Worst‐case update time 𝟎.𝟗 𝟏.𝟗 time per
. Contradicting OuMv conj.
58
Undo + add new edges
Doesn’t work for total update time: If assume, say, 𝑶 𝒏𝟐 total update time, we may spend 𝑶 𝒎𝒏𝟏 𝝐 time per 𝐿 , 𝑅 . Nothing to contradict.
![Page 47: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/47.jpg)
62
Questions?
This project has received funding from the European Research Council (ERC) under the European Union's Horizon 2020 research and innovation programme under grant agreement No 715672
Acknowledgements: Sayan Bhattacharya, Jan van den Brand, Deeparnab Chakraborty, Sebastian Forster, Monika Henzinger, Christian Wulff‐Nilsen, Thatchaphol Saranurak
![Page 48: 4. Deeper Discussions - Max Planck Societyresources.mpi-inf.mpg.de/conferences/adfocs-18/danupon/4...ANaïveAlgorithm for (fully dynamic) ss‐Reach: Update time Query time BFSfrom](https://reader033.vdocuments.us/reader033/viewer/2022050110/5f47ded235855c18f720c34e/html5/thumbnails/48.jpg)
63