Documentation

Iwasawalib.Algebra.CompleteGroupAlgebra.Basic

Complete group algebras #

In this file we state basic definitions of complete group algebras.

We introduce the scoped notation R[ˣG] for the MonoidAlgebra.

If R is a commutative semiring, G is a topological group, then CompleteGroupAlgebra R G (with scpoed notation R⟦ˣG⟧) is defined to be the inverse limit of R[ˣG/N] (Algebra.InverseLimit) as N runs over all open normal subgroups of G.

...

Currently we only defined the multiplicative version (i.e. no CompleteAddGroupAlgebra yet).

Things should go to mathlib #

The monoid algebra over a semiring k generated by the monoid G. It is the type of finite formal k-linear combinations of terms of G, endowed with the convolution product.

Equations
  • One or more equations did not get rendered due to their size.
Instances For
    noncomputable def MonoidAlgebra.augmentation (R : Type u_1) (G : Type u_2) [CommSemiring R] [Monoid G] :

    The augmentation is the map from R[ˣG] to R.

    Equations
    Instances For
      theorem MonoidAlgebra.augmentation_toLinearMap (R : Type u_1) (G : Type u_2) [CommSemiring R] [Monoid G] :
      (augmentation R G) = Finsupp.linearCombination R fun (x : G) => 1
      theorem MonoidAlgebra.augmentation_apply (R : Type u_1) (G : Type u_2) [CommSemiring R] [Monoid G] (x : MonoidAlgebra R G) :
      (augmentation R G) x = Finsupp.sum x fun (x : G) (r : R) => r
      @[simp]
      theorem MonoidAlgebra.augmentation_single (R : Type u_1) (G : Type u_2) [CommSemiring R] [Monoid G] (g : G) (r : R) :
      (augmentation R G) (single g r) = r
      @[simp]
      theorem MonoidAlgebra.augmentation_comp_mapDomainAlgHom (R : Type u_1) (G : Type u_2) [CommSemiring R] [Monoid G] (H : Type u_3) [Monoid H] (f : G →* H) :

      Definition of complete group algebra #

      @[reducible, inline]
      abbrev CompleteGroupAlgebra (R : Type u_1) [CommSemiring R] (G : Type u_2) [Group G] [TopologicalSpace G] :
      Type (max u_1 u_2)

      The CompleteGroupAlgebra R G (with scpoed notation R⟦ˣG⟧) is the inverse limit (Algebra.InverseLimit) of R[ˣG/N] as N runs over open normal subgroups of G.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For

        The CompleteGroupAlgebra R G (with scpoed notation R⟦ˣG⟧) is the inverse limit (Algebra.InverseLimit) of R[ˣG/N] as N runs over open normal subgroups of G.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          theorem CompleteGroupAlgebra.ext (R : Type u_1) [CommSemiring R] (G : Type u_2) [Group G] [TopologicalSpace G] {x y : CompleteGroupAlgebra R G} (hxy : ∀ (N : OpenNormalSubgroup G), x N = y N) :
          x = y
          theorem CompleteGroupAlgebra.ext_iff {R : Type u_1} [CommSemiring R] {G : Type u_2} [Group G] [TopologicalSpace G] {x y : CompleteGroupAlgebra R G} :
          x = y ∀ (N : OpenNormalSubgroup G), x N = y N

          Projection maps #

          The proj is the natural map from R⟦ˣG⟧ to R[ˣG/N] for an open normal subgroup N.

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            @[simp]
            theorem CompleteGroupAlgebra.proj_apply (R : Type u_1) [CommSemiring R] (G : Type u_2) [Group G] [TopologicalSpace G] (N : OpenNormalSubgroup G) (x : CompleteGroupAlgebra R G) :
            (proj R G N) x = x N
            theorem CompleteGroupAlgebra.eq_of_proj_comp_eq (R : Type u_1) [CommSemiring R] (G : Type u_2) [Group G] [TopologicalSpace G] {S : Type u_3} [Semiring S] [Algebra R S] {f g : S →ₐ[R] CompleteGroupAlgebra R G} (hfg : ∀ (N : OpenNormalSubgroup G), (proj R G N).comp f = (proj R G N).comp g) :
            f = g

            Universal property of complete group algebra #

            noncomputable def CompleteGroupAlgebra.lift (R : Type u_1) [CommSemiring R] (G : Type u_2) [Group G] [TopologicalSpace G] {S : Type u_3} [Semiring S] [Algebra R S] (f : (N : OpenNormalSubgroup G) → S →ₐ[R] MonoidAlgebra R (G N.toOpenSubgroup)) (hf : ∀ ⦃N₁ N₂ : OpenNormalSubgroup G⦄ (hle : N₁ N₂), (MonoidAlgebra.mapDomainAlgHom R R (QuotientGroup.map (↑N₁.toOpenSubgroup) (↑N₂.toOpenSubgroup) (MonoidHom.id G) hle)).comp (f N₁) = f N₂) :

            If a family of maps S → R[ˣG/N] satisfy compatibility conditions, then they lift to a map S → R⟦ˣG⟧.

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              @[simp]
              theorem CompleteGroupAlgebra.lift_apply_coe (R : Type u_1) [CommSemiring R] (G : Type u_2) [Group G] [TopologicalSpace G] {S : Type u_3} [Semiring S] [Algebra R S] {f : (N : OpenNormalSubgroup G) → S →ₐ[R] MonoidAlgebra R (G N.toOpenSubgroup)} {hf : ∀ ⦃N₁ N₂ : OpenNormalSubgroup G⦄ (hle : N₁ N₂), (MonoidAlgebra.mapDomainAlgHom R R (QuotientGroup.map (↑N₁.toOpenSubgroup) (↑N₂.toOpenSubgroup) (MonoidHom.id G) hle)).comp (f N₁) = f N₂} (x : S) (N : OpenNormalSubgroup G) :
              ((lift R G f hf) x) N = (f N) x
              theorem CompleteGroupAlgebra.proj_comp_lift (R : Type u_1) [CommSemiring R] (G : Type u_2) [Group G] [TopologicalSpace G] {S : Type u_3} [Semiring S] [Algebra R S] {f : (N : OpenNormalSubgroup G) → S →ₐ[R] MonoidAlgebra R (G N.toOpenSubgroup)} {hf : ∀ ⦃N₁ N₂ : OpenNormalSubgroup G⦄ (hle : N₁ N₂), (MonoidAlgebra.mapDomainAlgHom R R (QuotientGroup.map (↑N₁.toOpenSubgroup) (↑N₂.toOpenSubgroup) (MonoidHom.id G) hle)).comp (f N₁) = f N₂} (N : OpenNormalSubgroup G) :
              (proj R G N).comp (lift R G f hf) = f N
              theorem CompleteGroupAlgebra.eq_lift_of_proj_comp_eq (R : Type u_1) [CommSemiring R] (G : Type u_2) [Group G] [TopologicalSpace G] {S : Type u_3} [Semiring S] [Algebra R S] {f : (N : OpenNormalSubgroup G) → S →ₐ[R] MonoidAlgebra R (G N.toOpenSubgroup)} {hf : ∀ ⦃N₁ N₂ : OpenNormalSubgroup G⦄ (hle : N₁ N₂), (MonoidAlgebra.mapDomainAlgHom R R (QuotientGroup.map (↑N₁.toOpenSubgroup) (↑N₂.toOpenSubgroup) (MonoidHom.id G) hle)).comp (f N₁) = f N₂} (g : S →ₐ[R] CompleteGroupAlgebra R G) (hg : ∀ (N : OpenNormalSubgroup G), (proj R G N).comp g = f N) :
              g = lift R G f hf

              The lift map S → R⟦ˣG⟧ is unique.

              theorem CompleteGroupAlgebra.ker_lift_eq_iInf (R : Type u_1) [CommSemiring R] (G : Type u_2) [Group G] [TopologicalSpace G] {S : Type u_3} [Semiring S] [Algebra R S] {f : (N : OpenNormalSubgroup G) → S →ₐ[R] MonoidAlgebra R (G N.toOpenSubgroup)} {hf : ∀ ⦃N₁ N₂ : OpenNormalSubgroup G⦄ (hle : N₁ N₂), (MonoidAlgebra.mapDomainAlgHom R R (QuotientGroup.map (↑N₁.toOpenSubgroup) (↑N₂.toOpenSubgroup) (MonoidHom.id G) hle)).comp (f N₁) = f N₂} :
              RingHom.ker (lift R G f hf) = ⨅ (N : OpenNormalSubgroup G), RingHom.ker (f N)

              The natural map from R[ˣG] to R⟦ˣG⟧.

              Equations
              Instances For

                If G is a profinite group (i.e. it is CompactSpace and TotallyDisconnectedSpace), then the natural map R[ˣG] → R⟦ˣG⟧ is injective.

                Elements of form r • [g] #

                noncomputable def CompleteGroupAlgebra.single (R : Type u_1) [CommSemiring R] (G : Type u_2) [Group G] [TopologicalSpace G] (g : G) :

                The linear map which maps r to r • [g] in R⟦ˣG⟧.

                Equations
                Instances For
                  @[simp]
                  theorem CompleteGroupAlgebra.single_apply_coe (R : Type u_1) [CommSemiring R] (G : Type u_2) [Group G] [TopologicalSpace G] (g : G) (r : R) (N : OpenNormalSubgroup G) :
                  ((single R G g) r) N = MonoidAlgebra.single (↑g) r
                  theorem CompleteGroupAlgebra.one_def (R : Type u_1) [CommSemiring R] (G : Type u_2) [Group G] [TopologicalSpace G] :
                  1 = (single R G 1) 1
                  @[simp]
                  theorem CompleteGroupAlgebra.augmentation_single (R : Type u_1) [CommSemiring R] (G : Type u_2) [Group G] [TopologicalSpace G] (g : G) (r : R) :
                  (augmentation R G) ((single R G g) r) = r
                  @[simp]
                  theorem CompleteGroupAlgebra.ofMonoidAlgebra_single (R : Type u_1) [CommSemiring R] (G : Type u_2) [Group G] [TopologicalSpace G] (g : G) (r : R) :
                  @[simp]
                  theorem CompleteGroupAlgebra.single_eq_zero (R : Type u_1) [CommSemiring R] (G : Type u_2) [Group G] [TopologicalSpace G] (g : G) (r : R) :
                  (single R G g) r = 0 r = 0
                  theorem CompleteGroupAlgebra.single_ne_zero (R : Type u_1) [CommSemiring R] (G : Type u_2) [Group G] [TopologicalSpace G] (g : G) (r : R) :
                  (single R G g) r 0 r 0
                  @[simp]
                  theorem CompleteGroupAlgebra.single_mul_single (R : Type u_1) [CommSemiring R] (G : Type u_2) [Group G] [TopologicalSpace G] (g g' : G) (r r' : R) :
                  (single R G g) r * (single R G g') r' = (single R G (g * g')) (r * r')
                  @[simp]
                  theorem CompleteGroupAlgebra.single_pow (R : Type u_1) [CommSemiring R] (G : Type u_2) [Group G] [TopologicalSpace G] (g : G) (r : R) (n : ) :
                  (single R G g) r ^ n = (single R G (g ^ n)) (r ^ n)

                  The map g ↦ [g] #

                  noncomputable def CompleteGroupAlgebra.of (R : Type u_1) [CommSemiring R] (G : Type u_2) [Group G] [TopologicalSpace G] :

                  The map which maps g to [g] in R⟦ˣG⟧.

                  Equations
                  Instances For
                    @[simp]
                    theorem CompleteGroupAlgebra.of_apply (R : Type u_1) [CommSemiring R] (G : Type u_2) [Group G] [TopologicalSpace G] (a✝ : G) :
                    (of R G) a✝ = (single R G a✝) 1

                    If G is a profinite group (i.e. it is CompactSpace and TotallyDisconnectedSpace) and R is not trivial, then the map G → R⟦ˣG⟧, g ↦ [g] is injective.

                    The map R⟦ˣG⟧ → R⟦ˣH⟧ induced by G → H #

                    noncomputable def CompleteGroupAlgebra.map (R : Type u_1) [CommSemiring R] {G : Type u_2} [Group G] [TopologicalSpace G] {H : Type u_3} [Group H] [TopologicalSpace H] (f : G →* H) (hf : Continuous f) :

                    The map R⟦ˣG⟧ → R⟦ˣH⟧ induced by a continuous group homomorphism G → H.

                    Equations
                    • One or more equations did not get rendered due to their size.
                    Instances For
                      theorem CompleteGroupAlgebra.map_apply_coe (R : Type u_1) [CommSemiring R] {G : Type u_2} [Group G] [TopologicalSpace G] {H : Type u_3} [Group H] [TopologicalSpace H] (f : G →* H) (hf : Continuous f) (x : CompleteGroupAlgebra R G) (N : OpenNormalSubgroup H) :
                      @[simp]
                      theorem CompleteGroupAlgebra.map_single (R : Type u_1) [CommSemiring R] {G : Type u_2} [Group G] [TopologicalSpace G] {H : Type u_3} [Group H] [TopologicalSpace H] (f : G →* H) (hf : Continuous f) (g : G) (r : R) :
                      (map R f hf) ((single R G g) r) = (single R H (f g)) r
                      theorem CompleteGroupAlgebra.map_comp_of (R : Type u_1) [CommSemiring R] {G : Type u_2} [Group G] [TopologicalSpace G] {H : Type u_3} [Group H] [TopologicalSpace H] (f : G →* H) (hf : Continuous f) :
                      (↑(map R f hf)).comp (of R G) = (of R H).comp f
                      @[simp]
                      theorem CompleteGroupAlgebra.augmentation_map (R : Type u_1) [CommSemiring R] {G : Type u_2} [Group G] [TopologicalSpace G] {H : Type u_3} [Group H] [TopologicalSpace H] (f : G →* H) (hf : Continuous f) (x : CompleteGroupAlgebra R G) :
                      (augmentation R H) ((map R f hf) x) = (augmentation R G) x
                      @[simp]
                      theorem CompleteGroupAlgebra.augmentation_comp_map (R : Type u_1) [CommSemiring R] {G : Type u_2} [Group G] [TopologicalSpace G] {H : Type u_3} [Group H] [TopologicalSpace H] (f : G →* H) (hf : Continuous f) :
                      (augmentation R H).comp (map R f hf) = augmentation R G
                      theorem CompleteGroupAlgebra.map_comp_map (R : Type u_1) [CommSemiring R] {G : Type u_2} [Group G] [TopologicalSpace G] {H : Type u_3} [Group H] [TopologicalSpace H] (f : G →* H) (hf : Continuous f) {K : Type u_4} [Group K] [TopologicalSpace K] (g : H →* K) (hg : Continuous g) :
                      (map R g hg).comp (map R f hf) = map R (g.comp f)

                      The map R⟦ˣG⟧ ≃ R⟦ˣH⟧ induced by G ≃ H #

                      noncomputable def CompleteGroupAlgebra.congr (R : Type u_1) [CommSemiring R] {G : Type u_2} [Group G] [TopologicalSpace G] {H : Type u_3} [Group H] [TopologicalSpace H] (f : G ≃ₜ* H) :

                      The map R⟦ˣG⟧ ≃ R⟦ˣH⟧ induced by a continuous group isomorphism G ≃ H.

                      Equations
                      • One or more equations did not get rendered due to their size.
                      Instances For
                        @[simp]
                        theorem CompleteGroupAlgebra.coe_congr (R : Type u_1) [CommSemiring R] {G : Type u_2} [Group G] [TopologicalSpace G] {H : Type u_3} [Group H] [TopologicalSpace H] (f : G ≃ₜ* H) :
                        (congr R f) = map R f
                        @[simp]
                        theorem CompleteGroupAlgebra.congr_symm (R : Type u_1) [CommSemiring R] {G : Type u_2} [Group G] [TopologicalSpace G] {H : Type u_3} [Group H] [TopologicalSpace H] (f : G ≃ₜ* H) :
                        (congr R f).symm = congr R f.symm
                        theorem CompleteGroupAlgebra.coe_congr_symm (R : Type u_1) [CommSemiring R] {G : Type u_2} [Group G] [TopologicalSpace G] {H : Type u_3} [Group H] [TopologicalSpace H] (f : G ≃ₜ* H) :
                        (congr R f).symm = map R f.symm
                        @[simp]
                        theorem CompleteGroupAlgebra.congr_single (R : Type u_1) [CommSemiring R] {G : Type u_2} [Group G] [TopologicalSpace G] {H : Type u_3} [Group H] [TopologicalSpace H] (f : G ≃ₜ* H) (g : G) (r : R) :
                        (congr R f) ((single R G g) r) = (single R H (f g)) r
                        theorem CompleteGroupAlgebra.congr_trans_congr (R : Type u_1) [CommSemiring R] {G : Type u_2} [Group G] [TopologicalSpace G] {H : Type u_3} [Group H] [TopologicalSpace H] (f : G ≃ₜ* H) {K : Type u_4} [Group K] [TopologicalSpace K] (g : H ≃ₜ* K) :
                        (congr R f).trans (congr R g) = congr R (f.trans g)

                        Isomorphism to inverse limit by taking a neighborhood basis #

                        noncomputable def CompleteGroupAlgebra.equivInverseLimit.auxIndex {G : Type u_2} [Group G] [TopologicalSpace G] {I : Type u_3} [Preorder I] (N : IOpenNormalSubgroup G) (hN : (nhds 1).HasAntitoneBasis fun (i : I) => (N i)) (M : OpenNormalSubgroup G) :
                        I

                        If { N_i } is a family of open normal subgroups forming a neighborhood basis of 1, then given any open normal subgroup M, there exists i such that N_i ≤ M.

                        Equations
                        Instances For
                          theorem CompleteGroupAlgebra.equivInverseLimit.auxIndex_spec {G : Type u_2} [Group G] [TopologicalSpace G] {I : Type u_3} [Preorder I] (N : IOpenNormalSubgroup G) (hN : (nhds 1).HasAntitoneBasis fun (i : I) => (N i)) (M : OpenNormalSubgroup G) :
                          N (auxIndex N hN M) M
                          @[reducible, inline]
                          abbrev CompleteGroupAlgebra.InverseLimit (R : Type u_1) [CommSemiring R] {G : Type u_2} [Group G] [TopologicalSpace G] {I : Type u_3} [Preorder I] (N : IOpenNormalSubgroup G) (hN : (nhds 1).HasAntitoneBasis fun (i : I) => (N i)) :
                          Type (max u_3 u_1 u_2)

                          If { N_i } is a family of open normal subgroups forming a neighborhood basis of 1, then CompleteGroupAlgebra.InverseLimit is the inverse limit of R[ˣG/N_i].

                          Equations
                          • One or more equations did not get rendered due to their size.
                          Instances For
                            noncomputable def CompleteGroupAlgebra.toInverseLimit (R : Type u_1) [CommSemiring R] {G : Type u_2} [Group G] [TopologicalSpace G] {I : Type u_3} [Preorder I] (N : IOpenNormalSubgroup G) (hN : (nhds 1).HasAntitoneBasis fun (i : I) => (N i)) :

                            If { N_i } is a family of open normal subgroups forming a neighborhood basis of 1, then there is a map from R⟦ˣG⟧ to the inverse limit of R[ˣG/N_i].

                            Equations
                            • One or more equations did not get rendered due to their size.
                            Instances For
                              noncomputable def CompleteGroupAlgebra.ofInverseLimit (R : Type u_1) [CommSemiring R] {G : Type u_2} [Group G] [TopologicalSpace G] {I : Type u_3} [Preorder I] (N : IOpenNormalSubgroup G) (hN : (nhds 1).HasAntitoneBasis fun (i : I) => (N i)) [IsDirected I LE.le] :

                              If { N_i } is a family of open normal subgroups forming a neighborhood basis of 1, then there is a map from the inverse limit of R[ˣG/N_i] to R⟦ˣG⟧.

                              Equations
                              • One or more equations did not get rendered due to their size.
                              Instances For
                                theorem CompleteGroupAlgebra.toInverseLimit_comp_ofInverseLimit (R : Type u_1) [CommSemiring R] {G : Type u_2} [Group G] [TopologicalSpace G] {I : Type u_3} [Preorder I] (N : IOpenNormalSubgroup G) (hN : (nhds 1).HasAntitoneBasis fun (i : I) => (N i)) [IsDirected I LE.le] :
                                noncomputable def CompleteGroupAlgebra.equivInverseLimit (R : Type u_1) [CommSemiring R] {G : Type u_2} [Group G] [TopologicalSpace G] {I : Type u_3} [Preorder I] (N : IOpenNormalSubgroup G) (hN : (nhds 1).HasAntitoneBasis fun (i : I) => (N i)) [IsDirected I LE.le] :

                                If { N_i } is a family of open normal subgroups forming a neighborhood basis of 1, then there is an isomorphism from R⟦ˣG⟧ to the inverse limit of R[ˣG/N_i].

                                Equations
                                Instances For