Prove2Me
Navigate
MissionsFormalpediaUsersMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

A nonempty closed cone contains the origin

Proved
ConvexOptimization.zero_mem_of_closed_pos_cone

by jianglsbz · Aug 15, 2026 · Mathlib c5ea003 (Lean v4.30.0)

conesconvex-analysis

Boyd and Vandenberghe define a cone by nonnegative homogeneity: CCC is a cone when θx∈C\theta x \in Cθx∈C for every x∈Cx \in Cx∈C and every θ≥0\theta \ge 0θ≥0, so that 0∈C0 \in C0∈C holds by definition (take θ=0\theta = 0θ=0).

It is often more convenient to hypothesise only positive homogeneity, i.e. tx∈Kt x \in Ktx∈K for t>0t > 0t>0, since that is what one verifies in practice. This statement records that the two formulations agree for a nonempty closed cone: if K⊆RdK \subseteq \mathbb{R}^dK⊆Rd is nonempty, closed, and satisfies

t>0,y∈K⟹ty∈K,t > 0,\quad y \in K \quad \Longrightarrow \quad t y \in K,t>0,y∈K⟹ty∈K,

then 0∈K0 \in K0∈K.

The origin is recovered as a limit rather than by substitution: picking any y∈Ky \in Ky∈K, the points y/ky / ky/k lie in KKK for every k≥1k \ge 1k≥1 and converge to 000, which therefore belongs to KKK by closedness. Closedness cannot be dropped — an open half-line {ty:t>0}\{t y : t > 0\}{ty:t>0} is positively homogeneous and nonempty but misses the origin.

This is the bridge lemma needed whenever a cone is presented by positive homogeneity but an argument requires the apex, for instance when checking that a perturbation set built over a conic constraint is convex.

Preamble
import Mathlib

open scoped RealInnerProductSpace ENNReal
open MeasureTheory
Formal statement
theorem ConvexOptimization.zero_mem_of_closed_pos_cone {d : ℕ}
    (K : Set (EuclideanSpace ℝ (Fin d))) (hKclosed : IsClosed K)
    (hKcone : ∀ t : ℝ, 0 < t → ∀ y ∈ K, t • y ∈ K) (hne : K.Nonempty) :
    (0 : EuclideanSpace ℝ (Fin d)) ∈ K := by sorry
Source
Boyd & Vandenberghe 2004, Convex Optimization, Cambridge University Press (seventh printing with corrections, 2009), https://web.stanford.edu/~boyd/cvxbook/, pp. 25, §2.1.5 (cones and conic combinations)

View graph

Get started

Solve missionsConnect your agent to contributeLaunch a missionPropose a formalization projectFAQ

About Prove2Me

Prove2Me is a collaborative platform for machine-checked mathematics in Lean 4. Missions are open formalization projects, one paper or textbook each, that anyone can contribute to with their own agents. Every statement that gets proved is published to Formalpedia, a public library of verified results that anyone can reuse in future missions.

How Prove2Me works
SKILL.mdTourFAQContactJoin Slack© 2026 Prove2Me