OAI/Probability/FKMaps/CornerMass.lean
31 declarations, 0 contain sorry, 0 declared as axioms
- lemma
OAI.FKCRT.Inventory.CoreTree.nodeIndex_injectiveline 13 - def
OAI.FKCRT.Inventory.CoreTree.nodeEquivline 38Source documentation
The literal preorder indexing is an equivalence, including the root.
def nodeEquiv (t : CoreTree) : t.Node ≃ Fin t.labels.length := …
Mentions: OAI.FKCRT.Inventory.CoreTree
- def
OAI.FKCRT.Inventory.CoreTree.VertexConstantline 44 - lemma
OAI.FKCRT.Inventory.CoreTree.child_vertexConstantline 47 - lemma
OAI.FKCRT.Inventory.CoreTree.child_root_valueline 60 - theorem
OAI.FKCRT.Inventory.CoreTree.sum_polesline 77Source documentation
Exact original degree incidence counting. The extra preorder root has one additional root atom; no size-biased measure is postulated.
theorem sum_poles {A : Type*} [AddCommMonoid A] (t : CoreTree) (f : t.Dart → A) (hf : t.VertexConstant f) (r : A) : (∑ v : t.Node,((t.pole v).map f).getD r)= (t.rootDart.map f).getD r+∑ d : t.Dart,f d := by …Mentions: OAI.FKCRT.Inventory.CoreTree
- def
OAI.FKCRT.PermutationWedge.dartVertexEquivline 122Source documentation
Exact quotient-graph relabelling for arbitrary finite dart carriers.
def dartVertexEquiv (f : α ≃ β) {p : Perm α} {q : Perm β} (hp : ∀ x,q (f x)=f (p x)) : Vertex p ≃ Vertex q := …Mentions: OAI.FKCRT.PermutationWedge.Vertex
- lemma
OAI.FKCRT.PermutationWedge.dartVertexEquiv_applyline 126 - def
OAI.FKCRT.PermutationWedge.dartGraphIsoline 130 - lemma
OAI.FKCRT.dartGraph_eq_spanningline 166 - def
OAI.FKCRT.matchingCanonicalline 175Source documentation
The canonical inverse word has the literal, uniquely determined stack matching edge and vertex permutations.
def matchingCanonical {n : ℕ} (w : SuccessfulWord n) (D : StackMatching w.val (List.finRange (2*(n+1)))) : CanonicalTreeMap n where …Mentions: OAI.FKCRT.SuccessfulWord, OAI.FKCRT.CanonicalTreeMap
- lemma
OAI.FKCRT.matchingCanonical_wordline 186 - lemma
OAI.FKCRT.matchingCanonical_eqline 193 - theorem
OAI.FKCRT.matching_rooted_intertwineline 201Source documentation
The quotient representative used by the main statement is a genuine rooted relabelling of the matching map, not merely a map with the same size or law.
theorem matching_rooted_intertwine {n : ℕ} (w : SuccessfulWord n) (D : StackMatching w.val (List.finRange (2*(n+1)))) : let M := ((rootedWordEquiv n).symm w).1 …Mentions: OAI.FKCRT.SuccessfulWord, OAI.FKCRT.rootedWordEquiv
- def
OAI.FKCRT.Inventory.listDartEquivline 227 - lemma
OAI.FKCRT.Inventory.listDartEquiv_getline 234 - lemma
OAI.FKCRT.Inventory.listDartEquiv_listline 238 - lemma
OAI.FKCRT.Inventory.listDartEquiv_labelsline 245 - theorem
OAI.FKCRT.Inventory.StackMatching.word_intertwineline 259Source documentation
Literal finite-word normalization simultaneously intertwines edge and vertex permutations of the original multigraph.
theorem StackMatching.word_intertwine {v : α → TypedLetter} {l : List α} (M : StackMatching v l) (hn : l.Nodup) (hl : ∀ d,d∈l) {n : ℕ} (w : FKCRT.SuccessfulWord n) (hw : l.map v=List.ofFn w.val) (D : StackMatching w.val (List.finRange (2*(n+1)))) : ∃ e : FKCRT.Dart n ≃ α, (∀ i,M.mate (e i)=e (D.mate i)) ∧ (∀ i,(l.formPerm*turns M.first) (e i)= e (((List.finRange (2*(n+1))).formPerm*turns D.first) i)) := by …Mentions: OAI.FKCRT.Inventory.TypedLetter, OAI.FKCRT.Inventory.StackMatching, OAI.FKCRT.SuccessfulWord, OAI.FKCRT.Inventory.D, OAI.FKCRT.Dart
- theorem
OAI.FKCRT.Inventory.CoreTree.realized_intertwineline 301Source documentation
The actual FK representative and the recursively glued literal map are isomorphic on their original darts, simultaneously for edges and vertices.
theorem realized_intertwine (t : CoreTree) {n : ℕ} (w : FKCRT.SuccessfulWord n) (hw : t.word=List.ofFn w.val) : let M := ((FKCRT.rootedWordEquiv n).symm w).1 …Mentions: OAI.FKCRT.Inventory.CoreTree, OAI.FKCRT.SuccessfulWord, OAI.FKCRT.rootedWordEquiv
- theorem
OAI.FKCRT.Inventory.CoreTree.realized_distanceline 328Source documentation
Original all-edge graph distances are preserved exactly by the finite word/core realization; no block metric is substituted.
theorem realized_distance (t : CoreTree) {n : ℕ} (w : FKCRT.SuccessfulWord n) (hw : t.word=List.ofFn w.val) : let M := ((FKCRT.rootedWordEquiv n).symm w).1 …Mentions: OAI.FKCRT.Inventory.CoreTree, OAI.FKCRT.SuccessfulWord, OAI.FKCRT.rootedWordEquiv
- lemma
OAI.FKCRT.Inventory.CoreTree.pole_rootline 362 - def
OAI.FKCRT.Inventory.CoreTree.wordNodeEquivline 365Source documentation
Preorder nodes indexed at the true total word length.
def wordNodeEquiv (t : CoreTree) : t.Node ≃ Fin (t.word.length+1) := …
Mentions: OAI.FKCRT.Inventory.CoreTree
- lemma
OAI.FKCRT.Inventory.CoreTree.wordNodeEquiv_rootline 368 - theorem
OAI.FKCRT.Inventory.CoreTree.sum_nonroot_polesline 374Source documentation
Dropping precisely the preorder root leaves the exact multiset of all original dart vertices. This is the degree measure's incidence identity.
theorem sum_nonroot_poles {A : Type*} [AddCancelCommMonoid A] (t : CoreTree) (f : t.Dart → A) (hf : t.VertexConstant f) (r : A) : (∑ i : Fin t.word.length,((t.pole (t.wordNodeEquiv.symm i.succ)).map f).getD r)= ∑ d : t.Dart,f d := by …Mentions: OAI.FKCRT.Inventory.CoreTree
- lemma
OAI.FKCRT.Inventory.CoreTree.vertexConstant_of_intertwineline 386 - def
OAI.FKCRT.Inventory.CoreTree.realizedPoleline 408 - def
OAI.FKCRT.Inventory.CoreTree.nonrootVertexline 412 - lemma
OAI.FKCRT.Inventory.CoreTree.realizedPole_someline 416 - theorem
OAI.FKCRT.Inventory.CoreTree.nonroot_dirac_eqline 423Source documentation
Exact uniform nonroot-preorder mass equals original uniform dart mass. The finite root atom is cancelled, not ignored asymptotically.
theorem nonroot_dirac_eq (t : CoreTree) {n : ℕ} (M : FKCRT.RootedMap n) (e : t.Dart ≃ FKCRT.Dart n) (hp : ∀ d,FKCRT.rotation M (e d)=e ((t.darts.formPerm*turns t.matching.first) d)) : let : MeasurableSpace (FKCRT.Vertex M) := ⊤ …Mentions: OAI.FKCRT.Inventory.CoreTree, OAI.FKCRT.RootedMap, OAI.FKCRT.Dart, OAI.FKCRT.rotation, OAI.FKCRT.Vertex
- theorem
OAI.FKCRT.Inventory.CoreTree.nonrootVertex_surjectiveline 461Source documentation
Every original vertex is reached by a nonroot pole, even in the presence of loops and coincident poles.
theorem nonrootVertex_surjective (t : CoreTree) {n : ℕ} (M : FKCRT.RootedMap n) (e : t.Dart ≃ FKCRT.Dart n) (hp : ∀ d,FKCRT.rotation M (e d)=e ((t.darts.formPerm*turns t.matching.first) d)) : Function.Surjective (t.nonrootVertex M e) := by …Mentions: OAI.FKCRT.Inventory.CoreTree, OAI.FKCRT.RootedMap, OAI.FKCRT.Dart, OAI.FKCRT.rotation