Browse > Article
http://dx.doi.org/10.5626/JCSE.2015.9.1.1

Efficient Accessing and Searching in a Sequence of Numbers  

Seo, Jungjoo (Department of Computer Science and Engineering, Seoul National University)
Han, Myoungji (Department of Computer Science and Engineering, Seoul National University)
Park, Kunsoo (Department of Computer Science and Engineering and Korea Institute of Computer Technology, Seoul National University)
Publication Information
Journal of Computing Science and Engineering / v.9, no.1, 2015 , pp. 1-8 More about this Journal
Abstract
Accessing and searching in a sequence of numbers are fundamental operations in computing that are encountered in a wide range of applications. One of the applications of the problem is cryptanalytic time-memory tradeoff which is aimed at a one-way function. A rainbow table, which is a common method for the time-memory tradeoff, contains elements from an input domain of a hash function that are normally sorted integers. In this paper, we present a practical indexing method for a monotonically increasing static sequence of numbers where the access and search queries can be addressed efficiently in terms of both time and space complexity. For a sequence of n numbers from a universe $U=\{0,{\ldots},m-1\}$, our data structure requires n lg(m/n) + O(n) bits with constant average running time for both access and search queries. We also give an analysis of the time and space complexities of the data structure, supported by experiments with rainbow tables.
Keywords
Data structure; Access/search; Rank/select; Time-memory tradeoff;
Citations & Related Records
연도 인용수 순위
  • Reference
1 M. Curtiss, I. Becker, T. Bosman, S. Doroshenko, L. Grijincu, T. Jackson, et al., "Unicorn: a system for searching the social graph," Proceedings of the VLDB Endowment, vol. 6, no. 11, pp. 1150-1161, 2013.
2 A. C. C. Yao, "Should tables be sorted?" Journal of the ACM, vol. 28, no. 3, pp. 615-628, 1981.   DOI   ScienceOn
3 M. L. Fredman, J. Komlos, and E. Szemeredi, "Storing a sparse table with 0(1) worst case access time," Journal of the ACM, vol. 31, no. 3, pp. 538-544, 1984.   DOI   ScienceOn
4 A. Brodnik and J. I. Munro, "Membership in constant time and almost-minimum space," SIAM Journal on Computing, vol. 28, no. 5, pp. 1627-1640, 1999.   DOI
5 R. Pagh, "Low redundancy in static dictionaries with constant query time," SIAM Journal on Computing, vol. 31, no. 2, pp. 353-363, 2001.   DOI   ScienceOn
6 L. Foschini, R. Grossi, A. Gupta, and J. S. Vitter, "When indexing equals compression: experiments with compressing suffix arrays and applications," ACM Transactions on Algorithms, vol. 2, no. 4, pp. 611-639, 2006.   DOI
7 R. Raman, V. Raman, and S. R. Satti, "Succinct indexable dictionaries with applications to encoding k-ary trees, prefix sums and multisets," ACM Transactions on Algorithms, vol. 3, no. 4, article no. 43, 2007.
8 P. Ferragina, G. Manzini, V. Makinen, and G. Navarro, "Compressed representations of sequences and full-text indexes," ACM Transactions on Algorithms, vol. 3, no. 2, article no. 20, 2007.
9 J. C. Na, J. E. Kim, K. Park, and D. K. Kim, "Fast computation of rank and select functions for succinct representation," IEICE Transactions on Information and Systems, vol. E92, no. 10, pp. 2025-2033, 2009.
10 S. Vigna, "Broadword implementation of rank/select queries," in Proceedings of the 7th International Conference on Experimental Algorithms, Provincetown, MA, 2008, pp. 154-168.
11 A. Biryukov, A. Shamir, and D. Wagner, "Real time cryptanalysis of A5/1 on a pc," in Proceedings of the 7th International Workshop on Fast Software Encryption, New York, NY, 2001, pp. 1-18.
12 J. Hong and S. Moon, "A comparison of cryptanalytic tradeoff algorithms," Journal of Cryptology, vol. 26, no. 4, pp. 559-637, 2012.   DOI
13 S. M. Ross, A First Course in Probability, 6th ed., Upper Saddle River, NJ: Prentice Hall, 2002.
14 P. Elias, "Efficient storage and retrieval by content and address of static files," Journal of the ACM, vol. 21, no. 2, pp. 246-260, 1974.   DOI   ScienceOn
15 R. M. Fano, On the Number of Bits Required to Implement an Associative Memory, MIT Project MAC Computer Structures Group, 1971.
16 D. Belazzougui, P. Boldi, R. Pagh, and S. Vigna, "Theory and practice of monotone minimal perfect hashing," Journal of Experimental Algorithmics, vol. 16, article no. 3.2, 2011.
17 G. Navarro and E. Providel, "Fast, small, simple rank/select on bitmaps," in Experimental Algorithms, Lecture Notes in Computer Science vol. 7276, Heidelberg: Springer, pp. 295-306, 2012.
18 R. Grossi and J. S. Vitter, "Compressed suffix arrays and suffix trees with applications to text indexing and string matching," SIAM Journal on Computing, vol. 35, no. 2, pp. 378-407, 2005.   DOI   ScienceOn
19 D. Okanohara and K. Sadakane, "Practical entropy-compressed rank/select dictionary," in Proceedings of the 9th Workshop on Algorithm Engineering and Experiments (ALENEX), 2007, pp. 60-70.
20 F. Claude and G. Navarro, "Practical rank/select queries over arbitrary sequences," in String Processing and Information Retrieval, Lecture Notes in Computer Science vol. 5280, Heidelberg: Springer, pp. 176-187, 2009.
21 S. Gog, "SDSL-Lite," https://github.com/simongog/sdsl-lite.