Stat.Concentration.Covering.Euclidean­Radial­Polynomial

This barrel exports finite-trace pseudo-dimension bounds and uniform polynomial L² covering certificates for compactly supported radial monomials with a moving finite-dimensional Euclidean center.

Geometry 12 core · 4 supporting 12 to review This module defines compactly supported radial monomials with a moving center and proves finite-trace VC-subgraph bounds. ★ radialMonomialClass_hasPseudoDimAtMost

Euclidean radial monomials and their finite traces

This module defines compactly supported radial monomials with a moving center and proves finite-trace VC-subgraph bounds. The bounds are intentionally non-optimized. Their important features are that they depend only on the Euclidean dimension and the finite degree cutoff, and that they are stated at the trace level, without any assumption on an ambient probability measure.

Odd and even degrees are treated uniformly. On a nonnegative radial ray, every positive integral power is monotone, so a threshold on a radial power is again a distance threshold. Squared Euclidean distance then supplies the finite-dimensional affine lift used by the trace argument.

abbrev EuclideanPoint unreviewed
Causalean.Stat.Concentration.EuclideanRadialPolynomial

The d-dimensional real Euclidean space used by the radial classes.

Definition (Lean source)
abbrev EuclideanPoint (d : ℕ) := EuclideanSpace ℝ (Fin d)
Causalean.Stat.Concentration.EuclideanRadialPolynomial.EuclideanPoint · Causalean/Stat/Concentration/Covering/EuclideanRadialPolynomial/Geometry.lean:25
abbrev RadiusPoint unreviewed
Causalean.Stat.Concentration.EuclideanRadialPolynomial

A Euclidean point paired with a real radius threshold. Negative thresholds are allowed; they give a constant ball or exterior label.

Definition (Lean source)
abbrev RadiusPoint (d : ℕ) := EuclideanPoint d × ℝ
Causalean.Stat.Concentration.EuclideanRadialPolynomial.RadiusPoint · Causalean/Stat/Concentration/Covering/EuclideanRadialPolynomial/Geometry.lean:28
def movingCenterClosedBallClassifier unreviewed
Causalean.Stat.Concentration.EuclideanRadialPolynomial

A moving center labels a point-radius pair when the point lies in the corresponding closed ball about that center.

Definition (Lean source)
noncomputable def movingCenterClosedBallClassifier (d : ℕ) (x : EuclideanPoint d) (zr : RadiusPoint d) : Bool := decide (dist zr.1 x ≤ zr.2)
Causalean.Stat.Concentration.EuclideanRadialPolynomial.movingCenterClosedBallClassifier · Causalean/Stat/Concentration/Covering/EuclideanRadialPolynomial/Geometry.lean:32 · uses EuclideanPoint , RadiusPoint
def movingCenterBallExteriorClassifier unreviewed
Causalean.Stat.Concentration.EuclideanRadialPolynomial

A moving center labels a point-radius pair when it lies strictly outside the corresponding ball.

Definition (Lean source)
noncomputable def movingCenterBallExteriorClassifier (d : ℕ) (x : EuclideanPoint d) (zr : RadiusPoint d) : Bool := decide (zr.2 < dist zr.1 x)
Causalean.Stat.Concentration.EuclideanRadialPolynomial.movingCenterBallExteriorClassifier · Causalean/Stat/Concentration/Covering/EuclideanRadialPolynomial/Geometry.lean:38 · uses EuclideanPoint , RadiusPoint
abbrev ClosedBallParam unreviewed
Causalean.Stat.Concentration.EuclideanRadialPolynomial

A center and a nonnegative radius parameterize a genuine closed Euclidean ball.

Definition (Lean source)
abbrev ClosedBallParam (d : ℕ) := EuclideanPoint d × NNReal
Causalean.Stat.Concentration.EuclideanRadialPolynomial.ClosedBallParam · Causalean/Stat/Concentration/Covering/EuclideanRadialPolynomial/Geometry.lean:205
def euclideanClosedBallClassifier unreviewed
Causalean.Stat.Concentration.EuclideanRadialPolynomial

The Boolean classifier of closed Euclidean balls in finite-dimensional real Euclidean space.

Definition (Lean source)
noncomputable def euclideanClosedBallClassifier (d : ℕ) (cr : ClosedBallParam d) (z : EuclideanPoint d) : Bool := decide (dist z cr.1 ≤ (cr.2 : ℝ))
Causalean.Stat.Concentration.EuclideanRadialPolynomial.euclideanClosedBallClassifier · Causalean/Stat/Concentration/Covering/EuclideanRadialPolynomial/Geometry.lean:209 · uses ClosedBallParam , EuclideanPoint
def radialAnnulusMonomial unreviewed
Causalean.Stat.Concentration.EuclideanRadialPolynomial

