Creative Commons Attribution 3.0 Unported license
In the context of the sliding-window set membership problem, and caching policies that require knowledge of item recency, we formalize the problem of Recency on a stream. Informally, the query asks, "when was the last time I saw item x?" Existing structures, such as hash tables, can support a recency query by augmenting item occurrences with timestamps. To support recency queries on a window of W items, this might require Θ(W log W) bits. We propose a succinct data structure for Recency. By combining sliding-window dictionaries in a hierarchical structure, and careful design of the underlying hash tables, we achieve a data structure that returns a 1+ε approximation to the recency of every item in O(log(ε W)) time, in only (1+o(1))(1+ε)(ℬ+Wlog(ε^(-1))) bits. Here, ℬ is the information-theoretic lower bound on the number of bits for a set of size W, in a universe of cardinality N.
@InProceedings{holland_et_al:LIPIcs.ISAAC.2020.49,
author = {Holland, William L. and Wirth, Anthony and Zobel, Justin},
title = {{Recency Queries with Succinct Representation}},
booktitle = {31st International Symposium on Algorithms and Computation (ISAAC 2020)},
pages = {49:1--49:14},
series = {Leibniz International Proceedings in Informatics (LIPIcs)},
ISBN = {978-3-95977-173-3},
ISSN = {1868-8969},
year = {2020},
volume = {181},
editor = {Cao, Yixin and Cheng, Siu-Wing and Li, Minming},
publisher = {Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
address = {Dagstuhl, Germany},
URL = {https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.ISAAC.2020.49},
URN = {urn:nbn:de:0030-drops-133931},
doi = {10.4230/LIPIcs.ISAAC.2020.49},
annote = {Keywords: Succinct Data Structures, Data Streams, Sliding Dictionary}
}