Searcharxiv⌕ Search

arXiv subjects

Dennis Olivetti

Publications and source records attributed to Dennis Olivetti.

48 records · Page 3Linked to original sources

Classification of distributed binary labeling problems

We present a complete classification of the deterministic distributed time complexity for a family of graph problems: binary labeling problems in trees. These are locally checkable problems that can be encoded with an alphabet of size two in the edge labeling formalism. Examples of binary labeling problems include sinkless orientation, sinkless and sourceless orientation, 2-vertex coloring, perfect matching, and the task of coloring edges red and blue such that all nodes are incident to at least one red and at least one blue edge. More generally, we can encode e.g. any cardinality constraints on indegrees and outdegrees. We study the deterministic time complexity of solving a given binary labeling problem in trees, in the usual LOCAL model of distributed computing. We show that the complexity of any such problem is in one of the following classes: $O(1)$, $Θ(\log n)$, $Θ(n)$, or unsolvable. In particular, a problem that can be represented in the binary labeling formalism cannot have time complexity $Θ(\log^* n)$, and hence we know that e.g. any encoding of maximal matchings has to use at least three labels (which is tight). Furthermore, given the description of any binary labeling problem, we can easily determine in which of the four classes it is and what is an asymptotically optimal algorithm for solving it. Hence the distributed time complexity of binary labeling problems is decidable, not only in principle, but also in practice: there is a simple and efficient algorithm that takes the description of a binary labeling problem and outputs its distributed time complexity.

cs.DC↗

Locality of not-so-weak coloring

Many graph problems are locally checkable: a solution is globally feasible if it looks valid in all constant-radius neighborhoods. This idea is formalized in the concept of locally checkable labelings (LCLs), introduced by Naor and Stockmeyer (1995). Recently, Chang et al. (2016) showed that in bounded-degree graphs, every LCL problem belongs to one of the following classes: - "Easy": solvable in $O(\log^* n)$ rounds with both deterministic and randomized distributed algorithms. - "Hard": requires at least $Ω(\log n)$ rounds with deterministic and $Ω(\log \log n)$ rounds with randomized distributed algorithms. Hence for any parameterized LCL problem, when we move from local problems towards global problems, there is some point at which complexity suddenly jumps from easy to hard. For example, for vertex coloring in $d$-regular graphs it is now known that this jump is at precisely $d$ colors: coloring with $d+1$ colors is easy, while coloring with $d$ colors is hard. However, it is currently poorly understood where this jump takes place when one looks at defective colorings. To study this question, we define $k$-partial $c$-coloring as follows: nodes are labeled with numbers between $1$ and $c$, and every node is incident to at least $k$ properly colored edges. It is known that $1$-partial $2$-coloring (a.k.a. weak $2$-coloring) is easy for any $d \ge 1$. As our main result, we show that $k$-partial $2$-coloring becomes hard as soon as $k \ge 2$, no matter how large a $d$ we have. We also show that this is fundamentally different from $k$-partial $3$-coloring: no matter which $k \ge 3$ we choose, the problem is always hard for $d = k$ but it becomes easy when $d \gg k$. The same was known previously for partial $c$-coloring with $c \ge 4$, but the case of $c < 4$ was open.

cs.DC↗

Hardness of minimal symmetry breaking in distributed computing

A graph is weakly $2$-colored if the nodes are labeled with colors black and white such that each black node is adjacent to at least one white node and vice versa. In this work we study the distributed computational complexity of weak $2$-coloring in the standard LOCAL model of distributed computing, and how it is related to the distributed computational complexity of other graph problems. First, we show that weak $2$-coloring is a minimal distributed symmetry-breaking problem for regular even-degree trees and high-girth graphs: if there is any non-trivial locally checkable labeling problem that is solvable in $o(\log^* n)$ rounds with a distributed graph algorithm in the middle of a regular even-degree tree, then weak $2$-coloring is also solvable in $o(\log^* n)$ rounds there. Second, we prove a tight lower bound of $Ω(\log^* n)$ for the distributed computational complexity of weak $2$-coloring in regular trees; previously only a lower bound of $Ω(\log \log^* n)$ was known. By minimality, the same lower bound holds for any non-trivial locally checkable problem inside regular even-degree trees.

