Documentation

Atlas.Buildings.code.Building.LinkBuilding

theorem SimplicialComplex.sdiff_union_eq_sdiff_of_disjoint' {V : Type} [DecidableEq V] {σ F τ : Finset V} (_hF_disj : Disjoint σ F) (hτ_disj : Disjoint σ τ) :
(σ τ) \ (σ F) = τ \ F

When $\tau$ is disjoint from $\sigma$, the set difference $(\sigma \cup \tau) \setminus (\sigma \cup F)$ equals $\tau \setminus F$.

theorem SimplicialComplex.union_maximal_of_linkComplex_maximal' {V : Type} [DecidableEq V] {K : SimplicialComplex V} {σ : Finset V} ( : σ K.faces) {τ : Finset V} (hτ_max : (K.linkComplex σ ).IsMaximal τ) :
K.IsMaximal (σ τ)

A maximal face $\tau$ of the link $\mathrm{lk}_K(\sigma)$ lifts to a maximal face $\sigma \cup \tau$ of the ambient complex $K$.

theorem SimplicialComplex.linkComplex_maximal_of_union_maximal' {V : Type} [DecidableEq V] {K : SimplicialComplex V} {σ : Finset V} ( : σ K.faces) {τ : Finset V} (hτ_link : τ (K.linkComplex σ ).faces) (hστ_max : K.IsMaximal (σ τ)) :
(K.linkComplex σ ).IsMaximal τ

The converse direction: if $\sigma \cup \tau$ is maximal in $K$ and $\tau$ lies in the link of $\sigma$, then $\tau$ is maximal in $\mathrm{lk}_K(\sigma)$.

theorem SimplicialComplex.linkComplex_sub {V : Type} [DecidableEq V] {K A : SimplicialComplex V} (hA : IsSubcomplex A K) (σ : Finset V) (hσK : σ K.faces) (hσA : σ A.faces) :
IsSubcomplex (A.linkComplex σ hσA) (K.linkComplex σ hσK)

The link operation is monotone with respect to subcomplex inclusion: if $A$ is a subcomplex of $K$, then $\mathrm{lk}_A(\sigma)$ is a subcomplex of $\mathrm{lk}_K(\sigma)$.

theorem iso_exists_injective {V : Type} [DecidableEq V] (b : Building V) (A : SimplicialComplex V) (hA : A b.apartmentSystem.apartments) (B : SimplicialComplex V) (hB : B b.apartmentSystem.apartments) (x : Finset V) (hxA : x A.faces) (hxB : x B.faces) (C : Finset V) (hC_max : A.IsMaximal C) (hCB : C B.faces) (φ : SimplicialMap A B) (hφ_fix_x : vx, φ.toFun v = v) (hφ_fix_C : vC, φ.toFun v = v) (v₁ v₂ : V) :
(∃ sA.faces, v₁ s)(∃ sA.faces, v₂ s)φ.toFun v₁ = φ.toFun v₂v₁ = v₂

An apartment isomorphism $\varphi : A \to B$ fixing a chamber $C$ pointwise (and a face $x$ pointwise) is injective on the vertex set covered by faces of $A$, by reduction to the unique labelling property.

theorem coxeter_complex_unique_labelling' {V : Type} [DecidableEq V] (A : SimplicialComplex V) (B_idx : Type) (M : CoxeterMatrix B_idx) (cc : ChamberComplex V) (hcc_eq : cc.toSimplicialComplex = A) (φ : Finset VM.Group) (hinj : ∀ (C : Finset V), A.IsMaximal C∀ (D : Finset V), A.IsMaximal Dφ C = φ DC = D) (hsurj : ∀ (w : M.Group), ∃ (C : Finset V), A.IsMaximal C φ C = w) (hadj : ∀ (C C' : Finset V), A.Adjacent C C'CoxeterComplex.ChamberAdjacent M (φ C) (φ C')) (L₁ L₂ : Type) [DecidableEq L₁] [DecidableEq L₂] (lab₁ : Finset VFinset L₁) (lab₂ : Finset VFinset L₂) :
(∀ (s t : Finset V), s A.facest A.facess tlab₁ s lab₁ t)(∀ (s t : Finset V), s A.facest A.facess tlab₂ s lab₂ t)∀ (C₀ : Finset V), A.IsMaximal C₀(∃ (f : L₁L₂), Function.Bijective f lab₂ C₀ = Finset.image f (lab₁ C₀)) ∀ (f : L₁L₂), Function.Bijective flab₂ C₀ = Finset.image f (lab₁ C₀)sA.faces, lab₂ s = Finset.image f (lab₁ s)

Unique labelling property for Coxeter complexes: any two labelings of $A$ that agree on a fixed chamber $C_0$ (up to a bijection of labels) agree on every face, with existence and uniqueness of the bijection.