Module

Coordinate.lean

Nyll.EtaleFundamentalGroups.Ramification.Product.Coordinate
2 declarations indexed from sourceView source ↗

Ramification in a selected product coordinate

The maximal prime selected by one coordinate of a product has the same ramification index as the maximal ideal in that coordinate. This is the ideal-theoretic transport needed after a completed finite algebra has been decomposed into its local factors.

Declarations

EtaleFundamentalGroups.productCoordinatePrime_ramificationIdx_eq

Ramification at a prime selecting one product coordinate is exactly ramification at the maximal ideal of that coordinate.

Source context 7 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
namespace EtaleFundamentalGroups
universe uR uι uA
variable {R : Type uR} [CommRing R]
variable {ι : Type uι} (A : ι → Type uA)
variable [∀ j, CommRing (A j)] [∀ j, IsLocalRing (A j)]
variable [∀ j, Algebra R (A j)]
theorem productCoordinatePrime_ramificationIdx_eq (i : ι) :
    (productCoordinatePrime A i).ramificationIdx R =
      (IsLocalRing.maximalIdeal (A i)).ramificationIdx R
EtaleFundamentalGroups.ringEquivProductCoordinatePrime_ramificationIdx_eq

Ramification is unchanged when a product-coordinate localization is pulled back along a ring equivalence.

Source context 12 commands

Surrounding namespaces, section variables, and local commands at this declaration.

noncomputable section
namespace EtaleFundamentalGroups
universe uR uι uA
variable {R : Type uR} [CommRing R]
variable {ι : Type uι} (A : ι → Type uA)
variable [∀ j, CommRing (A j)] [∀ j, IsLocalRing (A j)]
variable [∀ j, Algebra R (A j)]
section RingEquivTransport
universe uU uB
variable {U : Type uU} [CommRing U] [Algebra R U]
variable (B : ι → Type uB)
variable [∀ j, CommRing (B j)] [∀ j, IsLocalRing (B j)]
theorem ringEquivProductCoordinatePrime_ramificationIdx_eq
    (e : U ≃+* (∀ j, B j)) (i : ι) :
    letI : Algebra U (B i) := ringEquivProductCoordinateAlgebra B i e
    letI : Algebra R (B i) :=
      ringEquivProductCoordinateBaseAlgebra (R := R) B i e
    (ringEquivProductCoordinatePrime B i e).ramificationIdx R =
      (IsLocalRing.maximalIdeal (B i)).ramificationIdx R := by
  let q := ringEquivProductCoordinatePrime B i e
  let : Algebra U (B i) := ringEquivProductCoordinateAlgebra B i e
  let : Algebra R (B i) :=
    ringEquivProductCoordinateBaseAlgebra (R := R) B i e
  let : IsScalarTower R U (B i) :=
    ringEquivProductCoordinate_isScalarTower (R := R) B i e
  let : IsLocalization q.primeCompl (B i) :=
    ringEquivProductCoordinate_isLocalization B i e
  have hdisj : Disjoint (q.primeCompl : Set U) (q : Set U) :=
    disjoint_compl_left
  have hram := ramificationIdx_map_eq_of_isLocalization
    (R := R) (S := U) (R' := R) (S' := B i)
    (IsUnit.submonoid R) q.primeCompl q hdisj
  rw [ringEquivProductCoordinatePrime_map B i e] at hram
  exact hram.symm