Star-convex sets #
This file defines star-convex sets in a convex space.
A set is star-convex at x if every segment from x to a point in the set is contained in the set.
This is the prototypical example of a contractible set in homotopy theory (by scaling every point
towards x), but has wider uses.
Note that this has nothing to do with star rings, Star and co.
Implementation notes #
Instead of saying that a set is star-convex, we say a set is star-convex at a point. This has the advantage of allowing us to talk about convexity as being "everywhere star-convexity" and of making the union of star-convex sets be star-convex.
Incidentally, this choice means we don't need to assume a set is nonempty for it to be star-convex. Concretely, the empty set is star-convex at every point.
A set s is star-convex at a point x if every segment from x to a point in s is
contained in s.
TODO: Replace StarConvex with this predicate.
Equations
- Convexity.IsStarConvexSet R x s = ∀ ⦃y : X⦄, y ∈ s → ∀ ⦃a b : R⦄ (ha : 0 ≤ a) (hb : 0 ≤ b) (hab : a + b = 1), Convexity.convexCombPair a b ha hb hab x y ∈ s