The compactly supported radial monomial with center x, bandwidth q, relative annulus endpoints a,b, and natural degree k.

Definition (Lean source)
noncomputable def radialAnnulusMonomial (d : ℕ) (q a b : ℝ) (k : ℕ) (x z : EuclideanPoint d) : ℝ := if a * q ≤ dist z x ∧ dist z x ≤ b * q then (dist z x / q) ^ k else 0
Causalean.Stat.Concentration.EuclideanRadialPolynomial.radialAnnulusMonomial · Causalean/Stat/Concentration/Covering/EuclideanRadialPolynomial/Geometry.lean:276 · uses EuclideanPoint
abbrev RadialMonomialParam unreviewed
Causalean.Stat.Concentration.EuclideanRadialPolynomial

The parameter space for a moving center and a degree between zero and p, inclusive.

Definition (Lean source)
abbrev RadialMonomialParam (d p : ℕ) := EuclideanPoint d × Fin (p + 1)
Causalean.Stat.Concentration.EuclideanRadialPolynomial.RadialMonomialParam · Causalean/Stat/Concentration/Covering/EuclideanRadialPolynomial/Geometry.lean:284
def radialMonomialClass unreviewed
Causalean.Stat.Concentration.EuclideanRadialPolynomial

The radial-monomial class in which the center and the degree up to p both vary.

Definition (Lean source)
noncomputable def radialMonomialClass (d p : ℕ) (q a b : ℝ) (θ : RadialMonomialParam d p) (z : EuclideanPoint d) : ℝ := radialAnnulusMonomial d q a b θ.2.1 θ.1 z
Causalean.Stat.Concentration.EuclideanRadialPolynomial.radialMonomialClass · Causalean/Stat/Concentration/Covering/EuclideanRadialPolynomial/Geometry.lean:289 · uses EuclideanPoint , RadialMonomialParam
def fixedRadialPseudoDimBound unreviewed
Causalean.Stat.Concentration.EuclideanRadialPolynomial

An explicit trace bound for one fixed radial degree.

Definition (Lean source)
def fixedRadialPseudoDimBound (d : ℕ) : ℕ := booleanCombinationVCBound 3 (d + 2)
Causalean.Stat.Concentration.EuclideanRadialPolynomial.fixedRadialPseudoDimBound · Causalean/Stat/Concentration/Covering/EuclideanRadialPolynomial/Geometry.lean:295
def radialPseudoDimBound unreviewed
Causalean.Stat.Concentration.EuclideanRadialPolynomial

An explicit trace bound for all radial degrees from zero through p.

Definition (Lean source)
Causalean.Stat.Concentration.EuclideanRadialPolynomial.radialPseudoDimBound · Causalean/Stat/Concentration/Covering/EuclideanRadialPolynomial/Geometry.lean:299
theorem radialMonomialClass_hasPseudoDimAtMost unreviewed
Causalean.Stat.Concentration.EuclideanRadialPolynomial

Pseudo-dimension bound for the moving-center radial-monomial class. For a positive bandwidth q, a nonnegative annulus inner radius a, and inner radius at most outer radius b, allowing both the Euclidean center and the monomial degree — ranging from zero through p — to vary gives the radial-monomial class a pseudo-dimension of at most radialPseudoDimBound d p.

Formal statement
d p :
q a b :
hq :
0 < q
ha :
0 ≤ a
hab :
a ≤ b
Proof (Lean source)
theorem radialMonomialClass_hasPseudoDimAtMost (d p : ℕ) {q a b : ℝ} (hq : 0 < q) (ha : 0 ≤ a) (hab : a ≤ b) : HasPseudoDimAtMost (radialMonomialClass d p q a b) (radialPseudoDimBound d p) := by let pi : (j : Fin (p + 1)) → EuclideanPoint d → (EuclideanPoint d × ℝ) → Bool := fun j => subgraphClassifier (fun x : EuclideanPoint d => radialAnnulusMonomial d q a b j.1 x) have hpi : ∀ j, HasVCAtMost (pi j) (fixedRadialPseudoDimBound d) := by intro j exact radialAnnulusMonomial_hasPseudoDimAtMost d j.1 hq ha hab have hu := finiteUnion_hasVCAtMost pi hpi have hr := HasVCAtMost.reindex hu (fun theta : RadialMonomialParam d p => (Sigma.mk theta.2 theta.1 : Sigma fun _ : Fin (p + 1) => EuclideanPoint d)) change HasVCAtMost (subgraphClassifier (radialMonomialClass d p q a b)) (radialPseudoDimBound d p) simp only [radialPseudoDimBound, Fintype.card_fin, pi, radialMonomialClass] at hr ⊢ exact hr
4 supporting declarations (lemmas, instances)
Cover 3 core · 14 supporting 3 to review This module converts the finite-trace pseudo-dimension certificate into a uniform polynomial L²(Q) covering certificate. ★ radialMonomialOn_hasPolynomialL2Cover

