package datalog

  1. Overview
  2. Docs
type aggregate = {
  1. left : T.t;
  2. constructor : const;
  3. var : T.t;
  4. guard : T.t;
}
type t =
  1. | LitPos of T.t
  2. | LitNeg of T.t
  3. | LitAggr of aggregate
val mk_pos : T.t -> t
val mk_neg : T.t -> t
val mk : bool -> T.t -> t
val mk_aggr : left:T.t -> constructor:const -> var:T.t -> guard:T.t -> t
val eq : t -> t -> bool
val hash : t -> int
val to_term : t -> T.t
val fmap : (T.t -> T.t) -> t -> t
val to_string : t -> string
val pp : out_channel -> t -> unit
val fmt : Format.formatter -> t -> unit