cs.DC↗

The distributed complexity of locally checkable problems on paths is decidable

Consider a computer network that consists of a path with $n$ nodes. The nodes are labeled with inputs from a constant-sized set, and the task is to find output labels from a constant-sized set subject to some local constraints---more formally, we have an LCL (locally checkable labeling) problem. How many communication rounds are needed (in the standard LOCAL model of computing) to solve this problem? It is well known that the answer is always either $O(1)$ rounds, or $Θ(\log^* n)$ rounds, or $Θ(n)$ rounds. In this work we show that this question is decidable (albeit PSPACE-hard): we present an algorithm that, given any LCL problem defined on a path, outputs the distributed computational complexity of this problem and the corresponding asymptotically optimal algorithm.

cs.DC↗

New Classes of Distributed Time Complexity

A number of recent papers -- e.g. Brandt et al. (STOC 2016), Chang et al. (FOCS 2016), Ghaffari & Su (SODA 2017), Brandt et al. (PODC 2017), and Chang & Pettie (FOCS 2017) -- have advanced our understanding of one of the most fundamental questions in theory of distributed computing: what are the possible time complexity classes of LCL problems in the LOCAL model? In essence, we have a graph problem $Π$ in which a solution can be verified by checking all radius-$O(1)$ neighbourhoods, and the question is what is the smallest $T$ such that a solution can be computed so that each node chooses its own output based on its radius-$T$ neighbourhood. Here $T$ is the distributed time complexity of $Π$. The time complexity classes for deterministic algorithms in bounded-degree graphs that are known to exist by prior work are $Θ(1)$, $Θ(\log^* n)$, $Θ(\log n)$, $Θ(n^{1/k})$, and $Θ(n)$. It is also known that there are two gaps: one between $ω(1)$ and $o(\log \log^* n)$, and another between $ω(\log^* n)$ and $o(\log n)$. It has been conjectured that many more gaps exist, and that the overall time hierarchy is relatively simple -- indeed, this is known to be the case in restricted graph families such as cycles and grids. We show that the picture is much more diverse than previously expected. We present a general technique for engineering LCL problems with numerous different deterministic time complexities, including $Θ(\log^αn)$ for any $α\ge1$, $2^{Θ(\log^αn)}$ for any $α\le 1$, and $Θ(n^α)$ for any $α<1/2$ in the high end of the complexity spectrum, and $Θ(\log^α\log^* n)$ for any $α\ge 1$, $\smash{2^{Θ(\log^α\log^* n)}}$ for any $α\le 1$, and $Θ((\log^* n)^α)$ for any $α\le 1$ in the low end; here $α$ is a positive rational number.

cs.DC↗

Name Independent Fault Tolerant Routing Scheme

We consider the problem of routing in presence of faults in undirected weighted graphs. More specifically, we focus on the design of compact name-independent fault-tolerant routing schemes, where the designer of the scheme is not allowed to assign names to nodes, i.e., the name of a node is just its identifier. Given a set $F$ of faulty (or forbidden) edges, the goal is to route from a source node $s$ to a target $t$ avoiding the forbidden edges in $F$. Given any name-dependent fault-tolerant routing scheme and any name-independent routing scheme, we show how to use them as a black box to construct a name-independent fault-tolerant routing scheme. In particular, we present a name-independent routing scheme able to handle any set $F$ of forbidden edges in $|F|+1$ connected graphs. This has stretch $O(k^2\,|F|^3(|F|+\log^2 n)\log D)$, where $D$ is the diameter of the graph. It uses tables of size $ \widetilde{O}(k\, n^{1/k}(k + deg(v)))$ bits at every node $v$, where $deg(v)$ is the degree of node $v$. In the context of networks that suffer only from occasional failures, we present a name-independent routing scheme that handles only $1$ fault at a time, and another routing scheme that handles at most $2$ faults at a time. The former uses $\widetilde{O}(k^2\, n^{1/k} + k\,deg(v))$ bits of memory per node, with stretch $O(k^3\log D)$. The latter consumes in average $ \widetilde{O}(k^2 \,n^{1/k} + deg(v))$ bits of memory per node, with stretch $O(k^2\log D)$.

