Dictionaries on AC 0 RAMs : Query time Θ ( √ log n / log log n ) is necessary and sufficient ∗

In this paper we consider solutions to the dictionary problem on AC RAMs, i.e. random access machines where the only restriction on the finite instruction set is that all computational instructions are in AC. Our main result is a tight upper and lower bound of Θ( √ log n/ log log n) on the time for answering membership queries in a set of size n when reasonable space is used for the data structure storing the set; the upper bound can be obtained using O(n) space, and the lower bound holds even if we allow space 2 . Furthermore, the lower bound holds even for static dictionaries, while the upper bound holds also for dynamic dictionaries; insertion and deletions can be accommodated in expected amortized time Θ( √ log n/ log log n). Several variations of this bound is also obtained, including tight upper and lower bounds on the storage space if the query time must be constant and bounds valid for nonAC RAMs if the execution time of an instruction computing a function is measured as the minimal depth of a polynomially sized unbounded fan-in circuit computing the function. We refer to this model as the Circuit RAM. As an example of the latter, we show that any RAM instruction set which permits a linear space, constant query time solution to the static dictionary problem must have an instruction of depth Ω(logw/ log logw), where w is the word size of the machine (and log the size of the universe). This matches the depth of multiplication and integer division, used in the two level hashing scheme of Fredman, Komlós and Szemerédi.

[1]  Arne Andersson Faster deterministic sorting and searching in linear space , 1996, Proceedings of 37th Conference on Foundations of Computer Science.

[2]  P. S. Thiagarajan,et al.  A Product Version of Dynamic Linear Time Temporal Logic , 1997, CONCUR.

[3]  Andrew Chi-Chih Yao,et al.  Should Tables Be Sorted? , 1981, JACM.

[4]  Michael L. Fredman,et al.  Surpassing the Information Theoretic Bound with Fusion Trees , 1993, J. Comput. Syst. Sci..

[5]  Mikkel Thorup Randomized sorting in O(n log log n) time and linear space using addition, shift, and bit-wise boolean operations , 1997, SODA '97.

[6]  Martti Penttonen,et al.  A Reliable Randomized Algorithm for the Closest-Pair Problem , 1997, J. Algorithms.

[7]  Peter Bro Miltersen,et al.  Tables Should Be Sorted (On Random Access Machines) , 1995, WADS.

[8]  János Komlós,et al.  Storing a sparse table with O(1) worst case access time , 1982, 23rd Annual Symposium on Foundations of Computer Science (sfcs 1982).

[9]  Kim Guldstrand Larsen,et al.  Compositional Safety Logics , 1997 .

[10]  Rajeev Raman,et al.  Sorting in linear time? , 1995, STOC '95.

[11]  J. Håstad Computational limitations of small-depth circuits , 1987 .

[12]  Noam Nisan,et al.  The computational complexity of universal hashing , 1990, STOC '90.

[13]  Larry Carter,et al.  Universal Classes of Hash Functions , 1979, J. Comput. Syst. Sci..

[14]  Stephen A. Cook,et al.  Log Depth Circuits for Division and Related Problems , 1986, SIAM J. Comput..

[15]  Vladimiro Sassone,et al.  Transition systems with independence and multi-arcs , 1997, Partial Order Methods in Verification.

[16]  R. Karlsson Algorithms in a restricted universe , 1985 .

[17]  Robert E. Tarjan,et al.  Storing a sparse table , 1979, CACM.

[18]  P. Beame A switching lemma primer , 1994 .

[19]  Kim G. Larsen,et al.  Timed Modal Specification - Theory and Tools , 1993, CAV.

[20]  Peter Bro Miltersen Lower Bounds for Static Dictionaries on RAMs with Bit Operations But No Multiplication , 1996, ICALP.

[21]  Peter Bro Miltersen,et al.  Trans-Dichotomous Algorithms Without Multiplication - Some Upper and Lower Bounds , 1997, WADS.

[22]  Arne Andersson,et al.  Sublogarithmic searching without multiplications , 1995, Proceedings of IEEE 36th Annual Foundations of Computer Science.

[23]  P. S. Thiagarajan,et al.  Dynamic Linear Time Temporal Logic , 1997, Ann. Pure Appl. Log..

[24]  Friedhelm Meyer auf der Heide,et al.  Dynamic perfect hashing: upper and lower bounds , 1988, [Proceedings 1988] 29th Annual Symposium on Foundations of Computer Science.

[25]  Dan E. Willard New Trie Data Structures Which Support Very Fast Search Operations , 1984, J. Comput. Syst. Sci..

[26]  Mikkel Thorup,et al.  On RAM priority queues , 1996, SODA '96.

[27]  Uzi Vishkin,et al.  Constant Depth Reducibility , 1984, SIAM J. Comput..

[28]  Noam Nisan,et al.  Constant depth circuits, Fourier transform, and learnability , 1989, 30th Annual Symposium on Foundations of Computer Science.

[29]  Susanne Albers,et al.  Improved parallel integer sorting without concurrent writing , 1992, SODA '92.

[30]  Thunks and the-calculus ( extended version ) , 1997 .