Step-by-step derivation
S001 · implies
Before
source roles = [qf-variance-weighted, [F, S, denominator, operation, values, weights]]
After
derived = [variance, 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, 2, 0)
After
Variance ORIGINAL nonnegative RAW weights sum = 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, S001
S003 · implies
Before
source roles = [[0, 1, 2], powerset(S), [5, 5, 999], [1, 2, 0], 3, 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, 5)
After
Variance weight times transformed value i=0 = 5
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, 5, 1, null, null]
After
derived = [5, 1/3]
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(2, 5)
After
Variance weight times transformed value i=1 = 10
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, 5, 2, null, null]
After
derived = [5, 2/3]
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(0, 999)
After
Variance weight times transformed value i=2 = 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, S007
S009 · implies
Before
source roles = [2, 2, 999, 0, null, null]
After
derived = [999, 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, S008
S010 · calculation
Before
Variance mean numerator sum wY := sum(5, 10, 0)
After
Variance mean numerator sum wY = 15
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 · calculation
Before
Variance exact expectation M over q := div(15, 3)
After
Variance exact expectation M over q = 5
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, S010
S012 · calculation
Before
Variance i=0 Y times q := mul(5, 3)
After
Variance i=0 Y times q = 15
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 i=0 centered integer numerator := sub(15, 15)
After
Variance i=0 centered integer 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, S012
S014 · calculation
Before
Variance i=0 centered numerator squared := mul(0, 0)
After
Variance i=0 centered numerator squared = 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, S013
S015 · calculation
Before
Variance i=0 weight times squared numerator := mul(1, 0)
After
Variance i=0 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, S014
S016 · calculation
Before
Variance i=1 Y times q := mul(5, 3)
After
Variance i=1 Y times q = 15
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=1 centered integer numerator := sub(15, 15)
After
Variance i=1 centered integer 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, S016
S018 · calculation
Before
Variance i=1 centered numerator squared := mul(0, 0)
After
Variance i=1 centered numerator squared = 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, S017
S019 · calculation
Before
Variance i=1 weight times squared numerator := mul(2, 0)
After
Variance i=1 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, S018
S020 · calculation
Before
Variance i=2 Y times q := mul(999, 3)
After
Variance i=2 Y times q = 2997
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=2 centered integer numerator := sub(2997, 15)
After
Variance i=2 centered integer numerator = 2982
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 centered numerator squared := mul(2982, 2982)
After
Variance i=2 centered numerator squared = 8892324
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 weight times squared numerator := mul(0, 8892324)
After
Variance i=2 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, S022
S024 · calculation
Before
Variance sum ALL weighted squared numerators := sum(0, 0, 0)
After
Variance sum ALL weighted squared numerators = 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, S023
S025 · calculation
Before
Variance denominator q squared := mul(3, 3)
After
Variance denominator q squared = 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, S024
S026 · calculation
Before
Variance denominator q cubed binary second factor := mul(9, 3)
After
Variance denominator q cubed binary second factor = 27
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 probability population centered sum over q cubed := div(0, 27)
After
Variance probability population centered sum over q cubed = 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, S026
S028 · implies
Before
source roles = [[5, 5, 999], [1, 2, 0], 3, 5, 0, 27]
After
derived = [0, [5], Yes]
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, S027
S029 · implies
Before
source roles = [variance, null, null]
After
derived = [0]
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, S028