Make.RuleSourcetype rule = {id : int;lhs : Predicate.predicate;e_rhs : (Predicate.predicate * int) list;i_rhs : (Predicate.predicate * int) list;i_rhs_num : int;content : Datalog_AbstractSyntax.ConstGen.id UF.t;}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.
val immediate_consequence_of_rule :
rule ->
FactArray.row Predicate.PredMap.t ->
ASPred.predicate listto_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.