fact: Definition binary_alloc {T} {_ : has_double_avg T} (size : T -> Q) (count_elems : forall min max : T, N) (total_time_all_elems : forall min max : T, Q) (allocation : Q) (min : T) (max : T) (cutoff_elem_count : N) (max_point_count : N) (min_fractional_change_for_nonlinear_sample : Q) (alloc : forall min max : T, N -> list T) : list T := List.flat_map (fun '((min, max), n) => alloc min max n) (fst (binary_alloc_QT_fueled size count_elems total_time_all_elems allocation min max cutoff_elem_count max_point_count min_fractional_change_for_nonlinear_sample (Nat.min (Nat.log2_up max_subdivisions) (100 + N.to_nat (N.min 1000 max_point_count) + N.to_nat (N.log2_up (count_elems min max)))))).
imports: Coq.Strings.String Coq.Structures.Orders Coq.micromega.Lia Coq.Bool.Bool Coq.Sorting.Mergesort Coq.QArith.QArith Coq.QArith.Qround Coq.QArith.Qabs Coq.QArith.Qminmax Coq.NArith.NArith Coq.ZArith.ZArith Coq.Arith.Arith Coq.Lists.List PerformanceExperiments.LetIn