Documentation

Books.ConvexAnalysis_Rockafellar_1970.Chapters.Chap03.section11_part5

The closed unit ball {x | ‖x‖ ≤ 1} in Fin n → ℝ agrees with Metric.closedBall 0 1.

theorem smul_unitBall_eq_closedBall (n : ) {r : } (hr : 0 r) :

Scalar multiples of the unit ball are the corresponding centered closed balls (for r ≥ 0).

theorem exists_mem_unitBall_and_dotProduct_pos {n : } {b : Fin n} :
b 0v{x : Fin n | x 1}, 0 < v ⬝ᵥ b

Given b ≠ 0, there is a unit-ball vector whose dot product with b is positive.

theorem strictify_halfspace_le_of_thickening {n : } {S : Set (Fin n)} {b : Fin n} {β δ : } (hb0 : b 0) ( : 0 < δ) (hS : S + δ {x : Fin n | x 1} {x : Fin n | x ⬝ᵥ b β}) :
S {x : Fin n | x ⬝ᵥ b < β}

If a δ-thickening of S is contained in a closed half-space {x | x ⬝ᵥ b ≤ β}, then S is contained in the corresponding open half-space {x | x ⬝ᵥ b < β} (for δ > 0).

theorem strictify_halfspace_ge_of_thickening {n : } {S : Set (Fin n)} {b : Fin n} {β δ : } (hb0 : b 0) ( : 0 < δ) (hS : S + δ {x : Fin n | x 1} {x : Fin n | β x ⬝ᵥ b}) :
S {x : Fin n | β < x ⬝ᵥ b}

If a δ-thickening of S is contained in a closed half-space {x | β ≤ x ⬝ᵥ b}, then S is contained in the corresponding open half-space {x | β < x ⬝ᵥ b} (for δ > 0).

theorem midpoint_mem_add_smul_unitBall_of_norm_sub_le {n : } {x₁ x₂ : Fin n} {ε : } ( : 0 ε) (h : x₁ - x₂ 2 * ε) :
z{x₁} + ε {x : Fin n | x 1}, z {x₂} + ε {x : Fin n | x 1}

If ‖x₁ - x₂‖ ≤ 2ε, then the midpoint lies in both ε-thickenings of {x₁} and {x₂}.

theorem exists_eps_disjoint_thickenings_iff_sInf_norm_sub_pos (n : ) (C₁ C₂ : Set (Fin n)) (hC₁ne : C₁.Nonempty) (hC₂ne : C₂.Nonempty) :
(∃ (ε : ), 0 < ε have B := {x : Fin n | x 1}; Disjoint (C₁ + ε B) (C₂ + ε B)) 0 < sInf (Set.image2 (fun (x₁ x₂ : Fin n) => x₁ - x₂) C₁ C₂)

Disjointness of ε-thickenings is equivalent to positivity of the infimum of pairwise distances.

theorem exists_hyperplaneSeparatesStrongly_iff_exists_eps_disjoint_thickenings (n : ) (C₁ C₂ : Set (Fin n)) (hC₁ne : C₁.Nonempty) (hC₂ne : C₂.Nonempty) (hC₁conv : Convex C₁) (hC₂conv : Convex C₂) :
(∃ (H : Set (Fin n)), HyperplaneSeparatesStrongly n H C₁ C₂) ∃ (ε : ), 0 < ε have B := {x : Fin n | x 1}; Disjoint (C₁ + ε B) (C₂ + ε B)

Strong separation is equivalent to disjointness of some ε-thickenings.

theorem image2_norm_sub_eq_image_dist_sub (n : ) (C₁ C₂ : Set (Fin n)) :
Set.image2 (fun (x₁ x₂ : Fin n) => x₁ - x₂) C₁ C₂ = (fun (z : Fin n) => dist 0 z) '' (C₁ - C₂)

The distance-set between C₁ and C₂ is the image of dist 0 on C₁ - C₂.

theorem sInf_norm_sub_pos_iff_zero_not_mem_closure_sub (n : ) (C₁ C₂ : Set (Fin n)) (hC₁ne : C₁.Nonempty) (hC₂ne : C₂.Nonempty) :
0 < sInf (Set.image2 (fun (x₁ x₂ : Fin n) => x₁ - x₂) C₁ C₂) 0closure (C₁ - C₂)

Positivity of the infimum distance-set is equivalent to 0 ∉ closure (C₁ - C₂).

theorem exists_hyperplaneSeparatesStrongly_iff_inf_sub_norm_pos (n : ) (C₁ C₂ : Set (Fin n)) (hC₁ne : C₁.Nonempty) (hC₂ne : C₂.Nonempty) (hC₁conv : Convex C₁) (hC₂conv : Convex C₂) :
(∃ (H : Set (Fin n)), HyperplaneSeparatesStrongly n H C₁ C₂) 0 < sInf (Set.image2 (fun (x₁ x₂ : Fin n) => x₁ - x₂) C₁ C₂)

