Skip to content
This repository was archived by the owner on Jul 24, 2024. It is now read-only.

Commit d4437c6

Browse files
committed
feat(field_theory/adjoin,normal): field_range lemmas (#18959)
This PR adds a couple useful lemmas regarding `field_range`. Co-authored-by: Thomas Browning <tb65536@users.noreply.github.com>
1 parent c596622 commit d4437c6

2 files changed

Lines changed: 17 additions & 0 deletions

File tree

src/field_theory/adjoin.lean

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -198,6 +198,14 @@ lemma _root_.alg_hom.map_field_range {K L : Type*} [field K] [field L] [algebra
198198
(f : E →ₐ[F] K) (g : K →ₐ[F] L) : f.field_range.map g = (g.comp f).field_range :=
199199
set_like.ext' (set.range_comp g f).symm
200200

201+
lemma _root_.alg_hom.field_range_eq_top {K : Type*} [field K] [algebra F K] {f : E →ₐ[F] K} :
202+
f.field_range = ⊤ ↔ function.surjective f :=
203+
set_like.ext'_iff.trans set.range_iff_surjective
204+
205+
@[simp] lemma _root_.alg_equiv.field_range_eq_top {K : Type*} [field K] [algebra F K]
206+
(f : E ≃ₐ[F] K) : (f : E →ₐ[F] K).field_range = ⊤ :=
207+
alg_hom.field_range_eq_top.mpr f.surjective
208+
201209
end lattice
202210

203211
section adjoin_def

src/field_theory/normal.lean

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -278,6 +278,15 @@ lemma alg_hom.restrict_normal_comp [normal F E] :
278278
alg_hom.ext (λ _, (algebra_map E K₃).injective
279279
(by simp only [alg_hom.comp_apply, alg_hom.restrict_normal_commutes]))
280280

281+
lemma alg_hom.field_range_of_normal {E : intermediate_field F K} [normal F E] (f : E →ₐ[F] K) :
282+
f.field_range = E :=
283+
begin
284+
haveI : is_scalar_tower F E E := by apply_instance,
285+
let g := f.restrict_normal' E,
286+
rw [←show E.val.comp ↑g = f, from fun_like.ext_iff.mpr (f.restrict_normal_commutes E),
287+
←alg_hom.map_field_range, g.field_range_eq_top, ←E.val.field_range_eq_map, E.field_range_val],
288+
end
289+
281290
/-- Restrict algebra isomorphism to a normal subfield -/
282291
def alg_equiv.restrict_normal [h : normal F E] : E ≃ₐ[F] E :=
283292
alg_hom.restrict_normal' χ.to_alg_hom E

0 commit comments

Comments
 (0)