A Practical Dynamic Programming Approach to Datalog Provenance Computation
Yann Ramusat, Silviu Maniu, Pierre Senellart

TL;DR
This paper introduces a new method for computing Datalog provenance using dynamic programming over hypergraphs, combining theoretical insights with practical optimizations to achieve efficient implementation and competitive performance.
Contribution
It presents a novel translation linking dynamic programming and semiring provenance computation, enabling efficient Datalog provenance analysis for specific semiring classes.
Findings
Efficient implementation using Soufflé Datalog interpreter.
Competitive performance against dedicated provenance solutions.
Moderate overhead compared to standard Datalog evaluation.
Abstract
We establish a translation between a formalism for dynamic programming over hypergraphs and the computation of semiring-based provenance for Datalog programs. The benefit of this translation is a new method for computing provenance for a specific class of semirings. Theoretical and practical optimizations lead to an efficient implementation using \textsc{Souffl\'e}, a state-of-the-art Datalog interpreter. Experimental results on real-world data suggest this approach to be efficient in practical contexts, even competing with our previous dedicated solutions for computing provenance in annotated graph databases. The cost overhead compared to plain Datalog evaluation is fairly moderate in many cases of interest.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsScientific Computing and Data Management · Semantic Web and Ontologies · Advanced Database Systems and Queries