Uniform polynomial covers for radial monomials

This module converts the finite-trace pseudo-dimension certificate into a uniform polynomial L²(Q) covering certificate. The measure Q remains arbitrary throughout, so atoms on moving annulus boundaries are included.

It also supplies two general assembly tools: pullback of a covering class along an arbitrary nonempty parameter map (using internal representatives at twice the preliminary radius), and the covering certificate for any bounded finite class. These tools let later score constructions reuse the existing sum and product closure lemmas.

def radialMonomialEnvelope unreviewed
Causalean.Stat.Concentration.EuclideanRadialPolynomial

A positive common envelope for all radial powers from zero through p on an annulus whose upper relative radius is b.

Definition (Lean source)
def radialMonomialEnvelope (b : ℝ) (p : ℕ) : ℝ := (max 1 b) ^ p
Causalean.Stat.Concentration.EuclideanRadialPolynomial.radialMonomialEnvelope · Causalean/Stat/Concentration/Covering/EuclideanRadialPolynomial/Cover.lean:25
def radialMonomialOn unreviewed
Causalean.Stat.Concentration.EuclideanRadialPolynomial

Evaluation of the radial-monomial class after a measurable Euclidean location map on a general observation space.

Definition (Lean source)
noncomputable def radialMonomialOn {Ω : Type u} [MeasurableSpace Ω] (d p : ℕ) (loc : Ω → EuclideanPoint d) (q a b : ℝ) (θ : RadialMonomialParam d p) (ω : Ω) : ℝ := radialMonomialClass d p q a b θ (loc ω)
Causalean.Stat.Concentration.EuclideanRadialPolynomial.radialMonomialOn · Causalean/Stat/Concentration/Covering/EuclideanRadialPolynomial/Cover.lean:369 · uses EuclideanPoint , RadialMonomialParam
theorem radialMonomialOn_hasPolynomialL2Cover unreviewed
Causalean.Stat.Concentration.EuclideanRadialPolynomial

Covering certificate transported through a location map. For a measurable map from the underlying observation space into d-dimensional Euclidean space, given a positive bandwidth q, a nonnegative annulus inner radius a, and inner radius at most outer radius b, composing the moving-center radial-monomial class of degree at most p with the location map still carries a uniform polynomial covering certificate at envelope radialMonomialEnvelope b p.

Formal statement
Ω :
d p :
loc :
q a b :
hloc :
hq :
0 < q
ha :
0 ≤ a
hab :
a ≤ b
Proof (Lean source)
theorem radialMonomialOn_hasPolynomialL2Cover {Ω : Type u} [MeasurableSpace Ω] (d p : ℕ) (loc : Ω → EuclideanPoint d) {q a b : ℝ} (hloc : Measurable loc) (hq : 0 < q) (ha : 0 ≤ a) (hab : a ≤ b) : HasPolynomialL2Cover (radialMonomialOn d p loc q a b) (radialMonomialEnvelope b p) := by apply (HasPseudoDimAtMost.compDomain (radialMonomialClass_hasPseudoDimAtMost d p hq ha hab) loc).hasPolynomialL2Cover · intro θ exact (radialAnnulusMonomial_measurable d θ.2.1 q a b θ.1).comp hloc · unfold radialMonomialEnvelope positivity · intro θ ω apply abs_radialAnnulusMonomial_le d p θ.2.1 hq ha hab exact Nat.le_of_lt_succ θ.2.2
14 supporting declarations (lemmas, instances)
Score 8 core · 3 supporting 8 to review This module assembles the moving-center radial basis into a bounded polynomial and then into the residual score shape used by local-polynomial empirical process arguments. ★ radialResidualScore_hasPolynomialL2Cover

Bounded radial-polynomial score classes

This module assembles the moving-center radial basis into a bounded polynomial and then into the residual score shape used by local-polynomial empirical process arguments. Coefficients range over the existing finite coefficient box, all polynomial terms share one moving center, and a finite signed arm may multiply the score.

The proofs are designed to reuse HasPolynomialL2Cover.add, .mul, .neg, .finSum, the bounded finite-class certificate, and parameter pullback. No measure regularity beyond measurability is imposed, so the result remains uniform for atomic probability measures.

def boundedRadialPolynomial unreviewed
Causalean.Stat.Concentration.EuclideanRadialPolynomial

A bounded coefficient vector evaluated against all radial monomials from degree zero through p, with one center shared by every term.

