sig
  type bandrange = { mupper : int; mlower : int; }
  val prec_left :
    Cvode.Spils.Banded.bandrange ->
    (Nvector_serial.data, [> Nvector_serial.kind ])
    Cvode.Spils.preconditioner
  val prec_right :
    Cvode.Spils.Banded.bandrange ->
    (Nvector_serial.data, [> Nvector_serial.kind ])
    Cvode.Spils.preconditioner
  val prec_both :
    Cvode.Spils.Banded.bandrange ->
    (Nvector_serial.data, [> Nvector_serial.kind ])
    Cvode.Spils.preconditioner
  val get_work_space :
    [> Nvector_serial.kind ] Cvode.serial_session -> int * int
  val get_num_rhs_evals :
    [> Nvector_serial.kind ] Cvode.serial_session -> int
end