Modular Materialisation of Datalog Programs


  • Pan Hu University of Oxford
  • Boris Motik University of Oxford
  • Ian Horrocks University of Athens



The seminaïve algorithm can be used to materialise all consequences of a datalog program, and it also forms the basis for algorithms that incrementally update a materialisation as the input facts change. Certain (combinations of) rules, however, can be handled much more efficiently using custom algorithms. To integrate such algorithms into a general reasoning approach that can handle arbitrary rules, we propose a modular framework for computing and maintaining a materialisation. We split a datalog program into modules that can be handled using specialised algorithms, and we handle the remaining rules using the semina¨ıve algorithm. We also present two algorithms for computing the transitive and the symmetric– transitive closure of a relation that can be used within our framework. Finally, we show empirically that our framework can handle arbitrary datalog programs while outperforming existing approaches, often by orders of magnitude.




How to Cite

Hu, P., Motik, B., & Horrocks, I. (2019). Modular Materialisation of Datalog Programs. Proceedings of the AAAI Conference on Artificial Intelligence, 33(01), 2859-2866.



AAAI Technical Track: Knowledge Representation and Reasoning