Towers of algebras and their equivalences #
An AlgebraTower is a preorder-indexed family of commutative semirings with ring
homomorphisms between comparable levels. Self-maps are identities, and the maps compose
along chains of indices. Each map induces an algebra structure on its target, and
composition gives compatible scalar actions across three levels.
AlgebraTower.ofNatStep constructs a natural-number-indexed tower by composing chosen
homomorphisms between adjacent levels. These homomorphisms need not be injective.
An AlgebraTowerEquiv consists of ring equivalences at each level that commute with
the tower maps.
A preorder-indexed family of commutative semirings with compatible ring homomorphisms.
The map from a level to itself is the identity. For i ≤ j ≤ k, the map from i to k
is the composite of the maps from i to j and from j to k.
Ring homomorphisms from
AT itoAT jfor alli ≤ j.The ring homomorphism from level
ito itself is the identity.- commutes' (i j : ι) (h : i ≤ j) (r : AT i) (x : AT j) : (AlgebraTower.algebraMap i j h) r * x = x * (AlgebraTower.algebraMap i j h) r
Every image element commutes with every element of the target semiring.
- coherence' (i j k : ι) (h1 : i ≤ j) (h2 : j ≤ k) : AlgebraTower.algebraMap i k ⋯ = (AlgebraTower.algebraMap j k h2).comp (AlgebraTower.algebraMap i j h1)
The map from
itokis the composite of the maps fromitojandjtok.
Instances
Construct a tower by composing chosen ring homomorphisms between adjacent levels.
The map from a level to itself is the identity. The map from i to j + 1, for i ≤ j,
is step j composed with the map from i to j. No injectivity assumption is required.
Instances For
Extending a constructed tower map by one level composes it with the chosen next map.
The tower map from level i to itself is the identity for every proof of i ≤ i.
The tower map from level i to itself fixes every element of that level.
Instances For
- commutesLeft' (i j : ι) (h : i ≤ j) (r : A i) : (AlgebraTower.algebraMap i j h) ((self.toRingEquiv i) r) = (self.toRingEquiv j) ((AlgebraTower.algebraMap i j h) r)