gum_propagate — SPC uncertainty op

• Data kinds: table → table

• Call: import fullseye as fs; fs.ledger.gum_propagate(table, u='u', sensitivity='sensitivity', correlation=None) (to call the implementation directly, import spc; spc.gum_propagate(table, u='u', sensitivity='sensitivity', correlation=None); from the registry, opsspc.get("gum_propagate"))

Usage

Law of propagation of uncertainty (GUM 5.2, with correlations) (`table`).

> The detailed description below is the original text — the summary and the headings are translated.

u_c^2 = sum_i (c_i u_i)^2 + 2 sum_{i<j} c_i c_j u_i u_j r_ij

*table* は列 *u*(標準不確かさ)と *sensitivity*(感度係数 `c_i = df/dx_i`)を

持つ表。*correlation* に (n, n) の相関行列を渡すと相関項を含める。

★門にできる閉形式: `f = x y なら c_x = y / c_y = x` なので

`u_c/|f| = sqrt((u_x/x)^2 + (u_y/y)^2)` —— 相対不確かさの二乗和。

相関 `r = +1 の 2 成分では u_c = |c1 u1 + c2 u2||` に厳密に一致し、

`r = -1 では |c1 u1 - c2 u2|`(打ち消し)。無相関なら寄与の合計が

`u_c^2` にぴったり閉じる。

★★相関を無視した誤りの向きは一定ではない。「独立として扱うと過小評価になる」

はよく言われるが、偽である。規格の worked example(電圧・電流・位相差から

抵抗とリアクタンスを同時に出す例、3 量すべてに相関がある)で相関を落として測ると:

u_c(R) 0.0702 -> 0.1945 2.8 倍の過大

u_c(X) 0.2961 -> 0.2009 過小

u_c(Z) 0.2367 -> 0.2041 過小

同じ 1 つのデータで、量によって向きが逆に出る —— 感度係数の符号と相関の符号の

積で決まるので、当たり前といえば当たり前だが、「安全側に外れる」と思って相関を

省くと R では 3 倍近く過大な不確かさを報告することになる。

References (sample data, literature)

• Sample-data catalog (download URLs / licences) — 2-D uses skimage.data (BSD/public domain) plus synthetic images; 3-D lists download URLs for real data sources (Stanford, PDS, …).

• Operator provenance and references — the sources of the research/methods this op family came from.

• The canonical algorithm (author, year) and its uses are named in the family usage guide above.

Runnable examples (verified samples that actually call this op)

• poc_measurement_system_analysis — py -3.11 examples/poc_measurement_system_analysis.py

Ops the type connects to (they accept table as input)

msa_anova_table · msa_gauge_rr · msa_bias_linearity · msa_attribute_agreement · gum_standard_uncertainty · gum_expanded · gum_monte_carlo · gum_validate

Same category (uncertainty)

gum_standard_uncertainty · gum_expanded · gum_monte_carlo · gum_validate


*Provenance: spc.py — SPC operator registry. This per-op note is generated by tools/opdocs.py md (do not hand-edit).*

© 2026 Kazufumi Furuse — Fullseye operator documentation. Licensed under Apache-2.0.