Repository navigation
Bind HLL get_composite_estimate - #70
Merged
Merged
Conversation
The composite estimator is order-independent. get_estimate() is the HIP estimator and can change with insertion order.
leerho
approved these changes
Oct 10, 2026
leerho
left a comment
Member
There was a problem hiding this comment.
C++ already exposes get_composite_estimate() publicly on both hll_sketch and hll_union (hll.hpp:330 and :480), so there's nothing to change in C++. The C++ documentation says it's "made public only for error characterization software… not intended for normal use". #70's docstrings carry the same caveat ("Intended for error characterization rather than normal use"), so it matches C++ and Java.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #68.
get_estimate()is the HIP estimator. It is the more accurate of the two, and it can change with insertion order. The composite estimator is order-independent, and it is what a union uses once HIP can no longer be kept. C++ and Java already expose it. This binds the same method on bothhll_sketchandhll_union.The docstring matches the C++ note that this is the estimator for when order-independence matters, not a replacement for
get_estimate().The test builds the same items in opposite orders and checks that
get_composite_estimate()agrees, and thathll_union.get_composite_estimate()matchesget_result().get_composite_estimate().Tests:
python -m unittest tests.hll_test.