Excel 16.0 build 20131
Windows, bitness not recorded, AMD Ryzen 7 4800H with Radeon Graphics
40 captured inputs are indexed for this environment. Capture dates: 2026-07-17 to 2026-07-17. This is a reading count, not a comparison with another build.
Statistical functions
Known larger differences on 29 of 44 recorded answers
Of 44 recorded answers (40 in the answer bank and 4 workbook cells), 29 do not match: 1 differ by more than 16 ULP, 28 differ by at most 16 ULP. How we measure this · See the Rust code
| Language | Name in Excel |
|---|---|
| Arabic | CHISQ.INV |
| Bulgarian | CHISQ.INV |
| Czech | CHISQ.INV |
| Danish | CHI2.INV |
| German | CHISQ.INV |
| Greek | CHISQ.INV |
| English (Australia) | CHISQ.INV |
| English (United Kingdom) | CHISQ.INV |
| English (United States) | CHISQ.INV |
| Spanish | INV.CHICUAD |
| Estonian | CHISQ.INV |
| Finnish | CHINELIÖ.KÄÄNT |
| French | LOI.KHIDEUX.INVERSE |
| Hebrew | CHISQ.INV |
| Croatian | CHISQ.INV |
| Hungarian | KHINÉGYZET.INVERZ |
| Indonesian | CHISQ.INV |
| Italian | CHISQ.INV |
| Japanese | CHISQ.INV |
| Korean | CHISQ.INV |
| Lithuanian | CHISQ.INV |
| Latvian | CHISQ.INV |
| Norwegian | CHISQ.INV |
| Dutch | CHIKW.INV |
| Polish | ROZKŁ.CHI.ODWR |
| Portuguese (Brazil) | CHISQ.INV |
| Portuguese (Portugal) | INV.CHIQ |
| Romanian | CHISQ.INV |
| Russian | ХИ2.ОБР |
| Slovak | CHISQ.INV |
| Slovenian | CHISQ.INV |
| Serbian (Latin) | CHISQ.INV |
| Swedish | CHI2.INV |
| Thai | CHISQ.INV |
| Turkish | KİKARE.TERS |
| Ukrainian | CHISQ.INV |
| Vietnamese | CHISQ.INV |
| Chinese (Simplified) | CHISQ.INV |
| Chinese (Hong Kong) | CHISQ.INV |
| Chinese (Traditional) | CHISQ.INV |
Names from Microsoft's support site.
CHISQ.INV(probability, deg_freedom)
CHISQ.INV(probability, deg_freedom) finds the chi-square value whose left cumulative probability is the requested value.
=CHISQ.INV(0.5,2) is about 1.38629436111989. At two degrees of freedom, a half right tail solves exp(-x/2)=0.5; the same point also has a half left CDF.
Degrees of freedom are truncated. Microsoft documents #NUM! below one or above 10^10, and for probabilities outside zero to one; nonnumeric arguments give #VALUE!.
The current left inverse returns zero at probability zero and #NUM! at one. Probability one has no finite mathematical quantile, despite being inside the range described by the page’s out-of-range test. The companion right-tail inverse uses a different endpoint policy and is not obtained by relabelling the same probability.
10^10. Validate finite p and handle its endpoints.k/2 and scale two. This shared composition is supported by the source’s retained 63 interior pairs; it is not a claim that any gamma library can be substituted unchanged.At k=2, the mathematical CDF is 1-exp(-x/2). Probability one half therefore gives x=-2*ln(0.5), about 1.38629436111989. This identity explains the example; the implementation still goes through the shared inverse.
The public GAMMA.DIST wrapper has special-case branches that the inverse callback does not automatically inherit. Complete forward last bits and all inverse edge cases remain open; the 63-pair composition does not identify private Excel source or settle the whole domain.
Quoted from the public repository DnaCalc/DnaCalc, crates calc-func and calc-fml, at commit 9e1884369a67. Comments are the source's own. A kernel shared with other functions appears once, on its module page.
CHISQ.INV · 4 lines · calc-func/src/catalogue/distributions.rs on GitHub23 chisq_inv "CHISQ.INV" (2, 2) [V "probability", V "deg_freedom"] |s, a, sv| {
let [p, df] = nums::<2>(s, a)?;
out(s, cft::chisq_inv_kernel(p, df))
}
chisq_inv_kernel · 16 lines · calc-func/src/ported/chi_f_t_family.rs on GitHubpub fn chisq_inv_kernel(probability: f64, deg_freedom: f64) -> Result<f64, WorksheetErrorCode> {
let k = truncate_positive_integer(deg_freedom)?;
// Inverse-problem identity, live Excel 16.0 b20228: CHISQ.INV(p, df)
// == GAMMA.INV(p, df/2, 2) on 63/63 interior pairs. Endpoints also
// match: CHISQ.INV(0,2)=0 and CHISQ.INV(1,2)=#NUM!. CHIINV /
// CHISQ.INV.RT is the right-tail inverse, not GAMMA.INV(1-p,...) (34/63).
if !probability.is_finite() {
return Err(WorksheetErrorCode::Num);
}
crate::ported::beta_gamma_stats_family::gamma_inv_kernel(probability, k / 2.0, 2.0).map_err(
|e| match e {
code => code,
_ => WorksheetErrorCode::Value,
},
)
}
nums catalogue/distributionsvalidate_gamma_shape ported/beta_gamma_stats_familygamma_inv_kernel ported/beta_gamma_stats_familytruncate_positive_integer ported/chi_f_t_familybinary_with ported/excel_numericexcel_expm1_internal ported/excel_numericexpm1_internal_graph ported/excel_numericexcel_x87_sub ported/excel_numericexcel_x87_mul ported/excel_numericexcel_x87_temme_finish ported/excel_numericexcel_x87_div ported/excel_numericmul ported/excel_numeric/x87sub ported/excel_numeric/x87div ported/excel_numeric/x87pow2_positive ported/excel_numeric/x87_chainspow2 ported/excel_numeric/x87_chainsexp_ext ported/excel_numeric/x87_chainsexp_with ported/excel_numeric/x87_chainsexcel_exp ported/excel_numeric/x87_chainslog_with ported/excel_numeric/x87_chainsexcel_log ported/excel_numeric/x87_chainsgratio_norm_gamma ported/special_math_commongratio_rexp ported/special_math_commongratio_rlog ported/special_math_commongratio_gam1 ported/special_math_commongratio ported/special_math_commonseries_prefactor ported/special_math_commongratio_after40 ported/special_math_commongratio_cf ported/special_math_commongratio_temme_270 ported/special_math_commongratio_temme_340 ported/special_math_commongratio_temme_330 ported/special_math_commongratio_temme_finish ported/special_math_commonregularized_gamma_p ported/special_math_commonbisect_inverse ported/special_math_commonNo implementation has been published with a Handbook test suite for this function.
The recorded environments below distinguish a reading from a same-input comparison. Counts describe captured inputs in each environment; overlapping captures and comparisons are not totals of unique worksheet calls.
| Excel 16.0 build | Platform and CPU | Captured inputs |
|---|---|---|
| 20131 | Windows, bitness not recorded, AMD Ryzen 7 4800H with Radeon Graphics | 40 |
The record contains no same-input comparison between these environments. Reading different inputs on different builds does not establish either a version change or cross-build agreement.
Recorded environments and comparison details.
Windows, bitness not recorded, AMD Ryzen 7 4800H with Radeon Graphics
40 captured inputs are indexed for this environment. Capture dates: 2026-07-17 to 2026-07-17. This is a reading count, not a comparison with another build.
CHISQ.DIST supplies the forward probability; CHISQ.TEST returns a test p-value directly.
No named variants are recorded yet.
Suggest a correction or contribute an implementation · For agents