sig
  val random :
    ?rnd_state:Stdlib.Random.State.t ->
    ?re_from:float ->
    ?re_range:float ->
    ?im_from:float -> ?im_range:float -> int -> Lacaml_complex64.vec
  val create : int -> Lacaml_complex64.vec
  val make : int -> Lacaml_complex64.num_type -> Lacaml_complex64.vec
  val make0 : int -> Lacaml_complex64.vec
  val init :
    int -> (int -> Lacaml_complex64.num_type) -> Lacaml_complex64.vec
  val of_array : Lacaml_complex64.num_type array -> Lacaml_complex64.vec
  val to_array : Lacaml_complex64.vec -> Lacaml_complex64.num_type array
  val of_list : Lacaml_complex64.num_type list -> Lacaml_complex64.vec
  val to_list : Lacaml_complex64.vec -> Lacaml_complex64.num_type list
  val append :
    Lacaml_complex64.vec -> Lacaml_complex64.vec -> Lacaml_complex64.vec
  val concat : Lacaml_complex64.vec list -> Lacaml_complex64.vec
  val empty : Lacaml_complex64.vec
  val linspace :
    ?y:Lacaml_complex64.vec ->
    Lacaml_complex64.num_type ->
    Lacaml_complex64.num_type -> int -> Lacaml_complex64.vec
  val logspace :
    ?y:Lacaml_complex64.vec ->
    Lacaml_complex64.num_type ->
    Lacaml_complex64.num_type -> ?base:float -> int -> Lacaml_complex64.vec
  val dim : Lacaml_complex64.vec -> int
  val map :
    (Lacaml_complex64.num_type -> Lacaml_complex64.num_type) ->
    ?n:int ->
    ?ofsy:int ->
    ?incy:int ->
    ?y:Lacaml_complex64.vec ->
    ?ofsx:int -> ?incx:int -> Lacaml_complex64.vec -> Lacaml_complex64.vec
  val iter :
    (Lacaml_complex64.num_type -> unit) ->
    ?n:int -> ?ofsx:int -> ?incx:int -> Lacaml_complex64.vec -> unit
  val iteri :
    (int -> Lacaml_complex64.num_type -> unit) ->
    ?n:int -> ?ofsx:int -> ?incx:int -> Lacaml_complex64.vec -> unit
  val fold :
    ('-> Lacaml_complex64.num_type -> 'a) ->
    '-> ?n:int -> ?ofsx:int -> ?incx:int -> Lacaml_complex64.vec -> 'a
  val fill :
    ?n:int ->
    ?ofsx:int ->
    ?incx:int -> Lacaml_complex64.vec -> Lacaml_complex64.num_type -> unit
  val rev : Lacaml_complex64.vec -> Lacaml_complex64.vec
  val max :
    ?n:int ->
    ?ofsx:int ->
    ?incx:int -> Lacaml_complex64.vec -> Lacaml_complex64.num_type
  val min :
    ?n:int ->
    ?ofsx:int ->
    ?incx:int -> Lacaml_complex64.vec -> Lacaml_complex64.num_type
  val sum :
    ?n:int ->
    ?ofsx:int ->
    ?incx:int -> Lacaml_complex64.vec -> Lacaml_complex64.num_type
  val prod :
    ?n:int ->
    ?ofsx:int ->
    ?incx:int -> Lacaml_complex64.vec -> Lacaml_complex64.num_type
  val add_const :
    Lacaml_complex64.num_type ->
    ?n:int ->
    ?ofsy:int ->
    ?incy:int ->
    ?y:Lacaml_complex64.vec ->
    ?ofsx:int -> ?incx:int -> Lacaml_complex64.vec -> Lacaml_complex64.vec
  val sqr_nrm2 :
    ?stable:bool ->
    ?n:int -> ?ofsx:int -> ?incx:int -> Lacaml_complex64.vec -> float
  val ssqr :
    ?n:int ->
    ?c:Lacaml_complex64.num_type ->
    ?ofsx:int ->
    ?incx:int -> Lacaml_complex64.vec -> Lacaml_complex64.num_type
  val sort :
    ?cmp:(Lacaml_complex64.num_type -> Lacaml_complex64.num_type -> int) ->
    ?decr:bool ->
    ?n:int ->
    ?ofsp:int ->
    ?incp:int ->
    ?p:Lacaml_common.int_vec ->
    ?ofsx:int -> ?incx:int -> Lacaml_complex64.vec -> unit
  val neg :
    ?n:int ->
    ?ofsy:int ->
    ?incy:int ->
    ?y:Lacaml_complex64.vec ->
    ?ofsx:int -> ?incx:int -> Lacaml_complex64.vec -> Lacaml_complex64.vec
  val reci :
    ?n:int ->
    ?ofsy:int ->
    ?incy:int ->
    ?y:Lacaml_complex64.vec ->
    ?ofsx:int -> ?incx:int -> Lacaml_complex64.vec -> Lacaml_complex64.vec
  val add :
    ?n:int ->
    ?ofsz:int ->
    ?incz:int ->
    ?z:Lacaml_complex64.vec ->
    ?ofsx:int ->
    ?incx:int ->
    Lacaml_complex64.vec ->
    ?ofsy:int -> ?incy:int -> Lacaml_complex64.vec -> Lacaml_complex64.vec
  val sub :
    ?n:int ->
    ?ofsz:int ->
    ?incz:int ->
    ?z:Lacaml_complex64.vec ->
    ?ofsx:int ->
    ?incx:int ->
    Lacaml_complex64.vec ->
    ?ofsy:int -> ?incy:int -> Lacaml_complex64.vec -> Lacaml_complex64.vec
  val mul :
    ?n:int ->
    ?ofsz:int ->
    ?incz:int ->
    ?z:Lacaml_complex64.vec ->
    ?ofsx:int ->
    ?incx:int ->
    Lacaml_complex64.vec ->
    ?ofsy:int -> ?incy:int -> Lacaml_complex64.vec -> Lacaml_complex64.vec
  val div :
    ?n:int ->
    ?ofsz:int ->
    ?incz:int ->
    ?z:Lacaml_complex64.vec ->
    ?ofsx:int ->
    ?incx:int ->
    Lacaml_complex64.vec ->
    ?ofsy:int -> ?incy:int -> Lacaml_complex64.vec -> Lacaml_complex64.vec
  val zpxy :
    ?n:int ->
    ?ofsz:int ->
    ?incz:int ->
    ?z:Lacaml_complex64.vec ->
    ?ofsx:int ->
    ?incx:int ->
    Lacaml_complex64.vec ->
    ?ofsy:int -> ?incy:int -> Lacaml_complex64.vec -> Lacaml_complex64.vec
  val zmxy :
    ?n:int ->
    ?ofsz:int ->
    ?incz:int ->
    ?z:Lacaml_complex64.vec ->
    ?ofsx:int ->
    ?incx:int ->
    Lacaml_complex64.vec ->
    ?ofsy:int -> ?incy:int -> Lacaml_complex64.vec -> Lacaml_complex64.vec
  val ssqr_diff :
    ?n:int ->
    ?ofsx:int ->
    ?incx:int ->
    Lacaml_complex64.vec ->
    ?ofsy:int ->
    ?incy:int -> Lacaml_complex64.vec -> Lacaml_complex64.num_type
end