Definition (Lean source)
noncomputable def boundedRadialPolynomial (d p : ℕ) (q a b B : ℝ) (x : EuclideanPoint d) (β : CoeffBox (Fin (p + 1)) B) (z : EuclideanPoint d) : ℝ := ∑ k : Fin (p + 1), β.1 k * radialAnnulusMonomial d q a b k.1 x z
Causalean.Stat.Concentration.EuclideanRadialPolynomial.boundedRadialPolynomial · Causalean/Stat/Concentration/Covering/EuclideanRadialPolynomial/Score.lean:25 · uses CoeffBox , EuclideanPoint
abbrev RadialPolynomialParam unreviewed
Causalean.Stat.Concentration.EuclideanRadialPolynomial

The parameter space for a shared center and a boxed radial-polynomial coefficient vector.

Definition (Lean source)
abbrev RadialPolynomialParam (d p : ℕ) (B : ℝ) := EuclideanPoint d × CoeffBox (Fin (p + 1)) B
Causalean.Stat.Concentration.EuclideanRadialPolynomial.RadialPolynomialParam · Causalean/Stat/Concentration/Covering/EuclideanRadialPolynomial/Score.lean:34
def boundedRadialPolynomialOn unreviewed
Causalean.Stat.Concentration.EuclideanRadialPolynomial

A shared-center bounded radial polynomial evaluated after a Euclidean location map on a general observation space.

Definition (Lean source)
noncomputable def boundedRadialPolynomialOn {Ω : Type u} [MeasurableSpace Ω] (d p : ℕ) (loc : Ω → EuclideanPoint d) (q a b B : ℝ) (θ : RadialPolynomialParam d p B) (ω : Ω) : ℝ := boundedRadialPolynomial d p q a b B θ.1 θ.2 (loc ω)
Causalean.Stat.Concentration.EuclideanRadialPolynomial.boundedRadialPolynomialOn · Causalean/Stat/Concentration/Covering/EuclideanRadialPolynomial/Score.lean:39 · uses EuclideanPoint , RadialPolynomialParam
def radialPolynomialEnvelope unreviewed
Causalean.Stat.Concentration.EuclideanRadialPolynomial

The constant envelope of a boxed degree-p radial polynomial.

Definition (Lean source)
def radialPolynomialEnvelope (b : ℝ) (p : ℕ) (B : ℝ) : ℝ := ((p + 1 : ℕ) : ℝ) * B * radialMonomialEnvelope b p
Causalean.Stat.Concentration.EuclideanRadialPolynomial.radialPolynomialEnvelope · Causalean/Stat/Concentration/Covering/EuclideanRadialPolynomial/Score.lean:47
abbrev RadialResidualScoreParam unreviewed
Causalean.Stat.Concentration.EuclideanRadialPolynomial

The parameter space of a moving center, a boxed polynomial coefficient vector, and one member of a finite signed-arm family.

Definition (Lean source)
abbrev RadialResidualScoreParam (d p : ℕ) (B : ℝ) (A : Type v) := RadialPolynomialParam d p B × A
Causalean.Stat.Concentration.EuclideanRadialPolynomial.RadialResidualScoreParam · Causalean/Stat/Concentration/Covering/EuclideanRadialPolynomial/Score.lean:151
def radialResidualScore unreviewed
Causalean.Stat.Concentration.EuclideanRadialPolynomial

A finite-arm residual score: a radial monomial multiplies a bounded response minus a shared-center boxed radial polynomial.

Definition (Lean source)
noncomputable def radialResidualScore {Ω : Type u} [MeasurableSpace Ω] {A : Type v} (d p : ℕ) (loc : Ω → EuclideanPoint d) (arm : A → Ω → ℝ) (response : Ω → ℝ) (q a b B : ℝ) (j : Fin (p + 1)) (θ : RadialResidualScoreParam d p B A) (ω : Ω) : ℝ := arm θ.2 ω * radialAnnulusMonomial d q a b j.1 θ.1.1 (loc ω) * (response ω - boundedRadialPolynomial d p q a b B θ.1.1 θ.1.2 (loc ω))
Causalean.Stat.Concentration.EuclideanRadialPolynomial.radialResidualScore · Causalean/Stat/Concentration/Covering/EuclideanRadialPolynomial/Score.lean:156 · uses EuclideanPoint , RadialResidualScoreParam
def radialResidualScoreEnvelope unreviewed
Causalean.Stat.Concentration.EuclideanRadialPolynomial

The constant envelope for a bounded finite-arm radial residual score.

Definition (Lean source)
def radialResidualScoreEnvelope (b : ℝ) (p : ℕ) (B R : ℝ) : ℝ := radialMonomialEnvelope b p * (R + radialPolynomialEnvelope b p B)
Causalean.Stat.Concentration.EuclideanRadialPolynomial.radialResidualScoreEnvelope · Causalean/Stat/Concentration/Covering/EuclideanRadialPolynomial/Score.lean:169
theorem radialResidualScore_hasPolynomialL2Cover unreviewed
Causalean.Stat.Concentration.EuclideanRadialPolynomial

