Fault-Tolerant Distance Labeling for Planar Graphs
Aviv Bar-Natan, Panagiotis Charalampopoulos, Pawe? Gawrychowski, Shay Mozes, Oren Weimann
aa r X i v : . [ c s . D S ] F e b Fault-Tolerant Distance Labeling for Planar Graphs
Aviv Bar-Natan , Panagiotis Charalampopoulos , Pawe l Gawrychowski , Shay Mozes ,and Oren Weimann University of Haifa, Israel, [email protected], [email protected] The Interdisciplinary Center Herzliya, Israel,[email protected], [email protected] University of Wroc law, Poland, [email protected]
Abstract
In fault-tolerant distance labeling we wish to assign short labels to the verticesof a graph G such that from the labels of any three vertices u, v, f we can infer the u -to- v distance in the graph G \ { f } . We show that any directed weighted planargraph (and in fact any graph in a graph family with O ( √ n )-size separators, such asminor-free graphs) admits fault-tolerant distance labels of size O ( n / ). We extendthese labels in a way that allows us to also count the number of shortest paths,and provide additional upper and lower bounds for labels and oracles for countingshortest paths. Computing distances in graphs is one of the most basic and important problems in graphstheory, both from theoretical and practical points of view. In this work we consider distancelabeling schemes, in which one preprocesses a network to assign labels to the vertices, so thatthe distance between any two vertices u and v can be recovered from just the labels of u and v (and no other information). The main criteria of interest are foremost the size of the label,and to a lesser extent the time it takes to recover the distance from a given pair of labels (querytime). Distance labeling schemes are useful in the distributed setting, where it is advantageousto be able to infer distances based only on local information such as the labels of the sourceand destination. This is the case in communication networks or in disaster stricken areas, wherecommunication with a centralized entity is infeasible or downright impossible.Considering the latter scenario of disaster management, it is not only likely that a disastrousevent makes communication with a centralized entity impossible, but also that parts of thenetwork are affected by the disaster, and that only shortest paths that avoid affected parts ofthe network should be considered when computing distances. Forbidden-set distance labelingschemes assign labels to vertices, so that, for any pair of vertices u and v , and any set F of failedvertices, the length of a shortest u -to- v path that avoids all vertices in F can be recovered justfrom the labels of u , v , and of the vertices in F . In this work we study forbidden-set distancelabeling schemes in directed planar networks. We also study the extension of such schemes tocapture not only the distance from u to v , but also the number of distinct u -to- v shortest paths.For unweighted (i.e., unit-weight) graphs, we measure the label size in bits. For weightedgraphs and queries concerning lengths of the shortest paths, we assume that the distance betweenany two nodes fits in a single machine words, and measure the label size in words. For queriesconcerning the number of shortest paths, unless mentioned otherwise, we assume that the numberof shortest paths between any two nodes fits in a single machine word, and measure the labelsize in words. 1 .1 Related work Labeling schemes provide a clean and natural model for studying how to distribute informationabout a graph. Problems considered in this model include adjacency [5–7, 10, 31, 43], flows andconnectivity [28, 33, 37], and Steiner tree [42]. See [44] for a recent survey. We specifically focuson distance labeling schemes.
Distance labeling schemes.
Embedding distance information into labels was studied byGraham and Pollack [25] in the 1970’s in what was termed the squashed cube model. In 2000,Peleg [41] formalized the notion of distance labeling schemes, and provided schemes with poly-logarithmic label size (number of bits) and query time for trees, interval graphs and permutationgraphs. Gavoille et al. [22] showed that for general graphs, the label size is Θ( n ), and for trees,Θ(log n ). For (unit-weight) planar graphs they showed a lower bound of Ω( n / ), and an upperbound of O ( √ n log n ) bits. The upper bound was recently improved to O ( √ n ) [24], but the rare polynomial gap between the lower and upper bound remains an interesting and important openproblem. For weighted planar graphs Gavoille et al. gave tight (up to polylogarithmic factors)˜Θ( n / ) upper and lower bounds. Approximate distance labeling schemes.
Since exact distance labels typically require poly-nomial size labels [22], researchers have sought smaller labels that yield approximate distances.Gavoille et al. [21] studied such labels for general graphs and various graph families. Specifically,for planar graphs, they presented O ( n / log n )-bit labels that provide a 3-approximation of thedistance. In the same year, Gupta et al. [26] presented smaller 3-approximate labels, requiringonly O (log n ) bits, and Thorup gave (1 + ǫ )-approximate labels of size O (log n/ǫ ), for any fixed ǫ > H -minor free graphs by Abraham and Gavoillein [4]. Forbidden-set distance labeling schemes.
Forbidden-set labels were introduced in thecontext of routing labels by Feigenbaum et al. [18, 19], and studied by several others [2, 3,14, 15, 46]. Exact forbidden-set labeling schemes of polylogarithmic size are given in [15, 46]for graphs of bounded treewidth or cliquewidth. For unweighted graphs of bounded doublingdimension, forbidden-set labels with polylogarithmic size and (1 + ǫ )-stretch are also known [3].For undirected planar graphs, and for any fixed ǫ >
0, Abraham et al. [2] presented a forbidden-set labeling scheme of polylogarithmic size such that a (1 + ǫ )-approximation of the shortestpath between vertices u and v that avoids a set F of failed vertices can be recovered from thelabels of u, v, and the labels of the failed vertices in ˜ O ( | F | ) time. Other related work.
There are many other concepts related to distances in the presence offailures. In the replacement paths problem we are given a graph along with a source and sinkvertices, and the goal is to efficiently compute all shortest paths between the source and thedestinations for every possible single-edge failure in the graph. In planar graphs this problemcan be solved in nearly linear time [16, 36, 47]. For the single source, single failure version of theproblem (i.e. when only the source vertex is fixed at construction time, and the query specifiesjust the target and a single failed vertex), Baswana et al. [8] presented an oracle with size andconstruction time O ( n log n ) that answers queries in O (log n ) time. Building upon this oracle,they then present an oracle of size ˜ O ( n /q ) supporting arbitrary distance queries subject to asingle failure in time ˜ O ( q ) for any q ∈ [1 , n / ]. The authors of [13] show how to construct in˜ O ( n ) time an oracle of size ˜ O ( n ) that, given a source vertex u , a target vertex v , and a set F of k faulty vertices, reports the length of a shortest u -to- v path in G \ F in ˜ O ( √ kn ) time. Theyfurther show that for any r ∈ [1 , n ] there exists an ˜ O ( n k +1 r k +1 √ nr )-size oracle that answers queries The ˜ O ( · ) notation suppresses log O (1) n factors.
2n time ˜ O ( k √ r ). Recently, Italiano et al. [29] gave an oracle of size O ( n log n ) and constructiontime O ( n log n/ log log n ) that supports reachability queries subject to a single failure in time O (log n ).Another related concept is that of dynamic distance oracles. Here a graph is preprocessed soas to efficiently support distance queries between arbitrary pairs of vertices as well as updatesto the graph. Updates may include deletion of edges or vertices (decremental updates), or alsoaddition of new edges and vertices (fully dynamic). Fakcharoenphol and Rao [17] presenteddistance oracles that require ˜ O ( n / ) and ˜ O ( n / ) amortized time per update and query for non-negative and arbitrary edge-weight updates respectively. The space required by these oracles is O ( n log n ). The extensions of this result in [13, 30, 32, 34] yield a dynamic oracle that can handlearbitrary edge weight updates, edge deletions and insertions (not violating the planarity of theembedding) and vertex deletions, as well as answer distance queries, in ˜ O ( n / ) time each. Counting shortest paths.
In the (non-faulty) counting version of shortest paths labeling,given the labels of vertices s and t we wish to return the number of shortest s -to- t paths in G (i.e. paths whose length is equal to d ( s, t )). This problem (without faults) was recently studiedin [9] where labels of size Θ( √ n ) were constructed under the assumption that the numberof shortest paths between any two nodes fits in a constant number of machine words. In thegeneral case where the numbers consist of L bits, the obtained labels consist of O ( √ n · L ) bits. Asalready observed in [9], it is easy to construct an unweighted graph where L = n − n . ) bits, that is, more than in a naive encoding storing the whole graph inevery label. However, the following simple construction shows that we cannot hope to constructlabels consisting of o ( n ) bits without bounding L : given n bits b , . . . , b n − we construct a graphconsisting of a path s = u − u − · · · − u n − and another path v − v − · · · − v n = t in whichevery edge is duplicated (i.e., there are two parallel edges between each pair v i , v i +1 ). Finally, forevery i = 0 , . . . , n − b i = 1, we add an edge u i − v i +1 . Then the number of shortest s -to- t paths is exactly P n − i =0 b i · n − − i , and so by an encoding argument the total number ofbits in the labels of s and t must be at least n . Therefore, when counting shortest paths wewill measure the size of a label in the number of machine words, each long enough to store thenumber of shortest paths between any two nodes in the graph.We highlight one interesting application where our scheme for counting shortest s -to- t pathsthat avoid nodes v , v , . . . , v k can be modified to obtain a better bound on the sizes of the labelsin bits. Say that instead of counting such shortest paths we would like to check if avoiding nodes v , v , . . . , v k increases the length of the shortest path. In such case, we only need to check if thenumber of shortest s -to- t paths that avoid nodes v , v , . . . , v k is nonzero. Because the numberof shortest paths is always at most 2 n , by well known properties of prime numbers, choosing arandom prime p consisting of Θ( k · log n ) bits guarantees that with high probability, for every s, t, v , v , . . . , v k , the number of shortest paths counted modulo p is nonzero if and only if thenumber of shortest paths is nonzero. Our scheme (as well as the scheme of [9]) can be used forcounting modulo p , so we obtain labels consisting of ˜ O ( √ n · k ) bits for such queries. • In Section 3 we present a single-fault distance labeling scheme (forbidden-set labelingscheme for a set of cardinality 1). The label size is O ( n / ), the query time is ˜ O ( √ n ), andtime to construct all labels is ˜ O ( n / ). Our labeling scheme extends (with no overhead inthe label size) to a labeling scheme for counting shortest paths (with a single fault). Though this is not mentioned in [17], the query time can be made worst case rather than amortized bystandard techniques. In [9], the authors actually considered the oracle version of the problem, but their solution can be easilyapplied for labeling as well. In Section 4 we extend the counting labels of [9] to the following fault-tolerant variant.Given the labels of vertices s, t, v , v , . . . , v k , we wish to return the number of s -to- t pathsthat avoid vertices v , . . . , v k and whose length is equal to d ( s, t ) (the original s -to- t distancein G ). We show that the labeling of [9] (with labels of size ˜ O ( √ n )) actually works in thismore general setting. A naive query to such labeling takes ˜ O ( √ n · k ) time, we show howto improve this to ˜ O ( √ n · k ). • In Section 5 we show a lower bound of Ω( √ nL ) on the label-size (in bits) for countingshortest paths (without faults), in graphs in which the number of distinct shortest pathsbetween any two nodes consists of at most L bits. • In Section 6 we show a lower bound on dynamic oracles for counting shortest paths, condi-tioned on the hardness of online boolean matrix-vector multiplication. We prove that forany dynamic shortest paths counting oracle in undirected planar graphs, either the querytime or the update time must be Ω( √ n ) (up to subpolynomial factors).We focus on planar graphs but in fact all our results (except for the efficient preprocessingtime and query time in Section 3) hold for any graph family with O ( √ n )-size separators (suchas H -minor free graphs and bounded genus graphs). This is also the case for the standard(i.e. without failures) labeling scheme of Gavoille et al. [22]. However, while their ˜ O ( n / )-sizelabels are obtained with a straightforward application of separators, our O ( n / )-size (fault-tolerant) labels are obtained with a non-standard and intricate use of separators.A main open question that is left unanswered by our work is the existence of non-trivialforbidden-set distance labels tolerating more than a single fault. Labels for approximate dis-tances [2] also rely on separators, and do handle multiple failures. In the failure-free case, thelabels of [2] consist of distances to a small (logarithmic) sample of vertices on some separators,called connections. To handle failures, the label of each vertex u also stores the failure-free labelsof the connections of u . This only increases the label-size by a polylogarithmic factor. In case ofexact distances, the size of the failure-free labels is Ω( √ n ), so this approach seems unsuitable.Another natural open question is whether the gap between our O ( n / )-size fault-tolerantlabels and the ˜ O ( n / )-size labels without failures is actually required and tight. We observethat the existing lower bound technique of Gavoille et al. cannot be extended to show a lowerbound above Ω( √ n ) for fault-tolerant labels. The reason is that their technique uses a globalargument showing that if we wish to encode the distances between a subset S of k ≤ √ n verticesthen all their labels together require size Ω( k ). However, even in the presence of (any numberof) failures, encoding distances can be done with total size ˜ O ( k ) (simply store for every u, v ∈ S the length of the shortest u -to- v path that is internally disjoint from S ). Throughout the paper we consider as input a weighted directed planar graph G , embedded inthe plane. We assume that the input graph has no negative length cycles. We can transformthe graph in a standard way, in O ( n log n log log n ) time, so that all edge weights are non-negative anddistances are preserved [40]. Separators and recursive decompositions.
Miller [38] showed how to compute a Jordancurve that intersects the graph at a set of nodes
Sep ( G ) of size O ( √ n ) and separates G intotwo pieces with at most 2 n/ T of G in O ( n ) time. T is a binary tree whose nodescorrespond to subgraphs of G (called pieces ), with the root being all of G and the leaves beingpieces of constant size. We identify each piece P with the node representing it in T (we can4hus abuse notation and write P ∈ T ), with its boundary ∂P (i.e. vertices that belong to someseparator along the recursive decomposition used to obtain P ), and with its separator Sep ( P ).We denote by T [ P, Q ] the P -to- Q path in T (and also use T ( P, Q ], T [ P, Q ), and T ( P, Q )).An r -division [20] of a planar graph, for r ∈ [1 , n ], is a decomposition of the graph into O ( n/r ) pieces, each of size O ( r ), such that each piece P has O ( √ r ) boundary vertices (denoted ∂P ). Another desired property of an r -division is that the boundary vertices lie on a constantnumber of faces (called holes) of the piece. For every r larger than some constant, an r -divisionwith few holes is represented in the decomposition tree T of [35]. It is convenient to describe the r -division by truncating T at pieces of size O ( r ), that also satisfy the other required properties.We refer to those pieces (the leaves of T after truncation) as regions and denote by R u the regioncontaining vertex u (if u belongs to multiple regions, we arbitrarily designate one of them as R u ). Dense distance graphs and FR-Dijkstra.
The dense distance graph of a set of vertices U that lie on a constant number of faces of a planar graph H , denoted DDG H ( U ) is a completedirected graph on the vertices of U . Each edge ( u, v ) has weight d H ( u, v ), equal to the length ofthe shortest u -to- v path in H . DDG H ( U ) can be computed in time O (( | U | + | H | ) log | H | ) usingthe multiple source shortest paths (MSSP) algorithm [11,34]. Thus, computing DDG P ( ∂P ) overall pieces of the recursive decomposition of G requires time O ( n log n ) and space O ( n log n ). Wenext give a –convenient for our purposes– interface for FR-Dijkstra [17], which is an efficientimplementation of Dijkstra’s algorithm on any union of DDG s. The algorithm exploits thefact that, due to planarity, certain submatrices of the adjacency matrix of
DDG H ( U ) satisfythe Monge property. (A matrix M satisfies the Monge property if, for all i < i ′ and j < j ′ , M i,j + M i ′ ,j ′ ≤ M i ′ ,j + M i,j ′ [39].) The interface is specified in the following theorem, which wasessentially proved in [17], with some additional components and details from [32, 40]. Theorem 1 ([17,32,40]) . Given a set Y of DDG s, Dijkstra’s algorithm can be run on the unionof any subset of Y with O ( N ) vertices in total (with multiplicities) and an arbitrary set of O ( N ) extra edges in time O ( N log N ) . Warm-up.
As a warm-up, we first sketch a simple labeling scheme that assigns a label of size O ( n / ) to each vertex. Consider an r -division for r = n / , and let R be the set of its regions.The label of each vertex u consists of the following:(a) The r -division R . Space: O ( n/r ).(b) For each region R in the r -division, the length of the shortest path in G , among paths thatare internally disjoint from R , from u to S P ∈R ∂P , and from S P ∈R ∂P to u . There are O ( n/r ) regions and for each of them we store O ( n/r · √ r ) distances. Space: O ( n /r / ).(c) The region R u and the ∂R u -to- ∂R u distances in G \ { u } . Space: O ( r ).The space is thus O ( n/r + n /r / + r ) = O ( n / ).Let us now consider a query ( u, v, f ), and assume, for simplicity, that no two of u , v and f arecontained in a single region. We have two cases. If there is a shortest u -to- v path in G \ { f } thatis vertex-disjoint from R f , then the u -to- ∂R v distances among paths internally-disjoint from R f (item (b)), together with R v , which is stored for v (item (c)), allow us to retrieve the length ofthis path. In the other case, we employ the u -to- ∂R f distances among paths internally-disjointfrom R f (item (b)), the information stored in item (c) for f , and the ∂R f -to- v distances amongpaths internally-disjoint from R f (item (b)). 5t is not difficult to combine this approach with the distance-labeling scheme of Gavoille etal. [22] for the failure-free setting to obtain labels of size O ( n / ). (Item (b) has to be modifiedto store distances to separators of ancestors of R u instead of distances to S P ∈R ∂P , requiring O ( n / /r ) space.) In the approach that we present below, we rely on separators in a moresophisticated and delicate manner to obtain labels of size O ( n / ). The label.
Recall that an r -division is represented by a decomposition tree T , whose rootcorresponds to G . The internal nodes of T correspond to pieces of G . The two children of apiece P ∈ T are the subgraphs of P external and internal to Sep ( P ). The leaves of T are theregions of the r -division.The label of each vertex u in G consists of the following information:(i) The entire recursive decomposition tree T . Space: O ( n/r ).(ii) For each region R in the r -division, the shortest path distances in G from u to ∂R amongpaths that are internally disjoint from R . There O ( n/r ) regions and each of them has O ( √ r ) boundary nodes. Space: O ( n/ √ r ).(iii) The region R u and the ∂R u -to- ∂R u distances in G \ { u } . Space: O ( r ).(iv) For each piece P ∈ T with sibling Q , for each p ∈ ∂P \ Q , the shortest path distance from u to p in G \ ( P ∪ Q ) ∪ { p } , and the shortest path distance from p to u in G \ Q . Space: O ( P P ∈T ∂P ) = O ( n/ √ r ), c.f. [23].(v) For each ancestor piece P of R u in T , for each vertex p of Sep ( P ) \ ∂P , the shortest pathdistance from u to p among paths in P \ ∂P that are internally disjoint from Sep ( P ), andthe shortest path distance in P \ ∂P from p to u . Space: O ( √ n ), c.f. [23].The overall space required by the above five items is O ( n/r + n/ √ r + r + n/ √ r + √ n ), whichis O ( n / ) for r = n / . The query.
Upon query ( u, v, f ) we say that a path is a ( u, v, f )-path if it is a u -to- v path in G that avoids f , and we seek the shortest ( u, v, f )-path, which we denote by S . Let X denotethe lowest node in T that is an ancestor of R f and of at least one of { R u , R v } . Let us assumewithout loss of generality that X is an ancestor of R u . We return the minimum of the followingthree:1. S includes a vertex of ∂R f .The length of this path is found with a SSSP computation on the (non-planar) graph G whose vertices are u, v , and ∂R f \ { f } and whose edges are in one-to-one correspondencewith the distances specified below, i.e. for each a -to- b distance, there is an edge from a to b with length equal to that distance: • the u -to- ∂R f \{ f } distances from item (ii) in u ’s label (or the u -to- ∂R f \{ f } distancesin R f \ { f } , which can be computed from item (iii), if R u = R f ); • the ∂R f \ { f } -to- ∂R f \ { f } distances from item (iii) in f ’s label; • the ∂R f \{ f } -to- v distances from item (ii) in v ’s label (or the ∂R f \{ f } -to- v distancesin R f \ { f } , which can be computed from item (iii), if R v = R f ).2. S avoids R f but includes a boundary vertex of some piece on T [ X, R f ].The length of this path is found with a SSSP computation on the graph G whose verticesare u, v , and ∂P of all nodes P that are siblings of some node Q on the X -to- R f path in T . The edges are in one-to-one correspondence with the u -to- ∂P distances from item (iv)in u ’s label and the ∂P -to- v distances from item (iv) in v ’s label.6. S avoids all boundary vertices of all the pieces on T [ X, R f ].This is required only for the case where the lowest common ancestor of R u and R v is notan ancestor of R f (otherwise, it is an ancestor of X and a u -to- v path cannot avoid theboundary vertices of X ). The length of this path is found with a SSSP computation onthe graph G whose vertices are u, v , and Sep ( P ) \ ∂P of all nodes P on T ( X, R u ). Theedges are in one-to-one correspondence with the u -to- Sep ( P ) distances from item (v) in u ’s label and the Sep ( P )-to- v distances from item (v) in v ’s label. If R u = R v , the shortestpath may not cross any of these separators; in that case the distance may be retrieved bya single SSSP computation in R u \ { f } (item (iii)). Correctness.
Let us consider the three options for the shortest ( u, v, f )-path S (an illustrationis provided in Figure 1).1. S includes a vertex of ∂R f . Let a (resp. b ) denote the first (resp. last) vertex of S thatbelongs to ∂R f \ { f } . The path S can be partitioned into a u -to- a prefix, an a -to- b infix,and a b -to- v suffix. All three subpaths are represented in G , and all paths represented in G do not include f .2. S avoids R f but includes a boundary vertex of some piece on T [ X, R f ]. First observe thatall u -to- v paths in G avoid some (not necessarily proper) ancestor of R f and thereforealso avoid f . To see that S is represented in G , let Q denote the unique piece on T ( X, R f ]such that S avoids Q but visits its sibling P (such a piece Q must exist because S avoids R f but visits some piece on T [ X, R f ]). Since S visits P it must visit some vertex of ∂P . Let p be the first such vertex of S . Partition S into a shortest u -to- p path in G \ ( Q ∪ P ) ∪ { p } and a shortest p -to- v path in G \ Q . These two subpaths are represented in G .3. S avoids all boundary vertices of all the pieces on T [ X, R f ]. If S does not visit ∂R u (andthus R u = R v ) then we find S with an SSSP computation in R u \ { f } . Otherwise, S visits a separator vertex in of some piece that is a proper ancestor of R u . Let P be therootmost such piece. Since S avoids ∂X we have that S is restricted to X and hence P is a descendant of X . In fact, P must be a proper descendant of X (otherwise, S visits Sep ( X ) and therefore visits the boundary of both child-pieces of X including the one on T [ X, R f ], a contradiction). We therefore have that P ∈ T ( X, R u ) and S is restricted to P . Also observe that S avoids ∂P because otherwise S must visit a separator vertex ofsome ancestor of P , contradicting P being rootmost. Let p be the first vertex of S thatbelongs to Sep ( P ). S can be decomposed into a shortest path from u to p in P \ ∂P that isinternally disjoint from Sep ( P ), and a suffix that is a shortest path from p to v in P \ ∂P ; S is thus represented in G . To see that no path represented in G contains f , observethat P may contain f , but since R f is not a descendant of P , f must be a vertex of ∂P and so is not visited by any path represented in G .We thus arrive at the following result. Theorem 2.
Given a directed planar graph G of size n , with real edge-lengths, we can assignan O ( n / ) -size label to each vertex of G such that upon query ( u, v, x ) , where u, v, x ∈ V ( G ) ,the length of the shortest u -to- v path in G \ { x } can be retrieved from the labels of u , v and x .Remark. Let us note, that any graph G of size n from a family of graphs that hereditarilyadmits O ( √ n )-size separators (such as H -minor free graphs and bounded genus graphs) can berecursively decomposed so that we get an r -division (perhaps not with the few-holes property).As our labeling scheme does not require the few-holes property, Theorem 2 actually applies toany such graph family. 7 f u vf a b (a) Case 1. R f XPQ up v (b) Case 2. R f XPu pv (c) Case 3.
Figure 1: An illustration of the 3 different cases that arise for the query. In the figures we assumethat u, v R f and the different colors in each path represent its decomposition as defined inthe proof of correctness. In the figure for Case 2, the blue piece denotes R f , while the siblingsof its ancestors in T ( X, R f ] are denoted by different scales of gray; the deeper the piece is in T ,the darker its color. Piece Q is denoted be the red-dashed rectangle. For Case 3, the setting isthe same and in our illustration P is the child of X that is not an ancestor of R f . Sep ( P ) isdenoted by green. Extension for counting.
We now show how to extend our single-fault labeling from reporting u -to- v shortest paths in G \ { f } to counting the number of u -to- v shortest paths in G \ { f } .Our modification does not increase the label size (assuming that each number we store fits intoa single word, see the discussion in the introduction). However, the efficient query algorithmcannot be applied, leading to ˜ O ( n / ) query time.In order to extend the labeling scheme for counting, for every u -to- v shortest path distancewhich is stored in our label, we also store the number of such u -to- v shortest paths. Thechange in query time is that instead of the SSSP computations on G , G , G we use an SSSPcomputation that counts shortest paths. That is, for each edge in G i there is a value representingits multiplicity (the value we added to the label), and we want to compute the number of shortestpaths with respect to the multiplicities. This extension can be achieved by a trivial extensionto Dijkstra’s algorithm, resulting in ˜ O ( n / ) query time (In contrast, FR-Dijkstra has no knownextension for counting shortest paths). The following lemma proves the correctness of ourlabeling scheme. Lemma 3.
Every shortest path from u to v in G \ { f } is represented exactly once in the querygraphs G , G , G .Proof. The same argument as in the correctness subparagraph proves that every shortest path isrepresented at least once in the query graphs. It remains to show that every path is representedat most once. Let us consider the three cases for a shortest ( u, v, f )-path:1. S includes a vertex of ∂R f . S is not represented in G , G because every path that isrepresented there must avoid an ancestor of R f . S is represented exactly once in G S S S where S is from u to thefirst vertex b of S in ∂R f , S is from b to the last vertex b of S in ∂R f , and S is from b to v .2. S avoids R f but includes a boundary vertex of some piece on T [ X, R f ]. S is not representedin G because all the paths that are represented there touch R f , it is also not representedin G since every path there avoids all boundary vertices of all pieces in T [ X, R f ]. Toprove that S is represented in G exactly once we again show that S can be uniquelydecomposed into three subpaths in G . Let P be the sibling of some piece Q ∈ T [ X, R f ]s.t. S visits P , and let p ∈ ∂P ∩ S . If P is not the deepest such piece, then S also visits Q but the edge ( p, v ) in G counts only paths in G \ Q , hence S is not represented as a u − p − v path in G . If P is the deepest such piece but p is not the first vertex in ∂P that S visits, then the u -to- p subpath of S is not represented as an edge ( u, p ) in G since onlypaths in G \ ( P ∪ Q ) ∪ { p } are.3. S avoids all boundary vertices of all the pieces on T [ X, R f ]. S is not represented in G , G because every path that is represented there touches some piece in T [ X, R f ]. It is countedexactly once in G by a similar argument to case 2 above: S is counted once in G bythe first separator vertex that S visits in the rootmost piece that it visits. Finally, inthe case where R u = R v = R f , we perform Dijkstra (with its extension for counting) on R u \ ∂R u . Efficient queries for planar graphs.
We can easily achieve ˜ O ( n / ) query-time, since thisis the size of the graphs that we construct and can thus perform Dijkstra for SSSP computations.This query time applies to any graph family with √ n -size separators, such as minor-free graphs.On planar graphs, in order to perform queries more efficiently we have to assume random accessto the labels of vertices u , v and x ; retrieving them would require O ( n / ) time. We present an˜ O ( √ n )-time query algorithm for planar graphs at the expense of increasing the labels’ size bypolylogarithmic factors.Let us now formally state the main result of [8]. Theorem 4 ([8]) . Given a weighted directed planar graph G of size n and a source s ∈ V ( G ) ,we can construct in O ( n log n ) time an O ( n log n ) -size data structure, that upon query ( v, x ) ,for v, x ∈ V ( G ) , returns the s -to- v distance in G \ { x } in time O (log n ) .C ases 2 & 3. G and G are of size O ( √ n ) and they can be constructed in O ( √ n ) timefrom the labels of u, v and f . We can compute SSSPs in these graphs in O ( √ n log n ) timeusing Dijkstra’s algorithm. We handle the subcase of Case 3 in which R u = R v and the soughtshortest path does not cross ∂R u as follows. The label of u additionally stores the single-sourcesingle-failure distance oracle of Theorem 4 for graph R u \ ( ∂R u \ { u } ) and source u . It occupies˜ O ( r ) = ˜ O ( n / ) additional space. Upon query, we simply query this oracle with ( v, x ). C ase 1. This is the only involved case, as G can be of size Θ( r ) = Θ( n / ) and we aim atperforming SSSP computations in time ˜ O ( √ n ). Let us note that the distances of u to ∂R f \ { f } in the case that R u = R f can be computed in time ˜ O ( √ r ) = ˜ O ( n / ) if we have stored the oracleof Theorem 4 for graph R u and source u in the label of u . The case R v = R f can be treatedanalogously.In order to perform efficient SSSP computations we resort to FR-Dijkstra (Theorem 1). Wefirst make a minor modification to item (iii) of the label so that the Monge property requiredfor FR-Dijkstra is satisfied: instead of storing ∂R u -to- ∂R u distances in G \ { u } , we insteadstore ∂R u -to- ∂R u distances in R \ { u } and ∂R u -to- ∂R u distances in G \ (( R \ ∂R ) ∪ { u } ). Thisensures that the set of vertices over which the DDG s are built lie on a constant number offaces of the reference graph. The size of the label is unaffected by this modification. We canthen use Theorem 1 in a straightforward way to compute the sought shortest path in time˜ O ( √ r ) = ˜ O ( n / ). 9 fficient preprocessing for planar graphs. The labels can be naively constructed in O ( n )time. This is true for any graph family with √ n -size separators. For the case of planar graphs,we now show that the construction time can be improved to ˜ O ( n / ).The complete recursive decomposition of G , required for item (i), can be computed in O ( n )time [35]. For the rest of the items, we use MSSP data structure for an appropriate subgraphof G , or of the reverse graph of G , i.e. G with all its edges reversed.The multiple-source shortest paths (MSSP) data structure [34] represents all shortest pathtrees rooted at the vertices of a single face g in a planar graph. It can be constructed in O ( n log n ) time, requires O ( n log n ) space, and can report any distance between a vertex of f and any other vertex in the graph in O (log n ) time. Using a simple modification of the underlyinggraph, presented in [13], we can ensure that MSSP returns the length of the shortest path thatis internally disjoint from a prespecified subset of the vertices of g .To compute the information required for item (ii) of the labels, we build an MSSP datastructure for the reverse graph of G \ ( R \ ∂R ) for each piece R in the r -division and each ofthe O (1) holes g on which the vertices of ∂R lie. We then query the sought distances. The timerequired to construct the MSSP data structures is ˜ O ( n /r ) = ˜ O ( n / ) and the time required forcomputing the distances is ˜ O ( n / √ r ) = ˜ O ( n / ). The precomputations for items (iii), (iv) andthe first part of item (v) can be done analogously –for item (iii) we store the distances describedin the description of the efficient query implementation.For the second part of item (v), we can not make use of MSSP, as the shortest path from u to p ∈ Sep ( P ) is allowed to cross Sep ( P ). We can instead build an ˜ O ( | P | )-size exact distance oraclefor P \ ∂P in ˜ O ( | P | / ) time that answers distance queries in ˜ O ( | P | ǫ ) time, for any constant ǫ > ǫ = 1 /
6. We then query this oracle for the all distances we need to compute in P \ ∂P . Over all pieces, the preprocessing time is ˜ O ( n / ) and the sought distances are retrievedin ˜ O ( n / · n / ) = ˜ O ( n / )To wrap up, the global preprocessing time is ˜ O ( n / ) and is upper bounded by the total sizeof the labels up to polylogarithmic factors. In this section we design labels such that given the labels of any k + 2 vertices s, t, v , v , . . . , v k ,we should return the number of s -to- t paths that avoid vertices v , . . . , v k and whose length isequal to d ( s, t ) (the original s -to- t distance in G ). Note that this is the same as returning thenumber of shortest s -to- t paths in G \ { v , v , . . . , v k } only if the length of the shortest s -to- t path does not change when { v , v , . . . , v k } fail. We show that the labeling of [9] (with labelsof size O ( √ n )) actually works in this more general setting and show how to perform a query in˜ O ( √ n · k ) time. We assume in this section that edge weights are strictly positive. The label.
We first compute a complete recursive decomposition of G . The label of eachvertex v in G then consists of the following information:(i) For each ancestor piece P of v , for every u ∈ Sep ( P ), the number p ( v, u ) and length d ( v, u ) of all v -to- u shortest paths in P \ Sep ( P ) ∪ { u } .(ii) For each ancestor piece P of v , for every u ∈ Sep ( P ), the number p ( u, v ) and length d ( u, v ) of all u -to- v shortest paths in P \ ∂P .In what follows, in the case that u is in many separators of ancestor pieces of v , when referringto d ( v, u ), p ( v, u ), d ( u, v ) and p ( u, v ) we mean the values computed for the rootmost suchpiece. 10 he query - without faults. When there are no faulty vertices, every s -to- t shortest path Q in G is uniquely determined by a piece P in the recursive decomposition and a vertex u ∈ Sep ( P ).The piece P is the rootmost ancestor piece of s in the recursive decomposition s.t. Q visits Sep ( P )and therefore does not visit ∂P . Such a piece P must be an ancestor of both s and t . The vertex u ∈ Sep ( P ) is the first vertex of Sep ( P ) visited by Q . Q can thus be decomposed into aprefix Q in P \ Sep ( P ) ∪ { u } from s to u , and a suffix Q in P \ ∂P from u to t . For everypossible u we have the number of such Q in (i) of s and the number of such Q in (ii) of t . We therefore add the term p ( s, u ) · p ( u, t ) to the answer. However, we only wish to addthis term if d ( s, u ) + d ( u, t ) = d ( s, t ) (otherwise, we are counting non-shortest paths). We have d ( s, u ) + d ( u, t ) from the labels of s and t . We compute d ( s, t ) as follows. Let A [ v ] be the unionof separator vertices of all ancestors of v . Then d ( s, t ) = min u ∈ A [ s ] ∩ A [ t ] ( d ( s, u ) + d ( u, t )) , (1)and the overall query is computed as paths ( s, t ) = X u ∈ A [ s ] ∩ A [ t ] s.t d ( s,u )+ d ( u,t )= d ( s,t ) p ( s, u ) · p ( u, t ) (2)It takes ˜ O ( √ n ) time to perform such query because there are O ( √ n ) vertices in A [ s ] ∩ A [ t ]and for each of them we perform ˜ O (1) calculations. We also compute d ( s, t ) beforehand in˜ O ( √ n ) time. The query - with faults.
We begin with an ˜ O ( √ n · k ) time query and then improve thisto ˜ O ( √ n · k ). We order the faulty vertices in the increasing order of their distances from s in G , and index them v , . . . , v k accordingly. For convenience we refer to s as v and to t as v k +1 .Denote by R [ j ] the number of s -to- v j shortest paths in G that avoid v , . . . , v j − . Denoting by paths ( v i , v j ) the number of v i -to- v j shortest paths in G we obtain the recurrence: R [ j ] = paths ( s, v j ) − X i 1] we can compute R [ j ] in ˜ O ( √ n · j ) using the recurrence. For eachfaulty vertex v i with i < j we perform a paths ( v i , v j ) query as described above which takes˜ O ( √ n ) time, so the overall complexity is ˜ O ( √ n · k ). Improved query time. We now show how to improve the query time from ˜ O ( √ n · k ) to˜ O ( √ n · k ). In order to achieve this, we cannot afford to compute paths ( v i , v j ) for every pair i, j .Instead, we will express R [ j ] as a summation over O ( √ n ) terms that we can compute in ˜ O (1)time. 11y combining equations (2) and (3), and since paths ( s, v j ) can be computed in ˜ O ( √ n ) time, weget that computing R [ j ] boils down to computing the following double summation: X i Any labeling scheme for counting shortest paths in planar graphs such that thenumber of distinct shortest paths between any two nodes consists of at most L bits requires labelsconsisting of Ω( √ nL ) bits.Proof. Let us consider a √ m × √ m grid graph, weighted as in the proof of Gavoille et al. from[22]. In every intersection, instead of a single s -to- t shortcut, we introduce an O ( L )-size gadget– essentially the one described in the introduction, in our proof that labels of o ( n ) bits cannotexist if L is unbounded.More specifically, suppose that we are given L − b , . . . , b L − . Each edge of the gadgetwill have weight equal to 1 /L times the weight of the shortcut in the proof of Gavoille et al. Thegadget consists of a path s = u − u − · · · − u L − and another path v − v − · · · − v L = t in whichevery edge is duplicated (i.e., there are two parallel edges between each pair v i , v i +1 ). Finally,for every i = 0 , . . . , L − b i = 1, we add an edge u i − v i +1 . The number of shortest s -to- t paths in the gadget is exactly P L − i =0 b i · L − − i . Note that this number is congruent to 0modulo 2. The size of the graph is n = Θ( mL ).Now, the number of shortest paths from the i -th node in the first column to the j -th nodein the first row is 1 if all b i ’s are equal to 0 for the gadget at intersection ( i, j ); otherwise it isequal to P L − i =0 b i · L − − i . Hence, each pair ( i, j ) allows us to recover Θ( L ) distinct bits. Thus,the labels must consist of Ω(( √ m − L/ (2 √ m − √ mL ) = Ω( √ nL ) bits.We leave the problem of closing the gap between this Ω( √ nL ) lower bound and the O ( √ nL )upper bound open for further investigation. In this section we consider dynamic oracles for counting shortest paths (without faults) inundirected planar graphs. That is, data structures that can support queries for counting shortestpaths as well as updates to the edge weights. We show a lower bound conditioned on the hardnessof Online Boolean Matrix-Vector Multiplication (OMv): Conjecture 6 (OMv Conjecture, [27]) . For every ǫ > , there is no O ( N − ǫ ) -time algorithmthat given an N × N boolean matrix M and a stream of boolean vectors v , . . . , v N computes theproducts M v i online (i.e. computes M v i before seeing v i +1 ). Based on the above conjecture, we prove that for any dynamic shortest paths counting oraclein undirected planar graphs, either the query time or the update time must be Ω( √ n ) (up tosubpolynomial factors). Theorem 7. A dynamic shortest paths counting oracle in undirected n -vertex planar graphswith amortized query time q ( n ) and update time u ( n ) cannot have q ( n ) + u ( n ) = O ( n / − ǫ ) forany ǫ > unless the OMv conjecture is false. This holds even if we only allow edge-weightincrements and decrements by 1. roof. Our proof follows closely the proof of Abboud-Dahlgaard [1] for dynamic oracles reporting(i.e. not counting) shortest paths. There are a few subtle differences, but the main differenceis that [1] was based on min-plus vector-matrix multiplication while ours is based on standardvector-matrix multiplication. Encoding the matrix as a grid. We consider a √ n × √ n boolean matrix M (i.e. N = √ n in Conjecture 6) and encode it using a ( √ n + 1) × ( √ n + 1) grid G M . For convenience, we indexthe rows and columns of M as 1 , . . . , √ n and the rows and columns of G M as 0 , . . . , √ n . Thegrid G M contains:1. All horizontal edges of the form (( i, j ) , ( i, j + 1)) except for ((0 , j ) , (0 , j + 1)) (i.e. exceptfor the first grid row). All these edges have the same weight √ n .2. All vertical edges of the form (( i, j ) , ( i + 1 , j )) except for (( i, √ n ) , ( i + 1 , √ n )) (i.e. exceptfor the last grid column). The weight of edge (( i, j ) , ( i + 1 , j )) is j + 1.3. If M i,j = 1 we add an edge e i,j = (( i − , j − , ( i, j )) with weight √ n + j .Denote the vertices of the first row (0 , j ) as s j and vertices of the last column ( i, √ n ) as t i . Consider the shortest s j -to- t i path. It is easy to see that if M i,j +1 = 0 then this path is(1) unique, (2) composed of a vertical prefix and and a horizontal suffix, and (3) is of length √ n ( √ n − j ) + i ( j + 1). If however M i,j +1 = 1 then there are exactly two such shortest paths(one using e i,j and the other using (( i − , j − , ( i, j − i, j − , ( i, j ))) bothof length √ n ( √ n − j ) + i ( j + 1). The zero matrix grid. We would like to make the length of the above shortest paths inde-pendent of i and j . We define another ( √ n + 1) × ( √ n + 1) grid G that has no diagonal edgesand contains:1. All horizontal edges of the form (( i, j ) , ( i, j + 1)) except for ((0 , j ) , (0 , j + 1)) (i.e. exceptfor the first grid row). All these edges have the same weight √ n .2. All vertical edges of the form (( i, j ) , ( i + 1 , j )) except for (( i, , ( i + 1 , i, j ) , ( i + 1 , j )) is √ n − j + 1.Denote the vertices of the first column ( i, 0) of G as s ′ i and vertices of the first row (0 , j )of G as t ′ j . The graph G on which we build the oracle is obtained by connecting the two grids G and G M t (the grid representation of the transpose of M ). This is done by adding edges b i = ( t i , s ′ i ) of weight w ( b i ) = ( √ n + 1)( √ n − i ) for every 1 ≤ i ≤ √ n . The reduction. In order to solve the OMv problem, for each query vector v [1 , . . . , √ n ], if v is the all-zero vector we simply output an all-zero vector. Otherwise, we (1) reset the weight w ( b i ) of every b i to be ( √ n + 1)( √ n − i ), (2) for every i , if v [ i ] = 0 we increase the weight of b i by 1, and (3) for every index 0 ≤ j < √ n we query the oracle for the number of shortest pathsfrom s j to t ′ j +1 . Finally, we decrease the oracle’s answer by the number of 1’s in v and assignthis value as the j ’th entry in the result M v .To see why the above procedure correctly calculates M v , first note that the j ’th entry in M v is exactly the number of indices 1 ≤ i ≤ √ n s.t. e i,j is present in G M t and v [ i ] = 1. The length ofthe shortest path from s j to t ′ j +1 through an edge b k is d ( s j , t k ) + w ( b k ) + d ( s ′ k , t ′ j +1 ) = 2 n + 2 √ n .This value is independent of both j and k , so for each 1 ≤ k ≤ √ n we have a unique shortestpath through b k if e k,j +1 is absent in G or exactly two shortest paths if e k,j +1 is present in G .In step (2), when we increase by 1 the edges b i corresponding to entries in v where v [ i ] = 0,paths going through these b i ’s are longer than paths going through other b i ’s and are thereforenot shortest (we made sure that v is not all-zero). Hence, every b i that corresponds to v [ i ] = 114ontributes 1 + M ti,j +1 to the number of shortest paths from s j to t ′ j +1 , and by subtracting thenumber of 1’s in v we obtain the correct answer.Overall, for each vector we perform O ( √ n ) updates and queries, so overall we perform O ( n ) updates and queries. If each update/query takes O ( n . − ǫ ) time then we get overall O ( n . − ǫ ) = O ( N − ǫ/ ) contradicting Conjecture 6. References [1] Amir Abboud and Søren Dahlgaard. Popular conjectures as a barrier for dynamic planargraph algorithms. In , pages 477–486, 2016. doi:10.1109/FOCS.2016.58 .[2] Ittai Abraham, Shiri Chechik, and Cyril Gavoille. Fully dynamic approximate distanceoracles for planar graphs via forbidden-set distance labels. In , pages 1199–1218,2012. doi:10.1145/2213977.2214084 .[3] Ittai Abraham, Shiri Chechik, Cyril Gavoille, and David Peleg. Forbidden-set distance labelsfor graphs of bounded doubling dimension. ACM Trans. Algorithms , 12(2):22:1–22:17, 2016.URL: https://doi.org/10.1145/2818694 , doi:10.1145/2818694 .[4] Ittai Abraham and Cyril Gavoille. Object location using path separators. In ,pages 188–197. ACM, 2006. doi:10.1145/1146381.1146411 .[5] Noga Alon and Rajko Nenadov. Optimal induced universal graphs for bounded-degreegraphs. In , pages 1149–1157, 2017. doi:10.1137/1.9781611974782.74 .[6] Stephen Alstrup, Søren Dahlgaard, and Mathias Bæk Tejs Knudsen. Optimal induceduniversal graphs and adjacency labeling for trees. J. ACM , 64(4):27:1–27:22, 2017. doi:10.1145/3088513 .[7] Stephen Alstrup, Haim Kaplan, Mikkel Thorup, and Uri Zwick. Adjacency labelingschemes and induced-universal graphs. SIAM J. Discret. Math. , 33(1):116–137, 2019. doi:10.1137/16M1105967 .[8] Surender Baswana, Utkarsh Lath, and Anuradha S. Mehta. Single source distance oraclefor planar digraphs avoiding a failed node or link. In , pages 223–232, 2012. doi:10.1137/1.9781611973099.20 .[9] Ivona Bez´akov´a and Andrew Searns. On counting oracles for path problems. In ,pages 56:1–56:12, 2018. doi:10.4230/LIPIcs.ISAAC.2018.56 .[10] Nicolas Bonichon, Cyril Gavoille, and Arnaud Labourel. Short labels by traver-sal and jumping. Electronic Notes in Discrete Mathematics , 28:153–160, 2007. doi:10.1016/j.endm.2007.01.022 .[11] Sergio Cabello, Erin W. Chambers, and Jeff Erickson. Multiple-source shortest paths inembedded graphs. SIAM J. Comput. , 42(4):1542–1571, 2013. doi:10.1137/120864271 .[12] Panagiotis Charalampopoulos, Pawe l Gawrychowski, Shay Mozes, and Oren Weimann. Al-most optimal distance oracles for planar graphs. In , pages 138–151, 2019. doi:10.1145/3313276.3316316 .[13] Panagiotis Charalampopoulos, Shay Mozes, and Benjamin Tebeka. Exact distance or-acles for planar graphs with failing vertices. In , pages 2110–2123, 2019. doi:10.1137/1.9781611975482.127 . 1514] Bruno Courcelle, Cyril Gavoille, and Mamadou M. Kant´e. Compact labelings for effi-cient first-order model-checking. Journal of Combinatorial Optimization , 21(1):19–46, 2009. doi:10.1007/s10878-009-9260-7 .[15] Bruno Courcelle and Andrew Twigg. Constrained-path labellings on graphsof bounded clique-width. Theory of Computing Systems , 47(2):531–567, 2010. doi:10.1007/s00224-009-9211-9 .[16] Yuval Emek, David Peleg, and Liam Roditty. A near-linear-time algorithm for computingreplacement paths in planar directed graphs. ACM Trans. Algorithms , 6(4):64:1–64:13,2010. doi:10.1145/1824777.1824784 .[17] Jittat Fakcharoenphol and Satish Rao. Planar graphs, negative weight edges, short-est paths, and near linear time. J. Comput. Syst. Sci. , 72(5):868–889, 2006. doi:10.1016/j.jcss.2005.05.007 .[18] Joan Feigenbaum, David R. Karger, Vahab S. Mirrokni, and Rahul Sami. Subjective-costpolicy routing. In , pages 174–183, 2005. doi:10.1007/11600930\_18 .[19] Joan Feigenbaum, David R. Karger, Vahab S. Mirrokni, and Rahul Sami.Subjective-cost policy routing. Theor. Comput. Sci. , 378(2):175–189, 2007. doi:10.1016/j.tcs.2007.02.020 .[20] Greg N. Frederickson. Fast algorithms for shortest paths in planar graphs, with applications. SIAM J. Comput. , 16(6):1004–1022, 1987. doi:10.1137/0216064 .[21] Cyril Gavoille, Michal Katz, Nir A. Katz, Christophe Paul, and David Pe-leg. Approximate distance labeling schemes. In , pages 476–487, 2001. doi:10.1007/3-540-44676-1\_40 .[22] Cyril Gavoille, David Peleg, St´ephane P´erennes, and Ran Raz. Distance labeling in graphs. Journal of Algorithms , 53(1):85–112, 2004. doi:10.1016/j.jalgor.2004.05.002 .[23] Pawe l Gawrychowski, Shay Mozes, Oren Weimann, and Christian Wulff-Nilsen. Bettertradeoffs for exact distance oracles in planar graphs. In , pages 515–529, 2018. doi:10.1137/1.9781611975031.34 .[24] Pawe l Gawrychowski and Przemys law Uzna´nski. A note on distance labeling in planargraphs. CoRR , abs/1611.06529, 2016. arXiv:1611.06529 .[25] R. L. Graham and H. O. Pollak. On embedding graphs in squashed cubes. In Y. Alavi,D. R. Lick, and A. T. White, editors, Graph Theory and Applications , pages 99–110, Berlin,Heidelberg, 1972. Springer Berlin Heidelberg.[26] Anupam Gupta, Amit Kumar, and Rajeev Rastogi. Traveling with a pez dis-penser (or, routing issues in MPLS). In , pages 148–157, 2001. doi:10.1109/SFCS.2001.959889 .[27] Monika Henzinger, Sebastian Krinninger, Danupon Nanongkai, and Thatchaphol Saranurak.Unifying and strengthening hardness for dynamic problems via the online matrix-vector mul-tiplication conjecture. In , pages 21–30, 2015. doi:10.1145/2746539.2746609 .[28] Tai-Hsin Hsu and Hsueh-I Lu. An optimal labeling for node connectivity. In ,2009. doi:10.1007/978-3-642-10631-6\_32 .[29] Giuseppe F. Italiano, Adam Karczmarz, Nikos Parotsidis. Planar Reachability Under SingleVertex or Edge Failures Giuseppe F. Italiano, Adam Karczmarz, Nikos Parotsidis. In , pages 2739-2758, 2021. doi:10.1137/1.9781611976465.163 .1630] Giuseppe F. Italiano, Yahav Nussbaum, Piotr Sankowski, and Christian Wulff-Nilsen. Im-proved algorithms for min cut and max flow in undirected planar graphs. In ,pages 313–322, 2011. doi:10.1145/1993636.1993679 .[31] Sampath Kannan, Moni Naor, and Steven Rudich. Implicit representation of graphs. SIAMJournal on Discrete Mathematics , 5(4):596–603, 1992. doi:10.1137/0405049 .[32] Haim Kaplan, Shay Mozes, Yahav Nussbaum, and Micha Sharir. Submatrix maximumqueries in monge matrices and partial monge matrices, and their applications. ACM Trans.Algorithms , 13(2):26:1–26:42, 2017. doi:10.1145/3039873 .[33] Michal Katz, Nir A. Katz, Amos Korman, and David Peleg. Labeling schemes for flow andconnectivity. SIAM J. Comput. , 34(1):23–40, 2004. doi:10.1137/S0097539703433912 .[34] Philip N. Klein. Multiple-source shortest paths in planar graphs. In , pages146–155, 2005. URL: http://dl.acm.org/citation.cfm?id=1070432.1070454 .[35] Philip N. Klein, Shay Mozes, and Christian Sommer. Structured recursive separatordecompositions for planar graphs in linear time. In , pages 505–514, 2013. doi:10.1145/2488608.2488672 .[36] Philip N. Klein, Shay Mozes, and Oren Weimann. Shortest paths in directed planar graphswith negative lengths: A linear-space O ( n log n )-time algorithm. ACM Trans. Algorithms ,6(2):30:1–30:18, 2010. doi:10.1145/1721837.1721846 .[37] Amos Korman. Labeling schemes for vertex connectivity. ACM Trans. Algorithms ,6(2):39:1–39:10, 2010. doi:10.1145/1721837.1721855 .[38] Gary L. Miller. Finding small simple cycle separators for 2-connected planar graphs. In , pages 376–382, 1984. doi:10.1145/800057.808703 .[39] Gaspard Monge. M´emoire sur la th´eorie des d´eblais et des remblais . De l’Imprimerie Royale,1781.[40] Shay Mozes and Christian Wulff-Nilsen. Shortest paths in planar graphs withreal lengths in O ( n log n/ log log n ) time. In , pages 206–217, 2010. doi:10.1007/978-3-642-15781-3_18 .[41] David Peleg. Proximity-preserving labeling schemes. J. Graph Theory , 33(3):167–176,March 2000.[42] David Peleg. Informative labeling schemes for graphs. Theor. Comput. Sci. , 340(3):577–593,2005. doi:10.1016/j.tcs.2005.03.015 .[43] Casper Petersen, Noy Rotbart, Jakob Grue Simonsen, and Christian Wulff-Nilsen. Near-optimal adjacency labeling scheme for power-law graphs. In , pages 133:1–133:15, 2016. doi:10.4230/LIPIcs.ICALP.2016.133 .[44] Noy Galil Rotbart. New Ideas on Labeling Schemes . PhD thesis, University of Copenhagen,2016.[45] Mikkel Thorup. Compact oracles for reachability and approximate distances in planardigraphs. Journal of the ACM , 51(6):993–1024, 2004. doi:10.1145/1039488.1039493 .[46] Andrew D. Twigg. Compact forbidden-set routing. Technical Report UCAM-CL-TR-678, University of Cambridge, Computer Laboratory, December 2006. URL: .1747] Christian Wulff-Nilsen. Solving the replacement paths problem for planar directed graphs in O ( n log n ) time. In , pages 756–765, 2010. doi:10.1137/1.9781611973075.62doi:10.1137/1.9781611973075.62