Function make_report_noisy_max_gumbel

Source
pub fn make_report_noisy_max_gumbel<TIA>(
    input_domain: VectorDomain<AtomDomain<TIA>>,
    input_metric: LInfDistance<TIA>,
    scale: f64,
    optimize: Optimize,
) -> Fallible<Measurement<VectorDomain<AtomDomain<TIA>>, usize, LInfDistance<TIA>, MaxDivergence>>
where TIA: Number, f64: DistanceConstant<TIA>, FBig: TryFrom<TIA> + TryFrom<f64>,
Expand description

Make a Measurement that takes a vector of scores and privately selects the index of the highest score.

§Arguments

  • input_domain - Domain of the input vector. Must be a non-nullable VectorDomain.
  • input_metric - Metric on the input domain. Must be LInfDistance
  • scale - Higher scales are more private.
  • optimize - Indicate whether to privately return the “max” or “min”

§Generics

  • TIA - Atom Input Type. Type of each element in the score vector.

§Proof Definition

(Proof Document)