def _lambda_solver_bisection()

in submix.py [0:0]


    def _lambda_solver_bisection(self, p, p_prime, p0):
        def f(lamb):
            mix_star = self.mix((p + p_prime)/2, p0, lamb=lamb)
            p_mix = self.mix(p, p0, lamb=lamb)
            p_prime_mix = self.mix(p_prime, p0, lamb=lamb)
            eps = max(self.renyi_dp(mix_star,p_mix, alpha=self.alpha),
                      self.renyi_dp(mix_star,p_prime_mix, alpha=self.alpha))
            return eps - self.target_consumption
        lamb = 1.0 if f(1) <= 0.0 else bisect(f, 0, 1)
        return self.mix((p + p_prime)/2, p0, lamb=lamb), lamb