OAI/Probability/TraceReconstruction/InitialRates.lean
87 declarations, 0 contain sorry, 0 declared as axioms
InitialRates
Initial geometric parameters, moment depths, error and overlap rates, and production of the base induction pair.
- theorem
OAI.TraceReconstruction.initialPrefactor_rateline 28Source documentation
Exact power of the sharp initial rank prefactor; all channel losses are subpower at the source's smallest scale.
theorem initialPrefactor_rate (hN : Tendsto N atTop atTop) {α β : ℝ} (hu : PowerRate N (fun t=>(u t:ℝ)) α) (hm : PowerRate N (fun t=>(m t:ℝ)) β) (hq : PowerRate N q 0) (r d : ℕ) : PowerRate N (fun t=>initialPrefactorCap (u t) (m t) r d (q t)) (α/2-β*((d:ℝ)+(r:ℝ)/2)) := by …Mentions: OAI.TraceReconstruction.PowerRate, OAI.TraceReconstruction.initialPrefactorCap
- theorem
OAI.TraceReconstruction.periodCentral_rateline 45 - theorem
OAI.TraceReconstruction.periodBounded_rateline 56 - theorem
OAI.TraceReconstruction.hiddenSigned_rateline 67 - theorem
OAI.TraceReconstruction.hiddenUnsigned_rateline 78 - theorem
OAI.TraceReconstruction.initial_central_rateline 89Source documentation
The two eliminated large gaps are quantitatively visible in this exponent.
theorem initial_central_rate (hN : Tendsto N atTop atTop) (hu : PowerRate N (fun t=>(u t:ℝ)) (123/250)) (hm : PowerRate N (fun t=>(m t:ℝ)) (62/125)) (hq : PowerRate N q 0) {r : ℕ} (hr : 0<r) (d : ℕ) : PowerRate N (fun t=>initialPrefactorCap (u t) (m t) r d (q t)*periodCentralSumConstant (u t) r) (-123/250-(62/125)*(d:ℝ)-(1/500)*(r:ℝ)) := by …Mentions: OAI.TraceReconstruction.PowerRate, OAI.TraceReconstruction.initialPrefactorCap, OAI.TraceReconstruction.periodCentralSumConstant
- theorem
OAI.TraceReconstruction.initial_bounded_rateline 97 - theorem
OAI.TraceReconstruction.initial_signed_pattern_upperline 106Source documentation
Fixed low degrees already beat the signed and pure source score exponents.
theorem initial_signed_pattern_upper (hN : Tendsto N atTop atTop) (hu : PowerRate N (fun t=>(u t:ℝ)) (123/250)) (hm : PowerRate N (fun t=>(m t:ℝ)) (62/125)) (hq : PowerRate N q 0) (hJ : PowerRate N (fun t=>(J t:ℝ)) (1/125)) (hω : PowerRate N ω 0) {r : ℕ} (hr : 0<r) (k : Fin r→GapDifference) (hk : Odd (firstDifferenceCount k)) : PowerUpper N (fun t=>initialSignedPatternCap (J t) (u t) (m t) r 300 (q t) (ω t) k) (-223/100) := by …Mentions: OAI.TraceReconstruction.PowerRate, OAI.TraceReconstruction.GapDifference, OAI.TraceReconstruction.firstDifferenceCount, OAI.TraceReconstruction.PowerUpper, OAI.TraceReconstruction.initialSignedPatternCap
- theorem
OAI.TraceReconstruction.initial_pure_pattern_upperline 130 - theorem
OAI.TraceReconstruction.increasingTuple_card_leline 152 - theorem
OAI.TraceReconstruction.initialRankTail_upperline 156 - theorem
OAI.TraceReconstruction.initialMomentRatio_rateline 178 - theorem
OAI.TraceReconstruction.initial_fixed_high_tail_rateline 189 - theorem
OAI.TraceReconstruction.initialSignedDegree_upperline 203 - theorem
OAI.TraceReconstruction.initialPureDegree_upperline 224 - theorem
OAI.TraceReconstruction.initialSignedCap_upperline 245 - theorem
OAI.TraceReconstruction.initialPureCap_upperline 257 - theorem
OAI.TraceReconstruction.initial_score_caps_eventuallyline 271Source documentation
Actual scalar budgets, not assumed coefficient bounds: all report- and count-independent caps are strictly below the source clipping allowances.
theorem initial_score_caps_eventually (hN : Tendsto N atTop atTop) (hu : PowerRate N (fun t=>(u t:ℝ)) (123/250)) (hm : PowerRate N (fun t=>(m t:ℝ)) (62/125)) (hq : PowerRate N q 0) (hJ : PowerRate N (fun t=>(J t:ℝ)) (1/125)) (hω : PowerRate N ω 0) (hw : PowerRate N w 0) : ∀ᶠt in atTop, 64*initialSignedCap (J t) (u t) (m t) 3000 300 (q t) (ω t) (w t) ≤ (N t)^(-11/5:ℝ) ∧ 64*initialPureCap (J t) (u t) (m t) 3000 300 (q t) (ω t) (w t) ≤ (N t)^(-7/5:ℝ) := by …Mentions: OAI.TraceReconstruction.PowerRate, OAI.TraceReconstruction.initialSignedCap, OAI.TraceReconstruction.initialPureCap
- theorem
OAI.TraceReconstruction.PowerRate.sub_lowerline 294 - theorem
OAI.TraceReconstruction.PowerRate.nat_sub_lowerline 305 - def
OAI.TraceReconstruction.sourceInitialMline 316Source documentation
Literal integer choices of the initial-pair construction, including the outer floors.
def sourceInitialM (N : ℝ) : ℕ := ⌊N^(62/125:ℝ)⌋₊
- def
OAI.TraceReconstruction.sourceInitialKline 317 - def
OAI.TraceReconstruction.sourceInitialPeriodSizeline 318 - def
OAI.TraceReconstruction.sourceInitialCapacityline 319 - def
OAI.TraceReconstruction.sourceInitialJline 320 - def
OAI.TraceReconstruction.sourceInitialPline 323 - def
OAI.TraceReconstruction.sourceInitialAnchorline 326Source documentation
One-based manuscript anchors translated once to zero-based list indices.
def sourceInitialAnchor (q N : ℝ) : ℤ := ((sourceInitialP q N/2:ℕ):ℤ)-1
Mentions: OAI.TraceReconstruction.sourceInitialP
- theorem
OAI.TraceReconstruction.sourceInitialM_rateline 328 - theorem
OAI.TraceReconstruction.sourceInitialK_rateline 333 - theorem
OAI.TraceReconstruction.sourceInitialPeriodSize_rateline 338 - theorem
OAI.TraceReconstruction.sourceInitialCapacity_rateline 344 - theorem
OAI.TraceReconstruction.sourceInitialSide_rateline 351 - theorem
OAI.TraceReconstruction.sourceInitialJ_rateline 357 - theorem
OAI.TraceReconstruction.initialOverlap_rateline 368 - theorem
OAI.TraceReconstruction.deletion_rate_zeroline 382 - theorem
OAI.TraceReconstruction.source_initial_score_capsline 403Source documentation
Mechanical realization of the base scalar score budgets from the actual integer choices and the unchanged known channel.
theorem source_initial_score_caps {q w : ℕ→ℝ} (hN : Tendsto N atTop atTop) (hq : ∀t,q t∈Set.Ioc 0 1) (hΛ : Tendsto (fun t=>(q t)^(-3:ℤ)/Real.log (N t)) atTop (𝓝 0)) (hw : PowerRate N w 0) : ∀ᶠt in atTop, 64*initialSignedCap (sourceInitialJ (q t) (N t)) (sourceInitialK (N t)) (sourceInitialM (N t)) 3000 300 (q t) (initialOverlapLower (q t)) (w t) ≤ (N t)^(-11/5:ℝ) ∧ 64*initialPureCap (sourceInitialJ (q t) (N t)) (sourceInitialK (N t)) (sourceInitialM (N t)) 3000 300 (q t) (initialOverlapLower (q t)) (w t) ≤ (N t)^(-7/5:ℝ) := by …Mentions: OAI.TraceReconstruction.PowerRate, OAI.TraceReconstruction.initialSignedCap, OAI.TraceReconstruction.sourceInitialJ, OAI.TraceReconstruction.sourceInitialK, OAI.TraceReconstruction.sourceInitialM, OAI.TraceReconstruction.initialOverlapLower, OAI.TraceReconstruction.initialPureCap
- def
OAI.TraceReconstruction.sourceInitialOffsetline 425Source documentation
The manuscript's one-based middle defect, translated to a list index.
def sourceInitialOffset (m : ℕ) (hm : 4 ≤ m) : Fin m := …
- theorem
OAI.TraceReconstruction.sourceInitialOffset_interiorline 428 - theorem
OAI.TraceReconstruction.sourceInitialOffset_middleline 432 - theorem
OAI.TraceReconstruction.sourceInitialOffset_safeline 443 - theorem
OAI.TraceReconstruction.initial_anchor_geometryline 449Source documentation
A literal arithmetic margin implies every base window placement condition.
theorem initial_anchor_geometry (J K t s : ℕ) (hK : 12*(J+2^s+1) ≤ K) : let a : ℤ := (((J*(2*t+1)+K)/2:ℕ):ℤ)-1 … - theorem
OAI.TraceReconstruction.prouhetSeries_coeff_zeroline 475 - theorem
OAI.TraceReconstruction.motifPeriodWord_neline 483Source documentation
Literal source initial words really are different, not only their formal templates.
theorem motifPeriodWord_ne {m : ℕ} (off : Fin m) (hi : 1 ≤ off.val ∧ off.val+1 < m) (u s : ℕ) (a : ℤ) (ha : 0 ≤ a) (hau : a<u) : motifPeriodWord off hi u s a (-1) ≠ motifPeriodWord off hi u s a 1 := by …Mentions: OAI.TraceReconstruction.motifPeriodWord
- theorem
OAI.TraceReconstruction.initial_period_count_boundsline 496Source documentation
Floors in the initial construction waste no more than one long slot.
theorem initial_period_count_bounds {N : ℝ} {m K t : ℕ} (hL : 0<2*m-1) (hN : 0 ≤ N) (hK : (K:ℝ) ≤ ⌊N/(2*m-1:ℕ)⌋₊) : let F : ℕ := ⌊N/(2*m-1:ℕ)⌋₊ … - def
OAI.TraceReconstruction.sourceHalfMomentline 538Source documentation
Source moment order is twice this integer.
def sourceHalfMoment (B D : ℕ) (n : ℝ) (i : ℕ) : ℕ := …
- theorem
OAI.TraceReconstruction.sourceEpsilon_le_oneline 542 - theorem
OAI.TraceReconstruction.sourceTargetScale_tendstoline 548 - theorem
OAI.TraceReconstruction.source_uniform_log_absorptionline 566 - theorem
OAI.TraceReconstruction.totalScoreExponent_boundsline 580 - theorem
OAI.TraceReconstruction.sourceHalfMoment_boundsline 601 - theorem
OAI.TraceReconstruction.PowerRate.eventually_ltline 640 - theorem
OAI.TraceReconstruction.PowerRate.log_baseline 647 - structure
OAI.TraceReconstruction.SourceInitialGeometryline 657Source documentation
Only arithmetic predicates on the literal source integers.
structure SourceInitialGeometry (q N : ℝ) : Prop where …
- theorem
OAI.TraceReconstruction.source_initial_geometryline 670Source documentation
All floor, seed, count, placement and length restrictions are automatic in the actual joint regime; no change of the deletion rate at the base scale.
theorem source_initial_geometry {q : ℕ→ℝ} (hN : Tendsto N atTop atTop) (hq : ∀t,q t∈Set.Ioc 0 1) (hΛ : Tendsto (fun t=>(q t)^(-3:ℤ)/Real.log (N t)) atTop (𝓝 0)) : ∀ᶠt in atTop,SourceInitialGeometry (q t) (N t) := by … - theorem
OAI.TraceReconstruction.sourceHalfMoment_rateline 729Source documentation
The exact varying even moment order is subpower at EVERY working scale.
theorem sourceHalfMoment_rate (B : ℕ) (ζ : ℝ) (hB : 2 ≤ B) (hζ : ζ∈Set.Ioo 0 1) {n Λ H : ℕ→ℝ} (i : ℕ→ℕ) (hn : Tendsto n atTop atTop) (hH : Tendsto H atTop atTop) (hΛ : ∀t,1 ≤ Λ t) (hrel : ∀t,Real.log (n t)=Λ t*H t) : PowerRate (fun t=>sourceTargetScale B (sourceDepth B ζ (H t)) (n t) (i t)) (fun t=>(sourceHalfMoment B (sourceDepth B ζ (H t)) (n t) (i t):ℝ)) 0 := by …Mentions: OAI.TraceReconstruction.PowerRate, OAI.TraceReconstruction.sourceTargetScale, OAI.TraceReconstruction.sourceDepth, OAI.TraceReconstruction.sourceHalfMoment
- def
OAI.TraceReconstruction.sourceInitialWeightline 773Source documentation
Actual primitive-score weight at the base scale.
def sourceInitialWeight (q : ℝ) (k : ℕ) : ℝ := (6*(2*k:ℕ):ℝ)*(2/q)
- theorem
OAI.TraceReconstruction.sourceInitialWeight_rateline 775 - def
OAI.TraceReconstruction.initialClipFactorline 796 - theorem
OAI.TraceReconstruction.initialClipFactor_rateline 800 - theorem
OAI.TraceReconstruction.initial_clip_exp_boundline 809Source documentation
The source moment is genuinely used in clipping: the exponent is linear in that moment, not a fixed negative power of the intermediate length.
theorem initial_clip_exp_bound (hN : Tendsto N atTop atTop) (hq : PowerRate N q 0) (hw : PowerRate N w 0) (hk : ∀ᶠt in atTop,1 ≤ k t) : ∀ᶠt in atTop, Real.sqrt (6*(initialClipFactor (N t) (q t) (w t))^(k t)) ≤ Real.exp (-(k t:ℝ)*Real.log (N t)/2000) := by …Mentions: OAI.TraceReconstruction.PowerRate, OAI.TraceReconstruction.initialClipFactor
- theorem
OAI.TraceReconstruction.initial_metadata_exp_boundline 838Source documentation
The fixed metadata tails also beat the varying moment times log-scale. Their exponents have orders .988 and .008 respectively, while k log N has order zero.
theorem initial_metadata_exp_bound (hN : Tendsto N atTop atTop) (hq : PowerRate N q 0) (hω : PowerRate N (fun t=>initialOverlapLower (q t)) 0) (hk : PowerRate N (fun t=>(k t:ℝ)) 0) : ∀ᶠt in atTop, 2*Real.exp (-((sourceInitialK (N t)*sourceInitialM (N t):ℕ):ℝ)*(q t)^4/64)+ Real.exp (-(sourceInitialJ (q t) (N t):ℝ)*(initialOverlapLower (q t))^4/16) ≤ 3*Real.exp (-(k t:ℝ)*Real.log (N t)) := by …Mentions: OAI.TraceReconstruction.PowerRate, OAI.TraceReconstruction.initialOverlapLower, OAI.TraceReconstruction.sourceInitialK, OAI.TraceReconstruction.sourceInitialM, OAI.TraceReconstruction.sourceInitialJ
- theorem
OAI.TraceReconstruction.initial_error_eventuallyline 859Source documentation
A completely quantitative sufficient moment inequality for the actual initial error. This is later discharged by the literal ceiling r_0/2.
theorem initial_error_eventually {n A : ℕ→ℝ} (hN : Tendsto N atTop atTop) (hn : Tendsto n atTop atTop) (hA : ∀ᶠt in atTop,1 ≤ A t) (hq : ∀t,q t∈Set.Ioc 0 1) (hΛ : Tendsto (fun t=>(q t)^(-3:ℤ)/Real.log (N t)) atTop (𝓝 0)) (hk : PowerRate N (fun t=>(k t:ℝ)) 0) (hk1 : ∀ᶠt in atTop,1 ≤ k t) (hmoment : ∀ᶠt in atTop, 10^6*A t*Real.log (n t) ≤ (k t:ℝ)*Real.log (N t)) : ∀ᶠt in atTop, initialErrorCap (sourceInitialJ (q t) (N t)) (sourceInitialK (N t)) (sourceInitialM (N t)) (k t) (q t) (initialOverlapLower (q t)) (sourceInitialWeight (q t) (k t)) ≤ (n t)^(-100*A t) := by …Mentions: OAI.TraceReconstruction.PowerRate, OAI.TraceReconstruction.initialErrorCap, OAI.TraceReconstruction.sourceInitialJ, OAI.TraceReconstruction.sourceInitialK, OAI.TraceReconstruction.sourceInitialM, OAI.TraceReconstruction.initialOverlapLower, OAI.TraceReconstruction.sourceInitialWeight
- theorem
OAI.TraceReconstruction.PowerRate.add_lowerline 910 - theorem
OAI.TraceReconstruction.PowerRate.nat_ceilline 921 - def
OAI.TraceReconstruction.sourceOverlapConstantline 926 - def
OAI.TraceReconstruction.sourceInitialCountline 927 - theorem
OAI.TraceReconstruction.sourceInitialP_rateline 930 - theorem
OAI.TraceReconstruction.sourceOverlapConstant_rateline 942 - theorem
OAI.TraceReconstruction.sourceInitialCount_rateline 948 - theorem
OAI.TraceReconstruction.sourceOverlapConstant_posline 957 - theorem
OAI.TraceReconstruction.sourceOverlapConstant_largeline 961 - def
OAI.TraceReconstruction.sourceInitialWordline 979 - def
OAI.TraceReconstruction.sourceInitialPureline 985 - def
OAI.TraceReconstruction.sourceInitialErrorline 988 - theorem
OAI.TraceReconstruction.sourceInitialWord_lengthline 992 - theorem
OAI.TraceReconstruction.sourceInitialWord_differentline 997 - theorem
OAI.TraceReconstruction.source_initial_oracles_eventuallyline 1018Source documentation
The actual initial proof, with no oracle or coefficient-bound hypothesis. The only moment restriction is the quantitative source ceiling inequality.
theorem source_initial_oracles_eventually {N q n A : ℕ→ℝ} {k : ℕ→ℕ} (hN : Tendsto N atTop atTop) (hn : Tendsto n atTop atTop) (hA : ∀ᶠt in atTop,1 ≤ A t) (hq : ∀t,q t∈Set.Ioc 0 (1/2:ℝ)) (hΛ : Tendsto (fun t=>(q t)^(-3:ℤ)/Real.log (N t)) atTop (𝓝 0)) (hk : PowerRate N (fun t=>(k t:ℝ)) 0) (hk1 : ∀ᶠt in atTop,1 ≤ k t) (hmoment : ∀ᶠt in atTop,10^6*A t*Real.log (n t) ≤ (k t:ℝ)*Real.log (N t)) : ∀ᶠt in atTop, SourceInitialGeometry (q t) (N t) ∧ sourceInitialError (q t) (N t) (k t) ≤ (n t)^(-100*A t) ∧ Nonempty (OracleTracePair (q t) (sourceInitialWord (q t) (N t) (-1)) (sourceInitialWord (q t) (N t) 1) (k t) (sourceInitialError (q t) (N t) (k t)) ((N t)^(-11/5:ℝ))) ∧ Nonempty (OracleTracePair (q t) (sourceInitialPure (q t) (N t)) …Mentions: OAI.TraceReconstruction.PowerRate, OAI.TraceReconstruction.SourceInitialGeometry, OAI.TraceReconstruction.sourceInitialError, OAI.TraceReconstruction.OracleTracePair, OAI.TraceReconstruction.sourceInitialWord, OAI.TraceReconstruction.sourceInitialPure
- theorem
OAI.TraceReconstruction.sourceInitialCount_boundsline 1076Source documentation
Literal count instantiation; the harmless ceiling is included.
theorem sourceInitialCount_bounds {q N : ℝ} (hq : q ∈ Set.Ioc 0 (1/2:ℝ)) (H : SourceInitialGeometry q N) : sourceInitialP q N*sourceInitialPeriodSize N ≤ sourceInitialCount q N ∧ (sourceInitialCount q N:ℝ) ≤ (sourceOverlapConstant q)^2* ((sourceInitialP q N*sourceInitialPeriodSize N:ℕ):ℝ) := by …Mentions: OAI.TraceReconstruction.SourceInitialGeometry, OAI.TraceReconstruction.sourceInitialP, OAI.TraceReconstruction.sourceInitialPeriodSize, OAI.TraceReconstruction.sourceInitialCount, OAI.TraceReconstruction.sourceOverlapConstant
- theorem
OAI.TraceReconstruction.OracleTracePair.transfer_power_overlapline 1134Source documentation
Genuine overlap stability for complete traces of powers.
theorem OracleTracePair.transfer_power_overlap {q E V p : ℝ} {x y : List Bool} {k F : ℕ} (C : OracleTracePair q x y k E V) (hq : q ∈ Set.Icc 0 1) (hk : 1 ≤ k) (hov : p ≤ listTraceOverlap q hq (pureAtomRun y F) (pureAtomRun y (F+1))) : p-(Real.sqrt ((F:ℝ)*V)+2*(F:ℝ)*E)- (Real.sqrt (((F+1:ℕ):ℝ)*V)+2*((F+1:ℕ):ℝ)*E) ≤ listTraceOverlap q hq (pureAtomRun x F) (pureAtomRun x (F+1)) := by …Mentions: OAI.TraceReconstruction.OracleTracePair, OAI.TraceReconstruction.listTraceOverlap, OAI.TraceReconstruction.pureAtomRun
- theorem
OAI.TraceReconstruction.powerTransferBudget_monoline 1168 - theorem
OAI.TraceReconstruction.source_initial_power_overlapline 1176 - theorem
OAI.TraceReconstruction.source_initial_overlap_budget_eventuallyline 1219Source documentation
The exact initial overlap error is negligible, including channel-dependent count factors. This is a consequence, not a hypothesis of the initial pair.
theorem source_initial_overlap_budget_eventually {q N E : ℕ→ℝ} (hN : Tendsto N atTop atTop) (hq : PowerRate N q 0) (hω : PowerRate N (fun t=>initialOverlapLower (q t)) 0) (hE : ∀ᶠt in atTop,0 ≤ E t ∧ E t ≤ (N t)^(-100:ℝ)) : ∀ᶠt in atTop,Real.sqrt (((sourceInitialCount (q t) (N t)+1:ℕ):ℝ)*((N t)^(-7/5:ℝ)))+ 2*((sourceInitialCount (q t) (N t)+1:ℕ):ℝ)*E t ≤ 1/16 := by …Mentions: OAI.TraceReconstruction.PowerRate, OAI.TraceReconstruction.initialOverlapLower, OAI.TraceReconstruction.sourceInitialCount
- theorem
OAI.TraceReconstruction.source_initial_level_eventuallyline 1248 - theorem
OAI.TraceReconstruction.sourceScaleProduct_le_oneline 1292Source documentation
All backwards targets are no larger than n, with the source epsilon.
theorem sourceScaleProduct_le_one (B D i : ℕ) (hB : 2 ≤ B) : sourceScaleProduct B D i ≤ 1 := by …
- theorem
OAI.TraceReconstruction.sourceTargetScale_leline 1315 - theorem
OAI.TraceReconstruction.sourceHalfMoment_sufficientline 1319 - theorem
OAI.TraceReconstruction.source_initial_at_smallest_scaleline 1347Source documentation
The source base invariant, with literal target scales, moment ceiling, error threshold, count and overlap, uniformly in the joint deletion regime.
theorem source_initial_at_smallest_scale (B : ℕ) (ζ : ℝ) (hB : 2 ≤ B) (hζ : ζ∈Set.Ioo 0 1) {n q : ℕ→ℝ} (hn : Tendsto n atTop atTop) (hq : ∀t,q t∈Set.Ioc 0 (1/2:ℝ)) (hH : Tendsto (fun t=>(q t)^3*Real.log (n t)) atTop atTop) : ∀ᶠt in atTop,Nonempty (ConcreteLevelPair (q t) ⟨(hq t).1.le,by linarith [(hq t).2]⟩ (sourceTargetScale B (sourceDepth B ζ ((q t)^3*Real.log (n t))) (n t) 0) ((n t)^(-100*(totalScoreExponent B (sourceDepth B ζ ((q t)^3*Real.log (n t)))+B+1))) (11/5) (initialOverlapLower (q t)) ((sourceOverlapConstant (q t))^2) 0 (sourceHalfMoment B (sourceDepth B ζ ((q t)^3*Real.log (n t))) (n t) 0)) := by …Mentions: OAI.TraceReconstruction.ConcreteLevelPair, OAI.TraceReconstruction.sourceTargetScale, OAI.TraceReconstruction.sourceDepth, OAI.TraceReconstruction.totalScoreExponent, OAI.TraceReconstruction.initialOverlapLower, OAI.TraceReconstruction.sourceOverlapConstant, OAI.TraceReconstruction.sourceHalfMoment