Documentation

Hironaka.Algebra.Local.Order

The order of an ideal in a local ring #

Kollár defines, for a smooth variety X, a nonzero ideal sheaf I and a point x with ideal sheaf 𝔪ₓ, the order of I at x as ord_x I := max {r : 𝔪ₓ^r 𝒪_{x,X} ⊇ I 𝒪_{x,X}}; for a principal ideal (f) it is the multiplicity of the hypersurface f = 0 [Kol07, Definition 47]. The order IsLocalRing.ord I of an ideal of a local ring is the supremum in ℕ∞ of the r with I ≤ 𝔪^r, so that the zero ideal has order ⊤ (Kollár assumes I ≠ 0; Krull's intersection theorem, recalled in [Kol07, Definition 55], is what makes the two readings agree). This file defines the order of an element and proves the elementary calculus:

In K⟦X⟧ with finitely many variables the order of an element is Mathlib's MvPowerSeries.order (MvPowerSeries.ordElem_eq_order, in Hironaka/Algebra/Local/PowerSeries.lean).

The calculus of the order #

The local forms of the elementary properties (1)–(4) of the cosupport of a marked ideal listed in [Kol07, Definition 59]:

The scheme-level statements of Definition 47 (upper semicontinuity, ord_Z, max-ord) are proved for the order of an ideal sheaf, Scheme.IdealSheafData.ord.

noncomputable def IsLocalRing.ordElem {R : Type u_1} [CommRing R] [IsLocalRing R] (f : R) :

The order of an element: ord f = ord (f), the multiplicity of the hypersurface f = 0 [Kol07, Definition 47].

Equations
Instances For
    theorem IsLocalRing.le_ord_of_le {R : Type u_1} [CommRing R] [IsLocalRing R] {I : Ideal R} {r : ℕ} (h : I ≤ maximalIdeal R ^ r) :
    ↑r ≤ ord I
    theorem IsLocalRing.le_ord_iff {R : Type u_1} [CommRing R] [IsLocalRing R] {I : Ideal R} {r : ℕ} :
    ↑r ≤ ord I ↔ I ≤ maximalIdeal R ^ r

    r ≤ ord I iff I ≤ 𝔪^r; uses that the powers of 𝔪 decrease.

    theorem IsLocalRing.ord_anti {R : Type u_1} [CommRing R] [IsLocalRing R] {I J : Ideal R} (h : I ≤ J) :
    ord J ≤ ord I

    The order is antitone: I ≤ J → ord J ≤ ord I (property (1) of the cosupport in [Kol07, Definition 59]).

    @[simp]
    theorem IsLocalRing.ord_top {R : Type u_1} [CommRing R] [IsLocalRing R] :

    The unit ideal has order 0.

    theorem IsLocalRing.ord_eq_zero_iff {R : Type u_1} [CommRing R] [IsLocalRing R] {I : Ideal R} :
    ord I = 0 ↔ I = ⊤

    ord I = 0 iff I is the unit ideal (in a local ring a proper ideal lies in 𝔪).

    1 ≤ ord f iff f ∈ 𝔪.

    theorem IsLocalRing.ordElem_eq_one_iff {R : Type u_1} [CommRing R] [IsLocalRing R] {f : R} :

    ord f = 1 iff f ∈ 𝔪 ∖ 𝔪².

    theorem IsLocalRing.ord_eq_iInf {R : Type u_1} [CommRing R] [IsLocalRing R] (I : Ideal R) :
    ord I = ⨅ f ∈ I, ordElem f

    The order of an ideal is the infimum of the orders of its elements.

    theorem IsLocalRing.ord_span {R : Type u_1} [CommRing R] [IsLocalRing R] (S : Set R) :
    ord (Ideal.span S) = ⨅ f ∈ S, ordElem f

    The order of ⟨S⟩ is the infimum of the orders of the generators.

    theorem IsLocalRing.exists_ord_span_eq_ordElem {R : Type u_1} [CommRing R] [IsLocalRing R] {S : Set R} (hS : S.Finite) (hne : S.Nonempty) :
    ∃ f ∈ S, ord (Ideal.span S) = ordElem f

    For a finite nonempty generating set the infimum is attained by a generator.

    In a Noetherian local ring the only ideal of infinite order is the zero ideal (Krull's intersection theorem, recalled in [Kol07, Definition 55]).

    The only element of infinite order is 0.

    theorem IsLocalRing.le_ord_mul {R : Type u_2} [CommRing R] [IsLocalRing R] (I J : Ideal R) :
    ord I + ord J ≤ ord (I * J)

    Superadditivity, ord I + ord J ≤ ord (I J), from 𝔪^a 𝔪^b = 𝔪^(a+b) (property (2) of the cosupport in [Kol07, Definition 59]).

    theorem IsLocalRing.ord_sup {R : Type u_2} [CommRing R] [IsLocalRing R] (I J : Ideal R) :
    ord (I ⊔ J) = min (ord I) (ord J)

    ord (I + J) = min (ord I) (ord J) (property (4) of the cosupport in [Kol07, Definition 59]).

    theorem IsLocalRing.le_ord_pow {R : Type u_2} [CommRing R] [IsLocalRing R] (I : Ideal R) (c : ℕ) :
    ↑c * ord I ≤ ord (I ^ c)

    c · ord I ≤ ord (I ^ c) (one inclusion of property (3) of the cosupport in [Kol07, Definition 59]).

    theorem IsLocalRing.ord_le_ord_map {R : Type u_2} [CommRing R] [IsLocalRing R] {S : Type u_3} [CommRing S] [IsLocalRing S] (φ : R →+* S) [IsLocalHom φ] (I : Ideal R) :
    ord I ≤ ord (Ideal.map φ I)

    The order does not drop under a local homomorphism, ord I ≤ ord (I.map φ) (the proof of [Wlo05, Lemma 2.10.3]; the inclusion (58.2) of [Kol07, 58] is its sheaf form); restriction to R/(x₁) is the case φ = Ideal.Quotient.mk.

    theorem IsLocalRing.ordElem_pow_of_ordElem_mul {R : Type u_2} [CommRing R] [IsLocalRing R] (hmul : ∀ (f g : R), ordElem (f * g) = ordElem f + ordElem g) (f : R) (n : ℕ) :
    ordElem (f ^ n) = ↑n * ordElem f

    Multiplicativity of the order on elements implies ord (f ^ n) = n · ord f.

    theorem IsLocalRing.ord_pow_of_ordElem_mul {R : Type u_2} [CommRing R] [IsLocalRing R] [IsNoetherianRing R] (hmul : ∀ (f g : R), ordElem (f * g) = ordElem f + ordElem g) (I : Ideal R) {c : ℕ} (hc : 1 ≤ c) :
    ord (I ^ c) = ↑c * ord I

    Given multiplicativity of the order on elements, ord (I ^ c) = c · ord I for c ≥ 1 (the equality behind property (3) of the cosupport in [Kol07, Definition 59]). Pick a generator f of I with ord f = ord I; then f ^ c ∈ I ^ c has order c · ord I.

    theorem IsLocalRing.ord_span_singleton_mul_of_ordElem_mul {R : Type u_2} [CommRing R] [IsLocalRing R] [IsNoetherianRing R] (hmul : ∀ (f g : R), ordElem (f * g) = ordElem f + ordElem g) (f : R) (I : Ideal R) :

    Given multiplicativity of the order on elements, ord (f I) = ord f + ord I.

    noncomputable def IsLocalRing.ordAlong {R : Type u_2} [CommRing R] (P : Ideal R) [P.IsPrime] (I : Ideal R) :

    The order of I along the prime P, computed in the local ring R_P: Kollár's ord_Z I := ord_η I at the generic point η of Z [Kol07, Definition 47].

    Equations
    Instances For