Module

SemilinearConjugation.lean

Nyll.GaloisCohomology.Kummer.Concrete.SemilinearConjugation
14 declarations indexed from sourceView source ↗

Semilinear conjugation and independence of the extension

An automorphism of an extension field lying over a base automorphism conjugates the relative Galois group. Two lifts of the same base automorphism differ by an actual relative Galois automorphism, so their conjugations agree after mapping to any commutative group.

Declarations

KummerTheory.semilinear_symm_algebraMap

The inverse of a semilinear field automorphism lies over the inverse base map.

Source context 2 commands

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

namespace KummerTheory
variable {K Ω : Type*} [Field K] [Field Ω] [Algebra K Ω]
theorem semilinear_symm_algebraMap (τ : K ≃+* K) (e : Ω ≃+* Ω)
    (he : ∀ k : K, e (algebraMap K Ω k) = algebraMap K Ω (τ k)) (k : K) :
    e.symm (algebraMap K Ω k) = algebraMap K Ω (τ.symm k)
KummerTheory.semilinearGaloisConjugate

Conjugation by a field automorphism lying over τ preserves base linearity.

Source context 2 commands

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

namespace KummerTheory
variable {K Ω : Type*} [Field K] [Field Ω] [Algebra K Ω]
def semilinearGaloisConjugate (τ : K ≃+* K) (e : Ω ≃+* Ω)
    (he : ∀ k : K, e (algebraMap K Ω k) = algebraMap K Ω (τ k))
    (σ : Gal(Ω/K)) : Gal(Ω/K)
KummerTheory.semilinearGaloisConjugate_apply

Evaluation of semilinear conjugation.

Source context 2 commands

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

namespace KummerTheory
variable {K Ω : Type*} [Field K] [Field Ω] [Algebra K Ω]
theorem semilinearGaloisConjugate_apply (τ : K ≃+* K) (e : Ω ≃+* Ω)
    (he : ∀ k : K, e (algebraMap K Ω k) = algebraMap K Ω (τ k))
    (σ : Gal(Ω/K)) (x : Ω) :
    semilinearGaloisConjugate τ e he σ x = e (σ (e.symm x))
KummerTheory.semilinear_refl_algebraMap

The identity extension lies over the identity base map.

Source context 2 commands

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

namespace KummerTheory
variable {K Ω : Type*} [Field K] [Field Ω] [Algebra K Ω]
theorem semilinear_refl_algebraMap (k : K) :
    RingEquiv.refl Ω (algebraMap K Ω k) = algebraMap K Ω (RingEquiv.refl K k)
KummerTheory.semilinearGaloisConjugate_refl

The identity lift acts trivially on the relative Galois group.

Source context 2 commands

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

namespace KummerTheory
variable {K Ω : Type*} [Field K] [Field Ω] [Algebra K Ω]
theorem semilinearGaloisConjugate_refl (σ : Gal(Ω/K)) :
    semilinearGaloisConjugate (RingEquiv.refl K) (RingEquiv.refl Ω)
      (semilinear_refl_algebraMap (K := K) (Ω := Ω)) σ = σ
KummerTheory.semilinear_trans_algebraMap

Composition of two semilinear extensions extends composition on the base.

Source context 2 commands

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

namespace KummerTheory
variable {K Ω : Type*} [Field K] [Field Ω] [Algebra K Ω]
theorem semilinear_trans_algebraMap (τ υ : K ≃+* K) (e d : Ω ≃+* Ω)
    (he : ∀ k : K, e (algebraMap K Ω k) = algebraMap K Ω (τ k))
    (hd : ∀ k : K, d (algebraMap K Ω k) = algebraMap K Ω (υ k)) (k : K) :
    (e.trans d) (algebraMap K Ω k) = algebraMap K Ω ((τ.trans υ) k)
KummerTheory.semilinearGaloisConjugate_trans

Conjugation by the composite lift is the composite of the conjugations.

Source context 2 commands

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

namespace KummerTheory
variable {K Ω : Type*} [Field K] [Field Ω] [Algebra K Ω]
theorem semilinearGaloisConjugate_trans (τ υ : K ≃+* K) (e d : Ω ≃+* Ω)
    (he : ∀ k : K, e (algebraMap K Ω k) = algebraMap K Ω (τ k))
    (hd : ∀ k : K, d (algebraMap K Ω k) = algebraMap K Ω (υ k))
    (σ : Gal(Ω/K)) :
    semilinearGaloisConjugate (τ.trans υ) (e.trans d)
      (semilinear_trans_algebraMap τ υ e d he hd) σ =
        semilinearGaloisConjugate υ d hd (semilinearGaloisConjugate τ e he σ)
KummerTheory.semilinearGaloisConjugateEquiv

Semilinear conjugation is an automorphism of the relative Galois group.

Source context 2 commands

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

