type mud … const mudDegree … type edge … // add adds a uniform function over [l, r] scaled so the total weight // of the uniform is area. If l==r, this adds a Dirac delta function. func (d *mud) add(l, r, area float64) { … } // setTrackMass sets the mass to track the inverse cumulative sum for. // // Specifically, mass is a cumulative duration, and the mutator // utilization bounds for this duration can be queried using // approxInvCumulativeSum. func (d *mud) setTrackMass(mass float64) { … } // approxInvCumulativeSum is like invCumulativeSum, but specifically // operates on the tracked mass and returns an upper and lower bound // approximation of the inverse cumulative sum. // // The true inverse cumulative sum will be in the range [lower, upper). func (d *mud) approxInvCumulativeSum() (float64, float64, bool) { … } // invCumulativeSum returns x such that the integral of d from -∞ to x // is y. If the total weight of d is less than y, it returns the // maximum of the distribution and false. // // Specifically, y is a cumulative duration, and invCumulativeSum // returns the mutator utilization x such that at least y time has // been spent with mutator utilization <= x. func (d *mud) invCumulativeSum(y float64) (float64, bool) { … }