Theorem 11.4: Let C₁ and C₂ be non-empty convex sets in ℝ^n. In order that there exist a hyperplane separating C₁ and C₂ strongly, it is necessary and sufficient that

inf { ‖x₁ - x₂‖ | x₁ ∈ C₁, x₂ ∈ C₂ } > 0,

in other words that 0 ∉ closure (C₁ - C₂).

theorem exists_hyperplaneSeparatesStrongly_iff_zero_not_mem_closure_sub (n : ) (C₁ C₂ : Set (Fin n)) (hC₁ne : C₁.Nonempty) (hC₂ne : C₂.Nonempty) (hC₁conv : Convex C₁) (hC₂conv : Convex C₂) :
(∃ (H : Set (Fin n)), HyperplaneSeparatesStrongly n H C₁ C₂) 0closure (C₁ - C₂)

Theorem 11.4 (closure form): Let C₁ and C₂ be non-empty convex sets in ℝ^n. There exists a hyperplane separating C₁ and C₂ strongly if and only if 0 ∉ closure (C₁ - C₂).

theorem zero_not_mem_sub_of_disjoint {E : Type u_1} [AddGroup E] {C₁ C₂ : Set E} (hdisj : Disjoint C₁ C₂) :
0C₁ - C₂

Disjointness implies 0 ∉ (C₁ - C₂).

theorem recessionCone_neg_set_iff {E : Type u_1} [AddCommGroup E] [Module E] (C : Set E) (y : E) :

Recession directions of a negated set are the negations of recession directions.

theorem mem_recessionCone_preimage_linearEquiv_iff {E : Type u_1} {F : Type u_2} [AddCommGroup E] [Module E] [AddCommGroup F] [Module F] (φ : E ≃ₗ[] F) (C : Set F) (y : E) :

Membership in a recession cone is preserved under preimages by linear equivalences.

theorem isClosed_sub_of_noCommonRecessionDirections (n : ) (C₁ C₂ : Set (Fin n)) (hC₁ne : C₁.Nonempty) (hC₂ne : C₂.Nonempty) (hC₁closed : IsClosed C₁) (hC₂closed : IsClosed C₂) (hC₁conv : Convex C₁) (hC₂conv : Convex C₂) (hrec : ∀ (y : Fin n), y 0y C₁.recessionConey C₂.recessionConeFalse) :
IsClosed (C₁ - C₂)

Under the recession-condition hypothesis, the Minkowski difference C₁ - C₂ is closed.

theorem exists_hyperplaneSeparatesStrongly_of_disjoint_closed_convex_noCommonRecessionDirections (n : ) (C₁ C₂ : Set (Fin n)) (hC₁ne : C₁.Nonempty) (hC₂ne : C₂.Nonempty) (hC₁closed : IsClosed C₁) (hC₂closed : IsClosed C₂) (hC₁conv : Convex C₁) (hC₂conv : Convex C₂) (hdisj : Disjoint C₁ C₂) (hrec : ∀ (y : Fin n), y 0y C₁.recessionConey C₂.recessionConeFalse) :
∃ (H : Set (Fin n)), HyperplaneSeparatesStrongly n H C₁ C₂

Corollary 11.4.1. Let C₁ and C₂ be non-empty disjoint closed convex sets in ℝ^n having no common directions of recession. Then there exists a hyperplane separating C₁ and C₂ strongly.

Bounded sets in Fin n → ℝ have only the zero recession direction.

theorem noCommonRecessionDirections_closure_of_bounded_side {n : } {C₁ C₂ : Set (Fin n)} (hC₁ne : C₁.Nonempty) (hC₂ne : C₂.Nonempty) (hbounded : Bornology.IsBounded C₁ Bornology.IsBounded C₂) (y : Fin n) :
y 0y (closure C₁).recessionConey (closure C₂).recessionConeFalse

If one of two sets is bounded, then their closures have no common nonzero recession direction.

theorem hyperplaneSeparatesStrongly_mono_sets {n : } {H A₁ A₂ B₁ B₂ : Set (Fin n)} (hH : HyperplaneSeparatesStrongly n H A₁ A₂) (hB₁ : B₁ A₁) (hB₂ : B₂ A₂) (hB₁ne : B₁.Nonempty) (hB₂ne : B₂.Nonempty) :

Strong hyperplane separation is monotone under shrinking the separated sets.

theorem exists_hyperplaneSeparatesStrongly_of_disjoint_closure_convex_of_bounded (n : ) (C₁ C₂ : Set (Fin n)) (hC₁ne : C₁.Nonempty) (hC₂ne : C₂.Nonempty) (hC₁conv : Convex C₁) (hC₂conv : Convex C₂) (hdisj : Disjoint (closure C₁) (closure C₂)) (hbounded : Bornology.IsBounded C₁ Bornology.IsBounded C₂) :
∃ (H : Set (Fin n)), HyperplaneSeparatesStrongly n H C₁ C₂

