sig
  type fd
  type elt
  val min :
    Facile.Invariant.FD.fd ->
    Facile.Invariant.FD.elt Facile.Invariant.unsetable_t
  val max :
    Facile.Invariant.FD.fd ->
    Facile.Invariant.FD.elt Facile.Invariant.unsetable_t
  val size : Facile.Invariant.FD.fd -> int Facile.Invariant.unsetable_t
  val is_var : Facile.Invariant.FD.fd -> bool Facile.Invariant.unsetable_t
  val unary :
    ?name:string ->
    (Facile.Invariant.FD.fd -> 'a) ->
    Facile.Invariant.FD.fd -> 'Facile.Invariant.unsetable_t
end