let gamma_complement a x = assert (x >= 0. && a > 0.); if x < a +. 1. then 1. -. gamma_0_x a x else gamma_x_infty a x