A principal open family of mixed sections smooth at every ordinary point
OpenPhilipponMultiplicity.exists_principal_open_pointwise_smooth_mixed_zero_locusLet be a Philippon base field and the given finite multiprojective space. Let be closed and irreducible. Choose integers with , and a closed subset with .
Fix an ordered list in which each block occurs times. For coefficients , set
where is the multihomogeneous coordinate ring. Write for the common zero set of the on .
There is a nonzero polynomial in the coefficient entries such that whenever , the set is finite and disjoint from . Moreover, for every coordinate tuple with each block nonzero and satisfying every polynomial in , let . Then
This supplies the pointwise geometric input for a smooth mixed section, retaining all affine scaling directions. Empty sections and zero-length lists are allowed.
Formalization Note. This is an auxiliary coefficient-space formulation of generic transversality, not a verbatim theorem of the cited sources. Formal smoothness is asserted for the actual localized quotient, which need not itself be a finitely presented -algebra. Rows of contain all block coordinates, but each equation uses only its selected block. No hypothesis about arbitrary nonclosed primes is part of this statement.
import Mathlib import Definitions.Def_PhilipponMultiplicity_GeometricSupport import Definitions.Def_PhilipponMultiplicity_MixedFlagParameters set_option autoImplicit false open scoped BigOperators Topology
namespace PhilipponMultiplicity
open SectionThree SectionThreeSupport
theorem exists_principal_open_pointwise_smooth_mixed_zero_locus
(K : Type*) [NontriviallyNormedField K] (hK : IsPhilipponBaseField K) :
∀ (M : MultiProjectiveSpace K) (W : Set M.Point),
@IsClosed _ M.zariskiTopology W → @IsIrreducible _ M.zariskiTopology W →
∀ (α : M.FactorIndex → ℕ), (∀ i, α i ≤ M.ambientDimension i) →
(∑ i, α i = locusDimension M W) →
∀ B : Set M.Point, @IsClosed _ M.zariskiTopology B → B ⊆ W →
(W \ B).Nonempty →
∀ l : List M.FactorIndex, (∀ i, l.count i = α i) →
∃ F : MvPolynomial (Fin l.length × M.Variable) K, F ≠ 0 ∧
∀ c : Fin l.length → M.Variable → K,
MvPolynomial.eval (Function.uncurry c) F ≠ 0 →
({x : M.Point | x ∈ W ∧
∀ j : Fin l.length, M.eval (MixedFlag.polynomial M l c j) x = 0}).Finite ∧
Disjoint {x : M.Point | x ∈ W ∧
∀ j : Fin l.length, M.eval (MixedFlag.polynomial M l c j) x = 0} B ∧
(∀ v : M.Variable → K,
(∀ i : M.FactorIndex,
(fun j : Fin (M.ambientDimension i + 1) => v ⟨i,j⟩) ≠ 0) →
(∀ P ∈ MixedFlag.ideal M (M.vanishingIdeal W) l c l.length,
MvPolynomial.eval v P = 0) →
Algebra.FormallySmooth K
((Localization.AtPrime (MvPolynomial.vanishingIdeal K {v})) ⧸
(MixedFlag.ideal M (M.vanishingIdeal W) l c l.length).map
(algebraMap M.CoordinateRing
(Localization.AtPrime (MvPolynomial.vanishingIdeal K {v}))))) := by sorry
end PhilipponMultiplicity