Adaptive rejection sampling