{"@context":"https:\/\/schema.org\/","@type":"ScholarlyArticle","@id":"#article8780","name":"An Optimal Dual Fault Tolerant Reachability Oracle","abstract":"Let G=(V,E) be an n-vertices m-edges directed graph. Let s inV be any designated source vertex. We address the problem of reporting the reachability information from s under two vertex failures. We show that it is possible to compute in polynomial time an O(n) size data structure that for any query vertex v, and any pair of failed vertices f_1, f_2, answers in O(1) time whether or not there exists a path from s to v in G\\{f_1,f_2}.\r\n\r\nFor the simpler case of single vertex failure such a data structure can be obtained using the dominator-tree from the celebrated work of Lengauer and Tarjan [TOPLAS 1979, Vol. 1]. However, no efficient data structure was known in the past for handling more than one failures. We, in addition, also present a labeling scheme with O(log^3(n))-bit size labels such that for any f_1, f_2, v in V , it is possible to determine in poly-logarithmic time if v is reachable from s in G\\{f_1,f_2} using only the labels of f1, f_2 and v.\r\n\r\nOur data structure can also be seen as an efficient mechanism for verifying double-dominators. For any given x, y, v in V we can determine in O(1) time if the pair (x,y) is a double-dominator of v. Earlier the best known method for this problem was using dominator chain from which verification of double-dominators of only a single vertex was possible.","keywords":["Fault tolerant","Directed graph","Reachability oracle","Labeling scheme"],"author":{"@type":"Person","name":"Choudhary, Keerti","givenName":"Keerti","familyName":"Choudhary"},"position":130,"pageStart":"130:1","pageEnd":"130:13","dateCreated":"2016-08-23","datePublished":"2016-08-23","isAccessibleForFree":true,"license":"https:\/\/creativecommons.org\/licenses\/by\/3.0\/legalcode","copyrightHolder":{"@type":"Person","name":"Choudhary, Keerti","givenName":"Keerti","familyName":"Choudhary"},"copyrightYear":"2016","accessMode":"textual","accessModeSufficient":"textual","creativeWorkStatus":"Published","inLanguage":"en-US","sameAs":"https:\/\/doi.org\/10.4230\/LIPIcs.ICALP.2016.130","publisher":"Schloss Dagstuhl \u2013 Leibniz-Zentrum f\u00fcr Informatik","isPartOf":{"@type":"PublicationVolume","@id":"#volume6258","volumeNumber":55,"name":"43rd International Colloquium on Automata, Languages, and Programming (ICALP 2016)","dateCreated":"2016-08-23","datePublished":"2016-08-23","editor":[{"@type":"Person","name":"Chatzigiannakis, Ioannis","givenName":"Ioannis","familyName":"Chatzigiannakis"},{"@type":"Person","name":"Mitzenmacher, Michael","givenName":"Michael","familyName":"Mitzenmacher"},{"@type":"Person","name":"Rabani, Yuval","givenName":"Yuval","familyName":"Rabani"},{"@type":"Person","name":"Sangiorgi, Davide","givenName":"Davide","familyName":"Sangiorgi"}],"isAccessibleForFree":true,"publisher":"Schloss Dagstuhl \u2013 Leibniz-Zentrum f\u00fcr Informatik","hasPart":"#article8780","isPartOf":{"@type":"Periodical","@id":"#series116","name":"Leibniz International Proceedings in Informatics","issn":"1868-8969","isAccessibleForFree":true,"publisher":"Schloss Dagstuhl \u2013 Leibniz-Zentrum f\u00fcr Informatik","hasPart":"#volume6258"}}}