runners.py:
- Import HART, FastHART; add _HVRT_FAMILY dispatch map
- HART-size, HART-var, FastHART-size, FastHART-var added to
REDUCTION_METHODS and EXPANSION_METHODS (now 8 model-family methods each)
- _run_one_reduction / _run_one_expansion dispatch generalised via
_HVRT_FAMILY prefix lookup (covers all four families with one code path)
- Docstring updated to reflect 16 model-family combinations
bandwidth_benchmark.py:
- Import HART; add --model {hvrt,hart} CLI flag (default: hvrt)
- partition_normality_stats, evaluate_one, run_condition accept model_cls param
- Header prints model identity; fully backward-compatible with default HVRT
findings_hart.md: HART benchmark results vs HVRT on housing + multimodal data
hart_benchmark_results.json: full benchmark output (2 datasets, reduce + expand)
Key findings:
- FastHART-size wins marginal fidelity on heavy-tailed (housing) reduction
- HART-size wins ML utility at 1x expansion on heavy-tailed data (−0.010 vs
HVRT −0.066); FastHART-size wins at 2x–5x expansion (+0.040–+0.078)
- HART ≈ HVRT on Gaussian/multimodal data (all differences within ±0.002)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>