Module Fact


module Fact: sig  end


type t =
| Equal of equal
| Diseq of diseq
| Cnstrnt of cnstrnt


type justification =
| Axiom
| Rule of string * justification list


type equal = Term.t * Term.t * justification option

type diseq = Term.t * Term.t * justification option

type cnstrnt = Term.t * Sign.t * justification option

type rule = string
val mk_axiom : justification option
val mk_rule : string -> justification option list -> justification option
Parameters:
str : string
jl : justification option list
val mk_equal : Term.t -> Term.t -> 'a -> Term.t * Term.t * 'a
Parameters:
x : Term.t
y : Term.t
j : 'a
val mk_diseq : Term.t -> Term.t -> 'a -> Term.t * Term.t * 'a
Parameters:
x : Term.t
y : Term.t
j : 'a
val mk_cnstrnt : Term.t -> Sign.t -> 'a -> Term.t * Sign.t * 'a
Parameters:
x : Term.t
c : Sign.t
j : 'a
val d_equal : 'a -> 'a
Parameters:
e : 'a
val d_diseq : 'a -> 'a
Parameters:
d : 'a
val d_cnstrnt : 'a -> 'a
Parameters:
c : 'a
val of_equal : equal -> t
Parameters:
e : equal
val of_diseq : diseq -> t
Parameters:
d : diseq
val of_cnstrnt : cnstrnt -> t
Parameters:
c : cnstrnt
val pp : Format.formatter -> t -> unit
Parameters:
fmt : Format.formatter
?? : t
val pp_equal : Format.formatter -> Term.t * Term.t * 'a -> unit
Parameters:
fmt : Format.formatter
e : Term.t * Term.t * 'a
val pp_diseq : Format.formatter -> Term.t * Term.t * 'a -> unit
Parameters:
fmt : Format.formatter
d : Term.t * Term.t * 'a
val pp_cnstrnt : Format.formatter -> Term.t * Sign.t * 'a -> unit
Parameters:
fmt : Format.formatter
c : Term.t * Sign.t * 'a
module Equalset: sig  end