47,139 research outputs found
Engineering Top-Down Weight-Balanced Trees
Weight-balanced trees are a popular form of self-balancing binary search
trees. Their popularity is due to desirable guarantees, for example regarding
the required work to balance annotated trees.
While usual weight-balanced trees perform their balancing operations in a
bottom-up fashion after a modification to the tree is completed, there exists a
top-down variant which performs these balancing operations during descend. This
variant has so far received only little attention. We provide an in-depth
analysis and engineering of these top-down weight-balanced trees, demonstrating
their superior performance. We also gaining insights into how the balancing
parameters necessary for a weight-balanced tree should be chosen - with the
surprising observation that it is often beneficial to choose parameters which
are not feasible in the sense of the correctness proofs for the rebalancing
algorithm.Comment: Accepted for publication at ALENEX 202
Optimal External Memory Interval Management
AMS subject classifications. 68P05, 68P10, 68P15
DOI. 10.1137/S009753970240481XIn this paper we present the external interval tree, an optimal external memory data structure for answering stabbing queries on a set of dynamically maintained intervals. The external interval tree can be usedin an optimal solution to the dynamic interval management problem, which is a central problem for object-orientedandtemp oral databases andfor constraint logic programming.Part of the structure uses a weight-balancing technique for efficient worst-case manipulation of balanced trees, which is of independent interest. The external interval tree, as well as our new balancing technique, have recently been used to develop several efficient external data structures
Optimal External Memory Interval Management
This is the published version. Copyright © 2003 Society for Industrial and Applied MathematicsIn this paper we present the external interval tree, an optimal external memory data structure for answering stabbing queries on a set of dynamically maintained intervals. The external interval tree can be used in an optimal solution to the dynamic interval management problem, which is a central problem for object-oriented and temporal databases and for constraint logic programming. Part of the structure uses a weight-balancing technique for efficient worst-case manipulation of balanced trees, which is of independent interest. The external interval tree, as well as our new balancing technique, have recently been used to develop several efficient external data structures
Optimal External Memory Interval Management
This is the publisher's version, which is being shared on KU Scholarworks with permission. The original version may be found at the following link: http://dx.doi.org/10.1137/S009753970240481XIn this paper we present the external interval tree, an optimal external memory data
structure for answering stabbing queries on a set of dynamically maintained intervals. The external
interval tree can be usedin an optimal solution to the dynamic interval management problem, which
is a central problem for object-orientedandtemp oral databases andfor constraint logic programming.
Part of the structure uses a weight-balancing technique for efficient worst-case manipulation
of balanced trees, which is of independent interest. The external interval tree, as well as our new
balancing technique, have recently been used to develop several efficient external data structures
Balancing lists: a proof pearl
Starting with an algorithm to turn lists into full trees which uses
non-obvious invariants and partial functions, we progressively encode the
invariants in the types of the data, removing most of the burden of a
correctness proof.
The invariants are encoded using non-uniform inductive types which parallel
numerical representations in a style advertised by Okasaki, and a small amount
of dependent types.Comment: To appear in proceedings of Interactive Theorem Proving (2014
- …