File tree Expand file tree Collapse file tree
Mathlib/NumberTheory/NumberField/Discriminant Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -193,6 +193,20 @@ lemma not_dvd_discr_iff_forall_liesOver [IsIntegralClosure 𝒪 ℤ K] {p : ℤ}
193193 ← Int.natAbs_pow, Int.natAbs_dvd_natAbs] at this
194194 exact (dvd_pow_self _ (Ideal.inertiaDeg_pos' ..).ne').trans this
195195
196+ /-- A prime `p` does not divide `discr K` if and only if `p` (as the ideal `span {p}`) is
197+ unramified in the ring of integers `𝒪`.
198+
199+ Also see `not_dvd_discr_iff_forall_liesOver` and `not_dvd_discr_iff_forall_mem` for variants
200+ whose RHS does not use `Algebra.IsUnramifiedIn`. -/
201+ lemma not_dvd_discr_iff_isUnramifiedIn [IsIntegralClosure 𝒪 ℤ K] {p : ℤ} (hp : Prime p) :
202+ ¬ p ∣ discr K ↔ Algebra.IsUnramifiedIn 𝒪 (Ideal.span {p}) := by
203+ have := (IsIntegralClosure.algebraMap_injective 𝒪 ℤ K).isDomain
204+ have := IsIntegralClosure.isDedekindDomain ℤ ℚ K 𝒪
205+ have := CharZero.of_module (R := 𝒪) K
206+ rw [not_dvd_discr_iff_forall_liesOver K 𝒪 hp]
207+ exact (Algebra.isUnramifiedIn_iff_forall_of_isDedekindDomain'
208+ (Ideal.span_singleton_eq_bot.not.mpr hp.ne_zero)).symm
209+
196210/-- Also see `not_dvd_discr_iff_forall_liesOver` for a slightly easier to prove RHS. -/
197211lemma not_dvd_discr_iff_forall_mem [IsIntegralClosure 𝒪 ℤ K] {p : ℤ} (hp : Prime p) :
198212 ¬ p ∣ discr K ↔ ∀ (P : Ideal 𝒪) (_ : P.IsPrime), ↑p ∈ P →
You can’t perform that action at this time.
0 commit comments