Encoding Numeric Computations and Infusing Heuristic Knowledge Using Integrity(…)
summary
stableKanren implements integrity constraints plus a numeric constraint store to avoid grounding all numbers and encode arithmetic as verifiers, not impure operators. The demo encodes SEND+MORE=MONEY as emitters and verifiers, initially taking over an hour for a query; reordering variables cuts a single-solution time to ~3s (exhaustive ~5,000s), breaking constraints and identifying critical emitters drops single-solution time to ~0.45s (exhaustive ~300s), and a hybrid oracle verifier further cuts search to a few seconds.
AI-written summary · about
chapters (15)
- 0:00Encoding numeric computations
- 2:55Relational programming symbols
- 4:23Challenges in numeric computations
- 6:27Approaches for numeric support
- 8:29Constraint stores for relations
- 10:16Variable vs integrity constraints
- 13:09Generating combinations with integrity
- 17:21Implementing integrity in Stable Car
- 19:07Defining arithmetic in Stable Car
- 20:30Send more money puzzle
- 22:17Heuristic knowledge infusion
- 23:00Variable reordering
- 24:05Breaking constraints
- 24:46Oracle verifiers hybrid
- 25:30Conclusion
