Results 1  10
of
28
Geometric Range Searching and Its Relatives
 CONTEMPORARY MATHEMATICS
"... ... process a set S of points in so that the points of S lying inside a query R region can be reported or counted quickly. Wesurvey the known techniques and data structures for range searching and describe their application to other related searching problems. ..."
Abstract

Cited by 256 (40 self)
 Add to MetaCart
... process a set S of points in so that the points of S lying inside a query R region can be reported or counted quickly. Wesurvey the known techniques and data structures for range searching and describe their application to other related searching problems.
Dynamic and efficient key management for access hierarchies
 In Proceedings of the ACM Conference on Computer and Communications Security
, 2005
"... Hierarchies arise in the context of access control whenever the user population can be modeled as a set of partially ordered classes (represented as a directed graph). A user with access privileges for a class obtains access to objects stored at that class and all descendant classes in the hierarchy ..."
Abstract

Cited by 64 (8 self)
 Add to MetaCart
Hierarchies arise in the context of access control whenever the user population can be modeled as a set of partially ordered classes (represented as a directed graph). A user with access privileges for a class obtains access to objects stored at that class and all descendant classes in the hierarchy. The problem of key management for such hierarchies then consists of assigning a key to each class in the hierarchy so that keys for descendant classes can be obtained via efficient key derivation. We propose a solution to this problem with the following properties: (1) the space complexity of the public information is the same as that of storing the hierarchy; (2) the private information at a class consists of a single key associated with that class; (3) updates (i.e., revocations and additions) are handled locally in the hierarchy; (4) the scheme is provably secure against collusion; and (5) each node can derive the key of any of its descendant with a number of symmetrickey operations bounded by the length of the path between the nodes. Whereas many previous schemes had some of these properties, ours is the first that satisfies all of them. The security of our scheme is based on pseudorandom functions, without reliance on the Random Oracle Model. 18 Portions of this work were supported by Grants IIS0325345 and CNS06274488 from the
Succinct ordinal trees with levelancestor queries
 In SODA ’04: Proceedings of the Fifteenth annual ACMSIAM Symposium on Discrete Algorithms
, 2004
"... We consider succinct or spaceefficient representations of trees that efficiently support a variety of navigation operations. We focus on static ordinal trees, i.e., arbitrary static rooted trees where the children of each node are ordered. The set of operations is essentially the union of the sets ..."
Abstract

Cited by 41 (4 self)
 Add to MetaCart
We consider succinct or spaceefficient representations of trees that efficiently support a variety of navigation operations. We focus on static ordinal trees, i.e., arbitrary static rooted trees where the children of each node are ordered. The set of operations is essentially the union of the sets of operations supported by previous succinct
Computing the largest empty rectangle
 SIAM J. Comput
, 1986
"... Abstract. We consider the following problem: Given a rectangle containingN points, find the largest area subrectangle with sides parallel to those of the original rectangle which contains none of the given points. If the rectangle is a piece of fabric or sheet metal and the points are flaws, this pr ..."
Abstract

Cited by 37 (1 self)
 Add to MetaCart
Abstract. We consider the following problem: Given a rectangle containingN points, find the largest area subrectangle with sides parallel to those of the original rectangle which contains none of the given points. If the rectangle is a piece of fabric or sheet metal and the points are flaws, this problem is finding the largestarea rectangular piece which can be salvaged. A previously known result [13] takes O(N2) worstcase and O(N log N) expected time. This paper presents an O(N log N) time, O(N log N) space algorithm to solve this problem. It uses a divideandconquer approach similar to the ones used by Bentley [1] and introduces a new notion of Voronoi diagram along with a method for efficient computation of certain functions over paths of a tree.
Shortest Paths in Digraphs of Small Treewidth. Part I: Sequential Algorithms
, 1995
"... We consider the problem of preprocessing an nvertex digraph with real edge weights so that subsequent queries for the shortest path or distance between any two vertices can be efficiently answered. We give algorithms that depend on the treewidth of the input graph. When the treewidth is a consta ..."
Abstract

Cited by 35 (4 self)
 Add to MetaCart
We consider the problem of preprocessing an nvertex digraph with real edge weights so that subsequent queries for the shortest path or distance between any two vertices can be efficiently answered. We give algorithms that depend on the treewidth of the input graph. When the treewidth is a constant, our algorithms can answer distance queries in O(ff(n)) time after O(n) preprocessing. This improves upon previously known results for the same problem. We also give a dynamic algorithm which, after a change in an edge weight, updates the data structure in time O(n fi ), for any constant 0 ! fi ! 1. Furthermore, an algorithm of independent interest is given: computing a shortest path tree, or finding a negative cycle in linear time.
Small hopdiameter sparse spanners for doubling metrics
 In SODA ’06: Proceedings of the seventeenth annual ACMSIAM symposium on Discrete algorithm
, 2006
"... Given a metric M = (V, d), a graph G = (V, E) is a tspanner for M if every pair of nodes in V has a “short ” path (i.e., of length at most t times their actual distance) between them in the spanner. Furthermore, this spanner has a hop diameter bounded by D if every such short path also uses at most ..."
Abstract

Cited by 18 (3 self)
 Add to MetaCart
