Documentation

TauCeti.Algebra.WordFiltration.Basic

The word filtration generated by a linear map #

Let A be an associative algebra and let f : M →ₗ[R] A be a linear family of elements of A. This file defines TauCeti.Algebra.wordFiltration f k, the submodule spanned by products of at most k elements in the range of f. This is the canonical increasing filtration on any algebra generated by a linear family.

The construction is factored out of the Clifford and universal-enveloping-algebra filtrations. In both cases the defining relations can lower word length, so the quotient is filtered rather than graded by length. The generic construction records the properties independent of those relations: monotonicity, multiplicativity, the first two steps, comparison with powers of the range of f, and exhaustivity onto the subalgebra generated by f.

Main definitions and results #

def TauCeti.Algebra.wordFiltration {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) (k : ℕ) :

The degree filtration generated by a linear map f : M →ₗ[R] A.

The k-th step is the k-th submodule power of the scalars together with the range of f. It is equivalently the R-span of products of at most k elements in the range of f, including the empty product; see wordFiltration_le_iff.

Equations
Instances For
    theorem TauCeti.Algebra.wordFiltration_eq_pow {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) (k : ℕ) :
    wordFiltration f k = (1 ⊔ f.range) ^ k

    The defining equation of the word filtration: degree k is the k-th submodule power of the scalars together with the range of f.

    def TauCeti.Algebra.wordFiltrationPrevious {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) :
    ℕ → Submodule R A

    The step preceding degree k, with bottom in degree zero.

    Equations
    Instances For
      @[simp]

      The preceding word filtration is trivial in degree zero.

      @[simp]
      theorem TauCeti.Algebra.wordFiltrationPrevious_succ {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) (k : ℕ) :

      In successor degree, the preceding word filtration is the previous filtration step.

      theorem TauCeti.Algebra.prod_map_mem_range_pow {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) (l : List M) :
      (List.map (⇑f) l).prod ∈ f.range ^ l.length

      A word of length n lies in the n-th power of the range of the generators.

      theorem TauCeti.Algebra.span_prod_map_eq_range_pow_of_span {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) {ι : Type u_1} (e : ι → M) (he : Submodule.span R (Set.range e) = ⊤) (n : ℕ) :
      Submodule.span R {a : A | ∃ (l : List ι), l.length = n ∧ (List.map (fun (i : ι) => f (e i)) l).prod = a} = f.range ^ n

      Words of length exactly n in a spanning family span the n-th power of the generator range.

      theorem TauCeti.Algebra.span_prod_map_eq_range_pow {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) (n : ℕ) :
      Submodule.span R {a : A | ∃ (l : List M), l.length = n ∧ (List.map (⇑f) l).prod = a} = f.range ^ n

      Words of length exactly n span the n-th power of the generator range.

      theorem TauCeti.Algebra.prod_map_mem_wordFiltration {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) {k : ℕ} {l : List M} (hl : l.length ≤ k) :

      A word of length at most k belongs to the k-th word-filtration step.

      theorem TauCeti.Algebra.wordFiltration_le_iff {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) {k : ℕ} {p : Submodule R A} :
      wordFiltration f k ≤ p ↔ ∀ (l : List M), l.length ≤ k → (List.map (⇑f) l).prod ∈ p

      A submodule contains the k-th filtration step exactly when it contains every word of length at most k.

      theorem TauCeti.Algebra.span_prod_map_eq_wordFiltration {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) {ι : Type u_1} (e : ι → M) (he : Submodule.span R (Set.range e) = ⊤) (k : ℕ) :
      Submodule.span R {a : A | ∃ (word : List ι), word.length ≤ k ∧ (List.map (fun (i : ι) => f (e i)) word).prod = a} = wordFiltration f k

      Products of at most k images of a spanning family span the k-th word-filtration step.

      theorem TauCeti.Algebra.map_wordFiltration_le {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) {N : Type u_1} {B : Type u_2} [Semiring B] [Algebra R B] [AddCommMonoid N] [Module R N] (g : A →ₐ[R] B) (f' : N →ₗ[R] B) (h : ∀ (m : M), g (f m) ∈ wordFiltration f' 1) (k : ℕ) :

      An algebra homomorphism that sends each source generator into target filtration degree one preserves word-filtration degree.

      theorem TauCeti.Algebra.map_mem_wordFiltration {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) {N : Type u_1} {B : Type u_2} [Semiring B] [Algebra R B] [AddCommMonoid N] [Module R N] (g : A →ₐ[R] B) (f' : N →ₗ[R] B) (h : ∀ (m : M), g (f m) ∈ wordFiltration f' 1) {k : ℕ} {x : A} (hx : x ∈ wordFiltration f k) :

      The membership form of map_wordFiltration_le: an algebra homomorphism that sends source generators into target filtration degree one preserves every filtration step.

      theorem TauCeti.Algebra.map_wordFiltration_eq {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) {N : Type u_1} {B : Type u_2} [Semiring B] [Algebra R B] [AddCommMonoid N] [Module R N] (g : A →ₐ[R] B) (f' : N →ₗ[R] B) (h : Submodule.map g.toLinearMap (1 ⊔ f.range) = 1 ⊔ f'.range) (k : ℕ) :

      An algebra homomorphism that maps one scalar-and-generator submodule exactly onto another maps every corresponding word-filtration step exactly onto the other.

      theorem TauCeti.Algebra.map_wordFiltration_eq_of_surjective {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) {N : Type u_1} {B : Type u_2} [Semiring B] [Algebra R B] [AddCommMonoid N] [Module R N] (q : M →ₗ[R] N) (hq : Function.Surjective ⇑q) (g : A →ₐ[R] B) (f' : N →ₗ[R] B) (h : g.toLinearMap ∘ₗ f = f' ∘ₗ q) (k : ℕ) :

      A compatible algebra homomorphism maps every word-filtration step onto the corresponding target step when its map on the generating modules is surjective.

      theorem TauCeti.Algebra.wordFiltration_mono {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) :

      The word filtration is increasing.

      @[simp]
      theorem TauCeti.Algebra.wordFiltration_zero {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) :

      The zeroth word-filtration step consists of the scalars.

      theorem TauCeti.Algebra.one_mem_wordFiltration {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) (k : ℕ) :

      The empty word puts 1 in every filtration step.

      theorem TauCeti.Algebra.algebraMap_mem_wordFiltration {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) (r : R) (k : ℕ) :

      Every scalar belongs to every filtration step.

      theorem TauCeti.Algebra.apply_mem_wordFiltration_one {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) (m : M) :

      Each generator belongs to the first filtration step.

      The range of the generating linear map lies in the first filtration step.

      theorem TauCeti.Algebra.wordFiltration_mul {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) (i j : ℕ) :

      Multiplication adds word-filtration degrees. In fact the product of the two filtration steps equals the step in the sum degree.

      theorem TauCeti.Algebra.mul_mem_wordFiltration {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) {i j : ℕ} {x y : A} (hx : x ∈ wordFiltration f i) (hy : y ∈ wordFiltration f j) :
      x * y ∈ wordFiltration f (i + j)

      The elementwise multiplicativity of the word filtration.

      theorem TauCeti.Algebra.mul_mem_wordFiltrationPrevious_left {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) {i j : ℕ} {x y : A} (hx : x ∈ wordFiltrationPrevious f i) (hy : y ∈ wordFiltration f j) :

      Multiplying an element of degree strictly below i by an element of degree at most j produces an element of degree strictly below i + j.

      theorem TauCeti.Algebra.mul_mem_wordFiltrationPrevious_right {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) {i j : ℕ} {x y : A} (hx : x ∈ wordFiltration f i) (hy : y ∈ wordFiltrationPrevious f j) :

      Multiplying an element of degree at most i by an element of degree strictly below j produces an element of degree strictly below i + j.

      theorem TauCeti.Algebra.range_pow_le_wordFiltration {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) (n : ℕ) :

      The n-th power of the generator range lies in filtration degree n.

      theorem TauCeti.Algebra.wordFiltration_eq_iSup_pow {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) (k : ℕ) :
      wordFiltration f k = ⨆ (i : { i : ℕ // i ≤ k }), f.range ^ ↑i

      The k-th word-filtration step is the supremum of the powers of the generator range of degree at most k.

      theorem TauCeti.Algebra.wordFiltration_succ_eq_sup {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) (k : ℕ) :
      wordFiltration f (k + 1) = wordFiltration f k ⊔ f.range ^ (k + 1)

      The successor filtration step adjoins words of exactly the new degree.

      @[simp]
      theorem TauCeti.Algebra.wordFiltration_one {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) :
      wordFiltration f 1 = 1 ⊔ f.range

      The first filtration step consists of the scalars and the generator range.

      theorem TauCeti.Algebra.wordFiltration_pow {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) (i n : ℕ) :

      Powers of a filtration step multiply its degree.

      The word filtration exhausts exactly the subalgebra generated by the range of f.

      theorem TauCeti.Algebra.exists_mem_wordFiltration_of_iSup_eq_top {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) (h : ⨆ (k : ℕ), wordFiltration f k = ⊤) (a : A) :
      ∃ (k : ℕ), a ∈ wordFiltration f k

      An exhaustive word filtration covers the algebra elementwise: if the filtration steps supremum to ⊤, every element lies in one of them.

      theorem TauCeti.Algebra.exists_mem_notMem_wordFiltrationPrevious {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) {a : A} (ha : a ≠ 0) (hex : ∃ (k : ℕ), a ∈ wordFiltration f k) :
      ∃ (k : ℕ), a ∈ wordFiltration f k ∧ a ∉ wordFiltrationPrevious f k

      A nonzero element of an exhaustive word filtration has a leading degree: a degree it belongs to but whose preceding step it misses.

      @[reducible, inline]
      abbrev TauCeti.Algebra.wordFiltration.previousRestricted {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) (k : ℕ) :

      The preceding word-filtration step, viewed as a submodule of the current step.

      Equations
      Instances For
        @[simp]

        Membership in the restricted preceding step is ambient membership in the preceding step.

        @[simp]

        The restricted preceding word filtration is trivial in degree zero.

        @[simp]

        In successor degree, the restricted preceding word filtration is the previous step viewed inside the current step.

        @[simp]
        theorem TauCeti.Algebra.wordFiltration.wordFiltration_coe_cast {R : Type u} {M : Type v} {A : Type w} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : M →ₗ[R] A) {i j : ℕ} (h : i = j) (x : ↥(wordFiltration f i)) :
        ↑(cast ⋯ x) = ↑x

        Casting a filtered element between equal degrees does not change its value in the ambient algebra.

        Word filtrations are multiplicative families of submodules.

        The word filtration, with the preceding step at each degree, is a ring filtration.