Results 11  20
of
131
Randomized Binary Search Trees
 Journal of the ACM
, 1997
"... In this paper we present randomized algorithms over binary search trees such that: a) the insertion of a set of keys, in any fixed order, into an initially empty tree always produces a random binary search tree; b) the deletion of any key from a random binary search tree results in a random binary s ..."
Abstract

Cited by 22 (2 self)
 Add to MetaCart
In this paper we present randomized algorithms over binary search trees such that: a) the insertion of a set of keys, in any fixed order, into an initially empty tree always produces a random binary search tree; b) the deletion of any key from a random binary search tree results in a random binary search tree; c) the random choices made by the algorithms are based upon the sizes of the subtrees of the tree; this implies that we can support accesses by rank without additional storage requirements or modification of the data structures; and d) the cost of any elementary operation, measured as the number of visited nodes, is the same as the expected cost of its standard deterministic counterpart; hence, all search and update operations have guaranteed expected cost O(log n), but now irrespective of any assumption on the input distribution. 1. Introduction Given a binary search tree (BST, for short), common operations are the search of an item given its key and the retrieval of the inform...
The Interval Skip List: A Data Structure for Finding All Intervals That Overlap a Point
 In Proc. of the 2nd Workshop on Algorithms and Data Structures
, 1992
"... A problem that arises in computational geometry, pattern matching, and other applications is the need to quickly determine which of a collection of intervals overlap a point. Requests of this type are called stabbing queries. A recently discovered randomized data structure called the skip list can ..."
Abstract

Cited by 22 (3 self)
 Add to MetaCart
A problem that arises in computational geometry, pattern matching, and other applications is the need to quickly determine which of a collection of intervals overlap a point. Requests of this type are called stabbing queries. A recently discovered randomized data structure called the skip list can maintain ordered sets efficiently, just as balanced binary search trees can, but is much simpler to implement than balanced trees. This paper introduces an extension of the skip list called the interval skip list, or ISlist, to support interval indexing. The ISlist allows stabbing queries and dynamic insertion and deletion of intervals. A stabbing query using an ISlist containing n intervals takes an expected time of O(log n). Inserting or deleting an interval in an ISlist takes an expected time of O(log 2 n) if the interval endpoints are chosen from a continuous distribution. Moreover, the ISlist inherits much of the simplicity of the skip list  it can be implemented in a relativ...
Selection Predicate Indexing for Active Databases Using Interval Skip Lists
 INFORMATION SYSTEMS
, 1996
"... A new, efficient selection predicate indexing scheme for active database systems is introduced. The selection predicate index proposed uses an interval index on an attribute of a relation or object collection when one or more rule condition clauses are defined on that attribute. The selection pre ..."
Abstract

Cited by 22 (4 self)
 Add to MetaCart
A new, efficient selection predicate indexing scheme for active database systems is introduced. The selection predicate index proposed uses an interval index on an attribute of a relation or object collection when one or more rule condition clauses are defined on that attribute. The selection predicate index uses a new type of interval index called the interval skip list (ISlist). The ISlist is designed to allow efficient retrieval of all intervals that overlap a point, while allowing dynamic insertion and deletion of intervals. ISlist algorithms are described in detail. The ISlist allows efficient online searches, insertions, and deletions, yet is much simpler to implement than other comparable interval index data structures such as the priority search tree and balanced interval binary search tree (IBStree). ISlists require only one third as much code to implement as balanced IBStrees. The combination of simplicity, performance, and dynamic updateability of the ISli...
Extending The Scalable Coherent Interface For LargeScale SharedMemory Multiprocessors
, 1993
"... Massively parallel machines promise to provide enormous computing power using an amalgamation of lowcost parts. We believe many of these will be sharedmemory machines, since they do not burden the programmer with data placement and nonuniform access semantics. However, an efficient kiloprocessor s ..."
Abstract

Cited by 21 (0 self)
 Add to MetaCart
Massively parallel machines promise to provide enormous computing power using an amalgamation of lowcost parts. We believe many of these will be sharedmemory machines, since they do not burden the programmer with data placement and nonuniform access semantics. However, an efficient kiloprocessor solution for the sharedmemory paradigm has proven elusive due to bottlenecks associated with parallel accesses to rapidly changing data. The Scalable Coherent Interface (SCI) is an IEEE and ANSI standard for multiprocessors, specifying a topologyindependent network and a cachecoherence protocol. The goal of this dissertation is to investigate ways to efficiently share frequently changing data among thousands of processors. SCI is the platform in which these methods are investigated. Before investigating cachecoherence protocols, we demonstrate that an arbitrary topology can be constructed from a set of interwoven rings, such as SCI rings. This result is important because it would be impos...
Symbolic test case generation for primitive recursive functions
 Formal Approaches to Testing of Software, number 3395 in Lecture Notes in Computer Science
, 2004
"... Abstract We present a method for the automatic generation of test cases for HOL formulae containing primitive recursive predicates. These test cases can be used for the animation of specifications as well as for blackbox testing of external programs. Our method is twostaged: first, the original fo ..."
Abstract

Cited by 21 (13 self)
 Add to MetaCart
