The derivative of an ideal under a formally smooth extension #
[Kol07, Lemma 74 (4)]: "if f : Y → X is smooth, then D(f^*I) = f^*(D(I))". This module is the
affine-local layer: for a scalar tower k → A → B of commutative rings with φ = algebraMap A B
and an ideal J of A, D(J B) = D(J) B when B is formally smooth over A and Ω_{A/k} is
finite projective (Ideal.derivative_map_of_formallySmooth).
D(J) B ⊆ D(J B)holds as soon as everyk-derivationδofAextends to ak-derivationδ̃ofB,δ̃ ∘ φ = φ ∘ δ: thenφ(δ f) = δ̃(φ f) ∈ D(J B)(Ideal.map_derivative_le_of_forall_exists_extension). ForBformally smooth overAsuch extensions exist (Derivation.exists_extension_of_formallySmooth): the Jacobi–Zariski sequenceH¹(L_{B/A}) → B ⊗_A Ω_{A/k} → Ω_{B/k} → Ω_{B/A} → 0is exact ([TSPA, Tag 00S2]; Mathlib'sAlgebra.H1Cotangent.exact_δ_mapBaseChangeandKaehlerDifferential.exact_mapBaseChange_map),H¹(L_{B/A}) = 0andΩ_{B/A}is projective forBformally smooth overA([TSPA, Tag 00TI]), soB ⊗_A Ω_{A/k} → Ω_{B/k}is a split injection (Derivation.exists_retraction_mapBaseChange), and composing a retraction withB ⊗_A Ω_{A/k} → B,b ⊗ da ↦ b φ(δ a), givesδ̃throughDer_k(B, B) ≅ Hom_B(Ω_{B/k}, B).D(J B) ⊆ D(J) Bholds as soon as everyk-derivationA → Bis aB-combination of theφ ∘ ∂,∂ ∈ Der_k(A, A)(Ideal.derivative_map_le_of_forall_mem_span): for ak-derivationδofBandf ∈ J,δ(φ f) = ∑ bᵢ φ(∂ᵢ f) ∈ D(J) B, and Leibniz extends this from the generatorsφ fto all ofJ B. The spanning holds whenΩ_{A/k}is finite projective (Derivation.mem_span_range_compDer_of_projective):Ω_{A/k}is a retract of a finite free moduleAⁿ, so anA-linear mapΩ_{A/k} → Bis∑ᵢ bᵢ · (φ ∘ ℓᵢ)withℓᵢ : Ω_{A/k} → A. This inclusion needs no hypothesis onB, only thatΩ_{A/k}is finite projective (Kollár'sXis smooth overk); the étale case is [Wlo05, Lemma 2.6.5], proved there through the completions.- The polynomial algebra
B = A[y₁, …, y_m]is formally smooth overA(Ideal.derivative_map_mvPolynomial).
The sheaf form is Hironaka/Scheme/IdealSheaf/Derivative/Pullback.lean; the extension of
derivations is also used for étale parameters (Hironaka/Scheme/Snc/EtaleParameters.lean).
For B formally smooth over A, the base-change map B ⊗_A Ω_{A/k} → Ω_{B/k} is a split
injection: it is injective because H¹(L_{B/A}) = 0 (the Jacobi–Zariski sequence,
[TSPA, Tag 00S2]), its cokernel Ω_{B/A} is projective, and a section of Ω_{B/k} → Ω_{B/A} gives
a retraction (Mathlib's splitting lemma).
For B formally smooth over A, every k-derivation δ of A extends to a k-derivation
δ̃ of B, δ̃ ∘ φ = φ ∘ δ: compose a retraction of B ⊗_A Ω_{A/k} → Ω_{B/k} with
b ⊗ da ↦ b φ(δ a).
When Ω_{A/k} is finite projective, every k-derivation d : A → B is a B-linear
combination of the φ ∘ ∂, ∂ ∈ Der_k(A, A), that is, Der_k(A, B) = B ⊗_A Der_k(A, A). Through
Der_k(A, B) ≅ Hom_A(Ω_{A/k}, B): Ω_{A/k} is a retract of a finite free module Aⁿ
(g ∘ s = id), so ℓ = ℓ ∘ g ∘ s = ∑ᵢ ℓ(g eᵢ) · (φ ∘ (prᵢ ∘ s)).
If every k-derivation of A extends to B, then D(J) B ⊆ D(J B): φ(δ f) = δ̃(φ f) is a
derivative of an element of J B.
D(J) B ⊆ D(J B) for B formally smooth over A.
If every k-derivation A → B is a B-combination of the φ ∘ ∂, then D(J B) ⊆ D(J) B:
on the generators δ(φ f) = ∑ bᵢ φ(∂ᵢ f), and δ(φ(f) b) = b δ(φ f) + φ(f) δ(b) ∈ φ(D(J)) B.
D(J B) ⊆ D(J) B when Ω_{A/k} is finite projective, for every A-algebra B; the étale
case and the polynomial case are instances.
[Kol07, Lemma 74 (4)], affine-local form: for B formally smooth over A and Ω_{A/k}
finite projective, D(J B) = D(J) B.
The polynomial case: for B = A[yⱼ : j ∈ σ] and Ω_{A/k} finite projective,
D(J B) = D(J) B.