sig
  type vec =
      (float, Bigarray.float64_elt, Bigarray.fortran_layout)
      Bigarray.Array1.t
  val min :
    ?print:Lbfgs.print ->
    ?work:Lbfgs.work ->
    ?nsteps:int ->
    ?stop:(Lbfgs.state -> bool) ->
    ?corrections:int ->
    ?factr:float ->
    ?pgtol:float ->
    ?n:int ->
    ?ofsl:int ->
    ?l:Lbfgs.F.vec ->
    ?ofsu:int ->
    ?u:Lbfgs.F.vec ->
    (Lbfgs.F.vec -> Lbfgs.F.vec -> float) ->
    ?ofsx:int -> Lbfgs.F.vec -> float
  val max :
    ?print:Lbfgs.print ->
    ?work:Lbfgs.work ->
    ?nsteps:int ->
    ?stop:(Lbfgs.state -> bool) ->
    ?corrections:int ->
    ?factr:float ->
    ?pgtol:float ->
    ?n:int ->
    ?ofsl:int ->
    ?l:Lbfgs.F.vec ->
    ?ofsu:int ->
    ?u:Lbfgs.F.vec ->
    (Lbfgs.F.vec -> Lbfgs.F.vec -> float) ->
    ?ofsx:int -> Lbfgs.F.vec -> float
end