@@ -15,12 +15,6 @@ This instance is not in `Data.ENat.Basic` to avoid dependency on `Finset`s.
15
15
We also restate some lemmas about `WithTop` for `ENat` to have versions that use `Nat.cast` instead
16
16
of `WithTop.some`.
17
17
18
- ## TODO
19
-
20
- Currently (2024-Nov-12), `shake` does not check `proof_wanted` and insist that
21
- `Mathlib.Algebra.Group.Action.Defs` should not be imported. Once `shake` is fixed, please remove the
22
- corresponding `noshake.json` entry.
23
-
24
18
-/
25
19
26
20
assert_not_exists Field
@@ -238,11 +232,13 @@ lemma iSup_add_iSup_of_monotone {ι : Type*} [Preorder ι] [IsDirected ι (·
238
232
(hf : Monotone f) (hg : Monotone g) : iSup f + iSup g = ⨆ a, f a + g a :=
239
233
iSup_add_iSup fun i j ↦ (exists_ge_ge i j).imp fun _k ⟨hi, hj⟩ ↦ by gcongr <;> apply_rules
240
234
241
- proof_wanted smul_iSup {R} [SMul R ℕ∞] [IsScalarTower R ℕ∞ ℕ∞] (f : ι → ℕ∞) (c : R) :
242
- c • ⨆ i, f i = ⨆ i, c • f i
235
+ lemma smul_iSup {R} [SMul R ℕ∞] [IsScalarTower R ℕ∞ ℕ∞] (f : ι → ℕ∞) (c : R) :
236
+ c • ⨆ i, f i = ⨆ i, c • f i := by
237
+ simpa using mul_iSup (c • 1 ) f
243
238
244
- proof_wanted smul_sSup {R} [SMul R ℕ∞] [IsScalarTower R ℕ∞ ℕ∞] (s : Set ℕ∞) (c : R) :
245
- c • sSup s = ⨆ a ∈ s, c • a
239
+ lemma smul_sSup {R} [SMul R ℕ∞] [IsScalarTower R ℕ∞ ℕ∞] (s : Set ℕ∞) (c : R) :
240
+ c • sSup s = ⨆ a ∈ s, c • a := by
241
+ simp_rw [sSup_eq_iSup, smul_iSup]
246
242
247
243
lemma sub_iSup [Nonempty ι] (ha : a ≠ ⊤) : a - ⨆ i, f i = ⨅ i, a - f i := by
248
244
obtain ⟨i, hi⟩ | h := em (∃ i, a < f i)
0 commit comments