Documentation

Toric.GroupScheme.HopfAffine

The equivalence between Hopf algebras and affine group schemes #

This file constructs Spec as a functor from R-Hopf algebras to group schemes over Spec R, shows it is full and faithful, and has affine group schemes as essential image.

We want to show that Hopf algebras correspond to affine group schemes. This can easily be done categorically assuming both categories on either side are defined thoughtfully. However, the categorical version will not be workable with if we do not also have links to the non-categorical notions. Therefore, one solution would be to build the left, top and right edges of the following diagram so that the bottom edge can be obtained by composing the three.

  Cogrp Mod_R ≌ Grp AffSch_{Spec R} ≌ Aff Grp Sch_{Spec R}
      ↑ ↓                                      ↑ ↓
R-Hopf algebras         ≃       Affine group schemes over Spec R

If we do not care about going back from affine group schemes over Spec R to R-Hopf algebras (eg because all our affine group schemes are given as the Spec of some algebra), then we can follow the following simpler diagram:

  Cogrp Mod_R   ⥤        Grp Sch_{Spec R}
      ↑ ↓                        ↓
R-Hopf algebras → Affine group schemes over Spec R

where the top comes from the essentially surjective functor Cogrp Mod_R ⥤ Grp Sch_{Spec R}, so that in particular we do not easily know that its inverse is given by Γ.

Left edge: R-Hopf algebras correspond to cogroup objects under R #

Ways to turn an unbundled R-Hopf algebra into a bundled cogroup object under R, and vice versa, are already provided in Toric.Mathlib.Algebra.Category.CommHopfAlgCat.

Top edge: Spec as a functor on Hopf algebras #

In this section we construct Spec as a functor from R-Hopf algebras to affine group schemes over Spec R.

@[reducible, inline]

Spec as a functor from R-algebras to schemes over Spec R.

