This repository has been archived by the owner on May 11, 2023. It is now read-only.
Fix: SMT Node left_child
and right_child
return placeholder when key is zero sum
#72
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.
When retrieving a left child or right child from an SMT node, we must accommodate the case when the child is a placeholder. The placeholder node is a node with the zero sum key (
000...
). In the current design, all children must be present in the underlying data store; this includes placeholders. This assumes that the store will be initialized with a zero-sum key mapped to a placeholder, i.e.This has a few important drawbacks:
These drawbacks are all neatly resolved by ensuring that a placeholder is retuned when encountering a zero sum key at the library level.