Personal Knowledge Graphs, Ontology, Datalog, AI.
semantic graph reasoning. path(a, b) :- edge(a, b). path(a, b) :- path(a, c), edge(c, b). The path is a recursive rule that consists of two parts. The first part covers direct connectivity. path(a, b) :- edge(a, b). The second one connected with the OR clause path(a, b) :- path(a, c), edge(c, b).