Equations
Instances For
    @[reducible, inline]

    The Gamma functor as a functor from schemes over Spec R to R-algebras.

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

      Spec is full on R-algebras.

      Spec is faithful on R-algebras.

      Spec is fully faithful on R-algebras, with inverse Gamma.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        @[reducible, inline]

        Spec as a functor from R-bialgebras to monoid schemes over Spec R.

        Equations
        Instances For

          Spec is full on R-bialgebras.

          Spec is faithful on R-bialgebras.

          Spec is fully faithful on R-bialgebras, with inverse Gamma.

          Equations
          Instances For
            @[reducible, inline]

            Spec as a functor from R-Hopf algebras to group schemes over Spec R.

            Equations
            Instances For

              Spec is full on R-Hopf algebras.

              Spec is faithful on R-Hopf algebras.

              Spec is fully faithful on R-Hopf algebras, with inverse Gamma.

              Equations
              Instances For
                instance AlgebraicGeometry.Scheme.instIsOverMapOfHomSpecOf_toric {R S T : Type u} [CommRing R] [CommRing S] [CommRing T] [Algebra R S] [Algebra R T] (f : S →ₐ[R] T) :
                Hom.IsOver (Spec.map (CommRingCat.ofHom f.toRingHom)) (Spec { carrier := R, commRing := inst✝ })
                noncomputable def AlgebraicGeometry.Scheme.Spec.mapMulEquiv {R S T : Type u} [CommRing R] [CommRing S] [CommRing T] [Bialgebra R S] [Algebra R T] :
                (S →ₐ[R] T) ≃* ((Spec { carrier := T, commRing := inst✝ }).asOver (Spec { carrier := R, commRing := inst✝¹ }) (Spec { carrier := S, commRing := inst✝² }).asOver (Spec { carrier := R, commRing := inst✝¹ }))

                Spec.map as a MulEquiv on hom-sets.

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

                  The adjunction between Spec and Γ as functors between commutative R-algebras and schemes over Spec R.

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

                    The global sections of an affine scheme over Spec R are a R-algebra.

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

                    The global sections of an affine monoid scheme over Spec R are a R-bialgebra.

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

                    The global sections of an affine group scheme over Spec R are a R-Hopf algebra.

                    Equations
                    • One or more equations did not get rendered due to their size.
                    noncomputable def AlgebraicGeometry.Scheme.pullbackSpecIso' (R S T : Type u) [CommRing R] [CommRing S] [CommRing T] [Algebra R S] [Algebra R T] :
                    CategoryTheory.Limits.pullback (Spec { carrier := S, commRing := inst✝ } Spec { carrier := R, commRing := inst✝¹ }) (Spec { carrier := T, commRing := inst✝² } Spec { carrier := R, commRing := inst✝¹ }) Spec { carrier := TensorProduct R S T, commRing := Algebra.TensorProduct.instCommRing }

                    The isomorphism between the fiber product of two schemes Spec S and Spec T over a scheme Spec R and the Spec of the tensor product S ⊗[R] T.

                    Equations
                    • One or more equations did not get rendered due to their size.
                    Instances For
                      theorem AlgebraicGeometry.Scheme.pullbackSpecIso'_symmetry {R S T : Type u} [CommRing R] [CommRing S] [CommRing T] [Algebra R S] [Algebra R T] :
                      (CategoryTheory.Limits.pullbackSymmetry (Spec { carrier := T, commRing := inst✝ } Spec { carrier := R, commRing := inst✝¹ }) (Spec { carrier := S, commRing := inst✝² } Spec { carrier := R, commRing := inst✝¹ }) ≪≫ pullbackSpecIso' R S T).hom = CategoryTheory.CategoryStruct.comp (pullbackSpecIso' R T S).hom (Spec.map (CommRingCat.ofHom (Algebra.TensorProduct.comm R S T)))
                      instance AlgebraicGeometry.Scheme.instIsOverHomTransPullbackSymmetryOverSpecOfInferInstanceOverClassPullbackSpecIso' {R S T : Type u} [CommRing R] [CommRing S] [CommRing T] [Algebra R S] [Algebra R T] :
                      Hom.IsOver (CategoryTheory.Limits.pullbackSymmetry (Spec { carrier := T, commRing := inst✝ } Spec { carrier := R, commRing := inst✝¹ }) (Spec { carrier := S, commRing := inst✝² } Spec { carrier := R, commRing := inst✝¹ }) ≪≫ pullbackSpecIso' R S T).hom (Spec { carrier := S, commRing := inst✝² })
                      theorem AlgebraicGeometry.Scheme.μ_pullback_left_fst (R S T : Type u) [CommRing R] [CommRing S] [CommRing T] [Algebra R S] [Algebra R T] :
                      CategoryTheory.CategoryStruct.comp (CategoryTheory.Functor.LaxMonoidal.μ (CategoryTheory.Over.pullback (Spec.map (CommRingCat.ofHom (algebraMap R S)))) (CategoryTheory.Over.mk (Spec.map (CommRingCat.ofHom (algebraMap R T)))) (CategoryTheory.Over.mk (Spec.map (CommRingCat.ofHom (algebraMap R T))))).left (CategoryTheory.Limits.pullback.fst (CategoryTheory.MonoidalCategoryStruct.tensorObj (CategoryTheory.Over.mk (Spec.map (CommRingCat.ofHom (algebraMap R T)))) (CategoryTheory.Over.mk (Spec.map (CommRingCat.ofHom (algebraMap R T))))).hom (Spec.map (CommRingCat.ofHom (algebraMap R S)))) = CategoryTheory.CategoryStruct.comp (CategoryTheory.MonoidalCategoryStruct.tensorHom (Hom.asOver (CategoryTheory.Limits.pullbackSymmetry (Spec { carrier := T, commRing := inst✝ } Spec { carrier := R, commRing := inst✝¹ }) (Spec { carrier := S, commRing := inst✝² } Spec { carrier := R, commRing := inst✝¹ }) ≪≫ pullbackSpecIso' R S T).hom (Spec { carrier := S, commRing := inst✝² })) (Hom.asOver (CategoryTheory.Limits.pullbackSymmetry (Spec { carrier := T, commRing := inst✝ } Spec { carrier := R, commRing := inst✝¹ }) (Spec { carrier := S, commRing := inst✝² } Spec { carrier := R, commRing := inst✝¹ }) ≪≫ pullbackSpecIso' R S T).hom (Spec { carrier := S, commRing := inst✝² }))).left (CategoryTheory.CategoryStruct.comp (pullbackSpecIso S (TensorProduct R S T) (TensorProduct R S T)).hom (CategoryTheory.CategoryStruct.comp (Spec.map (CommRingCat.ofHom (Algebra.TensorProduct.mapRingHom (algebraMap R S) Algebra.TensorProduct.includeRight.toRingHom Algebra.TensorProduct.includeRight.toRingHom ))) (pullbackSpecIso R T T).inv))
                      instance AlgebraicGeometry.Scheme.instIsMonHomOverSpecOfAsOverHomTransPullbackSymmetryOverInferInstanceOverClassPullbackSpecIso' {R S T : Type u} [CommRing R] [CommRing S] [CommRing T] [Algebra R S] [Bialgebra R T] :
                      CategoryTheory.IsMonHom (Hom.asOver (CategoryTheory.Limits.pullbackSymmetry (Spec { carrier := T, commRing := inst✝ } Spec { carrier := R, commRing := inst✝¹ }) (Spec { carrier := S, commRing := inst✝² } Spec { carrier := R, commRing := inst✝¹ }) ≪≫ pullbackSpecIso' R S T).hom (Spec { carrier := S, commRing := inst✝² }))

                      Right edge: The essential image of Spec on Hopf algebras #

                      In this section we show that the essential image of R-Hopf algebras under Spec is precisely affine group schemes over Spec R.

                      @[simp]

                      The essential image of R-algebras under Spec is precisely affine schemes over Spec R.

                      @[simp]

                      The essential image of R-bialgebras under Spec is precisely affine monoid schemes over Spec R.

                      @[simp]

                      The essential image of R-Hopf algebras under Spec is precisely affine group schemes over Spec R.