Relational Programming
summary
One-line relational joins and semiring rewrites turn into concrete systems: a datalog engine (birelational AI) automatically parallelizes and distributes joins, handles fault tolerance, and maps semiring +/× to matrix multiply over sparse tensors. Replacing semiring yields transitive closure or shortest paths and the optimizer rewrites code to recover Bellman-Ford for sparse shortest paths. Algebraic rewrite rules exploit associativity and commutativity and sparsity to produce a ten-line specification that rewrites into Brandes’s algorithm and runs thousands of times faster than naive.
AI-written summary · about
related talks
36mOptimizing Relational Programs II
41mOptimizing Relational Programs I
01h 08mAlgebraic Structures in Logic and Query Evaluation 4
15mSpeeding up Symbolic Reasoning for Relational Queries
01h 02mAlgebraic Structures in Logic and Query Evaluation 3
44mIntermediate Relational Algorithm Design
01h 06mSemiring Semantics
01h 05mIntroduction to Relational Algorithms
