1 research outputs found

    Low Congestion Cycle Covers and their Applications

    Full text link
    A cycle cover of a bridgeless graph GG is a collection of simple cycles in GG such that each edge ee appears on at least one cycle. The common objective in cycle cover computation is to minimize the total lengths of all cycles. Motivated by applications to distributed computation, we introduce the notion of \emph{low-congestion} cycle covers, in which all cycles in the cycle collection are both \emph{short} and nearly \emph{edge-disjoint}. Formally, a (d,c)(d,c)-cycle cover of a graph GG is a collection of cycles in GG in which each cycle is of length at most dd and each edge participates in at least one cycle and at most cc cycles. A-priori, it is not clear that cycle covers that enjoy both a small overlap and a short cycle length even exist, nor if it is possible to efficiently find them. Perhaps quite surprisingly, we prove the following: Every bridgeless graph of diameter DD admits a (d,c)(d,c)-cycle cover where d=O~(D)d = \tilde{O}(D) and c=O~(1)c=\tilde{O}(1). These parameters are existentially tight up to polylogarithmic terms. Furthermore, we show how to extend our result to achieve universally optimal cycle covers. Let CeC_e is the length of the shortest cycle that covers ee, and let OPT(G)=max⁑e∈GCeOPT(G)= \max_{e \in G} C_e. We show that every bridgeless graph admits a (d,c)(d,c)-cycle cover where d=O~(OPT(G))d = \tilde{O}(OPT(G)) and c=O~(1)c=\tilde{O}(1). We demonstrate the usefulness of low congestion cycle covers in different settings of resilient computation. For instance, we consider a Byzantine fault model where in each round, the adversary chooses a single message and corrupt in an arbitrarily manner. We provide a compiler that turns any rr-round distributed algorithm for a graph GG with diameter DD, into an equivalent fault tolerant algorithm with rβ‹…poly(D)r\cdot poly(D) rounds.Comment: arXiv admin note: substantial text overlap with arXiv:1712.0113
    corecore