let probability_of_quantile degree q =
      if degree > 100 then
        raise (Out_of_table (Printf.sprintf "freedom degre %d > 100" degree));
      let t = quantiles.(degree-1) in
      let len = Array.length probabilities in
      let rec iter i =
        if i >= len then
          raise (Out_of_table (Printf.sprintf "quantile %f gives probability > %s"
                                 q
                                 (string_of_probability (fst probabilities.(len-1)))))
        else
          let v = t.(i) in
          if q = v then
            i
          else
            if q > v then
              iter (i+1)
            else
              (i-1)
      in
      fst (probabilities.(iter 1))