Extreme sets #
This file defines extreme sets and extreme points for sets in a module.
An extreme set of A
is a subset of A
that is as far as it can get in any outward direction: If
point x
is in it and point y β A
, then the line passing through x
and y
leaves A
at x
.
This is an analytic notion of "being on the side of". It is weaker than being exposed (see
is_exposed.is_extreme
).
Main declarations #
is_extreme π A B
: States thatB
is an extreme set ofA
(in the literature,A
is often implicit).set.extreme_points π A
: Set of extreme points ofA
(corresponding to extreme singletons).convex.mem_extreme_points_iff_convex_diff
: A useful equivalent condition to being an extreme point:x
is an extreme point iffA \ {x}
is convex.
Implementation notes #
The exact definition of extremeness has been carefully chosen so as to make as many lemmas
unconditional (in particular, the Krein-Milman theorem doesn't need the set to be convex!).
In practice, A
is often assumed to be a convex set.
References #
See chapter 8 of Barry Simon, Convexity
TODO #
Define intrinsic frontier and prove lemmas related to extreme sets and points.
More not-yet-PRed stuff is available on the branch sperner_again
.
A set B
is an extreme subset of A
if B β A
and all points of B
only belong to open
segments whose ends are in B
.
Equations
Instances for is_extreme
A point x
is an extreme point of a set A
if x
belongs to no open segment with ends in
A
, except for the obvious open_segment x x
.
Equations
- set.extreme_points π A = {x β A | β β¦xβ : Eβ¦, xβ β A β β β¦xβ : Eβ¦, xβ β A β x β open_segment π xβ xβ β xβ = x β§ xβ = x}
x is an extreme point to A iff {x} is an extreme set of A.
A useful restatement using segment
: x
is an extreme point iff the only (closed) segments
that contain it are those with x
as one of their endpoints.