OAI/Probability/DilutedSpin/ShapeMarginal.lean
4 declarations, 0 contain sorry, 0 declared as axioms
- def
OAI.DilutedSpinGlass.PrescribedTree.SplitMap.pullSampleline 14Source documentation
Delete all unselected branches of an actual history. Unary vertices and all ancestor coordinates are retained.
def pullSample : {n : ℕ} → {T S : PrescribedTree n} → SplitMap T S → Sample Ω S → Sample Ω T | 0, .leaf, .leaf, _, _ => () | _+1, .node _ _, .node _ _, f, x => fun i => ((x (f.childIndex i)).1,pullSample (f.child i) (x (f.childIndex i)).2)Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.SplitMap, OAI.DilutedSpinGlass.PrescribedTree.Sample
- lemma
OAI.DilutedSpinGlass.PrescribedTree.SplitMap.pathAt_pullSampleline 20 - theorem
OAI.DilutedSpinGlass.PrescribedTree.SplitMap.expect_pullSampleline 38Source documentation
Every exact prescribed splitting matrix has the same sampling law in EVERY actual extension, jointly over its entire selected leaf family.
theorem expect_pullSample {n : ℕ} {T S : PrescribedTree n} (f : SplitMap T S) (K : KernelTower Ω n) (F : Sample Ω T → ℝ) : (S.sampleLaw K).expect (fun x => F (f.pullSample x)) = (T.sampleLaw K).expect F := by …Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.SplitMap, OAI.DilutedSpinGlass.KernelTower, OAI.DilutedSpinGlass.PrescribedTree.Sample
- theorem
OAI.DilutedSpinGlass.PrescribedTree.SplitMap.expect_pathsline 70Source documentation
Same joint marginal expressed directly in leaf paths, so terminal overlap and projection-error observables can use it without any sample relabeling.
theorem expect_paths {n : ℕ} {T S : PrescribedTree n} (f : SplitMap T S) (K : KernelTower Ω n) (F : (T.Leaf → FinitePath Ω n) → ℝ) : (S.sampleLaw K).expect (fun x => F (fun a => S.pathAt (f.leaf a) x)) = (T.sampleLaw K).expect (fun x => F (fun a => T.pathAt a x)) := by …Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.SplitMap, OAI.DilutedSpinGlass.KernelTower, OAI.DilutedSpinGlass.FinitePath