Documentation

FormalConjecturesForMathlib.Combinatorics.SetFamily.VCDim

VC dimension of a set family #

This file defines the VC dimension of a set family as the maximum size of a set it shatters.

def Shatters {α : Type u_1} (𝒜 : Set (Set α)) (A : Set α) :

A set family 𝒜 shatters a set A if restricting 𝒜 to A gives rise to all subsets of A.

Equations
Instances For
    theorem Shatters.exists_inter_eq_singleton {α : Type u_1} {𝒜 : Set (Set α)} {A : Set α} {a : α} (hs : Shatters 𝒜 A) (ha : a A) :
    B𝒜, A B = {a}
    theorem Shatters.mono_left {α : Type u_1} {𝒜 : Set (Set α)} {A : Set α} (h : 𝒜 ) (h𝒜 : Shatters 𝒜 A) :
    Shatters A
    theorem Shatters.mono_right {α : Type u_1} {𝒜 : Set (Set α)} {A B : Set α} (h : B A) (hs : Shatters 𝒜 A) :
    Shatters 𝒜 B
    theorem Shatters.exists_superset {α : Type u_1} {𝒜 : Set (Set α)} {A : Set α} (h : Shatters 𝒜 A) :
    B𝒜, A B
    theorem Shatters.of_forall_subset {α : Type u_1} {𝒜 : Set (Set α)} {A : Set α} (h : BA, B 𝒜) :
    Shatters 𝒜 A
    theorem Shatters.nonempty {α : Type u_1} {𝒜 : Set (Set α)} {A : Set α} (h : Shatters 𝒜 A) :
    @[simp]
    theorem shatters_empty {α : Type u_1} {𝒜 : Set (Set α)} :
    theorem Shatters.subset_iff {α : Type u_1} {𝒜 : Set (Set α)} {A B : Set α} (h : Shatters 𝒜 A) :
    B A u𝒜, A u = B
    theorem shatters_iff {α : Type u_1} {𝒜 : Set (Set α)} {A : Set α} :
    Shatters 𝒜 A (fun (x : Set α) => A x) '' 𝒜 = 𝒫 A
    theorem univ_shatters {α : Type u_1} {A : Set α} :
    @[simp]
    theorem shatters_univ {α : Type u_1} {𝒜 : Set (Set α)} :
    def HasVCDimAtMost {α : Type u_1} (𝒜 : Set (Set α)) (d : ) :

    A set family 𝒜 has VC dimension at most d if there are no families x of elements indexed by [d + 1] and A of sets of 𝒜 indexed by 2^[d + 1] such that x i ∈ A s ↔ i ∈ s for all i ∈ [d + 1], s ⊆ [d + 1].

    Equations
    Instances For
      theorem HasVCDimAtMost.anti {α : Type u_1} {𝒜 : Set (Set α)} {d : } (h𝒜ℬ : 𝒜 ) (hℬ : HasVCDimAtMost d) :
      theorem HasVCDimAtMost.mono {α : Type u_1} {𝒜 : Set (Set α)} {d d' : } (h : d d') (hd : HasVCDimAtMost 𝒜 d) :
      @[simp]
      theorem HasVCDimAtMost.empty {α : Type u_1} {d : } :