Results 1  10
of
14
Optimal Bounds for the Predecessor Problem
 In Proceedings of the ThirtyFirst Annual ACM Symposium on Theory of Computing
"... We obtain matching upper and lower bounds for the amount of time to find the predecessor of a given element among the elements of a fixed efficiently stored set. Our algorithms are for the unitcost wordlevel RAM with multiplication and extend to give optimal dynamic algorithms. The lower bounds ar ..."
Abstract

Cited by 63 (0 self)
 Add to MetaCart
We obtain matching upper and lower bounds for the amount of time to find the predecessor of a given element among the elements of a fixed efficiently stored set. Our algorithms are for the unitcost wordlevel RAM with multiplication and extend to give optimal dynamic algorithms. The lower bounds are proved in a much stronger communication game model, but they apply to the cell probe and RAM models and to both static and dynamic predecessor problems.
Communication Complexity of Document Exchange
, 2000
"... We address the problem of minimizing the communication involved in the exchange of similar documents. We consider two users, A and B, who hold documents x and y respectively. Neither of the users has any information about the other's document. They exchange messages so that B computes x; it may be ..."
Abstract

Cited by 54 (2 self)
 Add to MetaCart
We address the problem of minimizing the communication involved in the exchange of similar documents. We consider two users, A and B, who hold documents x and y respectively. Neither of the users has any information about the other's document. They exchange messages so that B computes x; it may be required that A compute y as well. Our goal is to design communication protocols with the main objective of minimizing the total number of bits they exchange; other objectives are minimizing the number of rounds and the complexity of internal computations. An important notion which determines the efficiency of the protocols is how one measures the distance between x and y. We consider several metrics for measuring this distance, namely the Hamming metric, the Levenshtein metric (edit distance), and a new LZ metric, which is introduced in this paper. We show how to estimate the distance between x and y using a single message of logarithmic size. For each metric, we present the first communica...
Optimal Bounds for the Predecessor Problem and Related Problems
 Journal of Computer and System Sciences
, 2001
"... We obtain matching upper and lower bounds for the amount of time to find the predecessor of a given element among the elements of a fixed compactly stored set. Our algorithms are for the unitcost word RAM with multiplication and are extended to give dynamic algorithms. The lower bounds are proved ..."
Abstract

Cited by 54 (0 self)
 Add to MetaCart
We obtain matching upper and lower bounds for the amount of time to find the predecessor of a given element among the elements of a fixed compactly stored set. Our algorithms are for the unitcost word RAM with multiplication and are extended to give dynamic algorithms. The lower bounds are proved for a large class of problems, including both static and dynamic predecessor problems, in a much stronger communication game model, but they apply to the cell probe and RAM models.
Tight(er) Worstcase Bounds on Dynamic Searching and Priority Queues
 In STOC’2000
, 2000
"... We introduce a novel technique for converting static polynomial space search structures for ordered sets into fullydynamic linear space data structures. Based on this we present optimal bounds for dynamic integer searching, including finger search, and exponentially improved bounds for priority queu ..."
Abstract

Cited by 42 (2 self)
 Add to MetaCart
We introduce a novel technique for converting static polynomial space search structures for ordered sets into fullydynamic linear space data structures. Based on this we present optimal bounds for dynamic integer searching, including finger search, and exponentially improved bounds for priority queues.
Static Dictionaries on AC^0 RAMs: Query time Θ(,/log n / log log n) is necessary and sufficient
, 1996
"... In this paper we consider solutions to the static dictionary problem ���� � on RAMs, i.e. random access machines where the only restriction on the finite instruction set is that all computational instructions are ���� � in. Our main result is a tight upper and lower bound ���� � ���©���������������� ..."
Abstract

Cited by 19 (5 self)
 Add to MetaCart
In this paper we consider solutions to the static dictionary problem ���� � on RAMs, i.e. random access machines where the only restriction on the finite instruction set is that all computational instructions are ���� � in. Our main result is a tight upper and lower bound ���� � ���©��������������������� of on the time for answering membership queries in a set of � size when reasonable space is used for the data structure storing the set; the upper bound can be obtained using space ������ � �� � ���� �. Several variations of this result are also obtained. Among others, we show a tradeoff between time and circuit depth under the unitcost assumption: any RAM instruction set which permits a linear space, constant query time solution to the static dictionary problem must have an instruction of depth �������©���������������©���� � , where � is the word size of the machine (and ���© � the size of the universe). This matches the depth of multiplication and integer division, used in the perfect hashing scheme by Fredman, Komlós and Szemerédi.
Randomized sorting in O(n log log n) time and linear space using addition, shift, and bitwise boolean operations
, 1996
"... A randomized sorting algorithm is presented, doing as described in the title. 1 Introduction In this paper we consider sorting on a very simple RAM where the only wordoperations are addition, shift, and bitwise boolean operations. Besides these wordoperations, we have direct and indirect addres ..."
Abstract