Covering certificate for a bounded finite-arm residual score. Given a measurable Euclidean location map, a finite family of arms, each measurable and bounded in absolute value by 1, a measurable response variable that is bounded in absolute value by R, together with a positive bandwidth q, a nonnegative annulus inner radius a, inner radius at most outer radius b, a positive polynomial-coefficient bound B, and a positive response bound R, then the score formed by multiplying an arm indicator, a radial monomial, and the residual of the response against a boxed radial-polynomial fit carries a positive-envelope uniform polynomial L²(Q) covering certificate — with envelope radialResidualScoreEnvelope b p B R — over every probability measure Q, including atomic ones.

Formal statement
Ω :
A :
Type v
d p :
loc :
arm :
A → Ω → ℝ
response :
Ω → ℝ
q a b B R :
j :
Fin (p + 1)
hloc :
harmMeas :
∀ s, Measurable (arm s)
harmBound :
∀ s ω, |arm s ω| ≤ 1
hresponseMeas :
Measurable response
hresponseBound :
∀ ω, |response ω| ≤ R
hq :
0 < q
ha :
0 ≤ a
hab :
a ≤ b
hB :
0 < B
hR :
0 < R
HasPolynomialL2Cover (radialResidualScore d p loc arm response q a b B j) (radialResidualScoreEnvelope b p B R)
Proof (Lean source)
theorem radialResidualScore_hasPolynomialL2Cover {Ω : Type u} [MeasurableSpace Ω] {A : Type v} [Fintype A] (d p : ℕ) (loc : Ω → EuclideanPoint d) (arm : A → Ω → ℝ) (response : Ω → ℝ) {q a b B R : ℝ} (j : Fin (p + 1)) (hloc : Measurable loc) (harmMeas : ∀ s, Measurable (arm s)) (harmBound : ∀ s ω, |arm s ω| ≤ 1) (hresponseMeas : Measurable response) (hresponseBound : ∀ ω, |response ω| ≤ R) (hq : 0 < q) (ha : 0 ≤ a) (hab : a ≤ b) (hB : 0 < B) (hR : 0 < R) : HasPolynomialL2Cover (radialResidualScore d p loc arm response q a b B j) (radialResidualScoreEnvelope b p B R) := by classical let M := radialMonomialEnvelope b p let P := radialPolynomialEnvelope b p B have hM : 0 < M := by dsimp [M, radialMonomialEnvelope] positivity have hP : 0 < P := by dsimp [P, radialPolynomialEnvelope] have hp1 : (0 : ℝ) < (p + 1 : ℕ) := by positivity positivity have hU : 0 < M * (R + P) := by positivity cases isEmpty_or_nonempty A with | inl hA => letI : IsEmpty A := hA refine ⟨?_, ?_, ?_, ?_⟩ · simpa [radialResidualScoreEnvelope, M, P] using hU · intro θ exact isEmptyElim θ.2 · intro θ exact isEmptyElim θ.2 · refine ⟨1, 0, le_rfl, ?_⟩ intro Q hQ ε hε hε1 refine ⟨∅, ?_, ?_⟩ · simp · intro θ exact isEmptyElim θ.2 | inr hA => letI : Nonempty A := hA letI : Nonempty (CoeffBox (Fin (p + 1)) B) := ⟨⟨fun _ => 0, fun _ => by simpa using hB.le⟩⟩ have harm : HasPolynomialL2Cover arm 1 := finiteClass_hasPolynomialL2Cover arm (by norm_num) harmMeas harmBound have hleading : HasPolynomialL2Cover (fun x : EuclideanPoint d => fun ω => radialAnnulusMonomial d q a b j.1 x (loc ω)) M := by have hfull := radialMonomialOn_hasPolynomialL2Cover d p loc hloc hq ha hab have hpull := pullback hfull (fun x : EuclideanPoint d => (x, j)) exact hpull have hpoly := boundedRadialPolynomialOn_hasPolynomialL2Cover d p loc hloc hq ha hab hB have hresponse : HasPolynomialL2Cover (fun _ : Unit => response) R := by exact finiteClass_hasPolynomialL2Cover (fun _ : Unit => response) hR (fun _ => hresponseMeas) (fun _ => hresponseBound) have harmLeading := harm.mul hleading have hresidual := hresponse.add hpoly.neg have hsuper := harmLeading.mul hresidual have hpull := pullback hsuper (fun θ : RadialResidualScoreParam d p B A => ((θ.2, θ.1.1), ((), θ.1))) change HasPolynomialL2Cover (radialResidualScore d p loc arm response q a b B j) (M * (R + P)) simp only [one_mul] at hpull exact hpull
3 supporting declarations (lemmas, instances)
Trace 4 core · 6 supporting 4 to review This module isolates the combinatorial tools used by the Euclidean radial construction. ★ booleanCombination_hasVCAtMost

Finite-trace tools for radial VC-subgraph classes

