Documentation

CompPoly.Data.RingTheory.AlgebraTower

Tower of Algebras and Tower of Algebra Equivalences #

This file contains definitions, theorems, instances that are used in defining tower of algebras and their equivalences.

Main definitions #

class AlgebraTower {ι : Type u_1} [Preorder ι] (AT : ιType u_2) [(i : ι) → CommSemiring (AT i)] :
Type (max u_1 u_2)

A tower of algebras is a sequence of algebras AT i indexed over a preorder ι with the following data:

  • algebraMap : AT i →+* AT j is a ring homomorphism from AT i to AT j for all i ≤ j
  • commutes' is a proof that the ring homomorphism commutes with the multiplication
  • coherence': A tower of algebras is coherent if the algebra maps satisfy the coherence condition: the direct map from i to k equals the composition of maps i → j → k.
Instances
    @[reducible, inline]
    abbrev AlgebraTower.toAlgebra {ι : Type u_1} [Preorder ι] {A : ιType u_2} [(i : ι) → CommSemiring (A i)] [AlgebraTower A] {i j : ι} (h : i j) :
    Algebra (A i) (A j)
    Instances For
      @[simp]
      instance AlgebraTower.toIsScalarTower {ι : Type u_1} [Preorder ι] {C : ιType u_4} [(i : ι) → CommSemiring (C i)] (a : AlgebraTower C) {i j k : ι} (h1 : i j) (h2 : j k) :
      IsScalarTower (C i) (C j) (C k)
      structure AlgebraTowerEquiv {ι : Type u_1} [Preorder ι] (A : ιType u_5) [(i : ι) → CommSemiring (A i)] [a : AlgebraTower A] (B : ιType u_6) [(i : ι) → CommSemiring (B i)] [b : AlgebraTower B] :
      Type (max (max u_1 u_5) u_6)
      Instances For
        theorem AlgebraTowerEquiv.commutesRight' {ι : Type u_1} [Preorder ι] {A : ιType u_2} [(i : ι) → CommSemiring (A i)] [AlgebraTower A] {B : ιType u_3} [(i : ι) → CommSemiring (B i)] [AlgebraTower B] (e : AlgebraTowerEquiv A B) {i j : ι} (h : i j) (r : B i) :
        def AlgebraTowerEquiv.symm {ι : Type u_1} [Preorder ι] {A : ιType u_2} [(i : ι) → CommSemiring (A i)] [AlgebraTower A] {B : ιType u_3} [(i : ι) → CommSemiring (B i)] [AlgebraTower B] (e : AlgebraTowerEquiv A B) :
        Instances For
          def AlgebraTowerEquiv.algebraMapRightUp {ι : Type u_1} [Preorder ι] {A : ιType u_2} [(i : ι) → CommSemiring (A i)] [AlgebraTower A] {B : ιType u_3} [(i : ι) → CommSemiring (B i)] [AlgebraTower B] (e : AlgebraTowerEquiv A B) (i j : ι) (h : i j) :
          A i →+* B j
          Instances For
            def AlgebraTowerEquiv.algebraMapLeftUp {ι : Type u_1} [Preorder ι] {A : ιType u_2} [(i : ι) → CommSemiring (A i)] [AlgebraTower A] {B : ιType u_3} [(i : ι) → CommSemiring (B i)] [AlgebraTower B] (e : AlgebraTowerEquiv A B) (i j : ι) (h : i j) :
            B i →+* A j
            Instances For
              @[reducible, inline]
              abbrev AlgebraTowerEquiv.toAlgebraOverLeft {ι : Type u_1} [Preorder ι] {A : ιType u_2} [(i : ι) → CommSemiring (A i)] [AlgebraTower A] {B : ιType u_3} [(i : ι) → CommSemiring (B i)] [AlgebraTower B] (e : AlgebraTowerEquiv A B) (i j : ι) (h : i j) :
              Algebra (A i) (B j)
              Instances For
                @[reducible, inline]
                abbrev AlgebraTowerEquiv.toAlgebraOverRight {ι : Type u_1} [Preorder ι] {A : ιType u_2} [(i : ι) → CommSemiring (A i)] [AlgebraTower A] {B : ιType u_3} [(i : ι) → CommSemiring (B i)] [AlgebraTower B] (e : AlgebraTowerEquiv A B) (i j : ι) (h : i j) :
                Algebra (B i) (A j)
                Instances For
                  def AlgebraTowerEquiv.toAlgEquivOverLeft {ι : Type u_1} [Preorder ι] {A : ιType u_2} [(i : ι) → CommSemiring (A i)] [AlgebraTower A] {B : ιType u_3} [(i : ι) → CommSemiring (B i)] [AlgebraTower B] (e : AlgebraTowerEquiv A B) (i j : ι) (h : i j) :
                  A j ≃ₐ[A i] B j
                  Instances For
                    def AlgebraTowerEquiv.toAlgEquivOverRight {ι : Type u_1} [Preorder ι] {A : ιType u_2} [(i : ι) → CommSemiring (A i)] [AlgebraTower A] {B : ιType u_3} [(i : ι) → CommSemiring (B i)] [AlgebraTower B] (e : AlgebraTowerEquiv A B) (i j : ι) (h : i j) :
                    B j ≃ₐ[B i] A j
                    Instances For