sig
  external sdsdot :
    alpha:float -> Vector.Single.vector -> Vector.Single.vector -> float
    = "ml_gsl_blas_sdsdot"
  external dsdot : Vector.Single.vector -> Vector.Single.vector -> float
    = "ml_gsl_blas_dsdot"
  external dot : Vector.Single.vector -> Vector.Single.vector -> float
    = "ml_gsl_blas_sdot"
  external nrm2 : Vector.Single.vector -> float = "ml_gsl_blas_snrm2"
  external asum : Vector.Single.vector -> float = "ml_gsl_blas_sasum"
  external iamax : Vector.Single.vector -> int = "ml_gsl_blas_isamax"
  external swap : Vector.Single.vector -> Vector.Single.vector -> unit
    = "ml_gsl_blas_sswap"
  external copy : Vector.Single.vector -> Vector.Single.vector -> unit
    = "ml_gsl_blas_scopy"
  external axpy :
    float -> Vector.Single.vector -> Vector.Single.vector -> unit
    = "ml_gsl_blas_saxpy"
  external rot :
    Vector.Single.vector -> Vector.Single.vector -> float -> float -> unit
    = "ml_gsl_blas_srot"
  external scal : float -> Vector.Single.vector -> unit = "ml_gsl_blas_sscal"
  external gemv :
    Blas.transpose ->
    alpha:float ->
    a:Matrix.Single.matrix ->
    x:Vector.Single.vector -> beta:float -> y:Vector.Single.vector -> unit
    = "ml_gsl_blas_sgemv_bc" "ml_gsl_blas_sgemv"
  external trmv :
    Blas.uplo ->
    Blas.transpose ->
    Blas.diag -> a:Matrix.Single.matrix -> x:Vector.Single.vector -> unit
    = "ml_gsl_blas_strmv"
  external trsv :
    Blas.uplo ->
    Blas.transpose ->
    Blas.diag -> a:Matrix.Single.matrix -> x:Vector.Single.vector -> unit
    = "ml_gsl_blas_strsv"
  external symv :
    Blas.uplo ->
    alpha:float ->
    a:Matrix.Single.matrix ->
    x:Vector.Single.vector -> beta:float -> y:Vector.Single.vector -> unit
    = "ml_gsl_blas_ssymv_bc" "ml_gsl_blas_ssymv"
  external dger :
    alpha:float ->
    x:Vector.Single.vector ->
    y:Vector.Single.vector -> a:Matrix.Single.matrix -> unit
    = "ml_gsl_blas_sger"
  external syr :
    Blas.uplo ->
    alpha:float -> x:Vector.Single.vector -> a:Matrix.Single.matrix -> unit
    = "ml_gsl_blas_ssyr"
  external syr2 :
    Blas.uplo ->
    alpha:float ->
    x:Vector.Single.vector ->
    y:Vector.Single.vector -> a:Matrix.Single.matrix -> unit
    = "ml_gsl_blas_ssyr2"
  external gemm :
    ta:Blas.transpose ->
    tb:Blas.transpose ->
    alpha:float ->
    a:Matrix.Single.matrix ->
    b:Matrix.Single.matrix -> beta:float -> c:Matrix.Single.matrix -> unit
    = "ml_gsl_blas_sgemm_bc" "ml_gsl_blas_sgemm"
  external symm :
    Blas.side ->
    Blas.uplo ->
    alpha:float ->
    a:Matrix.Single.matrix ->
    b:Matrix.Single.matrix -> beta:float -> c:Matrix.Single.matrix -> unit
    = "ml_gsl_blas_ssymm_bc" "ml_gsl_blas_ssymm"
  external syrk :
    Blas.uplo ->
    Blas.transpose ->
    alpha:float ->
    a:Matrix.Single.matrix -> beta:float -> c:Matrix.Single.matrix -> unit
    = "ml_gsl_blas_ssyrk_bc" "ml_gsl_blas_ssyrk"
  external syr2k :
    Blas.uplo ->
    Blas.transpose ->
    alpha:float ->
    a:Matrix.Single.matrix ->
    b:Matrix.Single.matrix -> beta:float -> c:Matrix.Single.matrix -> unit
    = "ml_gsl_blas_ssyr2k_bc" "ml_gsl_blas_ssyr2k"
  external trmm :
    Blas.side ->
    Blas.uplo ->
    Blas.transpose ->
    Blas.diag ->
    alpha:float -> a:Matrix.Single.matrix -> b:Matrix.Single.matrix -> unit
    = "ml_gsl_blas_strmm_bc" "ml_gsl_blas_strmm"
  external trsm :
    Blas.side ->
    Blas.uplo ->
    Blas.transpose ->
    Blas.diag ->
    alpha:float -> a:Matrix.Single.matrix -> b:Matrix.Single.matrix -> unit
    = "ml_gsl_blas_strsm_bc" "ml_gsl_blas_strsm"
end