sig
  type constructor
  val get_num_fields : Z3.Datatype.Constructor.constructor -> int
  val get_constructor_decl :
    Z3.Datatype.Constructor.constructor -> Z3.FuncDecl.func_decl
  val get_tester_decl :
    Z3.Datatype.Constructor.constructor -> Z3.FuncDecl.func_decl
  val get_accessor_decls :
    Z3.Datatype.Constructor.constructor -> Z3.FuncDecl.func_decl list
end