package acgtk

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Module Make.RuleSource

Sourcetype rule = {
  1. id : int;
  2. lhs : Predicate.predicate;
  3. e_rhs : (Predicate.predicate * int) list;
  4. i_rhs : (Predicate.predicate * int) list;
  5. i_rhs_num : int;
  6. content : Datalog_AbstractSyntax.ConstGen.id UF.t;
}
Sourceval make_rule : ASRule.rule -> rule

make_rule r returns an internal rule, that is one whose content is now a UnionFind.S indexed data structure. It is ensured that the id of the generated concrete rule is the same as the one of the abstract rule.

Sourceval cyclic_unify : int -> int -> 'a UF.t -> 'a UF.t
Sourcemodule FactArray : sig ... end
Sourceval immediate_consequence_of_rule : rule -> FactArray.row Predicate.PredMap.t -> ASPred.predicate list

to_abstract r table returns a datalog abstract syntax rule where the arguments of all (datalog abstract syntax) predicates have been computed using r.content and the symbol are the one stored in table.

Sourcemodule Rules : Set.S with type elt = rule
OCaml

Innovation. Community. Security.