sig
  type float_vector_bigarr =
      (float, Bigarray.float32_elt, Bigarray.c_layout) Bigarray.Array1.t
  type vector = Gsl_vector.Single.float_vector_bigarr
  val create : ?init:float -> int -> Gsl_vector.Single.vector
  val of_array : float array -> Gsl_vector.Single.vector
  val to_array : Gsl_vector.Single.vector -> float array
  val length : Gsl_vector.Single.vector -> int
  val get : Gsl_vector.Single.vector -> int -> float
  val set : Gsl_vector.Single.vector -> int -> float -> unit
  val set_all : Gsl_vector.Single.vector -> float -> unit
  val set_zero : Gsl_vector.Single.vector -> unit
  val set_basis : Gsl_vector.Single.vector -> int -> unit
  val memcpy :
    src:Gsl_vector.Single.vector -> dst:Gsl_vector.Single.vector -> unit
  val copy : Gsl_vector.Single.vector -> Gsl_vector.Single.vector
  val swap_element : Gsl_vector.Single.vector -> int -> int -> unit
  val reverse : Gsl_vector.Single.vector -> unit
  external add : Gsl_vector.Single.vector -> Gsl_vector.Single.vector -> unit
    = "ml_gsl_vector_float_add"
  external sub : Gsl_vector.Single.vector -> Gsl_vector.Single.vector -> unit
    = "ml_gsl_vector_float_sub"
  external mul : Gsl_vector.Single.vector -> Gsl_vector.Single.vector -> unit
    = "ml_gsl_vector_float_mul"
  external div : Gsl_vector.Single.vector -> Gsl_vector.Single.vector -> unit
    = "ml_gsl_vector_float_div"
  external scale : Gsl_vector.Single.vector -> float -> unit
    = "ml_gsl_vector_float_scale"
  external add_constant : Gsl_vector.Single.vector -> float -> unit
    = "ml_gsl_vector_float_add_constant"
  external is_null : Gsl_vector.Single.vector -> bool
    = "ml_gsl_vector_float_isnull"
  external max : Gsl_vector.Single.vector -> float
    = "ml_gsl_vector_float_max"
  external min : Gsl_vector.Single.vector -> float
    = "ml_gsl_vector_float_min"
  external minmax : Gsl_vector.Single.vector -> float * float
    = "ml_gsl_vector_float_minmax"
  external max_index : Gsl_vector.Single.vector -> int
    = "ml_gsl_vector_float_maxindex"
  external min_index : Gsl_vector.Single.vector -> int
    = "ml_gsl_vector_float_minindex"
  external minmax_index : Gsl_vector.Single.vector -> int * int
    = "ml_gsl_vector_float_minmaxindex"
  val subvector :
    Gsl_vector.Single.vector ->
    off:int -> len:int -> Gsl_vector.Single.vector
end