sequince.utils.optimize
=======================

.. py:module:: sequince.utils.optimize


Functions
---------

.. autoapisummary::

   sequince.utils.optimize.bisect_monotone_decreasing


Module Contents
---------------

.. py:function:: bisect_monotone_decreasing(criterion, lower, upper, target, *, tolerance, max_iterations)

   Refine a bracket around a decreasing criterion's target crossing.

   The returned lower bound is the largest tested value whose criterion is at
   least ``target``; the upper bound is the smallest tested value below it.
   Callers own endpoint validation and the policy for selecting a final value
   from the returned bracket.

   The loop uses :func:`acai.while_loop`, preserving structured control flow
   under JAX compilation while retaining eager behavior on other backends.


