Step-by-step derivation
S001 · implies
Before
source roles = [qf-variance-zero-support, [F, S, denominator, operation, values, weights]]
After
derived = [variance, zero_variance, null]
Conditions: none
Use THIS bank’s actual fields,operation/domain and types.BASE retains permissible extra metadata.Do not import LDL SAFE/set limits or a different bank’s deduplication rules.
Step identifiers and dependencies
Rule: R70_SOURCE_bank_specific_interface · Uses: G001
S002 · calculation
Before
Variance ORIGINAL nonnegative RAW weights sum := sum(1, 14, 3, 0)
After
Variance ORIGINAL nonnegative RAW weights sum = 18
Conditions: none
This step displays the exact original operands and operation.Mul/sub/div have EXACTLY TWO inputs.Keep rational values exact and derived BigInts unbounded;do not force an answer by approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S001
S003 · implies
Before
source roles = [[0, 1, 2, 3], powerset(S), [2, 2, 16, 1011], [1, 14, 3, 0], 18, null, null]
After
derived = [Yes]
Conditions: none
Type ALL RAW values/weights EVEN at zero weight.S is nonempty/distinct,F is powerset(S),weights are nonnegative and sum to q>0.Keep values/weights aligned to ORIGINAL S slots;do not sort independently.Type RAW c/k as well.
Step identifiers and dependencies
Rule: Variance_WHOLE_normalized_model_ORIGINAL_slot_alignment · Uses: G001, S002
S004 · calculation
Before
Variance weight times transformed value i=0 := mul(1, 2)
After
Variance weight times transformed value i=0 = 2
Conditions: none
This step displays the exact original operands and operation.Mul/sub/div have EXACTLY TWO inputs.Keep rational values exact and derived BigInts unbounded;do not force an answer by approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S003
S005 · implies
Before
source roles = [0, 0, 2, 1, null, null]
After
derived = [2, 1/18]
Conditions: none
For EACH ORIGINAL slot,set Y=X,X+c or kX while probability remains w/q.Derived values may exceed SAFE and are not recapped as RAW.Zero-weight slots remain in the source but contribute nothing.
Step identifiers and dependencies
Rule: Variance_EACH_slot_transformation_preserves_probability · Uses: G001, S004
S006 · calculation
Before
Variance weight times transformed value i=1 := mul(14, 2)
After
Variance weight times transformed value i=1 = 28
Conditions: none
This step displays the exact original operands and operation.Mul/sub/div have EXACTLY TWO inputs.Keep rational values exact and derived BigInts unbounded;do not force an answer by approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S005
S007 · implies
Before
source roles = [1, 1, 2, 14, null, null]
After
derived = [2, 7/9]
Conditions: none
For EACH ORIGINAL slot,set Y=X,X+c or kX while probability remains w/q.Derived values may exceed SAFE and are not recapped as RAW.Zero-weight slots remain in the source but contribute nothing.
Step identifiers and dependencies
Rule: Variance_EACH_slot_transformation_preserves_probability · Uses: G001, S006
S008 · calculation
Before
Variance weight times transformed value i=2 := mul(3, 16)
After
Variance weight times transformed value i=2 = 48
Conditions: none
This step displays the exact original operands and operation.Mul/sub/div have EXACTLY TWO inputs.Keep rational values exact and derived BigInts unbounded;do not force an answer by approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S007
S009 · implies
Before
source roles = [2, 2, 16, 3, null, null]
After
derived = [16, 1/6]
Conditions: none
For EACH ORIGINAL slot,set Y=X,X+c or kX while probability remains w/q.Derived values may exceed SAFE and are not recapped as RAW.Zero-weight slots remain in the source but contribute nothing.
Step identifiers and dependencies
Rule: Variance_EACH_slot_transformation_preserves_probability · Uses: G001, S008
S010 · calculation
Before
Variance weight times transformed value i=3 := mul(0, 1011)
After
Variance weight times transformed value i=3 = 0
Conditions: none
This step displays the exact original operands and operation.Mul/sub/div have EXACTLY TWO inputs.Keep rational values exact and derived BigInts unbounded;do not force an answer by approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S009
S011 · implies
Before
source roles = [3, 3, 1011, 0, null, null]
After
derived = [1011, 0]
Conditions: none
For EACH ORIGINAL slot,set Y=X,X+c or kX while probability remains w/q.Derived values may exceed SAFE and are not recapped as RAW.Zero-weight slots remain in the source but contribute nothing.
Step identifiers and dependencies
Rule: Variance_EACH_slot_transformation_preserves_probability · Uses: G001, S010
S012 · calculation
Before
Variance mean numerator sum wY := sum(2, 28, 48, 0)
After
Variance mean numerator sum wY = 78
Conditions: none
This step displays the exact original operands and operation.Mul/sub/div have EXACTLY TWO inputs.Keep rational values exact and derived BigInts unbounded;do not force an answer by approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S011
S013 · calculation
Before
Variance exact expectation M over q := div(78, 18)
After
Variance exact expectation M over q = 13/3
Conditions: none
This step displays the exact original operands and operation.Mul/sub/div have EXACTLY TWO inputs.Keep rational values exact and derived BigInts unbounded;do not force an answer by approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S012
S014 · calculation
Before
Variance i=0 Y times q := mul(2, 18)
After
Variance i=0 Y times q = 36
Conditions: none
This step displays the exact original operands and operation.Mul/sub/div have EXACTLY TWO inputs.Keep rational values exact and derived BigInts unbounded;do not force an answer by approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S013
S015 · calculation
Before
Variance i=0 centered integer numerator := sub(36, 78)
After
Variance i=0 centered integer numerator = -42
Conditions: none
This step displays the exact original operands and operation.Mul/sub/div have EXACTLY TWO inputs.Keep rational values exact and derived BigInts unbounded;do not force an answer by approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S014
S016 · calculation
Before
Variance i=0 centered numerator squared := mul(-42, -42)
After
Variance i=0 centered numerator squared = 1764
Conditions: none
This step displays the exact original operands and operation.Mul/sub/div have EXACTLY TWO inputs.Keep rational values exact and derived BigInts unbounded;do not force an answer by approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S015
S017 · calculation
Before
Variance i=0 weight times squared numerator := mul(1, 1764)
After
Variance i=0 weight times squared numerator = 1764
Conditions: none
This step displays the exact original operands and operation.Mul/sub/div have EXACTLY TWO inputs.Keep rational values exact and derived BigInts unbounded;do not force an answer by approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S016
S018 · calculation
Before
Variance i=1 Y times q := mul(2, 18)
After
Variance i=1 Y times q = 36
Conditions: none
This step displays the exact original operands and operation.Mul/sub/div have EXACTLY TWO inputs.Keep rational values exact and derived BigInts unbounded;do not force an answer by approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S017
S019 · calculation
Before
Variance i=1 centered integer numerator := sub(36, 78)
After
Variance i=1 centered integer numerator = -42
Conditions: none
This step displays the exact original operands and operation.Mul/sub/div have EXACTLY TWO inputs.Keep rational values exact and derived BigInts unbounded;do not force an answer by approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S018
S020 · calculation
Before
Variance i=1 centered numerator squared := mul(-42, -42)
After
Variance i=1 centered numerator squared = 1764
Conditions: none
This step displays the exact original operands and operation.Mul/sub/div have EXACTLY TWO inputs.Keep rational values exact and derived BigInts unbounded;do not force an answer by approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S019
S021 · calculation
Before
Variance i=1 weight times squared numerator := mul(14, 1764)
After
Variance i=1 weight times squared numerator = 24696
Conditions: none
This step displays the exact original operands and operation.Mul/sub/div have EXACTLY TWO inputs.Keep rational values exact and derived BigInts unbounded;do not force an answer by approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S020
S022 · calculation
Before
Variance i=2 Y times q := mul(16, 18)
After
Variance i=2 Y times q = 288
Conditions: none
This step displays the exact original operands and operation.Mul/sub/div have EXACTLY TWO inputs.Keep rational values exact and derived BigInts unbounded;do not force an answer by approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S021
S023 · calculation
Before
Variance i=2 centered integer numerator := sub(288, 78)
After
Variance i=2 centered integer numerator = 210
Conditions: none
This step displays the exact original operands and operation.Mul/sub/div have EXACTLY TWO inputs.Keep rational values exact and derived BigInts unbounded;do not force an answer by approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S022
S024 · calculation
Before
Variance i=2 centered numerator squared := mul(210, 210)
After
Variance i=2 centered numerator squared = 44100
Conditions: none
This step displays the exact original operands and operation.Mul/sub/div have EXACTLY TWO inputs.Keep rational values exact and derived BigInts unbounded;do not force an answer by approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S023
S025 · calculation
Before
Variance i=2 weight times squared numerator := mul(3, 44100)
After
Variance i=2 weight times squared numerator = 132300
Conditions: none
This step displays the exact original operands and operation.Mul/sub/div have EXACTLY TWO inputs.Keep rational values exact and derived BigInts unbounded;do not force an answer by approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S024
S026 · calculation
Before
Variance i=3 Y times q := mul(1011, 18)
After
Variance i=3 Y times q = 18198
Conditions: none
This step displays the exact original operands and operation.Mul/sub/div have EXACTLY TWO inputs.Keep rational values exact and derived BigInts unbounded;do not force an answer by approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S025
S027 · calculation
Before
Variance i=3 centered integer numerator := sub(18198, 78)
After
Variance i=3 centered integer numerator = 18120
Conditions: none
This step displays the exact original operands and operation.Mul/sub/div have EXACTLY TWO inputs.Keep rational values exact and derived BigInts unbounded;do not force an answer by approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S026
S028 · calculation
Before
Variance i=3 centered numerator squared := mul(18120, 18120)
After
Variance i=3 centered numerator squared = 328334400
Conditions: none
This step displays the exact original operands and operation.Mul/sub/div have EXACTLY TWO inputs.Keep rational values exact and derived BigInts unbounded;do not force an answer by approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S027
S029 · calculation
Before
Variance i=3 weight times squared numerator := mul(0, 328334400)
After
Variance i=3 weight times squared numerator = 0
Conditions: none
This step displays the exact original operands and operation.Mul/sub/div have EXACTLY TWO inputs.Keep rational values exact and derived BigInts unbounded;do not force an answer by approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S028
S030 · calculation
Before
Variance sum ALL weighted squared numerators := sum(1764, 24696, 132300, 0)
After
Variance sum ALL weighted squared numerators = 158760
Conditions: none
This step displays the exact original operands and operation.Mul/sub/div have EXACTLY TWO inputs.Keep rational values exact and derived BigInts unbounded;do not force an answer by approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S029
S031 · calculation
Before
Variance denominator q squared := mul(18, 18)
After
Variance denominator q squared = 324
Conditions: none
This step displays the exact original operands and operation.Mul/sub/div have EXACTLY TWO inputs.Keep rational values exact and derived BigInts unbounded;do not force an answer by approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S030
S032 · calculation
Before
Variance denominator q cubed binary second factor := mul(324, 18)
After
Variance denominator q cubed binary second factor = 5832
Conditions: none
This step displays the exact original operands and operation.Mul/sub/div have EXACTLY TWO inputs.Keep rational values exact and derived BigInts unbounded;do not force an answer by approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S031
S033 · calculation
Before
Variance probability population centered sum over q cubed := div(158760, 5832)
After
Variance probability population centered sum over q cubed = 245/9
Conditions: none
This step displays the exact original operands and operation.Mul/sub/div have EXACTLY TWO inputs.Keep rational values exact and derived BigInts unbounded;do not force an answer by approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S032
S034 · implies
Before
source roles = [[2, 2, 16, 1011], [1, 14, 3, 0], 18, 13/3, 158760, 5832]
After
derived = [245/9, [2, 16], No]
Conditions: none
E[Y]=M/q and Var=Σ(w/q)(Y−M/q)²=C/q³.Every term is nonnegative,so the sum is0 exactly when EVERY positive-weight Y equals the mean,equivalently constancy on positive support.Zero-weight values may differ.This is NOT n−1 sample variance.
Step identifiers and dependencies
Rule: Variance_CENTERED_definition_and_positive_support_zero_equivalence · Uses: G001, S033
S035 · implies
Before
source roles = [zero_variance, null, null]
After
derived = [245/9]
Conditions: none
Under a shift,the mean also shifts by c,leaving deviations unchanged.Under scaling,the mean scales by k and squared deviations by k²,including negative/zero k.The ACTUAL Y values were fully recomputed;the law does not excuse untyped c/k.
Step identifiers and dependencies
Rule: Variance_SHIFT_SCALE_law_with_conditions · Uses: G001, S034