Skip to content
This repository was archived by the owner on Jul 24, 2024. It is now read-only.

Commit 970f074

Browse files
committed
feat(analysis/convex/star): Star-convex sets (#10524)
This defines `star_convex 𝕜 x s` to mean that a set is star-convex (aka star-shaped, radially convex, or a star domain) at `x`. This means that every segment from `x` to a point in `s` is a subset of `s`.
1 parent 44b649c commit 970f074

File tree

6 files changed

+506
-16
lines changed

6 files changed

+506
-16
lines changed

src/algebra/add_torsor.lean

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -221,7 +221,8 @@ variables {s s' : set G} {t t' : set P}
221221
@[mono] lemma vadd_subset_vadd (hs : s ⊆ s') (ht : t ⊆ t') : s +ᵥ t ⊆ s' +ᵥ t' :=
222222
image2_subset hs ht
223223

224-
@[simp] lemma vadd_singleton (s : set G) (p : P) : s +ᵥ {p} = (+ᵥ p) '' s := image2_singleton_right
224+
@[simp] lemma set_vadd_singleton (s : set G) (p : P) : s +ᵥ {p} = (+ᵥ p) '' s :=
225+
image2_singleton_right
225226

226227
lemma finite.vadd (hs : finite s) (ht : finite t) : finite (s +ᵥ t) := hs.image2 _ ht
227228

src/algebra/pointwise.lean

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,11 @@ Copyright (c) 2019 Johan Commelin. All rights reserved.
33
Released under Apache 2.0 license as described in the file LICENSE.
44
Authors: Johan Commelin, Floris van Doorn
55
-/
6-
import group_theory.submonoid.basic
76
import algebra.big_operators.basic
8-
import group_theory.group_action.group
9-
import data.set.finite
107
import algebra.smul_with_zero
8+
import data.set.finite
9+
import group_theory.group_action.group
10+
import group_theory.submonoid.basic
1111

1212
/-!
1313
# Pointwise addition, multiplication, and scalar multiplication of sets.
@@ -512,6 +512,10 @@ ext $ λ x, ⟨λ hx, let ⟨p, q, ⟨i, hi⟩, ⟨j, hj⟩, hpq⟩ := set.mem_s
512512
⟨(i, j), hpq ▸ hi ▸ hj ▸ rfl⟩,
513513
λ ⟨⟨i, j⟩, h⟩, set.mem_smul.2 ⟨b i, c j, ⟨i, rfl⟩, ⟨j, rfl⟩, h⟩⟩
514514

515+
@[simp, to_additive]
516+
lemma smul_singleton [has_scalar α β] (a : α) (b : β) : a • ({b} : set β) = {a • b} :=
517+
image_singleton
518+
515519
@[simp, to_additive]
516520
lemma singleton_smul [has_scalar α β] {t : set β} : ({a} : set α) • t = a • t :=
517521
image2_singleton_left

src/analysis/convex/basic.lean

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -785,9 +785,8 @@ calc
785785
a • x + b • y = (b • y - b • x) + (a • x + b • x) : by abel
786786
... = b • (y - x) + x : by rw [smul_sub, convex.combo_self h]
787787

788-
lemma convex.sub (hs : convex 𝕜 s) (ht : convex 𝕜 t) :
789-
convex 𝕜 ((λ x : E × E, x.1 - x.2) '' (s.prod t)) :=
790-
(hs.prod ht).is_linear_image is_linear_map.is_linear_map_sub
788+
lemma convex.sub {s : set (E × E)} (hs : convex 𝕜 s) : convex 𝕜 ((λ x : E × E, x.1 - x.2) '' s) :=
789+
hs.is_linear_image is_linear_map.is_linear_map_sub
791790

792791
lemma convex_segment (x y : E) : convex 𝕜 [x -[𝕜] y] :=
793792
begin

0 commit comments

Comments
 (0)