Table of Contents
Fetching ...

Connectivity Oracles for Predictable Vertex Failures

Bingbing Hu, Evangelos Kosinas, Adam Polak

TL;DR

It is argued that the preprocessing time and query time of the data structure are conditionally optimal under standard fine-grained complexity assumptions.

Abstract

The problem of designing connectivity oracles supporting vertex failures is one of the basic data structures problems for undirected graphs. It is already well understood: previous works [Duan--Pettie STOC'10; Long--Saranurak FOCS'22] achieve query time linear in the number of failed vertices, and it is conditionally optimal as long as we require preprocessing time polynomial in the size of the graph and update time polynomial in the number of failed vertices. We revisit this problem in the paradigm of algorithms with predictions: we ask if the query time can be improved if the set of failed vertices can be predicted beforehand up to a small number of errors. More specifically, we design a data structure that, given a graph $G=(V,E)$ and a set of vertices predicted to fail $\widehat{D} \subseteq V$ of size $d=|\widehat{D}|$, preprocesses it in time $\tilde{O}(d|E|)$ and then can receive an update given as the symmetric difference between the predicted and the actual set of failed vertices $\widehat{D} \triangle D = (\widehat{D} \setminus D) \cup (D \setminus \widehat{D})$ of size $η= |\widehat{D} \triangle D|$, process it in time $\tilde{O}(η^4)$, and after that answer connectivity queries in $G \setminus D$ in time $O(η)$. Viewed from another perspective, our data structure provides an improvement over the state of the art for the \emph{fully dynamic subgraph connectivity problem} in the \emph{sensitivity setting} [Henzinger--Neumann ESA'16]. We argue that the preprocessing time and query time of our data structure are conditionally optimal under standard fine-grained complexity assumptions.

Connectivity Oracles for Predictable Vertex Failures

TL;DR

It is argued that the preprocessing time and query time of the data structure are conditionally optimal under standard fine-grained complexity assumptions.

Abstract

The problem of designing connectivity oracles supporting vertex failures is one of the basic data structures problems for undirected graphs. It is already well understood: previous works [Duan--Pettie STOC'10; Long--Saranurak FOCS'22] achieve query time linear in the number of failed vertices, and it is conditionally optimal as long as we require preprocessing time polynomial in the size of the graph and update time polynomial in the number of failed vertices. We revisit this problem in the paradigm of algorithms with predictions: we ask if the query time can be improved if the set of failed vertices can be predicted beforehand up to a small number of errors. More specifically, we design a data structure that, given a graph and a set of vertices predicted to fail of size , preprocesses it in time and then can receive an update given as the symmetric difference between the predicted and the actual set of failed vertices of size , process it in time , and after that answer connectivity queries in in time . Viewed from another perspective, our data structure provides an improvement over the state of the art for the \emph{fully dynamic subgraph connectivity problem} in the \emph{sensitivity setting} [Henzinger--Neumann ESA'16]. We argue that the preprocessing time and query time of our data structure are conditionally optimal under standard fine-grained complexity assumptions.
Paper Structure (23 sections, 6 theorems, 1 equation, 2 figures, 4 algorithms)

This paper contains 23 sections, 6 theorems, 1 equation, 2 figures, 4 algorithms.

Key Result

Theorem 1

There is a (deterministic) connectivity oracle for predictable vertex failures with $\tilde{O}(dm)$ preprocessing time and space, $\tilde{O}(\eta^4)$ update time, and $O(\eta)$ query time.

Figures (2)

  • Figure 1: The decomposition graph after we further remove $D \setminus \widehat{D}$ from $T$ and add back $\widehat{D} \setminus D$. On the left hand side we have $T \setminus (D \setminus \widehat{D})$. The black vertices $f_1, \ldots, f_8$ are failed vertices in $D \setminus \widehat{D}$. The white pentagonal arrows represent internal components. The light grey triangles represent hanging subtrees. The blue edges represent back-edges between connected components of $T \setminus (D \setminus \widehat{D})$. On the right hand side we have $\widehat{D} \setminus D$. The edges with an end in $\widehat{D} \setminus D$ are colored green.
  • Figure 2: The connectivity graph $\mathcal{M}$ for the example shown in Figure \ref{['fig:graph']}. Edges are labeled with their types. The left hand side of the dotted line are vertices representing the internal components of $T \setminus (D \setminus \widehat{D})$; the right hand side of the dotted line are vertices in $\widehat{D} \setminus D$. Edge $(r_{C_1}, r_{C_3})$ is due to a back-edge between $C_1$ and $C_3$. Edges $(r_{C_2}, r_{C_5}), (r_{C_2}, u_5), (r_{C_5}, u_5), (u_1, u_2)$ are all due to mutual connections to a hanging subtree. Edges $(r_{C_4}, u_1), (u_3, u_4)$ are both due to direct edges. Vertices in the same connected component are filled with the same color.

Theorems & Definitions (10)

  • Theorem 1
  • Theorem 2
  • Remark
  • Definition 3
  • Lemma 4
  • proof
  • Lemma 5: Kosinas23 Lemma 4(2)
  • Lemma 6: Kosinas23 Lemma 8
  • Theorem 7: Vassilevska Williams and Xu WilliamsX20
  • proof : Proof of Theorem \ref{['thm:lowerbound']}