Given a metric M = (V, d), a graph G = (V, E) is a tspanner for M if every pair of nodes in V has a “short ” path (i.e., of length at most t times their actual distance) between them in the spanner. Furthermore, this spanner has a hop diameter bounded by D if every such short path also uses at most D edges. We consider the problem of constructing sparse (1 + ε)spanners with small hop diameter for metrics of low doubling dimension. In this paper, we show that given any metric with constant doubling dimension k, and any 0 < ε < 1, one can find a (1 + ε)spanner for the metric with nearly linear number of edges (i.e., only O(n log ∗ n + nε −O(k)) edges) and a constant hop diameter, and also a (1 + ε)spanner with linear number of edges (i.e., only nε −O(k) edges) which achieves a hop diameter that grows like the functional inverse of the Ackermann’s function. Moreover, we prove that such tradeoffs between the number of edges and the hop diameter are asymptotically optimal. 1
Improved Algorithms for Finding Level Ancestors in Dynamic Trees
 Automata, Languages and Programming, 27th International Colloquium, ICALP 2000, number 1853 in LNCS
, 2000
"... Given a node x at depth d in a rooted tree LevelAncestor(x; i) returns the ancestor to x in depth d i. We show how to maintain a tree under addition of new leaves so that updates and level ancestor queries are being performed in worst case constant time. Given a forest of trees with n nodes wher ..."
Abstract

Cited by 16 (1 self)
 Add to MetaCart
Given a node x at depth d in a rooted tree LevelAncestor(x; i) returns the ancestor to x in depth d i. We show how to maintain a tree under addition of new leaves so that updates and level ancestor queries are being performed in worst case constant time. Given a forest of trees with n nodes where edges can be added, m queries and updates take O(m(m;n)) time. This solves two open problems (P.F.
Lower bounds for local monotonicity reconstruction from transitiveclosure spanners
, 2010
"... Given a directed graph G = (V, E) and an integer k ≥ 1, a ktransitiveclosurespanner (kTCspanner) of G is a directed graph H = (V, EH) that has (1) the same transitiveclosure as G and (2) diameter at most k. Transitiveclosure spanners are a common abstraction for applications in access contr ..."
Abstract

Cited by 13 (6 self)
 Add to MetaCart
Given a directed graph G = (V, E) and an integer k ≥ 1, a ktransitiveclosurespanner (kTCspanner) of G is a directed graph H = (V, EH) that has (1) the same transitiveclosure as G and (2) diameter at most k. Transitiveclosure spanners are a common abstraction for applications in access control, property testing and data structures. We show a connection between 2TCspanners and local monotonicity reconstructors. A local monotonicity reconstructor, introduced by Saks and Seshadhri (SIAM Journal on Computing, 2010), is a randomized algorithm that, given access to an oracle for an almost monotone function f: [m] d → R, can quickly evaluate a related function g: [m] d → R which is guaranteed to be monotone. Furthermore, the reconstructor can be implemented in a distributed manner. We show that an efficient local monotonicity reconstructor implies a sparse 2TCspanner of the directed hypergrid (hypercube), providing a new technique for proving lower bounds for local monotonicity reconstructors. Our connection is,
Testing and Reconstruction of Lipschitz Functions with Applications to Data Privacy
 ELECTRONIC COLLOQUIUM ON COMPUTATIONAL COMPLEXITY, REPORT NO. 57 (2011)
, 2011
"... A function f: D → R has Lipschitz constant c if dR(f(x), f(y)) ≤ c · dD(x, y) for all x, y in D, where dR and dD denote the distance functions on the range and domain of f, respectively. We say a function is Lipschitz if it has Lipschitz constant 1. (Note that rescaling by a factor of 1/c converts ..."
Abstract

Cited by 12 (2 self)
 Add to MetaCart
A function f: D → R has Lipschitz constant c if dR(f(x), f(y)) ≤ c · dD(x, y) for all x, y in D, where dR and dD denote the distance functions on the range and domain of f, respectively. We say a function is Lipschitz if it has Lipschitz constant 1. (Note that rescaling by a factor of 1/c converts a function with a Lipschitz constant c into a Lipschitz function.) In other words, Lipschitz functions are not very sensitive to small changes in the input. We initiate the study of testing and local reconstruction of the Lipschitz property of functions. A property tester has to distinguish functions with the property (in this case, Lipschitz) from functions that are ɛfar from having the property, that is, differ from every function with the property on at least an ɛ fraction of the domain. A local filter reconstructs an arbitrary function f to ensure that the reconstructed function g has the desired property (in this case, is Lipschitz), changing f only when necessary. A local filter is given a function f and a query x and, after looking up the value of f on a small number of points, it has to output g(x) for some function g, which has the desired property and does not depend on x. If f has the property, g must be equal to f. We consider functions over domains {0, 1} d, {1,..., n} and {1,..., n} d, equipped with ℓ1 distance.
Perfect hashing for strings: Formalization and Algorithms
 IN PROC 7TH CPM
, 1996
"... Numbers and strings are two objects manipulated by most programs. Hashing has been wellstudied for numbers and it has been effective in practice. In contrast, basic hashing issues for strings remain largely unexplored. In this paper, we identify and formulate the core hashing problem for strings th ..."
Abstract

Cited by 10 (2 self)
 Add to MetaCart
Numbers and strings are two objects manipulated by most programs. Hashing has been wellstudied for numbers and it has been effective in practice. In contrast, basic hashing issues for strings remain largely unexplored. In this paper, we identify and formulate the core hashing problem for strings that we call substring hashing. Our main technical results are highly efficient sequential/parallel (CRCW PRAM) Las Vegas type algorithms that determine a perfect hash function for substring hashing. For example, given a binary string of length n, one of our algorithms finds a perfect hash function in O(log n) time, O(n) work, and O(n) space; the hash value for any substring can then be computed in O(log log n) time using a single processor. Our approach relies on a novel use of the suffix tree of a string. In implementing our approach, we design optimal parallel algorithms for the problem of determining weighted ancestors on a edgeweighted tree that may be of independent interest.