package datalog

  1. Overview
  2. Docs
module Const : sig ... end
type const = const
val set_debug : bool -> unit
module T : sig ... end
module Lit : sig ... end
module C : sig ... end
module Subst : sig ... end
type scope = Subst.scope
exception UnifFail
val unify : ?oc:bool -> ?subst:Subst.t -> T.t -> scope -> T.t -> scope -> Subst.t
val match_ : ?oc:bool -> ?subst:Subst.t -> T.t -> scope -> T.t -> scope -> Subst.t
val alpha_equiv : ?subst:Subst.t -> T.t -> scope -> T.t -> scope -> Subst.t
val are_alpha_equiv : T.t -> T.t -> bool
val clause_are_alpha_equiv : C.t -> C.t -> bool
module TVariantTbl : sig ... end
module CVariantTbl : sig ... end
module Index (Data : Hashtbl.HashedType) : sig ... end
exception NonStratifiedProgram
module DB : sig ... end
val ask : ?oc:bool -> ?with_rules:C.t list -> ?with_facts:T.t list -> DB.t -> T.t -> T.t list
val ask_lits : ?oc:bool -> ?with_rules:C.t list -> ?with_facts:T.t list -> DB.t -> T.t list -> Lit.t list -> T.t list list
type name_ctx = (string, T.t) Hashtbl.t
val create_ctx : unit -> name_ctx
val term_of_ast : ctx:name_ctx -> TopDownAst.term -> T.t
val lit_of_ast : ctx:name_ctx -> TopDownAst.literal -> Lit.t
val clause_of_ast : ?ctx:name_ctx -> TopDownAst.clause -> C.t
val clauses_of_ast : ?ctx:name_ctx -> TopDownAst.clause list -> C.t list
val default_interpreters : (const * DB.interpreter) list
OCaml

Innovation. Community. Security.