|
| 1 | +/- |
| 2 | +Copyright (c) 2026 Nailin Guan. All rights reserved. |
| 3 | +Released under Apache 2.0 license as described in the file LICENSE. |
| 4 | +Authors: Nailin Guan |
| 5 | +-/ |
| 6 | +module |
| 7 | + |
| 8 | +public import Mathlib.FieldTheory.IntermediateField.Adjoin.Defs |
| 9 | +public import Mathlib.FieldTheory.Separable |
| 10 | +public import Mathlib.RingTheory.AlgebraicIndependent.Basic |
| 11 | +public import Mathlib.RingTheory.EssentialFiniteness |
| 12 | + |
| 13 | +/-! |
| 14 | +# Transcendental separable extensions |
| 15 | +
|
| 16 | +In this file we introduce the concept of separably generated field extensions and |
| 17 | +transcendental separable field extensions. |
| 18 | +
|
| 19 | +# Main definitions and results |
| 20 | +
|
| 21 | +* `Algebra.IsSeparablyGenerated` : A field extension is separably generated if there exists |
| 22 | + an transcendental basis such that the extension above it is separable. |
| 23 | +
|
| 24 | +* `Algebra.IsTranscendentalSeparable` : A field extension is transcendental separable if |
| 25 | + every finitely generated subextension is separably generated. |
| 26 | +
|
| 27 | +-/ |
| 28 | + |
| 29 | +universe u v w |
| 30 | + |
| 31 | +@[expose] public section |
| 32 | + |
| 33 | +open TensorProduct |
| 34 | + |
| 35 | +section |
| 36 | + |
| 37 | +variable (k : Type u) (K : Type v) [Field k] [Field K] [Algebra k K] |
| 38 | + |
| 39 | +/-- A field extension is separably generated if there exists an transcendental basis such that |
| 40 | +the extension above it is separable. -/ |
| 41 | +@[mk_iff, stacks 030O "Part 1"] |
| 42 | +class Algebra.IsSeparablyGenerated : Prop where |
| 43 | + isSeparable' : ∃ (ι : Type v) (f : ι → K), |
| 44 | + IsTranscendenceBasis k f ∧ |
| 45 | + Algebra.IsSeparable (IntermediateField.adjoin k (Set.range f)) K |
| 46 | + |
| 47 | +variable {k K} in |
| 48 | +lemma Algebra.isSeparablyGenerated_of_equiv {K' : Type w} [Field K'] [Algebra k K'] (e : K ≃ₐ[k] K') |
| 49 | + [Algebra.IsSeparablyGenerated k K] : Algebra.IsSeparablyGenerated k K' := by |
| 50 | + rcases ‹Algebra.IsSeparablyGenerated k K› with ⟨ι, f, isT, sep⟩ |
| 51 | + have : Small.{w} ι := small_of_injective (e.injective.comp isT.1.injective) |
| 52 | + let g := (e ∘ f) ∘ (equivShrink ι).symm |
| 53 | + use Shrink.{w} ι, g, (e.isTranscendenceBasis isT).comp_equiv (equivShrink ι).symm |
| 54 | + have eq : (IntermediateField.adjoin k (Set.range f)).map e = |
| 55 | + (IntermediateField.adjoin k (Set.range g)) := by |
| 56 | + simp [IntermediateField.adjoin_map, g, Set.range_comp e f] |
| 57 | + let e' := ((IntermediateField.adjoin k (Set.range f)).equivMap e.toAlgHom).trans |
| 58 | + (IntermediateField.equivOfEq eq) |
| 59 | + exact Algebra.IsSeparable.of_equiv_equiv e'.toRingEquiv e.toRingEquiv rfl |
| 60 | + |
| 61 | +/-- A field extension is transcendental separable if every finitely generated subextension is |
| 62 | +separably generated. -/ |
| 63 | +@[mk_iff, stacks 030O "Part 2"] |
| 64 | +class Algebra.IsTranscendentalSeparable : Prop where |
| 65 | + forall_isSeparablyGenerated : ∀ (A' : IntermediateField k K), |
| 66 | + Algebra.EssFiniteType k A' → Algebra.IsSeparablyGenerated k A' |
| 67 | + |
| 68 | +end |
0 commit comments