Datalog with First-Class Facts

Guardat en:
Dades bibliogràfiques
Publicat a:arXiv.org (Nov 21, 2024), p. n/a
Autor principal: Gilray, Thomas
Altres autors: Sahebolamri, Arash, Sun, Yihao, Kunapaneni, Sowmith, Kumar, Sidharth, Micinski, Kristopher
Publicat:
Cornell University Library, arXiv.org
Matèries:
Accés en línia:Citation/Abstract
Full text outside of ProQuest
Etiquetes: Afegir etiqueta
Sense etiquetes, Sigues el primer a etiquetar aquest registre!

MARC

LEADER 00000nab a2200000uu 4500
001 3131950643
003 UK-CbPIL
022 |a 2331-8422 
035 |a 3131950643 
045 0 |b d20241121 
100 1 |a Gilray, Thomas 
245 1 |a Datalog with First-Class Facts 
260 |b Cornell University Library, arXiv.org  |c Nov 21, 2024 
513 |a Working Paper 
520 3 |a Datalog is a popular logic programming language for deductive reasoning tasks in a wide array of applications, including business analytics, program analysis, and ontological reasoning. However, Datalog's restriction to flat facts over atomic constants leads to challenges in working with tree-structured data, such as derivation trees or abstract syntax trees. To ameliorate Datalog's restrictions, popular extensions of Datalog support features such as existential quantification in rule heads (Datalog\(^\pm\), Datalog\(^\exists\)) or algebraic data types (Soufflé). Unfortunately, these are imperfect solutions for reasoning over structured and recursive data types, with general existentials leading to complex implementations requiring unification, and ADTs unable to trigger rule evaluation and failing to support efficient indexing. We present DL\(^{\exists!}\), a Datalog with first-class facts, wherein every fact is identified with a Skolem term unique to the fact. We show that this restriction offers an attractive price point for Datalog-based reasoning over tree-shaped data, demonstrating its application to databases, artificial intelligence, and programming languages. We implemented DL\(^{\exists!}\) as a system \slog{}, which leverages the uniqueness restriction of DL\(^{\exists!}\) to enable a communication-avoiding, massively-parallel implementation built on MPI. We show that Slog outperforms leading systems (Nemo, Vlog, RDFox, and Soufflé) on a variety of benchmarks, with the potential to scale to thousands of threads. 
653 |a Logic programming 
653 |a Structured data 
653 |a Artificial intelligence 
653 |a Programming languages 
653 |a Reasoning 
700 1 |a Sahebolamri, Arash 
700 1 |a Sun, Yihao 
700 1 |a Kunapaneni, Sowmith 
700 1 |a Kumar, Sidharth 
700 1 |a Micinski, Kristopher 
773 0 |t arXiv.org  |g (Nov 21, 2024), p. n/a 
786 0 |d ProQuest  |t Engineering Database 
856 4 1 |3 Citation/Abstract  |u https://www.proquest.com/docview/3131950643/abstract/embedded/6A8EOT78XXH2IG52?source=fedsrch 
856 4 0 |3 Full text outside of ProQuest  |u http://arxiv.org/abs/2411.14330