sig
  external dotu :
    [< Gsl_vectmat.cvec ] -> [< Gsl_vectmat.cvec ] -> Gsl_complex.complex
    = "ml_gsl_blas_zdotu"
  external dotc :
    [< Gsl_vectmat.cvec ] -> [< Gsl_vectmat.cvec ] -> Gsl_complex.complex
    = "ml_gsl_blas_zdotc"
  external nrm2 : [< Gsl_vectmat.cvec ] -> float = "ml_gsl_blas_znrm2"
  external asum : [< Gsl_vectmat.cvec ] -> float = "ml_gsl_blas_zasum"
  external iamax : [< Gsl_vectmat.cvec ] -> int = "ml_gsl_blas_izamax"
  external swap : [< Gsl_vectmat.cvec ] -> [< Gsl_vectmat.cvec ] -> unit
    = "ml_gsl_blas_zswap"
  external copy : [< Gsl_vectmat.cvec ] -> [< Gsl_vectmat.cvec ] -> unit
    = "ml_gsl_blas_zcopy"
  external axpy :
    Gsl_complex.complex ->
    [< Gsl_vectmat.cvec ] -> [< Gsl_vectmat.cvec ] -> unit
    = "ml_gsl_blas_zaxpy"
  external scal : Gsl_complex.complex -> [< Gsl_vectmat.cvec ] -> unit
    = "ml_gsl_blas_zscal"
  external zdscal : float -> [< Gsl_vectmat.cvec ] -> unit
    = "ml_gsl_blas_zdscal"
  external gemv :
    Gsl_blas_gen.transpose ->
    alpha:Gsl_complex.complex ->
    a:[< Gsl_vectmat.cmat ] ->
    x:[< Gsl_vectmat.cvec ] ->
    beta:Gsl_complex.complex -> y:[< Gsl_vectmat.cvec ] -> unit
    = "ml_gsl_blas_zgemv_bc" "ml_gsl_blas_zgemv"
  external trmv :
    Gsl_blas_gen.uplo ->
    Gsl_blas_gen.transpose ->
    Gsl_blas_gen.diag ->
    a:[< Gsl_vectmat.cmat ] -> x:[< Gsl_vectmat.cvec ] -> unit
    = "ml_gsl_blas_ztrmv"
  external trsv :
    Gsl_blas_gen.uplo ->
    Gsl_blas_gen.transpose ->
    Gsl_blas_gen.diag ->
    a:[< Gsl_vectmat.cmat ] -> x:[< Gsl_vectmat.cvec ] -> unit
    = "ml_gsl_blas_ztrsv"
  external hemv :
    Gsl_blas_gen.uplo ->
    alpha:Gsl_complex.complex ->
    a:[< Gsl_vectmat.cmat ] ->
    x:[< Gsl_vectmat.cvec ] ->
    beta:Gsl_complex.complex -> y:[< Gsl_vectmat.cvec ] -> unit
    = "ml_gsl_blas_zhemv_bc" "ml_gsl_blas_zhemv"
  external geru :
    alpha:Gsl_complex.complex ->
    x:[< Gsl_vectmat.cvec ] ->
    y:[< Gsl_vectmat.cvec ] -> a:[< Gsl_vectmat.cmat ] -> unit
    = "ml_gsl_blas_zgeru"
  external gerc :
    alpha:Gsl_complex.complex ->
    x:[< Gsl_vectmat.cvec ] ->
    y:[< Gsl_vectmat.cvec ] -> a:[< Gsl_vectmat.cmat ] -> unit
    = "ml_gsl_blas_zgerc"
  external her :
    Gsl_blas_gen.uplo ->
    alpha:float -> x:[< Gsl_vectmat.cvec ] -> a:[< Gsl_vectmat.cmat ] -> unit
    = "ml_gsl_blas_zher"
  external her2 :
    Gsl_blas_gen.uplo ->
    alpha:Gsl_complex.complex ->
    x:[< Gsl_vectmat.cvec ] ->
    y:[< Gsl_vectmat.cvec ] -> a:[< Gsl_vectmat.cmat ] -> unit
    = "ml_gsl_blas_zher2"
  external gemm :
    ta:Gsl_blas_gen.transpose ->
    tb:Gsl_blas_gen.transpose ->
    alpha:Gsl_complex.complex ->
    a:[< Gsl_vectmat.cmat ] ->
    b:[< Gsl_vectmat.cmat ] ->
    beta:Gsl_complex.complex -> c:[< Gsl_vectmat.cmat ] -> unit
    = "ml_gsl_blas_zgemm_bc" "ml_gsl_blas_zgemm"
  external symm :
    Gsl_blas_gen.side ->
    Gsl_blas_gen.uplo ->
    alpha:Gsl_complex.complex ->
    a:[< Gsl_vectmat.cmat ] ->
    b:[< Gsl_vectmat.cmat ] ->
    beta:Gsl_complex.complex -> c:[< Gsl_vectmat.cmat ] -> unit
    = "ml_gsl_blas_zsymm_bc" "ml_gsl_blas_zsymm"
  external syrk :
    Gsl_blas_gen.uplo ->
    Gsl_blas_gen.transpose ->
    alpha:Gsl_complex.complex ->
    a:[< Gsl_vectmat.cmat ] ->
    beta:Gsl_complex.complex -> c:[< Gsl_vectmat.cmat ] -> unit
    = "ml_gsl_blas_zsyrk_bc" "ml_gsl_blas_zsyrk"
  external syr2k :
    Gsl_blas_gen.uplo ->
    Gsl_blas_gen.transpose ->
    alpha:Gsl_complex.complex ->
    a:[< Gsl_vectmat.cmat ] ->
    b:[< Gsl_vectmat.cmat ] ->
    beta:Gsl_complex.complex -> c:[< Gsl_vectmat.cmat ] -> unit
    = "ml_gsl_blas_zsyr2k_bc" "ml_gsl_blas_zsyr2k"
  external trmm :
    Gsl_blas_gen.side ->
    Gsl_blas_gen.uplo ->
    Gsl_blas_gen.transpose ->
    Gsl_blas_gen.diag ->
    alpha:Gsl_complex.complex ->
    a:[< Gsl_vectmat.cmat ] -> b:[< Gsl_vectmat.cmat ] -> unit
    = "ml_gsl_blas_ztrmm_bc" "ml_gsl_blas_ztrmm"
  external trsm :
    Gsl_blas_gen.side ->
    Gsl_blas_gen.uplo ->
    Gsl_blas_gen.transpose ->
    Gsl_blas_gen.diag ->
    alpha:Gsl_complex.complex ->
    a:[< Gsl_vectmat.cmat ] -> b:[< Gsl_vectmat.cmat ] -> unit
    = "ml_gsl_blas_ztrsm_bc" "ml_gsl_blas_ztrsm"
  external hemm :
    Gsl_blas_gen.side ->
    Gsl_blas_gen.uplo ->
    alpha:Gsl_complex.complex ->
    a:[< Gsl_vectmat.cmat ] ->
    b:[< Gsl_vectmat.cmat ] ->
    beta:Gsl_complex.complex -> c:[< Gsl_vectmat.cmat ] -> unit
    = "ml_gsl_blas_zhemm_bc" "ml_gsl_blas_zhemm"
  external herk :
    Gsl_blas_gen.uplo ->
    Gsl_blas_gen.transpose ->
    alpha:float ->
    a:[< Gsl_vectmat.cmat ] -> beta:float -> c:[< Gsl_vectmat.cmat ] -> unit
    = "ml_gsl_blas_zherk_bc" "ml_gsl_blas_zherk"
  external her2k :
    Gsl_blas_gen.uplo ->
    Gsl_blas_gen.transpose ->
    alpha:Gsl_complex.complex ->
    a:[< Gsl_vectmat.cmat ] ->
    b:[< Gsl_vectmat.cmat ] -> beta:float -> c:[< Gsl_vectmat.cmat ] -> unit
    = "ml_gsl_blas_zher2k_bc" "ml_gsl_blas_zher2k"
end