Skip to content

Commit

Permalink
chore: classify new lemma porting notes (#11217)
Browse files Browse the repository at this point in the history
Classifies by adding issue number #10756 to porting notes claiming anything semantically equivalent to: 

- "new lemma"
- "added lemma"
  • Loading branch information
pitmonticone committed Mar 8, 2024
1 parent 86f95a4 commit 68df7d0
Show file tree
Hide file tree
Showing 48 changed files with 74 additions and 74 deletions.
2 changes: 1 addition & 1 deletion Mathlib/Analysis/Calculus/BumpFunction/Basic.lean
Expand Up @@ -198,7 +198,7 @@ theorem eventuallyEq_one : f =ᶠ[𝓝 c] 1 :=
f.eventuallyEq_one_of_mem_ball (mem_ball_self f.rIn_pos)
#align cont_diff_bump.eventually_eq_one ContDiffBump.eventuallyEq_one

-- Porting note: new lemma
-- Porting note (#10756): new lemma
/-- `ContDiffBump` is `𝒞ⁿ` in all its arguments. -/
protected theorem _root_.ContDiffWithinAt.contDiffBump {c g : X → E} {s : Set X}
{f : ∀ x, ContDiffBump (c x)} {x : X} (hc : ContDiffWithinAt ℝ n c s x)
Expand Down
2 changes: 1 addition & 1 deletion Mathlib/Analysis/Calculus/ContDiff/Defs.lean
Expand Up @@ -1351,7 +1351,7 @@ theorem ContDiffWithinAt.contDiffAt (h : ContDiffWithinAt 𝕜 n f s x) (hx : s
ContDiffAt 𝕜 n f x := by rwa [ContDiffAt, ← contDiffWithinAt_inter hx, univ_inter]
#align cont_diff_within_at.cont_diff_at ContDiffWithinAt.contDiffAt

-- Porting note: new lemma
-- Porting note (#10756): new lemma
theorem ContDiffOn.contDiffAt (h : ContDiffOn 𝕜 n f s) (hx : s ∈ 𝓝 x) :
ContDiffAt 𝕜 n f x :=
(h _ (mem_of_mem_nhds hx)).contDiffAt hx
Expand Down
2 changes: 1 addition & 1 deletion Mathlib/Analysis/Normed/Group/Quotient.lean
Expand Up @@ -398,7 +398,7 @@ theorem IsQuotient.norm_le {f : NormedAddGroupHom M N} (hquot : IsQuotient f) (m
· exact ⟨0, f.ker.zero_mem, by simp⟩
#align normed_add_group_hom.is_quotient.norm_le NormedAddGroupHom.IsQuotient.norm_le

-- Porting note: new lemma
-- Porting note (#10756): new lemma
theorem norm_lift_le {N : Type*} [SeminormedAddCommGroup N] (S : AddSubgroup M)
(f : NormedAddGroupHom M N) (hf : ∀ s ∈ S, f s = 0) :
‖lift S f hf‖ ≤ ‖f‖ :=
Expand Down
2 changes: 1 addition & 1 deletion Mathlib/Analysis/NormedSpace/PiLp.lean
Expand Up @@ -79,7 +79,7 @@ abbrev PiLp (p : ℝ≥0∞) {ι : Type*} (α : ι → Type*) : Type _ :=
instance (p : ℝ≥0∞) {ι : Type*} (α : ι → Type*) [∀ i, Inhabited (α i)] : Inhabited (PiLp p α) :=
fun _ => default⟩

@[ext] -- Porting note: new lemma
@[ext] -- Porting note (#10756): new lemma
protected theorem PiLp.ext {p : ℝ≥0∞} {ι : Type*} {α : ι → Type*} {x y : PiLp p α}
(h : ∀ i, x i = y i) : x = y := funext h

Expand Down
2 changes: 1 addition & 1 deletion Mathlib/Analysis/SpecialFunctions/Exp.lean
Expand Up @@ -349,7 +349,7 @@ theorem tendsto_exp_comp_nhds_zero {f : α → ℝ} :
simp_rw [← comp_apply (f := exp), ← tendsto_comap_iff, comap_exp_nhds_zero]
#align real.tendsto_exp_comp_nhds_zero Real.tendsto_exp_comp_nhds_zero

-- Porting note: new lemma
-- Porting note (#10756): new lemma
theorem openEmbedding_exp : OpenEmbedding exp :=
isOpen_Ioi.openEmbedding_subtype_val.comp expOrderIso.toHomeomorph.openEmbedding

Expand Down
4 changes: 2 additions & 2 deletions Mathlib/Analysis/SpecialFunctions/SmoothTransition.lean
Expand Up @@ -46,7 +46,7 @@ namespace expNegInvGlue
theorem zero_of_nonpos {x : ℝ} (hx : x ≤ 0) : expNegInvGlue x = 0 := by simp [expNegInvGlue, hx]
#align exp_neg_inv_glue.zero_of_nonpos expNegInvGlue.zero_of_nonpos

@[simp] -- Porting note: new lemma
@[simp] -- Porting note (#10756): new lemma
protected theorem zero : expNegInvGlue 0 = 0 := zero_of_nonpos le_rfl

/-- The function `expNegInvGlue` is positive on `(0, +∞)`. -/
Expand All @@ -61,7 +61,7 @@ theorem nonneg (x : ℝ) : 0 ≤ expNegInvGlue x := by
| inr h => exact le_of_lt (pos_of_pos h)
#align exp_neg_inv_glue.nonneg expNegInvGlue.nonneg

-- Porting note: new lemma
-- Porting note (#10756): new lemma
@[simp] theorem zero_iff_nonpos {x : ℝ} : expNegInvGlue x = 0 ↔ x ≤ 0 :=
fun h ↦ not_lt.mp fun h' ↦ (pos_of_pos h').ne' h, zero_of_nonpos⟩

Expand Down
2 changes: 1 addition & 1 deletion Mathlib/CategoryTheory/Groupoid/Subgroupoid.lean
Expand Up @@ -232,7 +232,7 @@ instance : InfSet (Subgroupoid C) :=
rw [mem_iInter₂] at hp hq ⊢;
exact fun S hS => S.mul (hp S hS) (hq S hS) }⟩

-- Porting note: new lemma
-- Porting note (#10756): new lemma
theorem mem_sInf_arrows {s : Set (Subgroupoid C)} {c d : C} {p : c ⟶ d} :
p ∈ (sInf s).arrows c d ↔ ∀ S ∈ s, p ∈ S.arrows c d :=
mem_iInter₂
Expand Down
6 changes: 3 additions & 3 deletions Mathlib/Data/ENNReal/Real.lean
Expand Up @@ -84,7 +84,7 @@ theorem toReal_mono (hb : b ≠ ∞) (h : a ≤ b) : a.toReal ≤ b.toReal :=
(toReal_le_toReal (ne_top_of_le_ne_top hb h) hb).2 h
#align ennreal.to_real_mono ENNReal.toReal_mono

-- Porting note: new lemma
-- Porting note (#10756): new lemma
theorem toReal_mono' (h : a ≤ b) (ht : b = ∞ → a = ∞) : a.toReal ≤ b.toReal := by
rcases eq_or_ne a ∞ with rfl | ha
· exact toReal_nonneg
Expand All @@ -107,7 +107,7 @@ theorem toNNReal_mono (hb : b ≠ ∞) (h : a ≤ b) : a.toNNReal ≤ b.toNNReal
toReal_mono hb h
#align ennreal.to_nnreal_mono ENNReal.toNNReal_mono

-- Porting note: new lemma
-- Porting note (#10756): new lemma
/-- If `a ≤ b + c` and `a = ∞` whenever `b = ∞` or `c = ∞`, then
`ENNReal.toReal a ≤ ENNReal.toReal b + ENNReal.toReal c`. This lemma is useful to transfer
triangle-like inequalities from `ENNReal`s to `Real`s. -/
Expand All @@ -116,7 +116,7 @@ theorem toReal_le_add' (hle : a ≤ b + c) (hb : b = ∞ → a = ∞) (hc : c =
refine le_trans (toReal_mono' hle ?_) toReal_add_le
simpa only [add_eq_top, or_imp] using And.intro hb hc

-- Porting note: new lemma
-- Porting note (#10756): new lemma
/-- If `a ≤ b + c`, `b ≠ ∞`, and `c ≠ ∞`, then
`ENNReal.toReal a ≤ ENNReal.toReal b + ENNReal.toReal c`. This lemma is useful to transfer
triangle-like inequalities from `ENNReal`s to `Real`s. -/
Expand Down
8 changes: 4 additions & 4 deletions Mathlib/Data/Fin/Tuple/Monotone.lean
Expand Up @@ -36,12 +36,12 @@ theorem monotone_vecCons : Monotone (vecCons a f) ↔ a ≤ f 0 ∧ Monotone f :
simpa only [monotone_iff_forall_lt] using @liftFun_vecCons α n (· ≤ ·) _ f a
#align monotone_vec_cons monotone_vecCons

-- Porting note: new lemma, in Lean3 would be proven by `Subsingleton.monotone`
-- Porting note (#10756): new lemma, in Lean3 would be proven by `Subsingleton.monotone`
@[simp]
theorem monotone_vecEmpty : Monotone ![a]
| ⟨0, _⟩, ⟨0, _⟩, _ => le_refl _

-- Porting note: new lemma, in Lean3 would be proven by `Subsingleton.strictMono`
-- Porting note (#10756): new lemma, in Lean3 would be proven by `Subsingleton.strictMono`
@[simp]
theorem strictMono_vecEmpty : StrictMono ![a]
| ⟨0, _⟩, ⟨0, _⟩, h => (irrefl _ h).elim
Expand All @@ -56,12 +56,12 @@ theorem antitone_vecCons : Antitone (vecCons a f) ↔ f 0 ≤ a ∧ Antitone f :
@monotone_vecCons αᵒᵈ _ _ _ _
#align antitone_vec_cons antitone_vecCons

-- Porting note: new lemma, in Lean3 would be proven by `Subsingleton.antitone`
-- Porting note (#10756): new lemma, in Lean3 would be proven by `Subsingleton.antitone`
@[simp]
theorem antitone_vecEmpty : Antitone (vecCons a vecEmpty)
| ⟨0, _⟩, ⟨0, _⟩, _ => le_refl _

-- Porting note: new lemma, in Lean3 would be proven by `Subsingleton.strictAnti`
-- Porting note (#10756): new lemma, in Lean3 would be proven by `Subsingleton.strictAnti`
@[simp]
theorem strictAnti_vecEmpty : StrictAnti (vecCons a vecEmpty)
| ⟨0, _⟩, ⟨0, _⟩, h => (irrefl _ h).elim
Expand Down
4 changes: 2 additions & 2 deletions Mathlib/Data/List/Rotate.lean
Expand Up @@ -253,7 +253,7 @@ theorem get?_rotate {l : List α} {n m : ℕ} (hml : m < l.length) :
· rwa [tsub_lt_iff_left hm, length_drop, tsub_add_cancel_of_le hlt.le]
#align list.nth_rotate List.get?_rotate

-- Porting note: new lemma
-- Porting note (#10756): new lemma
theorem get_rotate (l : List α) (n : ℕ) (k : Fin (l.rotate n).length) :
(l.rotate n).get k =
l.get ⟨(k + n) % l.length, mod_lt _ (length_rotate l n ▸ k.1.zero_le.trans_lt k.2)⟩ := by
Expand Down Expand Up @@ -281,7 +281,7 @@ theorem nthLe_rotate_one (l : List α) (k : ℕ) (hk : k < (l.rotate 1).length)
nthLe_rotate l 1 k hk
#align list.nth_le_rotate_one List.nthLe_rotate_one

-- Porting note: new lemma
-- Porting note (#10756): new lemma
/-- A version of `List.get_rotate` that represents `List.get l` in terms of
`List.get (List.rotate l n)`, not vice versa. Can be used instead of rewriting `List.get_rotate`
from right to left. -/
Expand Down
4 changes: 2 additions & 2 deletions Mathlib/Data/Nat/Choose/Sum.lean
Expand Up @@ -189,7 +189,7 @@ theorem sum_powerset_neg_one_pow_card_of_nonempty {α : Type*} {x : Finset α} (

variable {M R : Type*} [CommMonoid M] [NonAssocSemiring R]

-- Porting note: new lemma
-- Porting note (#10756): new lemma
@[to_additive sum_choose_succ_nsmul]
theorem prod_pow_choose_succ {M : Type*} [CommMonoid M] (f : ℕ → ℕ → M) (n : ℕ) :
(∏ i in range (n + 2), f i (n + 1 - i) ^ (n + 1).choose i) =
Expand All @@ -202,7 +202,7 @@ theorem prod_pow_choose_succ {M : Type*} [CommMonoid M] (f : ℕ → ℕ → M)
rw [prod_range_succ']
simpa [Nat.choose_succ_succ, pow_add, prod_mul_distrib, A, mul_assoc] using mul_comm _ _

-- Porting note: new lemma
-- Porting note (#10756): new lemma
@[to_additive sum_antidiagonal_choose_succ_nsmul]
theorem prod_antidiagonal_pow_choose_succ {M : Type*} [CommMonoid M] (f : ℕ → ℕ → M) (n : ℕ) :
(∏ ij in antidiagonal (n + 1), f ij.1 ij.2 ^ (n + 1).choose ij.1) =
Expand Down
4 changes: 2 additions & 2 deletions Mathlib/Data/Nat/Order/Lemmas.lean
Expand Up @@ -55,13 +55,13 @@ protected theorem lt_div_iff_mul_lt {n d : ℕ} (hnd : d ∣ n) (a : ℕ) : a <
rw [← mul_lt_mul_left hd0, ← Nat.eq_mul_of_div_eq_right hnd rfl]
#align nat.lt_div_iff_mul_lt Nat.lt_div_iff_mul_lt

-- Porting note: new lemma
-- Porting note (#10756): new lemma
theorem mul_div_eq_iff_dvd {n d : ℕ} : d * (n / d) = n ↔ d ∣ n :=
calc
d * (n / d) = n ↔ d * (n / d) = d * (n / d) + (n % d) := by rw [div_add_mod]
_ ↔ d ∣ n := by rw [self_eq_add_right, dvd_iff_mod_eq_zero]

-- Porting note: new lemma
-- Porting note (#10756): new lemma
theorem mul_div_lt_iff_not_dvd {n d : ℕ} : d * (n / d) < n ↔ ¬(d ∣ n) :=
(mul_div_le _ _).lt_iff_ne.trans mul_div_eq_iff_dvd.not

Expand Down
2 changes: 1 addition & 1 deletion Mathlib/Data/Real/EReal.lean
Expand Up @@ -944,7 +944,7 @@ theorem neg_strictAnti : StrictAnti (- · : EReal → EReal) :=
@[simp] theorem neg_le_neg_iff {a b : EReal} : -a ≤ -b ↔ b ≤ a := neg_strictAnti.le_iff_le
#align ereal.neg_le_neg_iff EReal.neg_le_neg_iff

-- Porting note: new lemma
-- Porting note (#10756): new lemma
@[simp] theorem neg_lt_neg_iff {a b : EReal} : -a < -b ↔ b < a := neg_strictAnti.lt_iff_lt

/-- `-a ≤ b ↔ -b ≤ a` on `EReal`. -/
Expand Down
2 changes: 1 addition & 1 deletion Mathlib/Data/Real/Hyperreal.lean
Expand Up @@ -150,7 +150,7 @@ theorem coe_min (x y : ℝ) : ((min x y : ℝ) : ℝ*) = min ↑x ↑y :=
def ofSeq (f : ℕ → ℝ) : ℝ* := (↑f : Germ (hyperfilter ℕ : Filter ℕ) ℝ)
#align hyperreal.of_seq Hyperreal.ofSeq

-- Porting note: new lemma
-- Porting note (#10756): new lemma
theorem ofSeq_surjective : Function.Surjective ofSeq := Quot.exists_rep

theorem ofSeq_lt_ofSeq {f g : ℕ → ℝ} : ofSeq f < ofSeq g ↔ ∀ᶠ n in hyperfilter ℕ, f n < g n :=
Expand Down
2 changes: 1 addition & 1 deletion Mathlib/Data/Set/Function.lean
Expand Up @@ -1599,7 +1599,7 @@ theorem pi_piecewise {ι : Type*} {α : ι → Type*} (s s' : Set ι) (t t' :
pi_if _ _ _
#align set.pi_piecewise Set.pi_piecewise

-- Porting note: new lemma
-- Porting note (#10756): new lemma
theorem univ_pi_piecewise {ι : Type*} {α : ι → Type*} (s : Set ι) (t t' : ∀ i, Set (α i))
[∀ x, Decidable (x ∈ s)] : pi univ (s.piecewise t t') = pi s t ∩ pi sᶜ t' := by
simp [compl_eq_univ_diff]
Expand Down
2 changes: 1 addition & 1 deletion Mathlib/Data/Set/Pointwise/SMul.lean
Expand Up @@ -1135,7 +1135,7 @@ section Semiring

variable [Semiring α] [AddCommMonoid β] [Module α β]

-- Porting note: new lemma
-- Porting note (#10756): new lemma
theorem add_smul_subset (a b : α) (s : Set β) : (a + b) • s ⊆ a • s + b • s := by
rintro _ ⟨x, hx, rfl⟩
simpa only [add_smul] using add_mem_add (smul_mem_smul_set hx) (smul_mem_smul_set hx)
Expand Down
2 changes: 1 addition & 1 deletion Mathlib/GroupTheory/Subgroup/Pointwise.lean
Expand Up @@ -274,7 +274,7 @@ instance sup_normal (H K : Subgroup G) [hH : H.Normal] [hK : K.Normal] : (H ⊔
simp only [mul_assoc, inv_mul_cancel_left]
#align subgroup.sup_normal Subgroup.sup_normal

-- Porting note: new lemma
-- Porting note (#10756): new lemma
@[to_additive]
theorem smul_opposite_image_mul_preimage' (g : G) (h : Gᵐᵒᵖ) (s : Set G) :
(fun y => h • y) '' ((g * ·) ⁻¹' s) = (g * ·) ⁻¹' ((fun y => h • y) '' s) := by
Expand Down
8 changes: 4 additions & 4 deletions Mathlib/MeasureTheory/Integral/IntegralEqImproper.lean
Expand Up @@ -195,21 +195,21 @@ section FiniteIntervals
variable [LinearOrder α] [TopologicalSpace α] [OrderClosedTopology α] [OpensMeasurableSpace α]
{a b : ι → α} {A B : α} (ha : Tendsto a l (𝓝 A)) (hb : Tendsto b l (𝓝 B))

-- Porting note: new lemma
-- Porting note (#10756): new lemma
theorem aecover_Ioi_of_Ioi : AECover (μ.restrict (Ioi A)) l fun i ↦ Ioi (a i) where
ae_eventually_mem := (ae_restrict_mem measurableSet_Ioi).mono fun _x hx ↦ ha.eventually <|
eventually_lt_nhds hx
measurableSet _ := measurableSet_Ioi

-- Porting note: new lemma
-- Porting note (#10756): new lemma
theorem aecover_Iio_of_Iio : AECover (μ.restrict (Iio B)) l fun i ↦ Iio (b i) :=
aecover_Ioi_of_Ioi (α := αᵒᵈ) hb

-- Porting note: new lemma
-- Porting note (#10756): new lemma
theorem aecover_Ioi_of_Ici : AECover (μ.restrict (Ioi A)) l fun i ↦ Ici (a i) :=
(aecover_Ioi_of_Ioi ha).superset (fun _ ↦ Ioi_subset_Ici_self) fun _ ↦ measurableSet_Ici

-- Porting note: new lemma
-- Porting note (#10756): new lemma
theorem aecover_Iio_of_Iic : AECover (μ.restrict (Iio B)) l fun i ↦ Iic (b i) :=
aecover_Ioi_of_Ici (α := αᵒᵈ) hb

Expand Down
2 changes: 1 addition & 1 deletion Mathlib/MeasureTheory/Integral/IntervalIntegral.lean
Expand Up @@ -319,7 +319,7 @@ theorem comp_mul_left (hf : IntervalIntegrable f volume a b) (c : ℝ) :
· rw [preimage_mul_const_uIcc (inv_ne_zero hc)]; field_simp [hc]
#align interval_integrable.comp_mul_left IntervalIntegrable.comp_mul_left

-- Porting note: new lemma
-- Porting note (#10756): new lemma
theorem comp_mul_left_iff {c : ℝ} (hc : c ≠ 0) :
IntervalIntegrable (fun x ↦ f (c * x)) volume (a / c) (b / c) ↔
IntervalIntegrable f volume a b :=
Expand Down
4 changes: 2 additions & 2 deletions Mathlib/MeasureTheory/MeasurableSpace/Basic.lean
Expand Up @@ -2184,7 +2184,7 @@ theorem coe_union (s t : Subtype (MeasurableSet : Set α → Prop)) : ↑(s ∪
instance Subtype.instSup : Sup (Subtype (MeasurableSet : Set α → Prop)) :=
fun x y => x ∪ y⟩

-- Porting note: new lemma
-- Porting note (#10756): new lemma
@[simp]
protected theorem sup_eq_union (s t : {s : Set α // MeasurableSet s}) : s ⊔ t = s ∪ t := rfl

Expand All @@ -2200,7 +2200,7 @@ theorem coe_inter (s t : Subtype (MeasurableSet : Set α → Prop)) : ↑(s ∩
instance Subtype.instInf : Inf (Subtype (MeasurableSet : Set α → Prop)) :=
fun x y => x ∩ y⟩

-- Porting note: new lemma
-- Porting note (#10756): new lemma
@[simp]
protected theorem inf_eq_inter (s t : {s : Set α // MeasurableSet s}) : s ⊓ t = s ∩ t := rfl

Expand Down
4 changes: 2 additions & 2 deletions Mathlib/Order/Bounds/Basic.lean
Expand Up @@ -304,11 +304,11 @@ theorem IsGreatest.upperBounds_eq (h : IsGreatest s a) : upperBounds s = Ici a :
h.isLUB.upperBounds_eq
#align is_greatest.upper_bounds_eq IsGreatest.upperBounds_eq

-- Porting note: new lemma
-- Porting note (#10756): new lemma
theorem IsGreatest.lt_iff (h : IsGreatest s a) : a < b ↔ ∀ x ∈ s, x < b :=
fun hlt _x hx => (h.2 hx).trans_lt hlt, fun h' => h' _ h.1

-- Porting note: new lemma
-- Porting note (#10756): new lemma
theorem IsLeast.lt_iff (h : IsLeast s a) : b < a ↔ ∀ x ∈ s, b < x :=
h.dual.lt_iff

Expand Down
4 changes: 2 additions & 2 deletions Mathlib/Order/ConditionallyCompleteLattice/Basic.lean
Expand Up @@ -864,11 +864,11 @@ theorem ciInf_unique [Unique ι] {s : ι → α} : ⨅ i, s i = s default :=
ciSup_unique (α := αᵒᵈ)
#align infi_unique ciInf_unique

-- Porting note: new lemma
-- Porting note (#10756): new lemma
theorem ciSup_subsingleton [Subsingleton ι] (i : ι) (s : ι → α) : ⨆ i, s i = s i :=
@ciSup_unique α ι _ ⟨⟨i⟩, fun j => Subsingleton.elim j i⟩ _

-- Porting note: new lemma
-- Porting note (#10756): new lemma
theorem ciInf_subsingleton [Subsingleton ι] (i : ι) (s : ι → α) : ⨅ i, s i = s i :=
@ciInf_unique α ι _ ⟨⟨i⟩, fun j => Subsingleton.elim j i⟩ _

Expand Down
2 changes: 1 addition & 1 deletion Mathlib/Order/Filter/Archimedean.lean
Expand Up @@ -112,7 +112,7 @@ theorem Filter.Eventually.rat_cast_atBot [LinearOrderedField R] [Archimedean R]
(h : ∀ᶠ (x:R) in atBot, p x) : ∀ᶠ (n:ℚ) in atBot, p n := by
rw [← Rat.comap_cast_atBot (R := R)]; exact h.comap _

-- Porting note: new lemma
-- Porting note (#10756): new lemma
theorem atTop_hasAntitoneBasis_of_archimedean [OrderedSemiring R] [Archimedean R] :
(atTop : Filter R).HasAntitoneBasis fun n : ℕ => Ici n :=
hasAntitoneBasis_atTop.comp_mono Nat.mono_cast tendsto_nat_cast_atTop_atTop
Expand Down
2 changes: 1 addition & 1 deletion Mathlib/Order/Height.lean
Expand Up @@ -73,7 +73,7 @@ theorem cons_mem_subchain_iff :
and_assoc]
#align set.cons_mem_subchain_iff Set.cons_mem_subchain_iff

@[simp] -- Porting note: new lemma + `simp`
@[simp] -- Porting note (#10756): new lemma + `simp`
theorem singleton_mem_subchain_iff : [a] ∈ s.subchain ↔ a ∈ s := by simp [cons_mem_subchain_iff]

instance : Nonempty s.subchain :=
Expand Down
2 changes: 1 addition & 1 deletion Mathlib/Topology/Algebra/Monoid.lean
Expand Up @@ -468,7 +468,7 @@ def Submonoid.topologicalClosure (s : Submonoid M) : Submonoid M where
#align submonoid.topological_closure Submonoid.topologicalClosure
#align add_submonoid.topological_closure AddSubmonoid.topologicalClosure

-- Porting note: new lemma
-- Porting note (#10756): new lemma
@[to_additive]
theorem Submonoid.coe_topologicalClosure (s : Submonoid M) :
(s.topologicalClosure : Set M) = _root_.closure (s : Set M) := rfl
Expand Down
4 changes: 2 additions & 2 deletions Mathlib/Topology/Algebra/Order/Compact.lean
Expand Up @@ -258,7 +258,7 @@ theorem cocompact_eq_atTop [LinearOrder α] [NoMaxOrder α] [OrderBot α]
[ClosedIciTopology α] [CompactIccSpace α] : cocompact α = atTop :=
cocompact_le_atTop.antisymm atTop_le_cocompact

-- Porting note: new lemma; defeq to the old one but allows us to use dot notation
-- Porting note (#10756): new lemma; defeq to the old one but allows us to use dot notation
/-- The **extreme value theorem**: a continuous function realizes its minimum on a compact set. -/
theorem IsCompact.exists_isMinOn [ClosedIicTopology α] {s : Set β} (hs : IsCompact s)
(ne_s : s.Nonempty) {f : β → α} (hf : ContinuousOn f s) : ∃ x ∈ s, IsMinOn f s x := by
Expand All @@ -283,7 +283,7 @@ theorem IsCompact.exists_forall_le [ClosedIicTopology α] {s : Set β} (hs : IsC
hs.exists_isMinOn ne_s hf
#align is_compact.exists_forall_le IsCompact.exists_forall_le

-- Porting note: new lemma; defeq to the old one but allows us to use dot notation
-- Porting note (#10756): new lemma; defeq to the old one but allows us to use dot notation
/-- The **extreme value theorem**: a continuous function realizes its maximum on a compact set. -/
theorem IsCompact.exists_isMaxOn [ClosedIciTopology α] {s : Set β} (hs : IsCompact s)
(ne_s : s.Nonempty) {f : β → α} (hf : ContinuousOn f s) : ∃ x ∈ s, IsMaxOn f s x :=
Expand Down
2 changes: 1 addition & 1 deletion Mathlib/Topology/Algebra/Order/ProjIcc.lean
Expand Up @@ -20,7 +20,7 @@ open Set Filter Topology

variable {α β γ : Type*} [LinearOrder α] [TopologicalSpace γ] {a b c : α} {h : a ≤ b}

-- Porting note: new lemma
-- Porting note (#10756): new lemma
protected theorem Filter.Tendsto.IccExtend (f : γ → Icc a b → β) {la : Filter α} {lb : Filter β}
{lc : Filter γ} (hf : Tendsto (↿f) (lc ×ˢ la.map (projIcc a b h)) lb) :
Tendsto (↿(IccExtend h ∘ f)) (lc ×ˢ la) lb :=
Expand Down
4 changes: 2 additions & 2 deletions Mathlib/Topology/Basic.lean
Expand Up @@ -169,7 +169,7 @@ theorem TopologicalSpace.ext_iff_isClosed {t₁ t₂ : TopologicalSpace X} :

alias ⟨_, TopologicalSpace.ext_isClosed⟩ := TopologicalSpace.ext_iff_isClosed

-- Porting note: new lemma
-- Porting note (#10756): new lemma
theorem isClosed_const {p : Prop} : IsClosed { _x : X | p } := ⟨isOpen_const (p := ¬p)⟩

@[simp] theorem isClosed_empty : IsClosed (∅ : Set X) := isClosed_const
Expand Down Expand Up @@ -1713,7 +1713,7 @@ theorem image_closure_subset_closure_image (h : Continuous f) :
((mapsTo_image f s).closure h).image_subset
#align image_closure_subset_closure_image image_closure_subset_closure_image

-- Porting note: new lemma
-- Porting note (#10756): new lemma
theorem closure_image_closure (h : Continuous f) :
closure (f '' closure s) = closure (f '' s) :=
Subset.antisymm
Expand Down
4 changes: 2 additions & 2 deletions Mathlib/Topology/Clopen.lean
Expand Up @@ -126,11 +126,11 @@ theorem isClopen_discrete [DiscreteTopology X] (s : Set X) : IsClopen s :=
⟨isClosed_discrete _, isOpen_discrete _⟩
#align is_clopen_discrete isClopen_discrete

-- Porting note: new lemma
-- Porting note (#10756): new lemma
theorem isClopen_range_inl : IsClopen (range (Sum.inl : X → X ⊕ Y)) :=
⟨isClosed_range_inl, isOpen_range_inl⟩

-- Porting note: new lemma
-- Porting note (#10756): new lemma
theorem isClopen_range_inr : IsClopen (range (Sum.inr : Y → X ⊕ Y)) :=
⟨isClosed_range_inr, isOpen_range_inr⟩

Expand Down

0 comments on commit 68df7d0

Please sign in to comment.