Methodology Reference
A single-page consolidation of the JCGM section pointers for every exported symbol of SymbolicUncertainties.jl. Row order matches the EARS specification's exported-API appendix.
The per-function docstrings under src/*.jl are the source of truth for REQ-160 citations; the table below is a navigable consolidation view. Drift between this table and the docstrings is caught by the test/package/test_api_freeze.jl audit (REQ-160 enforcement).
Public surface
| Symbol | Description | JCGM / GUM ref |
|---|---|---|
SymbolicMeasurement | Estimate + combined standard uncertainty + dof. | §4.1 (estimate), §5.1 (uc), §G.4 (νeff) |
± | Constructor shorthand val ± u. | §6 (notation) |
apply | Scalar function with optional sensitivity coefficient. | §5.1.3 |
propagate | Multi-variable uncertainty propagation — a convenience over the operators, not a second path. | §5.1.2 eq (10), §5.2.2 eq (13) |
propagate_vector | Vector-valued measurand propagation. | JCGM 102:2011 |
sensitivity_coefficient | Symbolic cᵢ = ∂f/∂xᵢ. | §5.1.3 |
uncertainty_contribution | Symbolic |cᵢ| · uᵢ. | §5.1.6 |
relative_sensitivity | Fractional variance contribution. | §5.1.6 |
dominant_source | Variable with largest variance contribution. | §5.1.6 |
uncertainty_budget | Full GUM uncertainty budget table, derived from the quantity's own sources. | §5.1.6; EA-4/02 §7.3 |
UncertaintyBudget | The budget value: rows, measurand, u_c, and whether correlations are declared. | EA-4/02 §7.3 |
BudgetRow | One budget line. | §5.1.3 eq (11a), (11b) |
expanded_uncertainty | U = k · u_c, returned as an ExpandedUncertainty. | §6 (k = 2); §G.1.2 (arbitrary k); Table G.2 (coverage probability) |
ExpandedUncertainty | (val, U, k, ν_eff) — a coverage-interval half-width, deliberately not propagatable. | §6.2 |
declare_correlated | Returns two quantities carrying a declared correlation. | §5.2.2 eq (13) |
covariance | Covariance of two quantities over their shared sources. | JCGM 102:2011 |
correlation | Correlation coefficient derived from that covariance. | §5.2.2 eq (14) |
welch_satterthwaite | Effective degrees of freedom. | §G.4 |
required_precision | Symbolic condition on uᵢ for target u_c. | §5.2 (inverse) |
budget_allocation | Lagrange allocation of uncertainty budget. | §5.2 (inverse) + Lagrange optimisation |
build_evaluator | Compile to Julia / C function. | — (code generation) |
Symbolics.substitute | Numerical substitution — extension method, not a new export. | — (numerical evaluation) |
infer_precision | Solve for uᵢ given observed u_c. | — (inverse, see §5.2) |
infer_all_precisions | Worst-case single-source attribution. | — (inverse, see §5.2) |
latex | LaTeX string for certificates (requires Latexify.jl). | §7 (reporting) |
to_expr | Extract (val, err) tuple of Num. | — (export utility) |
propagate_ode | ODE uncertainty propagation (requires ModelingToolkit.jl). | GUM Supplement 3 (anticipated) |
uncertainty_ode | Augmented ODESystem for numerical integration. | GUM Supplement 3 (anticipated) |
check_linearity | Nonlinearity indicator per input variable. | §5.1.1 (linearity note) |
linearisation_bound | Rigorous bound on the first-order error over the whole coverage region. | §5.1.1 (linearity note); JCGM 101:2008 (the sampling alternative) |
second_order_correction | Second-order term on the estimate, returned never applied. | JCGM 100:2008/Amd.1:2026 §4.1.4 NOTE 1; eq (H.10) |
check_units | Opt-in, non-throwing dimensional report. | §4.3.1 (affine scales); VIM §1.1 (kind) |
UnitReport | Findings returned by check_units. | §4.3.1 |
JuliaTarget | Symbolics code-generation target, re-exported. | — (REQ-132 documented exception) |
CTarget | Symbolics code-generation target, re-exported. | — (REQ-132 documented exception) |
Notes
substituteis accessed asSymbolics.substitute(m, dict)— an extension method onSymbolics.substitute, not a new export fromSymbolicUncertainties. The specification captured this decision to avoid theDynamicPolynomials.substitute/ExproniconLite.substitutename clash.JuliaTargetandCTargetare re-exports fromSymbolics.jl— the two documented exceptions to the REQ-132 "no-Symbolics-names-leaked" audit, needed for thebuild_evaluator(m, variables; target = …)keyword syntax.propagate_odeanduncertainty_odeare exported stubs insrc/mtk_stubs.jlthat raiseArgumentErroruntilModelingToolkit.jlis loaded; the live methods live inext/SymbolicUncertaintiesModelingToolkitExt.jl.latexis similarly a stub insrc/latex_stub.jlreplaced by theSymbolicUncertaintiesLatexifyExtextension whenLatexify.jlis loaded.linearisation_boundandsecond_order_correctionanswer two different questions and neither replaces the other: the first bounds the error the first-order law makes inu_c, the second returns the term the 2026 amendment asks for on the estimatey. A product of independent inputs needs the second not at all — its estimate is exact — and the first very much, since all of its nonlinearity sits in the mixed partial.
Cross-reference
- Standards-traceability gate: EARS REQ-160 (per-function citation), REQ-161 (per-topic docs page), REQ-162 (six canonical worked examples — see Worked Examples).
- Waived requirements: see Limitations for the post-1.0 deferral list.
- Citation:
CITATION.bibat the repository root.
Re-export docstrings
SymbolicUncertainties.JuliaTarget — Type
JuliaTargetRe-export of Symbolics.JuliaTarget. Pass to build_evaluator(m, variables; target = JuliaTarget()) to generate a compiled Julia evaluator (the default target). Documented REQ-132 exception — see docs/src/methodology-reference.md.
SymbolicUncertainties.CTarget — Type
CTargetRe-export of Symbolics.CTarget. Pass to build_evaluator(m, variables; target = CTarget()) to generate a C source String callable from C / Fortran / any FFI-compatible host. Documented REQ-132 exception — see docs/src/methodology-reference.md.