Vadalog is the first implementation of KG systems supporting Warded reasoning. Warded contains Datalog and it is still PTIME in data complexity.
They want to have a knowledge base, which enables 1. recursion in queries, 2. OWL 2 QL reasoning 3. and tractable reasoning in data complexity.
Datalog with existential variables (existential rules) is undecidable, while datalog+/- languages are restrictions, which are decidable. These languages are: Warded, Guarded, Linear, Sticky, Weakly Frontier Guarded, Frontier Guarded …
The recursion (1) is not supported by Sticky languages.
The Vadalog is an extension of Warded.
The affected predicate positions by existentials in a rules set. The affections is propagated to a position in rule head if the variable at this position appears only at affected positions in the body.
A variable is said harmless in a rule if it appears at least one position of the body, which is not affected. Otherwise, it is called harmfull and is called dangereous if it is harmfull and moreover appears in the rule head.
A set of rule is said Warded if (i) all the dangereous variables in a rule appear only within a single atom of the body (the ward) and (ii) the ward shares with other atoms only harmless variables.
p(x,y) -> p(y,z)