This module isolates the combinatorial tools used by the Euclidean radial construction. It gives a homogeneous linear-sign VC bound, deliberately coarse but explicit bounds for finite Boolean combinations and finite unions, and pullback lemmas for both Boolean VC dimension and pseudo-dimension.

The Boolean-combination theorem is trace-level: its combining formula may depend on the sampled point. This is important for radial subgraphs, where the formula changes according to the sign of the sampled threshold.

def booleanCombinationVCBound unreviewed
Causalean.Stat.Concentration.EuclideanRadialPolynomial

A deliberately coarse uniform VC bound for a Boolean formula in m independently parameterized classes of VC dimension at most d.

Definition (Lean source)
def booleanCombinationVCBound (m d : ℕ) : ℕ := 2 ^ (m * (d + 1) + 1)
Causalean.Stat.Concentration.EuclideanRadialPolynomial.booleanCombinationVCBound · Causalean/Stat/Concentration/Covering/EuclideanRadialPolynomial/Trace.lean:25
def finiteUnionVCBound unreviewed
Causalean.Stat.Concentration.EuclideanRadialPolynomial

A deliberately coarse uniform VC bound for a union of m classes, each of VC dimension at most d.

Definition (Lean source)
def finiteUnionVCBound (m d : ℕ) : ℕ := 2 ^ (m * (d + 1) + 1)
Causalean.Stat.Concentration.EuclideanRadialPolynomial.finiteUnionVCBound · Causalean/Stat/Concentration/Covering/EuclideanRadialPolynomial/Trace.lean:30
def linearSignClass unreviewed
Causalean.Stat.Concentration.EuclideanRadialPolynomial

The homogeneous linear threshold class generated by a finite feature vector labels a point according to the sign of its parameter-feature pairing.

Definition (Lean source)
noncomputable def linearSignClass {K : Type v} [Fintype K] (φ : K → 𝒳 → ℝ) (θ : K → ℝ) (x : 𝒳) : Bool := decide (0 < ∑ k, θ k * φ k x)
Causalean.Stat.Concentration.EuclideanRadialPolynomial.linearSignClass · Causalean/Stat/Concentration/Covering/EuclideanRadialPolynomial/Trace.lean:80
theorem booleanCombination_hasVCAtMost unreviewed
Causalean.Stat.Concentration.EuclideanRadialPolynomial

VC bound for a point-dependent Boolean combination of classes. Given m independently parameterized Boolean classifier families, each of VC dimension at most d, applying to them any combining rule that may itself depend on the sampled point still yields a Boolean class of VC dimension at most booleanCombinationVCBound m d.

