1 of 39

Pairwise Reachability Oracle and Preserver under failures

DIPTARKA CHAKRABORTY (NUS)

KUSHAGRA CHATTERJEE (NUS)

KEERTI CHOUDHARY (IIT DELHI)

2 of 39

What is Pairwise Reachability Preserver?

It’s a sparse subgraph H, which preserves the reachability property in between a set of vertex pairs P, even after bounded number failures.

3 of 39

What is Pairwise Reachability Preserver?

It’s a sparse subgraph H, which preserves the reachability property in between a set of vertex pairs P, even after bounded number failures.

We call H as k-FTRS (Fault tolerant Reachability Subgraph)

k

Demand Pairs

4 of 39

Example of Pairwise Reachability Preserver

Preserves Reachability

with no failures (k = 0)

G

H

5 of 39

Example of Pairwise Reachability Preserver

Preserves Reachability

with no failures (k = 0)

Cannot preserve reachability

with one failure (k = 1)

G

H

G

H

6 of 39

Example of Pairwise Reachability Preserver

Preserves Reachability

with no failures (k = 0)

Cannot preserve reachability

with one failure (k = 1)

G

H

G

H

1-FTRS

7 of 39

Pairwise Reachability Preserver

S/N

Graph Type

Pair Type

No. of

Failures

Size of the Preserver

1

Directed Graph

(Single Source FTRS (SS-FTRS) )

OR

(Single Destination FTRS (SD-FTRS)

2

Directed Graph

Any pair P

3

Directed Graph

Any pair P

Single Failure

Previous Results

Baswana et al (STOC 2016)

Chakraborty and Choudhary (ICALP 2020)

(Corollary)

8 of 39

Pairwise Reachability Preserver (Our Work)

Problem

Dual Failure

k failures

Reachability Preserver

9 of 39

What is Pairwise Reachability Oracle?

It’s a data structure D which answers the reachability query after bounded number of failures in between a given pair of vertices.

10 of 39

What is Pairwise Reachability Oracle?

It’s a data structure D which answers the reachability query after bounded number of failures in between a given pair of vertices.

We call D as k-FTRO (Fault Tolerant Reachability Oracle)

k

11 of 39

Our work

Problem

Single Failure

Dual Failure

Reachability Oracle

Query Time: O(1)

12 of 39

Today’s Talk

Problem

Single Failure

Dual Failure

k failures

Reachability Oracle

Reachability Preserver

13 of 39

Upper Bound Construction of 2-FTRS (Single Pair)

S

t

S

t

G

14 of 39

Upper Bound Construction of 2-FTRS (Single Pair)

S

t

S

t

G

(Baswana et al)

15 of 39

Upper Bound Construction of 2-FTRS (Single Pair)

s

t

a

b

c

  • For any pair (s,t) we consider two such paths and which intersects only at (s,t) cut vertices and cut edges.

Outer strands

16 of 39

Upper Bound Construction of 2-FTRS (Single Pair)

s

t

a

b

c

  • For any pair (s,t) we consider two such paths and which intersects only at (s,t) cut vertices and cut edges.

  • For 1-FTRS, it is enough to preserve these two paths.

  • Is it enough to preserve these two paths for 2-FTRS?

Outer strands

17 of 39

Upper Bound Construction of 2-FTRS (Single Pair)

s

a

b

c

  • For any pair (s,t) we would get two such paths and which intersects only at (s,t) cut vertices and cut edges.

  • Is it enough to preserve these two paths for 2-FTRS?

  • No, because if there are failures one on and another on , there might be a coupling path such that t is reachable from s using that coupling path.

Coupling Path

Outer strands

t

18 of 39

Pruning of Coupling paths

s

t

Type A

19 of 39

Pruning of Coupling paths

s

t

Type A

20 of 39

Pruning of Coupling paths

s

t

Type A

21 of 39

Pruning of Coupling paths

s

t

s

s

t

Type A

Type B

22 of 39

Pruning of Coupling paths

s

t

s

s

t

Type A

Type B

23 of 39

Pruning of Coupling paths

s

t

s

s

t

Type A

Type B

= Outer Strands + Coupling Paths

= O(n)

24 of 39

Why 2-FTRS?

s

t

s

t

Type A

Type B

25 of 39

Upper Bound Construction of 2-FTRS

s

t

26 of 39

Upper Bound Construction of 2-FTRS

s

t

  • We create a hitting set of size

Hitting Set which hits all the - subpaths

27 of 39

Upper Bound Construction of 2-FTRS

s

t

  • We create a hitting set of size

  • We construct SS-SD 2-FTRS from each vertex in the hitting set.

Hitting Set (H) which hits all the - subpaths

OR

(Baswana et al)

28 of 39

Upper Bound for 2-FTRS

S

T

G

SS-SD FTRS of each vertex in the hitting set. ( )

Union of all the - paths

SS-SD FTRS of each vertex in the hitting set.

29 of 39

Upper Bound for 2-FTRS

S

T

G

SS-SD FTRS of each vertex in the hitting set. ( )

Union of all the - paths

SS-SD FTRS of each vertex in the hitting set.

Union of all the - paths

30 of 39

Upper Bound for 2-FTRS

S

T

G

SS-SD FTRS of each vertex in the hitting set. ( )

Union of all the - paths

SS-SD FTRS of each vertex in the hitting set.

Union of all the - paths

Union of all coupling paths ( after sparsification)

31 of 39

Upper Bound for 2-FTRS

S

T

G

SS-SD FTRS of each vertex in the hitting set. ( )

Union of all the - paths

SS-SD FTRS of each vertex in the hitting set.

Union of all the - paths

Union of all coupling paths ( after sparsification)

32 of 39

Getting rid of log n factor

S

T

SS-SD FTRS of each vertex in the hitting set. ( )

Union of all the - paths

SS-SD FTRS of each vertex in the hitting set.

Union of all the - paths

Union of all coupling paths ( after sparsification)

Fractional Hitting Set

33 of 39

Lower Bound for 2-FTRS

  • Take two arbitrary integers N and r.

34 of 39

Lower Bound for 2-FTRS

Each path is of length N.

  • Take two arbitrary integers N and r.

  • We take r paths of length N in both blocks A and B.

BLOCK A

BLOCK B

35 of 39

Lower Bound for 2-FTRS

Each path is of length N.

  • Take two arbitrary integers N and r.

  • We take r paths of length N in both blocks A and B.

  • We create a complete bipartite graph in between the vertices at level in Block A with the vertices at level in Block B

BLOCK A

BLOCK B

Level

All Pairs in are in the edge-set

36 of 39

Lower Bound for 2-FTRS

Each path is of length N.

  • Take two arbitrary integers N and r.

  • We take r paths of length N in both blocks A and B.

  • We create a complete bipartite graph in between the vertices at level in Block A with the vertices at level in Block B

  • Let

  • Hence, , and , . Hence,

BLOCK A

BLOCK B

Level

All Pairs in are in the edge-set

37 of 39

Lower Bound for 2-FTRS

Each path is of length N.

  • Take two arbitrary integers N and r.

  • We take r paths of length N in both blocks A and B.

  • We create a complete bipartite graph in between the vertices at level in Block A with the vertices at level in Block B

  • Let

  • Hence, , and , . Hence,

BLOCK A

BLOCK B

Level

All Pairs in are in the edge-set

38 of 39

Future Works

Problem

Single Failure

Dual Failure

k failures

Reachability Oracle

Reachability Preserver

(Closing the Gap)

(Closing the Gap)

Get a better bound

39 of 39

THANK YOU