flix

0.78.0

Datalog

enum DatalogSource
case Datalog(Vector[Constraint], Vector[Constraint])case Model(Map[RelSym, BPlusTree[Vector[Boxed], Boxed, Static]])case Join(Datalog, Datalog)case Provenance(Vector[Constraint], Map[RelSym, BPlusTree[Vector[Boxed], (Int64, Int32), Static]])

Datalog(facts, rules) is a Datalog program where facts and rules are the facts and rules of the program, respectively.

Model(factsMap) is a model mapping RelSym the their IDB/facts.

Join(p1, p2) is the combination of Datalog programs p1 and p2.

Provenance(rules, model) is a Datalog model where model is a map from computed facts to annotations of the form (depth, ruleUsed) and rules are the rules used during the computation of model.

Abstract syntax tree of Datalog programs.

Instances

instance PredSymsOf[Datalog]Source
instance SubstitutePredSym[Datalog]Source
instance ToString[Datalog]Source