Repository navigation
Releases: gilnett/learned_index_lab
Releases · gilnett/learned_index_lab
Release list
v0.2.0 - Lower Bound, Range Queries & Flat Slice Benchmarks
What's Changed in v0.2.0
Full English Localization & Accessibility
- Complete English Translation: Translated the entire benchmark suite CLI outputs (
src/main.rs), metrics summaries, and documentation from French to English for global readability, consistency, and standard open-source accessibility.
New Features & APIs
-
Lower Bound Search (
PgmIndex::lower_bound): Fast predecessor lookup returning the first key$\ge \text{target}$ with$O(\log S + \log \epsilon)$ complexity and partition-point fallback guarantee. -
Zero-Copy Range Queries (
PgmIndex::range): StandardRangeBounds<u64>slice query returning sub-slices directly without allocations.
Statistical Benchmarks & Baselines
- Integrated standard
slice::binary_searchas an explicit baseline alongsideBTreeMapin the 10-run 1,000,000-key benchmark suite (src/main.rs). - Updated documentation with 3-way performance comparisons showing up to 4.45x faster lookups vs BTreeMap and 2.90x vs binary search on flat slices, while reducing index memory footprint by 99.97%.
Quality & Test Suite
- Comprehensive unit tests covering empty indices, single-element vectors, inverted/out-of-bounds ranges, and statistical
partition_pointparity across 1,000 queries. - Clean
cargo clippy,cargo fmt, and 100% green CI pipeline.
Documentation & Maintenance
- Archived v0.1.1 documentation into
docs/history/README_v0.1.1.md. - Added GitHub Sponsors / funding configuration (
.github/FUNDING.yml).
Full Changelog: v0.1.1...v0.2.0
v0.1.1: Quality Audit & Expanded Test Coverage
Code Quality: Resolved clippy lints, formatted source.
Invariants: Added debug assertions for sorted non-decreasing order.
Test Suite: Added tests for duplicates, extreme limits, epsilon=1, memory accounting.
CI/CD: GitHub Actions workflow for PR verification.
Documentation: Added References & Resources section.