Documentation

TauCeti.LinearAlgebra.RootSystem.Weyl.ChainBond

Bond gcds and a-chains of saturated chains in W / W_λ #

Let λ be a dominant weight for a base of a finite reduced root datum, so that the weights and the pairings with coroots are integers. Each cover y ⋖ x of the parabolic quotient W / W_λ has a unique positive root label β with y λ = s_β (x λ), and a positive integer bond b_λ(x, y) = ⟨y λ, β^∨⟩ = -⟨x λ, β^∨⟩, by TauCeti.LinearAlgebra.RootSystem.Weyl.CoverBond. For a saturated chain C : x₀ ⋗ x₁ ⋗ ⋯ ⋗ x_l of W / W_λ this file defines

The main result is the divisibility criterion: writing a = p / q in lowest terms with q > 0, the chain C is an a-chain exactly when q divides d(C). Since p and q are coprime, a b is an integer exactly when q ∣ b, and q divides every bond exactly when it divides their gcd. The bond gcd of a concatenation of two chains is the gcd of their bond gcds, so being an a-chain is checked piece by piece.

In Littelmann's description of the Lakshmibai–Seshadri paths of shape λ, a pair of cosets τ > σ can follow each other at a rational break a exactly when there is an a-chain for (τ, σ); the bond gcd turns that condition into a divisibility. The gcd does not depend on the saturated chain from τ to σ, by TauCeti.bondGcd_eq_intervalBondGcd in TauCeti.LinearAlgebra.RootSystem.Weyl.IntervalBondGcd.

The a-chain condition makes the corresponding Lakshmibai–Seshadri paths integral where it matters. Along an a-chain from x to y every integral pairing changes by an a-integral amount: a (f (x λ) - f (y λ)) ∈ ℤ. If moreover the chain crosses a simple wall, ⟨x λ, αᵢ^∨⟩ < 0 ≤ ⟨y λ, αᵢ^∨⟩, then its first crossing cover is the simple reflection sᵢ, by the lifting property, and so a ⟨x λ, αᵢ^∨⟩ ∈ ℤ. For a path running along orbit weights τ_k λ between breaks t_k linked by t_{k+1}-chains, this makes the running height ⟨π(t), αᵢ^∨⟩ integral at every break where it stops decreasing, and at the endpoint; hence its minimum is an integer. These are the integrality properties under which Littelmann's root operators on such paths have the string lengths ε_i = -min H_i and φ_i = H_i(1) - min H_i.

The weights live in a root datum (a root pairing over ℤ) so that bonds are integers by construction and their gcd is defined.

Main definitions #

Main results #

References #

noncomputable def TauCeti.bondGcd {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] (lam : M) (C : (weylCoxeterSystem P b).MinimalCosetRepChain (P.wallIndices b lam)) :

The bond gcd d(C) of a saturated chain C : x₀ ⋗ x₁ ⋗ ⋯ ⋗ x_l of the parabolic quotient W / W_λ: the gcd of the bonds b_λ(x_{h-1}, x_h) of its covers, where the bond of y ⋖ x is ⟨y λ, β^∨⟩ for the positive root β with y λ = s_β (x λ). The chain of length 0 has bond gcd 0.