cs.DC↗

Distributed Detection of Cycles

Distributed property testing in networks has been introduced by Brakerski and Patt-Shamir (2011), with the objective of detecting the presence of large dense sub-networks in a distributed manner. Recently, Censor-Hillel et al. (2016) have shown how to detect 3-cycles in a constant number of rounds by a distributed algorithm. In a follow up work, Fraigniaud et al. (2016) have shown how to detect 4-cycles in a constant number of rounds as well. However, the techniques in these latter works were shown not to generalize to larger cycles $C_k$ with $k\geq 5$. In this paper, we completely settle the problem of cycle detection, by establishing the following result. For every $k\geq 3$, there exists a distributed property testing algorithm for $C_k$-freeness, performing in a constant number of rounds. All these results hold in the classical CONGEST model for distributed network computing. Our algorithm is 1-sided error. Its round-complexity is $O(1/ε)$ where $ε\in(0,1)$ is the property testing parameter measuring the gap between legal and illegal instances.

cs.DC↗

Distributed Subgraph Detection

In the standard CONGEST model for distributed network computing, it is known that "global" tasks such as minimum spanning tree, diameter, and all-pairs shortest paths, consume large bandwidth, for their running-time is $Ω(\mbox{poly}(n))$ rounds in $n$-node networks with constant diameter. Surprisingly, "local" tasks such as detecting the presence of a 4-cycle as a subgraph also requires $\widetildeΩ(\sqrt{n})$ rounds, even using randomized algorithms, and the best known upper bound for detecting the presence of a 3-cycle is $\widetilde{O}(n^{\frac{2}{3}})$ rounds. The objective of this paper is to better understand the landscape of such subgraph detection tasks. We show that, in contrast to \emph{cycles}, which are hard to detect in the CONGEST model, there exists a deterministic algorithm for detecting the presence of a subgraph isomorphic to $T$ running in a \emph{constant} number of rounds, for every tree $T$. Our algorithm provides a distributed implementation of a combinatorial technique due to Erdős et al. for sparsening the set of partial solutions kept by the nodes at each round. Our result has important consequences to \emph{distributed property-testing}, i.e., to randomized algorithms whose aim is to distinguish between graphs satisfying a property, and graphs far from satisfying that property. In particular, we get that, for every graph pattern $H$ composed of an edge and a tree connected in an arbitrary manner, there exists a distributed testing algorithm for $H$-freeness, performing in a constant number of rounds. Although the class of graph patterns $H$ formed by a tree and an edge connected arbitrarily may look artificial, all previous results of the literature concerning testing $H$-freeness for classical patterns such as cycles and cliques can be viewed as direct consequences of our result, while our algorithm enables testing more complex patterns.

cs.DC↗

How Bandwidth Affects the $CONGEST$ Model

The $CONGEST$ model for distributed network computing is well suited for analyzing the impact of limiting the throughput of a network on its capacity to solve tasks efficiently. For many "global" problems there exists a lower bound of $Ω(D + \sqrt{n/B})$, where $B$ is the amount of bits that can be exchanged between two nodes in one round of communication, $n$ is the number of nodes and $D$ is the diameter of the graph. Typically, upper bounds are given only for the case $B=O(\log n)$, or for the case $B = +\infty$. For $B=O(\log n)$, the Minimum Spanning Tree (MST) construction problem can be solved in $O(D + \sqrt{n}\log^* n)$ rounds, and the Single Source Shortest Path (SSSP) problem can be $(1+ε)$-approximated in $\widetilde{O}(ε^{-O(1)} (D+\sqrt{n}) )$ rounds. We extend these results by providing algorithms with a complexity parametric on $B$. We show that, for any $B=Ω(\log n)$, there exists an algorithm that constructs a MST in $\widetilde{O}(D + \sqrt{n/B})$ rounds, and an algorithm that $(1+ε)$-approximate the SSSP problem in $\widetilde{O}(ε^{-O(1)} (D+\sqrt{n/B}) )$ rounds. We also show that there exist problems that are bandwidth insensitive.