Cited by 18 (3 self)
 Add to MetaCart
A randomized sorting algorithm is presented, doing as described in the title. 1 Introduction In this paper we consider sorting on a very simple RAM where the only wordoperations are addition, shift, and bitwise boolean operations. Besides these wordoperations, we have direct and indirect addressing, jumps, and conditional statements. Such a RAM has been referred to as a Practical RAM [Mil96]. In this paper we show Theorem 1 On a Practical RAM, there is a randomized algorithm sorting n words in O(n log log n) time and linear space. The above algorithm only makes shifts by powers of two, and it only needs O(log n) random words. Our time bound matches that of the current fastest sorting algorithm by Andersson, Hagerup, Raman, and Nilsson [AHNR95]. Their algorithm has two variants: one is deterministic uses space 2 "w , where w is the word length and " is a positive constant. Thus the space is unbounded in terms of n. The other variant is randomized and uses linear space like ou...
Error Correcting Codes, Perfect Hashing Circuits, and Deterministic Dynamic Dictionaries
, 1997
"... We consider dictionaries of size n over the finite universe U = and introduce a new technique for their implementation: error correcting codes. The use of such codes makes it possible to replace the use of strong forms of hashing, such as universal hashing, with much weaker forms, such as clus ..."
Abstract

Cited by 17 (2 self)
 Add to MetaCart
We consider dictionaries of size n over the finite universe U = and introduce a new technique for their implementation: error correcting codes. The use of such codes makes it possible to replace the use of strong forms of hashing, such as universal hashing, with much weaker forms, such as clustering. We use
TransDichotomous Algorithms Without Multiplication  Some Upper and Lower Bounds
, 1997
"... . We show that on a RAM with addition, subtraction, bitwise Boolean operations and shifts, but no multiplication, there is a transdichotomous solution to the static dictionary problem using linear space and with query time p log n(log log n) 1+o(1) . On the way, we show that two wbit words can ..."
Abstract

Cited by 13 (1 self)
 Add to MetaCart
. We show that on a RAM with addition, subtraction, bitwise Boolean operations and shifts, but no multiplication, there is a transdichotomous solution to the static dictionary problem using linear space and with query time p log n(log log n) 1+o(1) . On the way, we show that two wbit words can be multiplied in time (log w) 1+o(1) and that time \Omega (log w) is necessary, and that \Theta(log log w) time is necessary and sufficient for identifying the least significant set bit of a word. 1 Introduction Consider a problem (like sorting or searching) whose instances consists of collections of members of the universe U = f0; 1g w of wbit bit strings (or numbers between 0 and 2 w \Gamma 1). An increasingly popular theoretical model for studying such problems is the transdichotomous model of computation [13, 14, 1, 7, 8, 3, 2, 20, 18, 9, 4, 21, 6], where one assumes a random access machine where each register is capable of holding exactly one element of the universe, i.e. we...
Randomized algorithms for geometric optimization problems
 Handbook of Randomized Computation
, 2001
"... This chapter reviews randomization algorithms developed in the last few years to solve a wide range of geometric optimization problems. We rst review a number of general techniques, including randomized binary search, randomized linearprogramming algorithms, and random sampling. Next, we describe s ..."
Abstract

Cited by 9 (0 self)
 Add to MetaCart
This chapter reviews randomization algorithms developed in the last few years to solve a wide range of geometric optimization problems. We rst review a number of general techniques, including randomized binary search, randomized linearprogramming algorithms, and random sampling. Next, we describe several applications of these and other techniques, including facility location, proximity problems, statistical estimators, nearest neighbor searching, and Euclidean TSP.
Lower bounds for static dictionaries on RAMs with bit operations but no multiplication
 In Automata, languages and programming (Paderborn
, 1996
"... . We consider solving the static dictionary problem with n keys from the universe f0; : : : ; m \Gamma 1g on a RAM with direct and indirect addressing, conditional jump, addition, bitwise Boolean operations, and arbitrary shifts (a Practical RAM). For any ffl ? 0, tries yield constant query time us ..."
Abstract

Cited by 7 (2 self)
 Add to MetaCart
. We consider solving the static dictionary problem with n keys from the universe f0; : : : ; m \Gamma 1g on a RAM with direct and indirect addressing, conditional jump, addition, bitwise Boolean operations, and arbitrary shifts (a Practical RAM). For any ffl ? 0, tries yield constant query time using space m ffl , provided that n = m o(1) . We show that this is essentially optimal: Any scheme with constant query time requires space m ffl for some ffl ? 0, even if n (log m) 2 . 1 Introduction The static dictionary problem is the following: Given a subset S of size n of the universe U = f0; : : : ; m \Gamma 1g, store it as a data structure OE S in the memory of a unit cost random access machine, using few memory registers, each containing O(logm) bits, so that membership queries "Is x 2 S?" can be answered efficiently for any value of x. The set S can be stored as a sorted table using n memory registers. Then queries can be answered using binary search in O(logn) time. Yao...