Corollary 11.4.2. Let C₁ and C₂ be non-empty convex sets in ℝ^n whose closures are disjoint. If either set is bounded, there exists a hyperplane separating C₁ and C₂ strongly.

theorem isClosed_setOf_dotProduct_le {n : } (b : Fin n) (β : ) :
IsClosed {x : Fin n | x ⬝ᵥ b β}

A single dot-product inequality defines a closed half-space.

theorem convex_setOf_dotProduct_le {n : } (b : Fin n) (β : ) :
Convex {x : Fin n | x ⬝ᵥ b β}

A single dot-product inequality defines a convex half-space.

theorem setOf_forall_dotProduct_le_eq_iInter (n : ) (I : Type u_1) (b : IFin n) (β : I) :
{x : Fin n | ∀ (i : I), x ⬝ᵥ b i β i} = ⋂ (i : I), {x : Fin n | x ⬝ᵥ b i β i}

A system of dot-product inequalities is the intersection of the corresponding half-spaces.

theorem isClosed_and_convex_setOf_dotProduct_le (n : ) (I : Type u_1) (b : IFin n) (β : I) :
IsClosed {x : Fin n | ∀ (i : I), x ⬝ᵥ b i β i} Convex {x : Fin n | ∀ (i : I), x ⬝ᵥ b i β i}

Text 11.2.1: The solution set S of a system of weak linear inequalities ⟪x, b i⟫ ≤ β i (i.e. x ⬝ᵥ b i ≤ β i, for all i ∈ I) is a closed convex set.

def IsClosedHalfspace (n : ) (H : Set (Fin n)) :

Text 11.3.1: Let C be a convex set in ℝ^n. A supporting half-space to C is a closed half-space which contains C and has a point of C in its boundary.

Equations
Instances For
    def IsSupportingHalfspace (n : ) (C H : Set (Fin n)) :

    Text 11.3.1: Let C be a convex set in ℝ^n. A supporting half-space to C is a closed half-space which contains C and has a point of C in its boundary.

    Equations
    Instances For
      def IsSupportingHyperplane (n : ) (C H : Set (Fin n)) :

      Text 11.3.2: A supporting hyperplane to C is a hyperplane which is the boundary of a supporting half-space to C. Equivalently, a supporting hyperplane has the form H = {x | x ⬝ᵥ b = β} with b ≠ 0, such that x ⬝ᵥ b ≤ β for every x ∈ C and x ⬝ᵥ b = β for at least one x ∈ C.

      Equations
      Instances For
        theorem direction_ne_top_of_ne_top_of_nonempty {n : } {A : AffineSubspace (Fin n)} (hAne : (↑A).Nonempty) (hA : A ) :

        If a nonempty affine subspace is not , then its direction is a proper submodule.

        theorem affineSubspace_subset_setOf_apply_eq_of_le_ker_direction {V : Type u_1} [AddCommGroup V] [Module V] (A : AffineSubspace V) {x0 : V} (hx0 : x0 A) (f : Module.Dual V) (hdir : A.direction LinearMap.ker f) :
        A {x : V | f x = f x0}

        If a linear functional vanishes on the direction of an affine subspace, then it is constant on that affine subspace.

        theorem empty_case_choose_nonzero_b {n : } (hn : 0 < n) :
        ∃ (b : Fin n), b 0

        In Fin n → ℝ with 0 < n, one can choose an explicit nonzero vector.

        theorem exists_hyperplane_superset_affineSpan_of_affineSpan_ne_top (n : ) (hn : 0 < n) (C : Set (Fin n)) (hC : affineSpan C ) :
        ∃ (b : Fin n) (β : ), b 0 C {x : Fin n | x ⬝ᵥ b = β} (affineSpan C) {x : Fin n | x ⬝ᵥ b = β}

        Text 11.3.3: If C is not n-dimensional (so that affineSpan ℝ C ≠ ⊤), then there exists a hyperplane containing (and hence extending) affineSpan ℝ C, and therefore containing all of C.

        def IsNontrivialSupportingHyperplane (n : ) (C H : Set (Fin n)) :

        Text 11.3.4: We usually speak only of non-trivial supporting hyperplanes to C, i.e. those supporting hyperplanes H which do not contain C itself.

        Equations
        Instances For
          noncomputable def dotProduct_strongDual {n : } (b : Fin n) :

          The dot product with b as a continuous linear functional, viewed in the StrongDual.

          Equations
          Instances For
            @[simp]
            theorem dotProduct_strongDual_apply {n : } (b x : Fin n) :
            theorem exists_strongDual_strict_sep_point_of_not_mem_isClosed_convex {n : } {a : Fin n} {C : Set (Fin n)} (hCconv : Convex C) (hCclosed : IsClosed C) (hCne : C.Nonempty) (ha : aC) :
            ∃ (l : StrongDual (Fin n)), yC, l y < l a

            If a ∉ C and C is a nonempty closed convex set in ℝ^n, then there exists a continuous linear functional that strictly separates a from C.