Formal statement
m d :
Fin m → Type v
π :
(j : Fin m) → ι j → 𝒳 → Bool
:
∀ j, HasVCAtMost (π j) d
combine :
𝒳 → (Fin m → Bool) → Bool
HasVCAtMost (fun θ : (j : Fin m) → ι j => fun x => combine x (fun j => π j (θ j) x)) (booleanCombinationVCBound m d)
Proof (Lean source)
theorem booleanCombination_hasVCAtMost {m d : ℕ} {ι : Fin m → Type v} (π : (j : Fin m) → ι j → 𝒳 → Bool) (hπ : ∀ j, HasVCAtMost (π j) d) (combine : 𝒳 → (Fin m → Bool) → Bool) : HasVCAtMost (fun θ : (j : Fin m) → ι j => fun x => combine x (fun j => π j (θ j) x)) (booleanCombinationVCBound m d) := by simpa only [booleanCombinationVCBound] using hasVCAtMost_of_growth_card_le (fun θ : (j : Fin m) → ι j => fun x => combine x (fun j => π j (θ j) x)) (m * (d + 1)) (fun n S => booleanCombination_growth_card_le (n := n) π hπ combine S)
Causalean.Stat.Concentration.EuclideanRadialPolynomial.booleanCombination_hasVCAtMost · Causalean/Stat/Concentration/Covering/EuclideanRadialPolynomial/Trace.lean:426 · uses booleanCombinationVCBound , HasVCAtMost
6 supporting declarations (lemmas, instances)
  • reindex theorem — Reparameterizing a Boolean class by an arbitrary map cannot increase its finite-trace VC dimension.
    ι :
    Type v
    κ :
    Type w
    π :
    ι → 𝒳 → Bool
    d :
    :
    e :
    κ → ι
    HasVCAtMost (fun k => π (e k)) d
    Proof (Lean source)
    theorem HasVCAtMost.reindex {ι : Type v} {κ : Type w} {π : ι → 𝒳 → Bool} {d : ℕ} (hπ : HasVCAtMost π d) (e : κ → ι) : HasVCAtMost (fun k => π (e k)) d := by intro n S apply (Finset.vcDim_mono (ℬ := growthFamily π S) ?_).trans (hπ n S) intro A hA rw [mem_growthFamily_iff] at hA ⊢ obtain ⟨k, rfl⟩ := hA exact ⟨e k, rfl⟩
    Causalean.Stat.Concentration.EuclideanRadialPolynomial.HasVCAtMost.reindex · Causalean/Stat/Concentration/Covering/EuclideanRadialPolynomial/Trace.lean:35
  • compDomain theorem — Precomposing the observation argument of a Boolean class cannot increase its finite-trace VC dimension.
    ι :
    Type v
    𝒴 :
    Type w
    π :
    ι → 𝒳 → Bool
    d :
    :
    g :
    𝒴 → 𝒳
    HasVCAtMost (fun i y => π i (g y)) d
    Proof (Lean source)
    theorem HasVCAtMost.compDomain {ι : Type v} {𝒴 : Type w} {π : ι → 𝒳 → Bool} {d : ℕ} (hπ : HasVCAtMost π d) (g : 𝒴 → 𝒳) : HasVCAtMost (fun i y => π i (g y)) d := by intro n S exact hπ n (fun j => g (S j))
    Causalean.Stat.Concentration.EuclideanRadialPolynomial.HasVCAtMost.compDomain · Causalean/Stat/Concentration/Covering/EuclideanRadialPolynomial/Trace.lean:48
  • reindex theorem — Reparameterizing a real-valued class by an arbitrary map cannot increase its pseudo-dimension.
    ι :
    Type v
    κ :
    Type w
    F :
    ι → 𝒳 → ℝ
    d :
    e :
    κ → ι
    HasPseudoDimAtMost (fun k => F (e k)) d
    Proof (Lean source)
    theorem HasPseudoDimAtMost.reindex {ι : Type v} {κ : Type w} {F : ι → 𝒳 → ℝ} {d : ℕ} (hF : HasPseudoDimAtMost F d) (e : κ → ι) : HasPseudoDimAtMost (fun k => F (e k)) d := by intro n T apply (Finset.vcDim_mono (ℬ := growthFamily (subgraphClassifier F) T) ?_).trans (hF n T) intro A hA rw [mem_growthFamily_iff] at hA ⊢ obtain ⟨k, rfl⟩ := hA exact ⟨e k, rfl⟩
    Causalean.Stat.Concentration.EuclideanRadialPolynomial.HasPseudoDimAtMost.reindex · Causalean/Stat/Concentration/Covering/EuclideanRadialPolynomial/Trace.lean:57
  • compDomain theorem — Precomposing every function in a real-valued class with a fixed map cannot increase its pseudo-dimension.
    ι :
    Type v
    𝒴 :
    Type w
    F :
    ι → 𝒳 → ℝ
    d :
    g :
    𝒴 → 𝒳
    HasPseudoDimAtMost (fun i y => F i (g y)) d
    Proof (Lean source)
    theorem HasPseudoDimAtMost.compDomain {ι : Type v} {𝒴 : Type w} {F : ι → 𝒳 → ℝ} {d : ℕ} (hF : HasPseudoDimAtMost F d) (g : 𝒴 → 𝒳) : HasPseudoDimAtMost (fun i y => F i (g y)) d := by intro n T exact hF n (fun j => (g (T j).1, (T j).2))
    Causalean.Stat.Concentration.EuclideanRadialPolynomial.HasPseudoDimAtMost.compDomain · Causalean/Stat/Concentration/Covering/EuclideanRadialPolynomial/Trace.lean:71
  • linearSignClass_hasVCAtMost theorem — Homogeneous linear threshold classifiers in K real coordinates have VC dimension at most the number of coordinates.
    K :
    Type v
    φ :
    K → 𝒳 → ℝ
    Proof (Lean source)
    theorem linearSignClass_hasVCAtMost {K : Type v} [Fintype K] (φ : K → 𝒳 → ℝ) : HasVCAtMost (linearSignClass φ) (card K) := by classical intro n S unfold vcDim refine Finset.sup_le fun s hs => ?_ rw [Finset.mem_shatterer] at hs by_contra hcard have hcard_lt : card K < s.card := by omega let v : {i // i ∈ s} → K → ℝ := fun i k => φ k (S i.1) have hvdep : ¬ LinearIndependent ℝ v := by intro hv have hle := hv.fintype_card_le_finrank rw [Module.finrank_pi, Fintype.card_coe] at hle omega obtain ⟨a, ha0, i0, hi0⟩ := Fintype.not_linearIndependent_iff.mp hvdep let g : {i // i ∈ s} → ℝ := if 0 < a i0 then a else fun i => -a i have hg0 : ∑ i, g i • v i = 0 := by dsimp [g] split_ifs · exact ha0 · calc ∑ i, (-a i) • v i = ∑ i, -(a i • v i) := by apply Finset.sum_congr rfl intro i _ exact neg_smul (a i) (v i) _ = -(∑ i, a i • v i) := by rw [Finset.sum_neg_distrib] _ = 0 := by rw [ha0, neg_zero] have hgi0 : 0 < g i0 := by dsimp [g] split_ifs with h · exact h · exact neg_pos.mpr (lt_of_le_of_ne (le_of_not_gt h) hi0) let g0 : Fin n → ℝ := fun i => if hi : i ∈ s then g ⟨i, hi⟩ else 0 let t : Finset (Fin n) := s.filter fun i => 0 < g0 i have hts : t ⊆ s := filter_subset _ _ obtain ⟨u, hu_growth, hsu⟩ := hs hts obtain ⟨θ, hθ⟩ := mem_growthFamily_iff.mp hu_growth have hlabel (i : {i // i ∈ s}) : linearSignClass φ θ (S i.1) = true ↔ 0 < g i := by rw [← restrictionPattern_mem_iff (p := linearSignClass φ θ) (S := S) (j := i.1), hθ] have hi_mem : i.1 ∈ u ↔ i.1 ∈ t := by constructor · intro hiu have : i.1 ∈ s ∩ u := Finset.mem_inter.mpr ⟨i.2, hiu⟩ rwa [hsu] at this · intro hit have : i.1 ∈ s ∩ u := by rwa [hsu] exact (Finset.mem_inter.mp this).2 rw [hi_mem] simp only [t, mem_filter, i.2, true_and] simp [g0, i.2] let e : {i // i ∈ s} → ℝ := fun i => ∑ k, θ k * φ k (S i.1) have he_pos (i : {i // i ∈ s}) (hi : 0 < g i) : 0 < e i := by simpa [linearSignClass, e] using (hlabel i).2 hi have he_nonpos (i : {i // i ∈ s}) (hi : ¬ 0 < g i) : e i ≤ 0 := by have hfalse : linearSignClass φ θ (S i.1) ≠ true := (hlabel i).not.mpr hi simpa [linearSignClass, e] using hfalse have hprod_nonneg (i : {i // i ∈ s}) : 0 ≤ g i * e i := by by_cases hi : 0 < g i · exact (mul_pos hi (he_pos i hi)).le · exact mul_nonneg_of_nonpos_of_nonpos (le_of_not_gt hi) (he_nonpos i hi) have hprod_pos : 0 < g i0 * e i0 := mul_pos hgi0 (he_pos i0 hgi0) have hsum_pos : 0 < ∑ i, g i * e i := Finset.sum_pos' (fun i _ => hprod_nonneg i) ⟨i0, Finset.mem_univ _, hprod_pos⟩ have hsum_zero : ∑ i, g i * e i = 0 := by have hcoord (k : K) : ∑ i, g i * v i k = 0 := by have := congrFun hg0 k simpa [Pi.smul_apply, smul_eq_mul] using this simp_rw [e, Finset.mul_sum] rw [Finset.sum_comm] apply Finset.sum_eq_zero intro k _ rw [show (∑ i, g i * (θ k * φ k (S i.1))) = θ k * ∑ i, g i * v i k by rw [Finset.mul_sum] apply Finset.sum_congr rfl intro i _ dsimp [v] ring] rw [hcoord, mul_zero] linarith
    Causalean.Stat.Concentration.EuclideanRadialPolynomial.linearSignClass_hasVCAtMost · Causalean/Stat/Concentration/Covering/EuclideanRadialPolynomial/Trace.lean:86
  • finiteUnion_hasVCAtMost theorem — A finite union of m Boolean classes of VC dimension at most d has finite VC dimension bounded by finiteUnionVCBound m d.
    K :
    Type v
    K → Type w
    d :
    π :
    (k : K) → ι k → 𝒳 → Bool
    :
    ∀ k, HasVCAtMost (π k) d
    HasVCAtMost (fun θ : Sigma ι => π θ.1 θ.2) (finiteUnionVCBound (card K) d)
    Proof (Lean source)
    theorem finiteUnion_hasVCAtMost {K : Type v} [Fintype K] {ι : K → Type w} {d : ℕ} (π : (k : K) → ι k → 𝒳 → Bool) (hπ : ∀ k, HasVCAtMost (π k) d) : HasVCAtMost (fun θ : Sigma ι => π θ.1 θ.2) (finiteUnionVCBound (card K) d) := by simpa only [finiteUnionVCBound] using hasVCAtMost_of_growth_card_le (fun θ : Sigma ι => π θ.1 θ.2) (card K * (d + 1)) (fun n S => finiteUnion_growth_card_le (n := n) π hπ S)
    Causalean.Stat.Concentration.EuclideanRadialPolynomial.finiteUnion_hasVCAtMost · Causalean/Stat/Concentration/Covering/EuclideanRadialPolynomial/Trace.lean:446