Results 1 - 10
of
13
The probabilistic method yields deterministic parallel algorithms
- Journal of Computer and System Sciences
, 1989
"... We present a technique for converting RNC algorithms into NC algorithms. Our approach is based on a parallel implementation of the method of conditional probabilities. This method was used to convert probabilistic proofs of existence of combinatorial structures into polynomial time deterministic alg ..."
Abstract
-
Cited by 51 (5 self)
- Add to MetaCart
We present a technique for converting RNC algorithms into NC algorithms. Our approach is based on a parallel implementation of the method of conditional probabilities. This method was used to convert probabilistic proofs of existence of combinatorial structures into polynomial time deterministic algorithms. It has the apparent drawback of being extremely sequential in nature. We show certain general conditions under which it is possible to use this technique for devising deterministic parallel algorithms. We use our technique to devise an NC algorithm for the set balancing problem. This problem turns out to be a useful tool for parallel algorithms. Using our de-randomization method and the set balancing algorithm, we provide an NC algorithm for the lattice approximation problem. We also use the lattice approximation problem to bootstrap the set balancing algorithm, and the result is a more processor efficient algorithm. The set balancing algorithm also yields an NC algorithm for near-optimal edge coloring of simple graphs. Our methods also extend to the parallelization of various algorithms in computational geometry that rely upon the random sampling technique of Clarkson. Finally, our methods apply to constructing certain combinatorial structures, e.g. ...
Fault-tolerant Routing in Peer-to-peer Systems
, 2003
"... We consider the problem of designing an overlay network and routing mechanism that permits finding resources efficiently in a peer-to-peer system. We argue that many existing approaches to this problem can be modeled as the construction of a random graph embedded in a metric space whose points repre ..."
Abstract
-
Cited by 49 (1 self)
- Add to MetaCart
We consider the problem of designing an overlay network and routing mechanism that permits finding resources efficiently in a peer-to-peer system. We argue that many existing approaches to this problem can be modeled as the construction of a random graph embedded in a metric space whose points represent resource identifiers, where the probability of a connection between two nodes depends only on the distance between them in the metric space. We study the performance of a peer-to-peer system where nodes are embedded at grid points in a simple metric space: a one-dimensional real line. We prove upper and lower bounds on the message complexity of locating particular resources in such a system, under a variety of assumptions about failures of either nodes or the connections between them. Our lower bounds in particular show that the use of inverse power-law distributions in routing, as suggested by Kleinberg [5], is close to optimal. We also give efficient heuristics to dynamically maintain such a system as new nodes arrive and old nodes depart. Finally, we give experimental results that suggest promising directions for future work.
The complexity of decision versus search
- SIAM Journal on Computing
, 1994
"... A basic question about NP is whether or not search reduces in polynomial time to decision. We indicate that the answer is negative: under a complexity assumption (that deterministic and non-deterministic double-exponential time are unequal) we construct a language in NP for which search does not red ..."
Abstract
-
Cited by 30 (1 self)
- Add to MetaCart
A basic question about NP is whether or not search reduces in polynomial time to decision. We indicate that the answer is negative: under a complexity assumption (that deterministic and non-deterministic double-exponential time are unequal) we construct a language in NP for which search does not reduce to decision. These ideas extend in a natural way to interactive proofs and program checking. Under similar assumptions we present languages in NP for which it is harder to prove membership interactively than it is to decide this membership, and languages in NP which are not checkable. Keywords: NP-completeness, self-reducibility, interactive proofs, program checking, sparse sets,
Languages that are Easier than their Proofs
, 1991
"... A basic question about NP is whether or not search reduces in polynomial time to decision. We indicate that the answer is negative: under a complexity assumption (that deterministic and nondeterministic doubleexponential time are unequal) we construct a language in NP for which search does not reduc ..."
Abstract
-
Cited by 13 (7 self)
- Add to MetaCart
A basic question about NP is whether or not search reduces in polynomial time to decision. We indicate that the answer is negative: under a complexity assumption (that deterministic and nondeterministic doubleexponential time are unequal) we construct a language in NP for which search does not reduce to decision. These ideas extend in a natural way to interactive proofs and program checking. Under similar assumptions we present languages in NP for which it is harder to prove membership interactively than it is to decide this membership. Similarly we present languages where checking is harder than computing membership. Each of the following properties --- checkability, random-self-reducibility, reduction from search to decision, and interactive proofs in which the prover's power is limited to deciding membership in the language itself --- implies coherence, one of the weakest forms of self-reducibility. Under assumptions about triple-exponential time, we construct incoherent sets in NP....
Designing Checkers for Programs that Run in Parallel
- Algorithmica
, 1994
"... Program correctness for parallel programs is an even more problematic issue than for serial programs. We extend the theory of program result checking to parallel programs, and find general techniques for designing such result checkers that work for many basic problems in parallel computation. These ..."
Abstract
-
Cited by 13 (2 self)
- Add to MetaCart
Program correctness for parallel programs is an even more problematic issue than for serial programs. We extend the theory of program result checking to parallel programs, and find general techniques for designing such result checkers that work for many basic problems in parallel computation. These result checkers are simple to program and are more efficient than the actual computation of the result. For example, sorting, multiplication, parity, the all pairs shortest path problem and majority all have constant depth result checkers, and the result checkers for all but the last problem use a linear number of processors. We show that there are P-complete problems (evaluating straight-line programs, linear programming) that have very fast, even constant depth, result checkers. 1 Introduction Verifying a program to see if it is correct is a problem that every programmer has encountered. Even the seemingly simplest of programs can be full of hidden bugs, and in the age of massive software...
Computing Minimal Spanning Subgraphs in Linear Time
, 1995
"... Let P be a property of undirected graphs. We consider the following problem: given a graph G that has property P , find a minimal spanning subgraph of G with property P . We describe general algorithms for this problem and prove their correctness under fairly weak assumptions about P . We establi ..."
Abstract
-
Cited by 9 (1 self)
- Add to MetaCart
Let P be a property of undirected graphs. We consider the following problem: given a graph G that has property P , find a minimal spanning subgraph of G with property P . We describe general algorithms for this problem and prove their correctness under fairly weak assumptions about P . We establish that the worst-case running time of these algorithms is \Theta(m +n log n) for 2-edge-connectivity and biconnectivity where n and m denote the number of vertices and edges, respectively, in the input graph. By refining the basic algorithms we obtain the first linear time algorithms for computing a minimal 2-edge-connected spanning subgraph and for computing a minimal biconnected spanning subgraph. We also devise general algorithms for computing a minimal spanning subgraph in directed graphs. These algorithms allow us to simplify an earlier algorithm of Gibbons, Karp, Ramachandran, Soroker and Tarjan for computing a minimal strongly connected spanning subgraph. We also provide the ...
(Probabilistic) Recurrence Relations Revisited
"... . The performance attributes of a broad class of randomised algorithms can be described by a recurrence relation of the form T (x) = a(x)+T (H(x)), where a is a function and H(x) is a random variable. For instance, T (x) may describe the running time of such an algorithm on a problem of size x. The ..."
Abstract
-
Cited by 6 (3 self)
- Add to MetaCart
. The performance attributes of a broad class of randomised algorithms can be described by a recurrence relation of the form T (x) = a(x)+T (H(x)), where a is a function and H(x) is a random variable. For instance, T (x) may describe the running time of such an algorithm on a problem of size x. Then T (x) is a random variable, whose distribution depends on the distribution of H(x). To give high probability guarantees on the performance of such randomised algorithms, it suffices to obtain bounds on the tail of the distribution of T (x). Karp derived tight bounds on this tail distribution, when the distribution of H(x) satisfies certain restrictions. However, his proof is quite difficult to understand. In this paper, we derive bounds similar to Karp's using standard tools from elementary probability theory, such as Markov's inequality, stochastic dominance and a variant of Chernoff bounds applicable to unbounded variables. Further, we extend the results, showing that similar bounds hold...
On Algorithmic Applications of the Immersion Order
- the Third Slovenian International Conference on Graph Theory. Discrete Mathematics
, 1998
"... A snapshot of our current exploration of the algorithmic aspects of the immersion order is presented. Integrated circuit partitioning is used as a prototypical applications domain. Decision and search algorithms, self-reductions, closurepreserving operators and related developments are discussed. ..."
Abstract
-
Cited by 2 (2 self)
- Add to MetaCart
A snapshot of our current exploration of the algorithmic aspects of the immersion order is presented. Integrated circuit partitioning is used as a prototypical applications domain. Decision and search algorithms, self-reductions, closurepreserving operators and related developments are discussed. This research is supported in part by the National Science Foundation under grant CDA--9115428 and by the Office of Naval Research under contracts N00014--90--J--1855 and N00014--94--1--1155. 1 Background We consider only finite, undirected graphs. H is said to be immersed in G, written H i G, iff a graph isomorphic to H can be obtained from G by lifting pairs of adjacent edges and taking a subgraph. As an example, observe that C 4 is immersed in K 1 + 2K 2 . lift lift Figure 1: C 4 i K 1 + 2K 2 Suppose a family F is closed in this order, that is, G 2 F and H i G ) H 2 F . The obstruction set for F consists of the immersion-minimal elements in F 's complement. Accordingly, F has the f...
A New Algorithm for the Hypergraph Transversal Problem
, 2005
"... We consider the problem of finding all minimal transversals of a hypergraph H ⊆ 2 V, given by an explicit list of its hyperedges. We give a new decomposition technique for solving the problem with the following advantages: (i) Global parallelism: for certain classes of hypergraphs, e.g. hypergraphs ..."
Abstract
-
Cited by 2 (0 self)
- Add to MetaCart
We consider the problem of finding all minimal transversals of a hypergraph H ⊆ 2 V, given by an explicit list of its hyperedges. We give a new decomposition technique for solving the problem with the following advantages: (i) Global parallelism: for certain classes of hypergraphs, e.g. hypergraphs of bounded edge size, and any given integer k, the algorithm outputs k minimal transversals of H in time bounded by polylog(|V |, |H|, k) assuming poly(|V |, |H|, k) number of processors. Except for the case of graphs, none of the previously known algorithms for solving the same problem exhibit this feature. (ii) Using this technique, we also obtain new results on the complexity of generating minimal transversals for new classes of hypergraphs, namely hypergraphs of bounded dual-conformality, and hypergraphs in which every edge intersects every minimal transversal in a bounded number of vertices.
The Complexity of Finding Minimal Spanning Subgraphs
, 1991
"... Let P be a property of graphs (directed or undirected). We consider the following problem: given a graph G that has property P , find a minimal spanning subgraph of G with property P . We describe an algorithm for this problem and prove that it is correct under some rather weak assumptions about P ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
Let P be a property of graphs (directed or undirected). We consider the following problem: given a graph G that has property P , find a minimal spanning subgraph of G with property P . We describe an algorithm for this problem and prove that it is correct under some rather weak assumptions about P . We then analyze the number of iterations of this algorithm. By suitably restricting the graph properties, we devise a general technique to construct graphs for which the algorithm requires a large number of iterations. We apply the above technique to three concrete graph properties: 2-edge-connectivity, biconnectivity, and strong connectivity. We obtain a tight lower bound of\Omega\Gamma/45 n) on the number of iterations of the algorithm for finding minimal spanning subgraphs with these properties; this resolves open questions posed earlier with regard to these properties. This also implies that the worst case sequential running time of the algorithm for these three properties is \Omega\Ga...