Instances For
    def TauCeti.IsAChain {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] (a : ℚ) (lam : M) (C : (weylCoxeterSystem P b).MinimalCosetRepChain (P.wallIndices b lam)) :

    A saturated chain C : x₀ ⋗ x₁ ⋗ ⋯ ⋗ x_l of the parabolic quotient W / W_λ is an a-chain, for a rational number a, when a times the bond b_λ(x_{h-1}, x_h) of each of its covers is an integer. With the positive root label β_h of the cover x_h ⋖ x_{h-1} this is Littelmann's condition that a ⟨x_{h-1} λ, β_h^∨⟩ is an integer (TauCeti.isAChain_iff_forall_coroot').

    Instances For
      theorem TauCeti.isAChain_iff_forall_reflectionBond {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] {a : ℚ} {lam : M} {C : (weylCoxeterSystem P b).MinimalCosetRepChain (P.wallIndices b lam)} :
      IsAChain a lam C ↔ ∀ (i : Fin C.length), ∃ (z : ℤ), a * ↑(P.reflectionBond b (↑(C.toFun i.castSucc) • lam) (↑(C.toFun i.succ) • lam)) = ↑z

      The a-chain condition is integrality of a times each reflection bond.

      theorem TauCeti.dvd_bondGcd_iff {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] {lam : M} {n : ℕ} {C : (weylCoxeterSystem P b).MinimalCosetRepChain (P.wallIndices b lam)} :
      n ∣ bondGcd lam C ↔ ∀ (i : Fin C.length), n ∣ (P.reflectionBond b (↑(C.toFun i.castSucc) • lam) (↑(C.toFun i.succ) • lam)).natAbs

      A natural number divides the bond gcd d(C) of a saturated chain exactly when it divides the bond of every cover of the chain.

      theorem TauCeti.bondGcd_dvd {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] {lam : M} {C : (weylCoxeterSystem P b).MinimalCosetRepChain (P.wallIndices b lam)} (i : Fin C.length) :
      bondGcd lam C ∣ (P.reflectionBond b (↑(C.toFun i.castSucc) • lam) (↑(C.toFun i.succ) • lam)).natAbs

      The bond gcd d(C) of a saturated chain divides the bond of each cover of the chain.

      theorem TauCeti.isAChain_iff_den_dvd_bondGcd {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] {a : ℚ} {lam : M} {C : (weylCoxeterSystem P b).MinimalCosetRepChain (P.wallIndices b lam)} :
      IsAChain a lam C ↔ a.den ∣ bondGcd lam C

      A saturated chain is an a-chain exactly when the denominator of a divides its bond gcd. Writing a = p / q in lowest terms with q > 0, the integrality of a times every bond of the chain C is the divisibility q ∣ d(C).

      @[simp]
      theorem TauCeti.bondGcd_singleton {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] {lam : M} (y : { w : ↥P.weylGroup // (weylCoxeterSystem P b).IsMinimalCosetRep (P.wallIndices b lam) w }) :

      The chain of length 0 has bond gcd 0.

      @[simp]
      theorem TauCeti.bondGcd_smash {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] {lam : M} {C D : (weylCoxeterSystem P b).MinimalCosetRepChain (P.wallIndices b lam)} (h : RelSeries.last C = RelSeries.head D) :
      bondGcd lam (RelSeries.smash C D h) = (bondGcd lam C).gcd (bondGcd lam D)

      The bond gcd of the concatenation of two saturated chains, the second starting where the first ends, is the gcd of their bond gcds.

      @[simp]
      theorem TauCeti.bondGcd_snoc {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] {lam : M} {C : (weylCoxeterSystem P b).MinimalCosetRepChain (P.wallIndices b lam)} {y : { w : ↥P.weylGroup // (weylCoxeterSystem P b).IsMinimalCosetRep (P.wallIndices b lam) w }} (h : (weylCoxeterSystem P b).MinimalCosetRepCovBy (P.wallIndices b lam) ↑y ↑(RelSeries.last C)) :
      bondGcd lam (RelSeries.snoc C y h) = (bondGcd lam C).gcd (P.reflectionBond b (↑(RelSeries.last C) • lam) (↑y • lam)).natAbs

      The bond gcd of a saturated chain extended by one more cover y ⋖ x_l at its end is the gcd of its bond gcd and the bond b_λ(x_l, y) of the new cover.

      @[simp]
      theorem TauCeti.bondGcd_cons {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] {lam : M} {C : (weylCoxeterSystem P b).MinimalCosetRepChain (P.wallIndices b lam)} {x : { w : ↥P.weylGroup // (weylCoxeterSystem P b).IsMinimalCosetRep (P.wallIndices b lam) w }} (h : (weylCoxeterSystem P b).MinimalCosetRepCovBy (P.wallIndices b lam) ↑(RelSeries.head C) ↑x) :
      bondGcd lam (RelSeries.cons C x h) = (P.reflectionBond b (↑x • lam) (↑(RelSeries.head C) • lam)).natAbs.gcd (bondGcd lam C)

      The bond gcd of a saturated chain extended by one more cover x₀ ⋖ x at its start is the gcd of the bond b_λ(x, x₀) of the new cover and the bond gcd of the chain.

      theorem TauCeti.bondGcd_eq_gcd_bondGcd_tail {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] {lam : M} (C : (weylCoxeterSystem P b).MinimalCosetRepChain (P.wallIndices b lam)) (h : C.length ≠ 0) :
      bondGcd lam C = (P.reflectionBond b (↑(RelSeries.head C) • lam) (↑(RelSeries.tail C h).head • lam)).natAbs.gcd (bondGcd lam (RelSeries.tail C h))

      The bond gcd of a saturated chain x₀ ⋗ x₁ ⋗ ⋯ ⋗ x_l of positive length is the gcd of the bond b_λ(x₀, x₁) of its first cover and the bond gcd of its tail x₁ ⋗ ⋯ ⋗ x_l.

      @[simp]
      theorem TauCeti.isAChain_smash_iff {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] {a : ℚ} {lam : M} {C D : (weylCoxeterSystem P b).MinimalCosetRepChain (P.wallIndices b lam)} (h : RelSeries.last C = RelSeries.head D) :
      IsAChain a lam (RelSeries.smash C D h) ↔ IsAChain a lam C ∧ IsAChain a lam D

      The concatenation of two saturated chains, the second starting where the first ends, is an a-chain exactly when both pieces are.

      @[simp]
      theorem TauCeti.isAChain_singleton {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] {a : ℚ} {lam : M} (y : { w : ↥P.weylGroup // (weylCoxeterSystem P b).IsMinimalCosetRep (P.wallIndices b lam) w }) :

      The chain of length 0 is an a-chain for every a.

      @[simp]
      theorem TauCeti.isAChain_snoc_iff {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] {a : ℚ} {lam : M} {C : (weylCoxeterSystem P b).MinimalCosetRepChain (P.wallIndices b lam)} {y : { w : ↥P.weylGroup // (weylCoxeterSystem P b).IsMinimalCosetRep (P.wallIndices b lam) w }} (h : (weylCoxeterSystem P b).MinimalCosetRepCovBy (P.wallIndices b lam) ↑y ↑(RelSeries.last C)) :
      IsAChain a lam (RelSeries.snoc C y h) ↔ IsAChain a lam C ∧ ∃ (z : ℤ), a * ↑(P.reflectionBond b (↑(RelSeries.last C) • lam) (↑y • lam)) = ↑z

      A saturated chain extended by one more cover y ⋖ x_l at its end is an a-chain exactly when the chain is an a-chain and a times the bond b_λ(x_l, y) of the new cover is an integer.

      theorem TauCeti.IsAChain.take {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] {a : ℚ} {lam : M} {C : (weylCoxeterSystem P b).MinimalCosetRepChain (P.wallIndices b lam)} (hC : IsAChain a lam C) (k : Fin (C.length + 1)) :

      An initial segment x₀ ⋗ ⋯ ⋗ x_k of an a-chain is an a-chain.

      theorem TauCeti.IsAChain.drop {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] {a : ℚ} {lam : M} {C : (weylCoxeterSystem P b).MinimalCosetRepChain (P.wallIndices b lam)} (hC : IsAChain a lam C) (k : Fin (C.length + 1)) :

      A final segment x_k ⋗ ⋯ ⋗ x_l of an a-chain is an a-chain.

      theorem TauCeti.bondGcd_snoc_singleton_simple_one {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] {lam : M} {i : ↥b.support} (hi : (P.coroot' ↑i) lam ≠ 0) :

      The bond gcd of the chain sᵢ ⋗ 1. For a simple root αᵢ with ⟨λ, αᵢ^∨⟩ ≠ 0, the simple reflection sᵢ covers the identity in W / W_λ, and the saturated chain sᵢ ⋗ 1 has bond gcd |⟨λ, αᵢ^∨⟩|. So it is an a-chain exactly when the denominator of a divides ⟨λ, αᵢ^∨⟩.

      theorem TauCeti.isAChain_iff_forall_coroot' {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] {a : ℚ} {lam : M} [P.flip.IsReduced] (hlam : lam ∈ P.dominantChamber b) {C : (weylCoxeterSystem P b).MinimalCosetRepChain (P.wallIndices b lam)} :
      IsAChain a lam C ↔ ∀ (i : Fin C.length) (β : ι), b.IsPos β → (P.reflection β) (↑(C.toFun i.castSucc) • lam) = ↑(C.toFun i.succ) • lam → ∃ (z : ℤ), a * ↑((P.coroot' β) (↑(C.toFun i.castSucc) • lam)) = ↑z

      The a-chain condition in Littelmann's form. A saturated chain x₀ ⋗ x₁ ⋗ ⋯ ⋗ x_l of W / W_λ is an a-chain exactly when a ⟨x_{h-1} λ, β^∨⟩ is an integer for every cover x_h ⋖ x_{h-1} and every positive root β with x_h λ = s_β (x_{h-1} λ). Such a root exists and is unique (TauCeti.existsUnique_isPos_reflection_smul_eq_of_minimalCosetRepCovBy), and ⟨x_{h-1} λ, β^∨⟩ < 0.

      theorem TauCeti.bondGcd_eq_zero_of_length_eq_zero {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] {lam : M} {C : (weylCoxeterSystem P b).MinimalCosetRepChain (P.wallIndices b lam)} (h : C.length = 0) :
      bondGcd lam C = 0

      A saturated chain of W / W_λ of length 0 has bond gcd 0, the gcd of no bonds.

      theorem TauCeti.bondGcd_eq_zero_iff {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] {lam : M} [P.flip.IsReduced] (hlam : lam ∈ P.dominantChamber b) {C : (weylCoxeterSystem P b).MinimalCosetRepChain (P.wallIndices b lam)} :
      bondGcd lam C = 0 ↔ C.length = 0

      The bond gcd of a saturated chain of W / W_λ vanishes exactly when the chain has length 0: the bonds of covers are positive.

      theorem TauCeti.bondGcd_dvd_sub {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] {lam : M} [P.flip.IsReduced] (hlam : lam ∈ P.dominantChamber b) (C : (weylCoxeterSystem P b).MinimalCosetRepChain (P.wallIndices b lam)) (f : Module.Dual ℤ M) :
      ↑(bondGcd lam C) ∣ f (↑(RelSeries.head C) • lam) - f (↑(RelSeries.last C) • lam)

      The bond gcd divides the change of every integral linear form along the chain. If C : x₀ ⋗ x₁ ⋗ ⋯ ⋗ x_l is a saturated chain of W / W_λ, then d(C) divides f (x₀ λ) - f (x_l λ) for every integral linear form f on the weight lattice: each cover changes the weight by its bond times a root.

      Integrality along a-chains #

      theorem TauCeti.IsAChain.exists_mul_sub_eq_intCast {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] {a : ℚ} {lam : M} [P.flip.IsReduced] (hlam : lam ∈ P.dominantChamber b) {C : (weylCoxeterSystem P b).MinimalCosetRepChain (P.wallIndices b lam)} (hC : IsAChain a lam C) (f : Module.Dual ℤ M) :
      ∃ (z : ℤ), a * ↑(f (↑(RelSeries.head C) • lam) - f (↑(RelSeries.last C) • lam)) = ↑z

      Integral linear forms on the two ends of an a-chain differ by an a-integral amount. If C : x₀ ⋗ x₁ ⋗ ⋯ ⋗ x_l is an a-chain of W / W_λ, then a (f (x₀ λ) - f (x_l λ)) is an integer for every integral linear form f on the weight lattice, for instance for the pairing ⟨-, β^∨⟩ with any coroot.

      theorem TauCeti.IsAChain.exists_mem_rootSpan_smul_sub_eq {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] {a : ℚ} {lam : M} [P.flip.IsReduced] (hlam : lam ∈ P.dominantChamber b) {C : (weylCoxeterSystem P b).MinimalCosetRepChain (P.wallIndices b lam)} (hC : IsAChain a lam C) {𝕜 : Type u_1} {V : Type u_2} [Field 𝕜] [CharZero 𝕜] [AddCommGroup V] [Module 𝕜 V] (f : M →+ V) :
      ∃ m ∈ P.rootSpan ℤ, ↑a • (f (↑(RelSeries.head C) • lam) - f (↑(RelSeries.last C) • lam)) = f m

      Along an a-chain, the scaled difference of its endpoint weights is an actual root-lattice vector, in every characteristic-zero linear realization. This retains the lattice information, not only its values under integral linear forms.

      theorem TauCeti.IsAChain.exists_mul_coroot'_eq_intCast {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] {a : ℚ} {lam : M} [P.flip.IsReduced] (hlam : lam ∈ P.dominantChamber b) {C : (weylCoxeterSystem P b).MinimalCosetRepChain (P.wallIndices b lam)} (hC : IsAChain a lam C) (i : ↥b.support) (hhead : (P.coroot' ↑i) (↑(RelSeries.head C) • lam) < 0) (hlast : 0 ≤ (P.coroot' ↑i) (↑(RelSeries.last C) • lam)) :
      ∃ (z : ℤ), a * ↑((P.coroot' ↑i) (↑(RelSeries.head C) • lam)) = ↑z

      Littelmann's integrality at a simple wall. Let C : x₀ ⋗ ⋯ ⋗ x_l be an a-chain of W / W_λ and αᵢ a simple root with ⟨x₀ λ, αᵢ^∨⟩ < 0 ≤ ⟨x_l λ, αᵢ^∨⟩. Then a ⟨x₀ λ, αᵢ^∨⟩ is an integer. At the first cover x_h ⋖ x_{h-1} crossing the wall, the root label is αᵢ (TauCeti.reflection_smul_eq_of_minimalCosetRepCovBy_of_coroot'_neg), so a ⟨x_{h-1} λ, αᵢ^∨⟩ is an integer, and the part of C before it changes the pairing by an a-integral amount.

      Heights of Lakshmibai–Seshadri paths at their breaks #

      A Lakshmibai–Seshadri path of shape λ runs, for 0 ≤ k < s, along the orbit weight τ_k λ during the time interval [t_k, t_{k+1}], starting at time t_0 = 0, and each break t_{k+1} between τ_k and τ_{k+1} carries a t_{k+1}-chain from τ_k down to τ_{k+1}. Its value at the j-th break, paired with an integral linear form f, is the vertex height ∑_{k < j} (t_{k+1} - t_k) f (τ_k λ). The results below need only the chains, not the order of the cosets or of the times, except where stated.

      theorem TauCeti.exists_sum_sub_mul_eq_intCast_of_isAChain {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] {lam : M} [P.flip.IsReduced] (hlam : lam ∈ P.dominantChamber b) {s : ℕ} {τ : ℕ → ↥P.weylGroup} {t : ℕ → ℚ} (ht : t 0 = 0) (hchain : ∀ (k : ℕ), k + 1 < s → ∃ (C : (weylCoxeterSystem P b).MinimalCosetRepChain (P.wallIndices b lam)), ↑(RelSeries.head C) = τ k ∧ ↑(RelSeries.last C) = τ (k + 1) ∧ IsAChain (t (k + 1)) lam C) (f : Module.Dual ℤ M) {j : ℕ} (hj : j < s) :
      ∃ (z : ℤ), ∑ k ∈ Finset.range (j + 1), (t (k + 1) - t k) * ↑(f (τ k • lam)) - t (j + 1) * ↑(f (τ j • lam)) = ↑z

      Heights at breaks, up to integers. If consecutive orbit weights τ_k λ and τ_{k+1} λ are joined by t_{k+1}-chains for k + 1 < s and t_0 = 0, then for j < s the height ∑_{k ≤ j} (t_{k+1} - t_k) f (τ_k λ) at the break t_{j+1} differs from t_{j+1} f (τ_j λ) by an integer, for every integral linear form f.

      theorem TauCeti.exists_sum_coroot'_eq_intCast_of_isAChain {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] {lam : M} [P.flip.IsReduced] (hlam : lam ∈ P.dominantChamber b) {s : ℕ} {τ : ℕ → ↥P.weylGroup} {t : ℕ → ℚ} (ht : t 0 = 0) (hchain : ∀ (k : ℕ), k + 1 < s → ∃ (C : (weylCoxeterSystem P b).MinimalCosetRepChain (P.wallIndices b lam)), ↑(RelSeries.head C) = τ k ∧ ↑(RelSeries.last C) = τ (k + 1) ∧ IsAChain (t (k + 1)) lam C) (i : ↥b.support) {j : ℕ} (hj : j + 1 < s) (hneg : (P.coroot' ↑i) (τ j • lam) < 0) (hnonneg : 0 ≤ (P.coroot' ↑i) (τ (j + 1) • lam)) :
      ∃ (z : ℤ), ∑ k ∈ Finset.range (j + 1), (t (k + 1) - t k) * ↑((P.coroot' ↑i) (τ k • lam)) = ↑z

      Littelmann's integrality of Lakshmibai–Seshadri paths at local minima. With the chains of TauCeti.exists_sum_sub_mul_eq_intCast_of_isAChain, let αᵢ be a simple root such that the height ⟨-, αᵢ^∨⟩ stops decreasing at the break t_{j+1}: ⟨τ_j λ, αᵢ^∨⟩ < 0 ≤ ⟨τ_{j+1} λ, αᵢ^∨⟩. Then the height ∑_{k ≤ j} (t_{k+1} - t_k) ⟨τ_k λ, αᵢ^∨⟩ there is an integer.

      theorem TauCeti.exists_sum_eq_intCast_of_isAChain {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] {lam : M} [P.flip.IsReduced] (hlam : lam ∈ P.dominantChamber b) {s : ℕ} {τ : ℕ → ↥P.weylGroup} {t : ℕ → ℚ} (ht : t 0 = 0) (hchain : ∀ (k : ℕ), k + 1 < s → ∃ (C : (weylCoxeterSystem P b).MinimalCosetRepChain (P.wallIndices b lam)), ↑(RelSeries.head C) = τ k ∧ ↑(RelSeries.last C) = τ (k + 1) ∧ IsAChain (t (k + 1)) lam C) (hs : ∃ (z : ℤ), t s = ↑z) (f : Module.Dual ℤ M) :
      ∃ (z : ℤ), ∑ k ∈ Finset.range s, (t (k + 1) - t k) * ↑(f (τ k • lam)) = ↑z

      The endpoint of a Lakshmibai–Seshadri path is integral. With the chains of TauCeti.exists_sum_sub_mul_eq_intCast_of_isAChain, if the final time t_s is an integer (for a Lakshmibai–Seshadri path, t_s = 1), then the final height ∑_{k < s} (t_{k+1} - t_k) f (τ_k λ) is an integer for every integral linear form f.

      theorem TauCeti.exists_isLeast_sum_coroot'_Icc_of_isAChain {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] {lam : M} [P.flip.IsReduced] (hlam : lam ∈ P.dominantChamber b) {s : ℕ} {τ : ℕ → ↥P.weylGroup} {t : ℕ → ℚ} (ht : t 0 = 0) (hchain : ∀ (k : ℕ), k + 1 < s → ∃ (C : (weylCoxeterSystem P b).MinimalCosetRepChain (P.wallIndices b lam)), ↑(RelSeries.head C) = τ k ∧ ↑(RelSeries.last C) = τ (k + 1) ∧ IsAChain (t (k + 1)) lam C) (hmono : ∀ k < s, t k < t (k + 1)) (hs : ∃ (z : ℤ), t s = ↑z) (i : ↥b.support) {m : ℕ} (hm : m ≤ s) :
      ∃ (z : ℚ), IsLeast ((fun (j : ℕ) => ∑ k ∈ Finset.range j, (t (k + 1) - t k) * ↑((P.coroot' ↑i) (τ k • lam))) '' Set.Icc m s) z ∧ (z = ∑ k ∈ Finset.range m, (t (k + 1) - t k) * ↑((P.coroot' ↑i) (τ k • lam)) ∨ ∃ (n : ℤ), z = ↑n)

      Least heights of a Lakshmibai–Seshadri path on a final piece. With the chains of TauCeti.exists_sum_sub_mul_eq_intCast_of_isAChain, suppose the times increase strictly, t_0 < t_1 < ⋯ < t_s, and the final time t_s is an integer. Then for each simple root αᵢ and each m ≤ s, the least vertex height ∑_{k < j} (t_{k+1} - t_k) ⟨τ_k λ, αᵢ^∨⟩, m ≤ j ≤ s, is either the height at m or an integer: away from m, it is attained at a break where the height stops decreasing or at the endpoint.

      theorem TauCeti.exists_isLeast_sum_coroot'_eq_intCast_of_isAChain {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] {lam : M} [P.flip.IsReduced] (hlam : lam ∈ P.dominantChamber b) {s : ℕ} {τ : ℕ → ↥P.weylGroup} {t : ℕ → ℚ} (ht : t 0 = 0) (hchain : ∀ (k : ℕ), k + 1 < s → ∃ (C : (weylCoxeterSystem P b).MinimalCosetRepChain (P.wallIndices b lam)), ↑(RelSeries.head C) = τ k ∧ ↑(RelSeries.last C) = τ (k + 1) ∧ IsAChain (t (k + 1)) lam C) (hmono : ∀ k < s, t k < t (k + 1)) (hs : ∃ (z : ℤ), t s = ↑z) (i : ↥b.support) :
      ∃ (z : ℤ), IsLeast ((fun (j : ℕ) => ∑ k ∈ Finset.range j, (t (k + 1) - t k) * ↑((P.coroot' ↑i) (τ k • lam))) '' Set.Iic s) ↑z

      The minimal height of a Lakshmibai–Seshadri path is integral. With the chains of TauCeti.exists_sum_sub_mul_eq_intCast_of_isAChain, suppose the times increase strictly, t_0 < t_1 < ⋯ < t_s, and the final time t_s is an integer. Then for each simple root αᵢ the least vertex height ∑_{k < j} (t_{k+1} - t_k) ⟨τ_k λ, αᵢ^∨⟩, j ≤ s, is an integer. Since the height is affine between breaks, this least vertex height is the minimum of the height along the whole path.

      The height of a Lakshmibai–Seshadri path after a minimum #

      Littelmann's lowering operator f_αᵢ reflects the piece of a path between the last time t₀ at which the height ⟨π(t), αᵢ^∨⟩ is minimal and the first later time t₁ at which it has risen by one. For a Lakshmibai–Seshadri path this piece is as simple as possible: the height rises strictly from t₀ to t₁, and it stays at least the minimum plus one after t₁. Both statements hold more generally after any vertex at which the height is an integer, provided the height stays strictly above that integer afterwards.

      theorem TauCeti.sum_coroot'_lt_sum_coroot'_succ_of_isAChain {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] {lam : M} [P.flip.IsReduced] (hlam : lam ∈ P.dominantChamber b) {s : ℕ} {τ : ℕ → ↥P.weylGroup} {t : ℕ → ℚ} (ht : t 0 = 0) (hchain : ∀ (k : ℕ), k + 1 < s → ∃ (C : (weylCoxeterSystem P b).MinimalCosetRepChain (P.wallIndices b lam)), ↑(RelSeries.head C) = τ k ∧ ↑(RelSeries.last C) = τ (k + 1) ∧ IsAChain (t (k + 1)) lam C) (hmono : ∀ k < s, t k < t (k + 1)) (hs : ∃ (z : ℤ), t s = ↑z) (i : ↥b.support) {k₀ j : ℕ} (hk₀ : ∃ (z : ℤ), ∑ k ∈ Finset.range k₀, (t (k + 1) - t k) * ↑((P.coroot' ↑i) (τ k • lam)) = ↑z) (habove : ∀ (k : ℕ), k₀ < k → k ≤ s → ∑ k ∈ Finset.range k₀, (t (k + 1) - t k) * ↑((P.coroot' ↑i) (τ k • lam)) < ∑ k ∈ Finset.range k, (t (k + 1) - t k) * ↑((P.coroot' ↑i) (τ k • lam))) (hk₀j : k₀ ≤ j) (hjs : j < s) (hj : ∑ k ∈ Finset.range j, (t (k + 1) - t k) * ↑((P.coroot' ↑i) (τ k • lam)) < ∑ k ∈ Finset.range k₀, (t (k + 1) - t k) * ↑((P.coroot' ↑i) (τ k • lam)) + 1) :
      ∑ k ∈ Finset.range j, (t (k + 1) - t k) * ↑((P.coroot' ↑i) (τ k • lam)) < ∑ k ∈ Finset.range (j + 1), (t (k + 1) - t k) * ↑((P.coroot' ↑i) (τ k • lam))

      The height of a Lakshmibai–Seshadri path rises strictly after a minimum, up to the next integer. With the chains of TauCeti.exists_sum_sub_mul_eq_intCast_of_isAChain, strictly increasing times and an integral final time, write H j = ∑_{k < j} (t_{k+1} - t_k) ⟨τ_k λ, αᵢ^∨⟩. Suppose that the height H k₀ is an integer and that H k > H k₀ for k₀ < k ≤ s. Then H j < H (j + 1) for every k₀ ≤ j < s with H j < H k₀ + 1: a stationary height would be integral, and a decreasing one would lead to a local minimum strictly between the integers H k₀ and H k₀ + 1.

      theorem TauCeti.add_one_le_sum_coroot'_of_isAChain {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] {lam : M} [P.flip.IsReduced] (hlam : lam ∈ P.dominantChamber b) {s : ℕ} {τ : ℕ → ↥P.weylGroup} {t : ℕ → ℚ} (ht : t 0 = 0) (hchain : ∀ (k : ℕ), k + 1 < s → ∃ (C : (weylCoxeterSystem P b).MinimalCosetRepChain (P.wallIndices b lam)), ↑(RelSeries.head C) = τ k ∧ ↑(RelSeries.last C) = τ (k + 1) ∧ IsAChain (t (k + 1)) lam C) (hmono : ∀ k < s, t k < t (k + 1)) (hs : ∃ (z : ℤ), t s = ↑z) (i : ↥b.support) {k₀ k₁ j : ℕ} (hk₀ : ∃ (z : ℤ), ∑ k ∈ Finset.range k₀, (t (k + 1) - t k) * ↑((P.coroot' ↑i) (τ k • lam)) = ↑z) (habove : ∀ (k : ℕ), k₀ < k → k ≤ s → ∑ k ∈ Finset.range k₀, (t (k + 1) - t k) * ↑((P.coroot' ↑i) (τ k • lam)) < ∑ k ∈ Finset.range k, (t (k + 1) - t k) * ↑((P.coroot' ↑i) (τ k • lam))) (hk₀₁ : k₀ < k₁) (hk₁ : ∑ k ∈ Finset.range k₀, (t (k + 1) - t k) * ↑((P.coroot' ↑i) (τ k • lam)) + 1 ≤ ∑ k ∈ Finset.range k₁, (t (k + 1) - t k) * ↑((P.coroot' ↑i) (τ k • lam))) (hk₁j : k₁ ≤ j) (hjs : j ≤ s) :
      ∑ k ∈ Finset.range k₀, (t (k + 1) - t k) * ↑((P.coroot' ↑i) (τ k • lam)) + 1 ≤ ∑ k ∈ Finset.range j, (t (k + 1) - t k) * ↑((P.coroot' ↑i) (τ k • lam))

      The height of a Lakshmibai–Seshadri path stays up after rising by one from a minimum. With the chains of TauCeti.exists_sum_sub_mul_eq_intCast_of_isAChain, strictly increasing times and an integral final time, write H j = ∑_{k < j} (t_{k+1} - t_k) ⟨τ_k λ, αᵢ^∨⟩. Suppose that the height H k₀ is an integer and that H k > H k₀ for k₀ < k ≤ s. If H k₁ ≥ H k₀ + 1 for some k₁ > k₀, then H j ≥ H k₀ + 1 for every k₁ ≤ j ≤ s: the least height after k₁ is attained at k₁ or is an integer greater than H k₀.

      theorem TauCeti.exists_strictly_rising_of_isAChain {ι : Type u} {M : Type w} {N : Type x} [AddCommGroup M] [AddCommGroup N] {P : RootPairing ι ℤ M N} {b : P.Base} [Finite ι] [P.IsReduced] {lam : M} [P.flip.IsReduced] (hlam : lam ∈ P.dominantChamber b) {s : ℕ} {τ : ℕ → ↥P.weylGroup} {t : ℕ → ℚ} (ht : t 0 = 0) (hchain : ∀ (k : ℕ), k + 1 < s → ∃ (C : (weylCoxeterSystem P b).MinimalCosetRepChain (P.wallIndices b lam)), ↑(RelSeries.head C) = τ k ∧ ↑(RelSeries.last C) = τ (k + 1) ∧ IsAChain (t (k + 1)) lam C) (hmono : ∀ k < s, t k < t (k + 1)) (hs : ∃ (z : ℤ), t s = ↑z) (i : ↥b.support) (hgap : ∃ j ≤ s, ∑ k ∈ Finset.range j, (t (k + 1) - t k) * ↑((P.coroot' ↑i) (τ k • lam)) + 1 ≤ ∑ k ∈ Finset.range s, (t (k + 1) - t k) * ↑((P.coroot' ↑i) (τ k • lam))) :
      ∃ (k₀ : ℕ) (k₁ : ℕ), k₀ < k₁ ∧ k₁ ≤ s ∧ IsLeast ((fun (j : ℕ) => ∑ k ∈ Finset.range j, (t (k + 1) - t k) * ↑((P.coroot' ↑i) (τ k • lam))) '' Set.Iic s) (∑ k ∈ Finset.range k₀, (t (k + 1) - t k) * ↑((P.coroot' ↑i) (τ k • lam))) ∧ (∀ (j : ℕ), k₀ ≤ j → j < k₁ → ∑ k ∈ Finset.range j, (t (k + 1) - t k) * ↑((P.coroot' ↑i) (τ k • lam)) < ∑ k ∈ Finset.range (j + 1), (t (k + 1) - t k) * ↑((P.coroot' ↑i) (τ k • lam)) ∧ ∑ k ∈ Finset.range j, (t (k + 1) - t k) * ↑((P.coroot' ↑i) (τ k • lam)) < ∑ k ∈ Finset.range k₀, (t (k + 1) - t k) * ↑((P.coroot' ↑i) (τ k • lam)) + 1) ∧ ∀ (j : ℕ), k₁ ≤ j → j ≤ s → ∑ k ∈ Finset.range k₀, (t (k + 1) - t k) * ↑((P.coroot' ↑i) (τ k • lam)) + 1 ≤ ∑ k ∈ Finset.range j, (t (k + 1) - t k) * ↑((P.coroot' ↑i) (τ k • lam))

      The rising piece of a Lakshmibai–Seshadri path at a lowering step. With the chains of TauCeti.exists_sum_sub_mul_eq_intCast_of_isAChain, strictly increasing times and an integral final time, write H j = ∑_{k < j} (t_{k+1} - t_k) ⟨τ_k λ, αᵢ^∨⟩ and suppose that the final height H s exceeds some height H j, j ≤ s, by at least one. Then there are vertices k₀ < k₁ ≤ s such that H k₀ is the minimal height, an integer, the height rises strictly from k₀ to k₁ while staying below H k₀ + 1 before k₁, and it is at least H k₀ + 1 from k₁ on. One may take for k₀ the last vertex of minimal height and for k₁ the first later vertex of height at least H k₀ + 1.