OAI/Probability/DilutedSpin/HistoryGeometry.lean
66 declarations, 0 contain sorry, 0 declared as axioms
- def
OAI.DilutedSpinGlass.PrescribedTree.singleLeafline 12Source documentation
The unique labeled position in a unary tree.
def singleLeaf : (n : ℕ) → Leaf (single n) | 0 => () | n+1 => ⟨0, singleLeaf n⟩ /-- The old paths keep their separate labels when a genuine fresh branch is added. -/
Mentions: OAI.DilutedSpinGlass.PrescribedTree.Leaf, OAI.DilutedSpinGlass.PrescribedTree.single
- def
OAI.DilutedSpinGlass.PrescribedTree.oldLeafline 17Source documentation
The old paths keep their separate labels when a genuine fresh branch is added.
def oldLeaf : {n : ℕ} → (S : PrescribedTree n) → (v : Internal S) → Leaf S → Leaf (grow S v) | 0, .leaf, v, _ => nomatch v | n+1, .node k C, v, a => by change Option ((i : Fin k) × Internal (C i)) at v cases v with | none => exact ⟨a.1.succ, a.2⟩ | some v => obtain ⟨i,v⟩ := v …Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Internal, OAI.DilutedSpinGlass.PrescribedTree.Leaf, OAI.DilutedSpinGlass.PrescribedTree.grow
- def
OAI.DilutedSpinGlass.PrescribedTree.newLeafline 33Source documentation
The single distinguished newly added replica position.
def newLeaf : {n : ℕ} → (S : PrescribedTree n) → (v : Internal S) → Leaf (grow S v) | 0, .leaf, v => nomatch v | n+1, .node k C, v => by change Option ((i : Fin k) × Internal (C i)) at v cases v with | none => exact ⟨0, singleLeaf n⟩ | some v => obtain ⟨i,v⟩ := v …Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Internal, OAI.DilutedSpinGlass.PrescribedTree.Leaf, OAI.DilutedSpinGlass.PrescribedTree.grow, OAI.DilutedSpinGlass.PrescribedTree.singleLeaf
- def
OAI.DilutedSpinGlass.PrescribedTree.splitDepthline 46Source documentation
Split depth compares positions, never the sampled spin values. Equal positions have split depth n; distinct positions split strictly before n.
def splitDepth : {n : ℕ} → (S : PrescribedTree n) → Leaf S → Leaf S → ℕ | 0, .leaf, _, _ => 0 | _+1, .node _ C, a, b => if h : a.1 = b.1 then 1 + splitDepth (C a.1) a.2 (h.symm ▸ b.2) else 0Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Leaf
- theorem
OAI.DilutedSpinGlass.PrescribedTree.splitDepth_selfline 51 - theorem
OAI.DilutedSpinGlass.PrescribedTree.splitDepth_leline 57 - theorem
OAI.DilutedSpinGlass.PrescribedTree.splitDepth_eq_heightline 70 - theorem
OAI.DilutedSpinGlass.PrescribedTree.pathAt_singleLeafline 95 - theorem
OAI.DilutedSpinGlass.PrescribedTree.pathAt_nodeline 104 - theorem
OAI.DilutedSpinGlass.PrescribedTree.pathAt_castline 108 - theorem
OAI.DilutedSpinGlass.PrescribedTree.pathAt_oldLeafline 116 - theorem
OAI.DilutedSpinGlass.PrescribedTree.pathAt_newLeafline 148 - inductive
OAI.DilutedSpinGlass.PrescribedTree.Divergenceline 178Source documentation
The deepest reference prefix and its forbidden reference-containing children. This describes the whole compatible choice set, including both old unused leaves and fresh divergences in reference-free subtrees.
inductive Divergence : {n : ℕ} → PrescribedTree n → Type | here {n : ℕ} {k : ℕ+} {C : Fin k → PrescribedTree n} (excluded : Finset (Fin k)) : Divergence (.node k C) | descend {n : ℕ} {k : ℕ+} {C : Fin k → PrescribedTree n} (i : Fin k) (next : Divergence (C i)) : Divergence (.node k C) namespace DivergenceMentions: OAI.DilutedSpinGlass.PrescribedTree
- def
OAI.DilutedSpinGlass.PrescribedTree.Divergence.oldAllowedline 186 - def
OAI.DilutedSpinGlass.PrescribedTree.Divergence.freshAllowedline 190 - def
OAI.DilutedSpinGlass.PrescribedTree.Divergence.coefficientline 200 - theorem
OAI.DilutedSpinGlass.PrescribedTree.all_choices_totalline 209Source documentation
Full cancellation inside a reference-free subtree, indexed by actual leaf positions and actual internal vertices.
theorem all_choices_total {n : ℕ} (S : PrescribedTree n) (m : Fin (n+1) → ℝ) (hend : m (Fin.last n) = 1) : (∑ _a : Leaf S, (1 : ℝ)) + (∑ v : Internal S, gamma S m v) = m 0 := by …Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Leaf, OAI.DilutedSpinGlass.PrescribedTree.Internal, OAI.DilutedSpinGlass.PrescribedTree.gamma
- theorem
OAI.DilutedSpinGlass.PrescribedTree.divergence_choice_totalline 226Source documentation
The signed normalizing sum of ALL eligible old-or-fresh choices with a specified deepest reference prefix is independent of all unused old branches. Unlike reference_total, this is stated on the actual global choice indices.
theorem divergence_choice_total {n : ℕ} {S : PrescribedTree n} (D : Divergence S) (m : Fin (n+1) → ℝ) (hend : m (Fin.last n) = 1) : (∑ a : Leaf S, if D.oldAllowed a then (1 : ℝ) else 0) + (∑ v : Internal S, if D.freshAllowed v then gamma S m v else 0) = D.coefficient m := by …Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Divergence, OAI.DilutedSpinGlass.PrescribedTree.Leaf, OAI.DilutedSpinGlass.PrescribedTree.Internal, OAI.DilutedSpinGlass.PrescribedTree.gamma
- def
OAI.DilutedSpinGlass.PrescribedTree.freshSplitDepthline 304Source documentation
Positional split depth of a genuinely fresh branch from an old reference.
def freshSplitDepth : {n : ℕ} → (S : PrescribedTree n) → Internal S → Leaf S → ℕ | 0, .leaf, v, _ => nomatch v | _+1, .node k C, v, a => match (v : Option ((i : Fin k) × Internal (C i))) with | none => 0 | some ⟨i,v⟩ => if h : a.1 = i then 1 + freshSplitDepth (C i) v (h ▸ a.2) else 0Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Internal, OAI.DilutedSpinGlass.PrescribedTree.Leaf
- theorem
OAI.DilutedSpinGlass.PrescribedTree.splitDepth_castline 311 - theorem
OAI.DilutedSpinGlass.PrescribedTree.splitDepth_new_oldline 318Source documentation
Fresh splitting refers to the enlarged tree's actual labeled positions.
theorem splitDepth_new_old {n : ℕ} (S : PrescribedTree n) (v : Internal S) (a : Leaf S) : splitDepth (grow S v) (newLeaf S v) (oldLeaf S v a) = freshSplitDepth S v a := by …Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Internal, OAI.DilutedSpinGlass.PrescribedTree.Leaf, OAI.DilutedSpinGlass.PrescribedTree.splitDepth, OAI.DilutedSpinGlass.PrescribedTree.grow, OAI.DilutedSpinGlass.PrescribedTree.newLeaf, OAI.DilutedSpinGlass.PrescribedTree.oldLeaf, OAI.DilutedSpinGlass.PrescribedTree.freshSplitDepth
- def
OAI.DilutedSpinGlass.PrescribedTree.childRefsline 352 - theorem
OAI.DilutedSpinGlass.PrescribedTree.mem_childRefsline 356 - def
OAI.DilutedSpinGlass.PrescribedTree.referenceDivergenceline 363Source documentation
A proposed fresh split at depth d along a reference path. Every child containing any reference through the chosen prefix is forbidden.
noncomputable def referenceDivergence : {n : ℕ} → (S : PrescribedTree n) → (a : Leaf S) → (d : ℕ) → d < n → Finset (Leaf S) → Divergence S | 0, .leaf, _, d, hd, _ => (Nat.not_lt_zero d hd).elim | _+1, .node _ _, _, 0, _, R => .here (R.image (fun a => a.1)) | n+1, .node _ C, a, d+1, hd, R => .descend a.1 (referenceDivergence (C a.1) a.2 d (by omega) (childRefs R a.1)) /-- Shared-prefix equations determine the same allowed old-or-fresh set as references; this positional definition does not examine any spin values. -/Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Leaf, OAI.DilutedSpinGlass.PrescribedTree.Divergence, OAI.DilutedSpinGlass.PrescribedTree.childRefs, OAI.DilutedSpinGlass.spin
- def
OAI.DilutedSpinGlass.PrescribedTree.matchesOldProfileline 372Source documentation
Shared-prefix equations determine the same allowed old-or-fresh set as references; this positional definition does not examine any spin values.
def matchesOldProfile {n : ℕ} (S : PrescribedTree n) (R : Finset (Leaf S)) (a : Leaf S) (d : ℕ) (b : Leaf S) : Prop := …Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Leaf
- def
OAI.DilutedSpinGlass.PrescribedTree.matchesFreshProfileline 376 - theorem
OAI.DilutedSpinGlass.PrescribedTree.matchesOldProfile_not_memline 381Source documentation
A reference itself is never an eligible old leaf.
theorem matchesOldProfile_not_mem {n : ℕ} (S : PrescribedTree n) (R : Finset (Leaf S)) (a b : Leaf S) {d : ℕ} (hd : d < n) (h : matchesOldProfile S R a d b) : b ∉ R := by …Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Leaf, OAI.DilutedSpinGlass.PrescribedTree.matchesOldProfile
- theorem
OAI.DilutedSpinGlass.PrescribedTree.splitDepth_same_childline 394 - theorem
OAI.DilutedSpinGlass.PrescribedTree.splitDepth_diff_childline 400 - theorem
OAI.DilutedSpinGlass.PrescribedTree.splitDepth_node_zeroline 406 - theorem
OAI.DilutedSpinGlass.PrescribedTree.referenceDivergence_oldAllowedline 420Source documentation
Ancestry constraints with ALL existing references, not merely a local subtree, are exactly the global eligible-old-leaf selector.
theorem referenceDivergence_oldAllowed {n : ℕ} (S : PrescribedTree n) (a : Leaf S) (d : ℕ) (hd : d < n) (R : Finset (Leaf S)) (ha : a ∈ R) (b : Leaf S) : (referenceDivergence S a d hd R).oldAllowed b ↔ matchesOldProfile S R a d b := by …Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Leaf, OAI.DilutedSpinGlass.PrescribedTree.referenceDivergence, OAI.DilutedSpinGlass.PrescribedTree.matchesOldProfile
- theorem
OAI.DilutedSpinGlass.PrescribedTree.freshSplitDepth_same_childline 483 - theorem
OAI.DilutedSpinGlass.PrescribedTree.freshSplitDepth_diff_childline 489 - theorem
OAI.DilutedSpinGlass.PrescribedTree.freshSplitDepth_node_zeroline 495 - theorem
OAI.DilutedSpinGlass.PrescribedTree.referenceDivergence_freshAllowedline 509Source documentation
Fresh divergences satisfy exactly the same all-reference positional profile as the old-choice selector; the profile is also the actual new leaf's profile in the enlarged tree, by splitDepth_new_old.
theorem referenceDivergence_freshAllowed {n : ℕ} (S : PrescribedTree n) (a : Leaf S) (d : ℕ) (hd : d < n) (R : Finset (Leaf S)) (ha : a ∈ R) (v : Internal S) : (referenceDivergence S a d hd R).freshAllowed v ↔ matchesFreshProfile S R a d v := by …Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Leaf, OAI.DilutedSpinGlass.PrescribedTree.Internal, OAI.DilutedSpinGlass.PrescribedTree.referenceDivergence, OAI.DilutedSpinGlass.PrescribedTree.matchesFreshProfile
- theorem
OAI.DilutedSpinGlass.PrescribedTree.reference_profile_totalline 588Source documentation
The reference-path normalizing identity over globally admissible old or fresh labels. No conditioning on sampled spin values occurs in the selector.
theorem reference_profile_total {n : ℕ} (S : PrescribedTree n) (a : Leaf S) (d : ℕ) (hd : d < n) (R : Finset (Leaf S)) (ha : a ∈ R) (m : Fin (n+1) → ℝ) (hend : m (Fin.last n) = 1) : (∑ b : Leaf S, if matchesOldProfile S R a d b then (1 : ℝ) else 0) + (∑ v : Internal S, if matchesFreshProfile S R a d v then gamma S m v else 0) = (referenceDivergence S a d hd R).coefficient m := by …Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Leaf, OAI.DilutedSpinGlass.PrescribedTree.matchesOldProfile, OAI.DilutedSpinGlass.PrescribedTree.Internal, OAI.DilutedSpinGlass.PrescribedTree.matchesFreshProfile, OAI.DilutedSpinGlass.PrescribedTree.gamma, OAI.DilutedSpinGlass.PrescribedTree.referenceDivergence
- theorem
OAI.DilutedSpinGlass.PrescribedTree.freshSplitDepth_ltline 604Source documentation
Freshness is positional and survives deterministic or atomic spin laws.
theorem freshSplitDepth_lt {n : ℕ} (S : PrescribedTree n) (v : Internal S) (a : Leaf S) : freshSplitDepth S v a < n := by …Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Internal, OAI.DilutedSpinGlass.PrescribedTree.Leaf, OAI.DilutedSpinGlass.PrescribedTree.freshSplitDepth
- theorem
OAI.DilutedSpinGlass.PrescribedTree.splitDepth_old_oldline 624Source documentation
Old leaves retain their pairwise positional ancestry under actual grow.
theorem splitDepth_old_old {n : ℕ} (S : PrescribedTree n) (v : Internal S) (a b : Leaf S) : splitDepth (grow S v) (oldLeaf S v a) (oldLeaf S v b) = splitDepth S a b := by …Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Internal, OAI.DilutedSpinGlass.PrescribedTree.Leaf, OAI.DilutedSpinGlass.PrescribedTree.splitDepth, OAI.DilutedSpinGlass.PrescribedTree.grow, OAI.DilutedSpinGlass.PrescribedTree.oldLeaf
- theorem
OAI.DilutedSpinGlass.PrescribedTree.oldLeaf_injectiveline 676 - theorem
OAI.DilutedSpinGlass.PrescribedTree.newLeaf_ne_oldLeafline 682 - theorem
OAI.DilutedSpinGlass.PrescribedTree.card_image_of_same_kernelline 698Source documentation
A finite number of represented equivalence classes depends only on the kernel relation, not on their ambient set of representatives.
theorem card_image_of_same_kernel {ι α β : Type*} [DecidableEq ι] [DecidableEq α] [DecidableEq β] (R : Finset ι) (f : ι → α) (g : ι → β) (h : ∀ i ∈ R, ∀ j ∈ R, f i = f j ↔ g i = g j) : (R.image f).card = (R.image g).card := by … - abbrev
OAI.DilutedSpinGlass.PrescribedTree.ChildLabelsline 725Source documentation
Reference labels in a particular child, preserving their identities.
abbrev ChildLabels {n : ℕ} {k : ℕ+} {C : Fin k → PrescribedTree n} {ι : Type} (r : ι → Leaf (.node k C)) (i : Fin k) := {l : ι // (r l).1 = i}Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Leaf
- def
OAI.DilutedSpinGlass.PrescribedTree.childLabelLeafline 728 - theorem
OAI.DilutedSpinGlass.PrescribedTree.sigma_cast_sndline 732 - theorem
OAI.DilutedSpinGlass.PrescribedTree.childLabelLeaf_embedline 740Source documentation
Returning a restricted reference label to its original tree.
theorem childLabelLeaf_embed {n : ℕ} {k : ℕ+} {C : Fin k → PrescribedTree n} {ι : Type} (r : ι → Leaf (.node k C)) (i : Fin k) (l : ChildLabels r i) : (⟨i,childLabelLeaf r i l⟩ : Leaf (.node k C)) = r l.val := by …Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Leaf, OAI.DilutedSpinGlass.PrescribedTree.ChildLabels, OAI.DilutedSpinGlass.PrescribedTree.childLabelLeaf
- theorem
OAI.DilutedSpinGlass.PrescribedTree.childRefs_imageline 746Source documentation
The child reference set really is the image of the child-restricted labels.
theorem childRefs_image {n : ℕ} {k : ℕ+} {C : Fin k → PrescribedTree n} {ι : Type} [Fintype ι] (r : ι → Leaf (.node k C)) (i : Fin k) : childRefs (Finset.univ.image r) i = Finset.univ.image (childLabelLeaf r i) := by …Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Leaf, OAI.DilutedSpinGlass.PrescribedTree.childRefs, OAI.DilutedSpinGlass.PrescribedTree.childLabelLeaf
- theorem
OAI.DilutedSpinGlass.PrescribedTree.reference_coefficient_invariantline 769Source documentation
One-step signed reference normalization is determined by the entire labeled splitting matrix, not by the unused old leaves of its realization.
theorem reference_coefficient_invariant {n : ℕ} (S T : PrescribedTree n) {ι : Type} [Fintype ι] (r : ι → Leaf S) (s : ι → Leaf T) (a : ι) (hsplit : ∀ i j, splitDepth S (r i) (r j) = splitDepth T (s i) (s j)) (d : ℕ) (hd : d < n) (m : Fin (n+1) → ℝ) : (referenceDivergence S (r a) d hd (Finset.univ.image r)).coefficient m = (referenceDivergence T (s a) d hd (Finset.univ.image s)).coefficient m := by …Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Leaf, OAI.DilutedSpinGlass.PrescribedTree.splitDepth, OAI.DilutedSpinGlass.PrescribedTree.referenceDivergence
- theorem
OAI.DilutedSpinGlass.PrescribedTree.splitDepth_symmline 842 - theorem
OAI.DilutedSpinGlass.PrescribedTree.splitDepth_ultrametricline 855Source documentation
Positional ancestry is an ultrametric similarity, independently of spins.
theorem splitDepth_ultrametric {n : ℕ} (S : PrescribedTree n) (a b c : Leaf S) : min (splitDepth S a b) (splitDepth S b c) ≤ splitDepth S a c := by …Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Leaf, OAI.DilutedSpinGlass.PrescribedTree.splitDepth
- theorem
OAI.DilutedSpinGlass.PrescribedTree.deepest_reference_profileline 876 - theorem
OAI.DilutedSpinGlass.PrescribedTree.splitDepth_lt_of_neline 884 - theorem
OAI.DilutedSpinGlass.PrescribedTree.exists_deepest_referenceline 891Source documentation
A deepest reference exists among any finite nonempty set of labels.
theorem exists_deepest_reference {n : ℕ} (S : PrescribedTree n) {ι : Type} [Fintype ι] [Nonempty ι] (r : ι → Leaf S) (b : Leaf S) : ∃ a, ∀ i, splitDepth S b (r i) ≤ splitDepth S b (r a) := by …Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Leaf, OAI.DilutedSpinGlass.PrescribedTree.splitDepth
- def
OAI.DilutedSpinGlass.PrescribedTree.labeledOldMatchline 905Source documentation
Full ancestry selector for using an old unused path as the next color.
def labeledOldMatch {n : ℕ} (S T : PrescribedTree n) {ι : Type} (r : ι → Leaf S) (s : ι → Leaf T) (b : Leaf T) (x : Leaf S) : Prop := …Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Leaf
- def
OAI.DilutedSpinGlass.PrescribedTree.labeledFreshMatchline 910Source documentation
Full ancestry selector for a genuinely fresh path as the next color.
def labeledFreshMatch {n : ℕ} (S T : PrescribedTree n) {ι : Type} (r : ι → Leaf S) (s : ι → Leaf T) (b : Leaf T) (v : Internal S) : Prop := …Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Leaf, OAI.DilutedSpinGlass.PrescribedTree.Internal
- theorem
OAI.DilutedSpinGlass.PrescribedTree.labeledOldMatch_profileline 914 - theorem
OAI.DilutedSpinGlass.PrescribedTree.labeledFreshMatch_profileline 929 - theorem
OAI.DilutedSpinGlass.PrescribedTree.labeled_choice_totalline 946Source documentation
Every eligible old or fresh choice is counted once. Its signed total depends only on the prescribed reference splitting matrix.
theorem labeled_choice_total {n : ℕ} (S T : PrescribedTree n) {ι : Type} [Fintype ι] (r : ι → Leaf S) (s : ι → Leaf T) (b : Leaf T) (a : ι) (hsplit : ∀ i j, splitDepth S (r i) (r j) = splitDepth T (s i) (s j)) (hne : b ≠ s a) (hmax : ∀ i, splitDepth T b (s i) ≤ splitDepth T b (s a)) (m : Fin (n+1) → ℝ) (hend : m (Fin.last n) = 1) : (∑ x : Leaf S, if labeledOldMatch S T r s b x then (1:ℝ) else 0) + (∑ v : Internal S, if labeledFreshMatch S T r s b v then gamma S m v else 0) = (referenceDivergence T (s a) (splitDepth T b (s a)) (splitDepth_lt_of_ne T b (s a) hne) (Finset.univ.image s)).coefficient m := by …Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Leaf, OAI.DilutedSpinGlass.PrescribedTree.splitDepth, OAI.DilutedSpinGlass.PrescribedTree.labeledOldMatch, OAI.DilutedSpinGlass.PrescribedTree.Internal, OAI.DilutedSpinGlass.PrescribedTree.labeledFreshMatch, OAI.DilutedSpinGlass.PrescribedTree.gamma, OAI.DilutedSpinGlass.PrescribedTree.referenceDivergence, OAI.DilutedSpinGlass.PrescribedTree.splitDepth_lt_of_ne
- theorem
OAI.DilutedSpinGlass.PrescribedTree.labeledOldMatch_unusedline 963Source documentation
Eligible old leaves are unused, since the target color is new.
theorem labeledOldMatch_unused {n : ℕ} (S T : PrescribedTree n) {ι : Type} (r : ι → Leaf S) (s : ι → Leaf T) (b : Leaf T) (x : Leaf S) (hne : ∀ i, b ≠ s i) (h : labeledOldMatch S T r s b x) : ∀ i, x ≠ r i := by …Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Leaf, OAI.DilutedSpinGlass.PrescribedTree.labeledOldMatch
- theorem
OAI.DilutedSpinGlass.PrescribedTree.labeledOldMatch_consline 972Source documentation
On adding an eligible old color, ALL reference ancestries are retained.
theorem labeledOldMatch_cons {n p : ℕ} (S T : PrescribedTree n) (r : Fin p → Leaf S) (s : Fin p → Leaf T) (b : Leaf T) (x : Leaf S) (hsplit : ∀ i j, splitDepth S (r i) (r j) = splitDepth T (s i) (s j)) (h : labeledOldMatch S T r s b x) : ∀ i j : Fin (p+1), splitDepth S ((Fin.cons x r : Fin (p+1) → Leaf S) i) ((Fin.cons x r : Fin (p+1) → Leaf S) j) = splitDepth T ((Fin.cons b s : Fin (p+1) → Leaf T) i) ((Fin.cons b s : Fin (p+1) → Leaf T) j) := by …Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Leaf, OAI.DilutedSpinGlass.PrescribedTree.splitDepth, OAI.DilutedSpinGlass.PrescribedTree.labeledOldMatch
- theorem
OAI.DilutedSpinGlass.PrescribedTree.labeledFreshMatch_consline 987Source documentation
On adding an eligible fresh color, ALL reference ancestries are retained.
theorem labeledFreshMatch_cons {n p : ℕ} (S T : PrescribedTree n) (r : Fin p → Leaf S) (s : Fin p → Leaf T) (b : Leaf T) (v : Internal S) (hsplit : ∀ i j, splitDepth S (r i) (r j) = splitDepth T (s i) (s j)) (h : labeledFreshMatch S T r s b v) : ∀ i j : Fin (p+1), splitDepth (grow S v) ((Fin.cons (newLeaf S v) (oldLeaf S v ∘ r) : Fin (p+1) → Leaf (grow S v)) i) ((Fin.cons (newLeaf S v) (oldLeaf S v ∘ r) : Fin (p+1) → Leaf (grow S v)) j) = splitDepth T ((Fin.cons b s : Fin (p+1) → Leaf T) i) ((Fin.cons b s : Fin (p+1) → Leaf T) j) := by …Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Leaf, OAI.DilutedSpinGlass.PrescribedTree.Internal, OAI.DilutedSpinGlass.PrescribedTree.splitDepth, OAI.DilutedSpinGlass.PrescribedTree.labeledFreshMatch, OAI.DilutedSpinGlass.PrescribedTree.grow, OAI.DilutedSpinGlass.PrescribedTree.newLeaf, OAI.DilutedSpinGlass.PrescribedTree.oldLeaf
- theorem
OAI.DilutedSpinGlass.PrescribedTree.reference_coefficient_negline 1013Source documentation
The one-step coefficient cannot vanish for a genuine reference divergence and strictly increasing cavity exponents.
theorem reference_coefficient_neg {n : ℕ} (S : PrescribedTree n) (a : Leaf S) (d : ℕ) (hd : d < n) (R : Finset (Leaf S)) (ha : a ∈ R) (m : Fin (n+1) → ℝ) (hm : StrictMono m) (hnonneg : ∀ j, 0 ≤ m j) : (referenceDivergence S a d hd R).coefficient m < 0 := by …Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Leaf, OAI.DilutedSpinGlass.PrescribedTree.referenceDivergence
- inductive
OAI.DilutedSpinGlass.PrescribedTree.ReferencePlanline 1043Source documentation
A finite color prescription. The deepest-reference witness is only positional data; exists_deepest_reference supplies it for every new leaf.
inductive ReferencePlan {n : ℕ} (T : PrescribedTree n) : {p : ℕ} → (Fin (p+1) → Leaf T) → Type | nil {p : ℕ} {s : Fin (p+1) → Leaf T} : ReferencePlan T s | cons {p : ℕ} {s : Fin (p+1) → Leaf T} (b : Leaf T) (a : Fin (p+1)) (fresh : ∀ i, b ≠ s i) (deepest : ∀ i, splitDepth T b (s i) ≤ splitDepth T b (s a)) (next : ReferencePlan T (Fin.cons b s)) : ReferencePlan T s /-- The deterministic product of one-step reference factors. -/Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Leaf, OAI.DilutedSpinGlass.PrescribedTree.splitDepth
- def
OAI.DilutedSpinGlass.PrescribedTree.referencePlanNormalizerline 1052Source documentation
The deterministic product of one-step reference factors.
noncomputable def referencePlanNormalizer {n : ℕ} (T : PrescribedTree n) (m : Fin (n+1) → ℝ) : {p : ℕ} → {s : Fin (p+1) → Leaf T} → ReferencePlan T s → ℝ | _, _, .nil => 1 | _, s, .cons b a hne _ next => (referenceDivergence T (s a) (splitDepth T b (s a)) (splitDepth_lt_of_ne T b (s a) (hne a)) (Finset.univ.image s)).coefficient m * referencePlanNormalizer T m next /-- The signed sum over the actual sequential old-or-fresh choices. Every fresh choice changes the entire current tree with grow, and transports all previous references. No constant normalization is built into this recursion. -/Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Leaf, OAI.DilutedSpinGlass.PrescribedTree.ReferencePlan, OAI.DilutedSpinGlass.PrescribedTree.referenceDivergence, OAI.DilutedSpinGlass.PrescribedTree.splitDepth, OAI.DilutedSpinGlass.PrescribedTree.splitDepth_lt_of_ne, OAI.DilutedSpinGlass.PrescribedTree.grow
- def
OAI.DilutedSpinGlass.PrescribedTree.referenceHistoryTotalline 1063Source documentation
The signed sum over the actual sequential old-or-fresh choices. Every fresh choice changes the entire current tree with grow, and transports all previous references. No constant normalization is built into this recursion.
noncomputable def referenceHistoryTotal {n : ℕ} (T : PrescribedTree n) (m : Fin (n+1) → ℝ) : {p : ℕ} → {s : Fin (p+1) → Leaf T} → ReferencePlan T s → (S : PrescribedTree n) → (Fin (p+1) → Leaf S) → ℝ | _, _, .nil, _, _ => 1 | _, s, .cons b _ _ _ next, S, r => (∑ x : Leaf S, if labeledOldMatch S T r s b x then referenceHistoryTotal T m next S (Fin.cons x r) else 0) + (∑ v : Internal S, if labeledFreshMatch S T r s b v then gamma S m v * referenceHistoryTotal T m next (grow S v) (Fin.cons (newLeaf S v) (oldLeaf S v ∘ r)) else 0) /-- Reference-path totals for any finite number of colors and any old tree.Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Leaf, OAI.DilutedSpinGlass.PrescribedTree.ReferencePlan, OAI.DilutedSpinGlass.PrescribedTree.labeledOldMatch, OAI.DilutedSpinGlass.PrescribedTree.Internal, OAI.DilutedSpinGlass.PrescribedTree.labeledFreshMatch, OAI.DilutedSpinGlass.PrescribedTree.gamma, OAI.DilutedSpinGlass.PrescribedTree.grow, OAI.DilutedSpinGlass.PrescribedTree.newLeaf, OAI.DilutedSpinGlass.PrescribedTree.oldLeaf
- theorem
OAI.DilutedSpinGlass.PrescribedTree.reference_history_totalline 1076Source documentation
Reference-path totals for any finite number of colors and any old tree. The histories have globally consistent splitting matrices at every step.
theorem reference_history_total {n p : ℕ} (T : PrescribedTree n) (m : Fin (n+1) → ℝ) (hend : m (Fin.last n) = 1) {s : Fin (p+1) → Leaf T} (P : ReferencePlan T s) (S : PrescribedTree n) (r : Fin (p+1) → Leaf S) (hsplit : ∀ i j, splitDepth S (r i) (r j) = splitDepth T (s i) (s j)) : referenceHistoryTotal T m P S r = referencePlanNormalizer T m P := by …Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Leaf, OAI.DilutedSpinGlass.PrescribedTree.ReferencePlan, OAI.DilutedSpinGlass.PrescribedTree.splitDepth, OAI.DilutedSpinGlass.PrescribedTree.referenceHistoryTotal, OAI.DilutedSpinGlass.PrescribedTree.referencePlanNormalizer
- theorem
OAI.DilutedSpinGlass.PrescribedTree.referencePlanNormalizer_ne_zeroline 1108Source documentation
In particular division by the reference normalization is legitimate.
theorem referencePlanNormalizer_ne_zero {n p : ℕ} (T : PrescribedTree n) (m : Fin (n+1) → ℝ) (hm : StrictMono m) (hnonneg : ∀ j, 0 ≤ m j) {s : Fin (p+1) → Leaf T} (P : ReferencePlan T s) : referencePlanNormalizer T m P ≠ 0 := by …Mentions: OAI.DilutedSpinGlass.PrescribedTree, OAI.DilutedSpinGlass.PrescribedTree.Leaf, OAI.DilutedSpinGlass.PrescribedTree.ReferencePlan, OAI.DilutedSpinGlass.PrescribedTree.referencePlanNormalizer