Abstract We present a method for the automatic generation of test cases for HOL formulae containing primitive recursive predicates. These test cases can be used for the animation of specifications as well as for blackbox testing of external programs. Our method is twostaged: first, the original formula is partitioned into test cases by transformation into a Hornclause normal form (HCNF). Second, the test cases are analyzed for instances with constant terms satisfying the premises of the clauses. Particular emphasis is put on the control of test hypotheses and test hierarchies to avoid intractability. We applied our method to several examples, including AVLtrees and the redblack tree implementation in the standard library from SML/NJ.
Optimal Traversal of Directed Hypergraphs
, 1992
"... A directed hypergraph is defined by a set of nodes and a set of hyperarcs, each connecting a set of source nodes to a single target node. Directed hypergraphs are used in several contexts to model different combinatorial structures, such as functional dependencies [Ull82], Horn clauses in proposi ..."
Abstract

Cited by 21 (2 self)
 Add to MetaCart
A directed hypergraph is defined by a set of nodes and a set of hyperarcs, each connecting a set of source nodes to a single target node. Directed hypergraphs are used in several contexts to model different combinatorial structures, such as functional dependencies [Ull82], Horn clauses in propositional calculus [AI91], ANDOR graphs [Nil82], Petri nets [Pet62]. A hyperpath, similarly to the notion of path in directed graphs, consists of a connection among nodes using hyperarcs. Unlike paths in graphs, hyperpaths are suitable of different definitions of measure, corresponding to different concepts arising in various applications. In this paper we consider the problem of finding minimal hyperpaths according to several measures. We show that some of these problems are, not surprisingly, NPhard. However, if the measure function on hyperpaths matches certain conditions (which we define as valuebased measure functions) , the problem turns out to be solvable in polynomial time. We...
Using AVL Trees for Fault Tolerant Group Key Management
 INTERNATIONAL JOURNAL ON INFORMATION SECURITY
, 2000
"... In this paper we describe an efficient algorithm for the management of groupkeys for Group Communication Systems. Our algorithm is based on the notion of keygraphs, previously used for managing keys in large IPmulticast groups. The standard protocol requires a centralized keyserver that has ..."
Abstract

Cited by 20 (0 self)
 Add to MetaCart
In this paper we describe an efficient algorithm for the management of groupkeys for Group Communication Systems. Our algorithm is based on the notion of keygraphs, previously used for managing keys in large IPmulticast groups. The standard protocol requires a centralized keyserver that has knowledge of the full keygraph. Our protocol does not delegate this role to any one process. Rather, members enlist in a collaborative eort to create the group keygraph. The keygraph contains n keys, of which each member learns log 2 n. We show how to balance the keygraph, a result that is applicable to the centralized protocol. We also show how to optimize our distributed protocol and provide a performance study of its capabilities.
Methods for Achieving Fast Query Times in Point Location Data Structures
, 1997
"... Given a collection S of n line segments in the plane, the planar point location problem is to construct a data structure that can efficiently determine for a given query point p the first segment(s) in S intersected by vertical rays emanating out from p. It is well known that linearspace data struc ..."
Abstract

Cited by 20 (1 self)
 Add to MetaCart
Given a collection S of n line segments in the plane, the planar point location problem is to construct a data structure that can efficiently determine for a given query point p the first segment(s) in S intersected by vertical rays emanating out from p. It is well known that linearspace data structures can be constructed so as to achieve O(log n) query times. But applications, such as those common in geographic information systems, motivate a reexamination of this problem with the goal of improving query times further while also simplifying the methods needed to achieve such query times. In this paper we perform such a reexamination, focusing on the issues that arise in three different classes of pointlocation query sequences: ffl sequences that are reasonably uniform spatially and temporally (in which case the constant factors in the query times become critical), ffl sequences that are nonuniform spatially or temporally (in which case one desires data structures that adapt to s...
Oracle Bounds and Exact Algorithm for Dyadic Classification Trees
, 2004
"... This paper introduces a new method using dyadic decision trees for estimating a classification or a regression function in a multiclass classification problem. The estimator is based on model selection by penalized empirical loss minimization. Our work consists in two complementary parts: first, ..."
Abstract

Cited by 20 (1 self)
 Add to MetaCart
This paper introduces a new method using dyadic decision trees for estimating a classification or a regression function in a multiclass classification problem. The estimator is based on model selection by penalized empirical loss minimization. Our work consists in two complementary parts: first, a theoretical analysis of the method leads to deriving oracletype inequalities for three di#erent possible loss functions.
The Architecture of the Dalí Main Memory Storage Manager
 Multimedia Tools and Applications
, 1997
"... ion Dal's architecture, illustrated in Figure 2, is organized in multiple layers of abstraction to support the toolkit approach discussed earlier. At the highest level, users can interact with Dal's relational manager. Below that level is what we call the heapfile/indexing layer, which provides su ..."
Abstract

Cited by 18 (6 self)
 Add to MetaCart
ion Dal's architecture, illustrated in Figure 2, is organized in multiple layers of abstraction to support the toolkit approach discussed earlier. At the highest level, users can interact with Dal's relational manager. Below that level is what we call the heapfile/indexing layer, which provides support for fixedlength and variablelength collections, as well as templatebased Locks Logs System database Database file 1 Database file 2 Database file N Process 1 user code Dal library Virtual memory of process 1 Virtual memory of process 2 System physical memory Process 2 user code Dal library Log of updates to database Checkpoint images of database Figure 1. Architecture of the Dal system. Bell LabsTechnical Journal uWinter 1997 39 indexing abstractions. In general, at this level, a user does not need to interact with individual locks or latches. (A latchis a shortterm lock implemented by a highspeed mutual exclusion mechanism.) Instead, the user specifi...