namespace KummerTheory
variable {K Ω : Type*} [Field K] [Field Ω] [Algebra K Ω]
def semilinearGaloisConjugateEquiv (τ : K ≃+* K) (e : Ω ≃+* Ω)
    (he : ∀ k : K, e (algebraMap K Ω k) = algebraMap K Ω (τ k)) :
    Gal(Ω/K) ≃* Gal(Ω/K) where
  toFun := semilinearGaloisConjugate τ e he
  invFun := semilinearGaloisConjugate τ.symm e.symm
    (semilinear_symm_algebraMap τ e he)
  left_inv σ := by
    apply AlgEquiv.ext
    intro x
    simp only [semilinearGaloisConjugate_apply, RingEquiv.symm_symm,
      RingEquiv.symm_apply_apply]
  right_inv σ := by
    apply AlgEquiv.ext
    intro x
    simp only [semilinearGaloisConjugate_apply, RingEquiv.symm_symm,
      RingEquiv.apply_symm_apply]
  map_mul' σ ρ := by
    apply AlgEquiv.ext
    intro x
    simp only [semilinearGaloisConjugate_apply, AlgEquiv.mul_apply,
      RingEquiv.symm_apply_apply]
KummerTheory.semilinearGaloisConjugateEquiv_apply

Evaluation of the bundled conjugation automorphism.

Source context 2 commands

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

namespace KummerTheory
variable {K Ω : Type*} [Field K] [Field Ω] [Algebra K Ω]
theorem semilinearGaloisConjugateEquiv_apply (τ : K ≃+* K) (e : Ω ≃+* Ω)
    (he : ∀ k : K, e (algebraMap K Ω k) = algebraMap K Ω (τ k))
    (σ : Gal(Ω/K)) :
    semilinearGaloisConjugateEquiv τ e he σ = semilinearGaloisConjugate τ e he σ
KummerTheory.semilinearGaloisExtensionDifference

Two extensions of the same base automorphism differ by a base-linear map.

Source context 2 commands

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

namespace KummerTheory
variable {K Ω : Type*} [Field K] [Field Ω] [Algebra K Ω]
def semilinearGaloisExtensionDifference (τ : K ≃+* K) (e e' : Ω ≃+* Ω)
    (he : ∀ k : K, e (algebraMap K Ω k) = algebraMap K Ω (τ k))
    (he' : ∀ k : K, e' (algebraMap K Ω k) = algebraMap K Ω (τ k)) :
    Gal(Ω/K)
KummerTheory.semilinearGaloisExtensionDifference_apply

Evaluation of the base-linear difference of two lifts.

Source context 2 commands

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

namespace KummerTheory
variable {K Ω : Type*} [Field K] [Field Ω] [Algebra K Ω]
theorem semilinearGaloisExtensionDifference_apply (τ : K ≃+* K) (e e' : Ω ≃+* Ω)
    (he : ∀ k : K, e (algebraMap K Ω k) = algebraMap K Ω (τ k))
    (he' : ∀ k : K, e' (algebraMap K Ω k) = algebraMap K Ω (τ k)) (x : Ω) :
    semilinearGaloisExtensionDifference τ e e' he he' x = e' (e.symm x)
KummerTheory.semilinearGaloisExtensionDifference_inv_apply

Evaluation of the inverse difference of two lifts.

Source context 2 commands

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

namespace KummerTheory
variable {K Ω : Type*} [Field K] [Field Ω] [Algebra K Ω]
theorem semilinearGaloisExtensionDifference_inv_apply
    (τ : K ≃+* K) (e e' : Ω ≃+* Ω)
    (he : ∀ k : K, e (algebraMap K Ω k) = algebraMap K Ω (τ k))
    (he' : ∀ k : K, e' (algebraMap K Ω k) = algebraMap K Ω (τ k)) (x : Ω) :
    (semilinearGaloisExtensionDifference τ e e' he he')⁻¹ x = e (e'.symm x)
KummerTheory.semilinearGaloisConjugate_eq_inner

Changing the extension changes Galois conjugation by the inner automorphism given by the constructed difference of the two extensions.

Source context 2 commands

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

namespace KummerTheory
variable {K Ω : Type*} [Field K] [Field Ω] [Algebra K Ω]
theorem semilinearGaloisConjugate_eq_inner (τ : K ≃+* K) (e e' : Ω ≃+* Ω)
    (he : ∀ k : K, e (algebraMap K Ω k) = algebraMap K Ω (τ k))
    (he' : ∀ k : K, e' (algebraMap K Ω k) = algebraMap K Ω (τ k))
    (σ : Gal(Ω/K)) :
    semilinearGaloisConjugate τ e' he' σ =
      semilinearGaloisExtensionDifference τ e e' he he' *
        semilinearGaloisConjugate τ e he σ *
          (semilinearGaloisExtensionDifference τ e e' he he')⁻¹
KummerTheory.map_semilinearGaloisConjugate_eq

Every character with commutative target is independent of the chosen lift.

Source context 2 commands

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

namespace KummerTheory
variable {K Ω : Type*} [Field K] [Field Ω] [Algebra K Ω]
theorem map_semilinearGaloisConjugate_eq {A : Type*} [CommGroup A]
    (f : Gal(Ω/K) →* A) (τ : K ≃+* K) (e e' : Ω ≃+* Ω)
    (he : ∀ k : K, e (algebraMap K Ω k) = algebraMap K Ω (τ k))
    (he' : ∀ k : K, e' (algebraMap K Ω k) = algebraMap K Ω (τ k))
    (σ : Gal(Ω/K)) :
    f (semilinearGaloisConjugate τ e' he' σ) =
      f (semilinearGaloisConjugate τ e he σ)