sig
  val mk_sort :
    Z3.context ->
    Z3.Symbol.symbol ->
    Z3.Symbol.symbol list -> Z3.Sort.sort list -> Z3.Sort.sort
  val get_mk_decl : Z3.Sort.sort -> Z3.FuncDecl.func_decl
  val get_num_fields : Z3.Sort.sort -> int
  val get_field_decls : Z3.Sort.sort -> Z3.FuncDecl.func_decl list
end