cs.DC↗

Local Distributed Verification

In the framework of distributed network computing, it is known that, for every network predicate, each network configuration that satisfies this predicate can be proved using distributed certificates which can be verified locally. However, this requires to leak information about the identities of the nodes in the certificates, which might not be applicable in a context in which privacy is desirable. Unfortunately, it is known that if one insists on certificates independent of the node identities, then not all network predicates can be proved using distributed certificates that can be verified locally. In this paper, we prove that, for every network predicate, there is a distributed protocol satisfying the following two properties: (1) for every network configuration that is legal w.r.t. the predicate, and for any attempt by an adversary to prove the illegality of that configuration using distributed certificates, there is a locally verifiable proof that the adversary is wrong, also using distributed certificates; (2) for every network configuration that is illegal w.r.t. the predicate, there is a proof of that illegality, using distributed certificates, such that no matter the way an adversary assigns its own set of distributed certificates in an attempt to prove the legality of the configuration, the actual illegality of the configuration will be locally detected. In both cases, the certificates are independent of the identities of the nodes. These results are achieved by investigating the so-called local hierarchy of complexity classes in which the certificates do not exploit the node identities. Indeed, we give a characterization of such a hierarchy, which is of its own interest

cs.DC↗

A Big Data Analyzer for Large Trace Logs

Current generation of Internet-based services are typically hosted on large data centers that take the form of warehouse-size structures housing tens of thousands of servers. Continued availability of a modern data center is the result of a complex orchestration among many internal and external actors including computing hardware, multiple layers of intricate software, networking and storage devices, electrical power and cooling plants. During the course of their operation, many of these components produce large amounts of data in the form of event and error logs that are essential not only for identifying and resolving problems but also for improving data center efficiency and management. Most of these activities would benefit significantly from data analytics techniques to exploit hidden statistical patterns and correlations that may be present in the data. The sheer volume of data to be analyzed makes uncovering these correlations and patterns a challenging task. This paper presents BiDAl, a prototype Java tool for log-data analysis that incorporates several Big Data technologies in order to simplify the task of extracting information from data traces produced by large clusters and server farms. BiDAl provides the user with several analysis languages (SQL, R and Hadoop MapReduce) and storage backends (HDFS and SQLite) that can be freely mixed and matched so that a custom tool for a specific task can be easily constructed. BiDAl has a modular architecture so that it can be extended with other backends and analysis languages in the future. In this paper we present the design of BiDAl and describe our experience using it to analyze publicly-available traces from Google data clusters, with the goal of building a realistic model of a complex data center.

cs.DC↗

BiDAl: Big Data Analyzer for Cluster Traces

Modern data centers that provide Internet-scale services are stadium-size structures housing tens of thousands of heterogeneous devices (server clusters, networking equipment, power and cooling infrastructures) that must operate continuously and reliably. As part of their operation, these devices produce large amounts of data in the form of event and error logs that are essential not only for identifying problems but also for improving data center efficiency and management. These activities employ data analytics and often exploit hidden statistical patterns and correlations among different factors present in the data. Uncovering these patterns and correlations is challenging due to the sheer volume of data to be analyzed. This paper presents BiDAl, a prototype "log-data analysis framework" that incorporates various Big Data technologies to simplify the analysis of data traces from large clusters. BiDAl is written in Java with a modular and extensible architecture so that different storage backends (currently, HDFS and SQLite are supported), as well as different analysis languages (current implementation supports SQL, R and Hadoop MapReduce) can be easily selected as appropriate. We present the design of BiDAl and describe our experience using it to analyze several public traces of Google data clusters for building a simulation model capable of reproducing observed behavior.

cs.DC↗