Norm-local vanishing gives algebraic local membership at a regular point
ProvedAffineAnalytic.local_mem_of_norm_vanishing_at_regular_pointLet be a complete, algebraically closed, nontrivially normed field of characteristic zero, let be a finite set, and put . Let be an ideal and a common zero of . Write
Assume that is a regular local ring. If a polynomial vanishes on all common zeros of in some norm neighborhood of , then
Equivalently, there is a polynomial such that and . Thus vanishing of a polynomial on the norm germ of the affine zero set at a regular rational point implies vanishing of its algebraic local-ring germ.
The common zero set need not be globally irreducible or smooth. The ideal is not assumed radical away from ; regularity is required of the actual localized quotient, so it rules out nonreduced structure at the point being studied. Empty coordinate sets and zero-dimensional local rings are included.
Formalization Note. The checked reduction proves the conormal and local-equation steps, constructs analytic implicit coordinates over the complete field, and proves the polynomial identity principle on a norm neighborhood. Its sole remaining input is the purely algebraic local eliminant for a nonsingular projection. The complete-field analytic steps, including the case, are implemented; construction of that polynomial eliminant remains Open. The original formal statement is unchanged.
import Mathlib set_option autoImplicit false open Filter Topology
namespace AffineAnalytic
theorem local_mem_of_norm_vanishing_at_regular_point
(K : Type*) [NontriviallyNormedField K] [CompleteSpace K]
[IsAlgClosed K] [CharZero K] (σ : Type*) [Fintype σ]
(I : Ideal (MvPolynomial σ K)) (a : σ → K)
(m : MaximalSpectrum (MvPolynomial σ K))
(hm : m.asIdeal = RingHom.ker (MvPolynomial.eval a))
(ha : I ≤ m.asIdeal)
(hreg : IsRegularLocalRing ((Localization.AtPrime m.asIdeal) ⧸
I.map (algebraMap (MvPolynomial σ K) (Localization.AtPrime m.asIdeal))))
(P : MvPolynomial σ K)
(hP : ∀ᶠ v in 𝓝 a,
(∀ Q ∈ I, MvPolynomial.eval v Q = 0) → MvPolynomial.eval v P = 0) :
algebraMap (MvPolynomial σ K) (Localization.AtPrime m.asIdeal) P ∈
I.map (algebraMap (MvPolynomial σ K) (Localization.AtPrime m.asIdeal)) := by sorry
end AffineAnalytic