37,971 research outputs found
Cache-Oblivious Persistence
Partial persistence is a general transformation that takes a data structure
and allows queries to be executed on any past state of the structure. The
cache-oblivious model is the leading model of a modern multi-level memory
hierarchy.We present the first general transformation for making
cache-oblivious model data structures partially persistent
Lower Bounds for Oblivious Data Structures
An oblivious data structure is a data structure where the memory access
patterns reveals no information about the operations performed on it. Such data
structures were introduced by Wang et al. [ACM SIGSAC'14] and are intended for
situations where one wishes to store the data structure at an untrusted server.
One way to obtain an oblivious data structure is simply to run a classic data
structure on an oblivious RAM (ORAM). Until very recently, this resulted in an
overhead of for the most natural setting of parameters.
Moreover, a recent lower bound for ORAMs by Larsen and Nielsen [CRYPTO'18] show
that they always incur an overhead of at least if used in a
black box manner. To circumvent the overhead, researchers have
instead studied classic data structure problems more directly and have obtained
efficient solutions for many such problems such as stacks, queues, deques,
priority queues and search trees. However, none of these data structures
process operations faster than , leaving open the question of
whether even faster solutions exist. In this paper, we rule out this
possibility by proving lower bounds for oblivious stacks,
queues, deques, priority queues and search trees.Comment: To appear at SODA'1
Lower Bounds for Oblivious Near-Neighbor Search
We prove an lower bound on the dynamic
cell-probe complexity of statistically
approximate-near-neighbor search () over the -dimensional
Hamming cube. For the natural setting of , our result
implies an lower bound, which is a quadratic
improvement over the highest (non-oblivious) cell-probe lower bound for
. This is the first super-logarithmic
lower bound for against general (non black-box) data structures.
We also show that any oblivious data structure for
decomposable search problems (like ) can be obliviously dynamized
with overhead in update and query time, strengthening a classic
result of Bentley and Saxe (Algorithmica, 1980).Comment: 28 page
Cache-Oblivious Data Structures and Algorithms for Undirected Breadth-First Search and Shortest Paths
We present improved cache-oblivious data structures and algorithms for breadth-first search (BFS) on undirected graphs and the single-source shortest path (SSSP) problem on undirected graphs with non-negative edge weights. For the SSSP problem, our result closes the performance gap between the currently best cache-aware algorithm and the cache-oblivious counterpart. Our cache-oblivious SSSP-algorithm takes nearly full advantage of block transfers for dense graphs. The algorithm relies on a new data structure, called bucket heap, which is the first cache-oblivious priority queue to efficiently support a weak DECREASEKEY operation. For the BFS problem, we reduce the number of I/Os for sparse graphs by a factor of nearly sqrt{B}, where B is the cache-block size, nearly closing the performance gap between the currently best cache-aware and cache-oblivious algorithms
Axiomatizations for downward XPath on Data Trees
We give sound and complete axiomatizations for XPath with data tests by
"equality" or "inequality", and containing the single "child" axis. This
data-aware logic predicts over data trees, which are tree-like structures whose
every node contains a label from a finite alphabet and a data value from an
infinite domain. The language allows us to compare data values of two nodes but
cannot access the data values themselves (i.e. there is no comparison by
constants). Our axioms are in the style of equational logic, extending the
axiomatization of data-oblivious XPath, by B. ten Cate, T. Litak and M. Marx.
We axiomatize the full logic with tests by "equality" and "inequality", and
also a simpler fragment with "equality" tests only. Our axiomatizations apply
both to node expressions and path expressions. The proof of completeness relies
on a novel normal form theorem for XPath with data tests
Decremental SSSP in Weighted Digraphs: Faster and Against an Adaptive Adversary
Given a dynamic digraph undergoing edge deletions and given and , we consider the problem of maintaining
-approximate shortest path distances from to all vertices in
over the sequence of deletions. Even and Shiloach (J.~ACM') give a
deterministic data structure for the exact version of the problem with total
update time . Henzinger et al. (STOC', ICALP') give a Monte
Carlo data structure for the approximate version with improved total update
time where is the ratio between the largest and
smallest edge weight. A drawback of their data structure is that they only work
against an oblivious adversary, meaning that the sequence of deletions needs to
be fixed in advance. This limits its application as a black box inside
algorithms. We present the following -approximate data
structures:
(1) the first data structure is Las Vegas and works against an adaptive
adversary; it has total expected update time for
unweighted graphs and for weighted graphs,
(2) the second data structure is Las Vegas and assumes an oblivious
adversary; it has total expected update time for
unweighted graphs and for weighted graphs,
(3) the third data structure is Monte Carlo and is correct w.h.p.~against an
oblivious adversary; it has total expected update time .
Each of our data structures can be queried at any stage of in constant
worst-case time; if the adversary is oblivious, a query can be extended to also
report such a path in time proportional to its length. Our update times are
faster than those of Henzinger et al.~for all graph densities.Comment: Appeared at SODA'2
- …