Skip to content

Commit 533746c

Browse files
committed
fix: apply proper naming and linting conventions
1 parent c9ed7ae commit 533746c

File tree

2 files changed

+29
-32
lines changed

2 files changed

+29
-32
lines changed

src/Init/Data/List/Basic.lean

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2089,13 +2089,13 @@ def min? [Min α] : List α → Option α
20892089
/-! ### min -/
20902090

20912091
/--
2092-
Returns the smallest element of a non empty list.
2092+
Returns the smallest element of a non-empty list.
20932093
20942094
Examples:
20952095
* `[4].min (by decide) = 4`
20962096
* `[1, 4, 2, 10, 6].min (by decide) = 1`
20972097
-/
2098-
protected def min [Min α] : (l: List α) → (h: l ≠ []) → α
2098+
protected def min [Min α] : (l : List α) → (h : l ≠ []) → α
20992099
| a::as, _ => as.foldl min a
21002100

21012101
/-! ### max? -/
@@ -2115,12 +2115,13 @@ def max? [Max α] : List α → Option α
21152115
/-! ### max -/
21162116

21172117
/--
2118-
Returns the largest element of a non empty list.
2118+
Returns the largest element of a non-empty list.
2119+
21192120
Examples:
21202121
* `[4].max (by decide) = 4`
21212122
* `[1, 4, 2, 10, 6].max (by decide) = 10`
21222123
-/
2123-
protected def max [Max α] : (l: List α) → (h: l ≠ []) → α
2124+
protected def max [Max α] : (l : List α) → (h : l ≠ []) → α
21242125
| a::as, _ => as.foldl max a
21252126

21262127
/-! ## Other list operations

src/Init/Data/List/MinMax.lean

Lines changed: 24 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -161,42 +161,40 @@ theorem min?_eq_some_min [Min α] : {l : List α} → (hl : l ≠ []) →
161161
l.min? = some (l.min hl)
162162
| a::as, _ => by simp [List.min, List.min?_cons']
163163

164-
theorem min_eq_head {α : Type u} [Min α] {l : List α}
165-
(hl : l ≠ [])
164+
theorem min_eq_head {α : Type u} [Min α] {l : List α} (hl : l ≠ [])
166165
(h : l.Pairwise (fun a b => min a b = a)) : l.min hl = l.head hl := by
167166
apply Option.some.inj
168-
rw [← min?_eq_some_min, ←head?_eq_some_head]
167+
rw [← min?_eq_some_min, ← head?_eq_some_head]
169168
exact min?_eq_head? h
170169

171-
theorem min_mem [Min α] [MinEqOr α] {l : List α} {hl : l ≠ []} :
172-
l.min hl ∈ l := by
173-
exact min?_mem (min?_eq_some_min hl)
170+
theorem min_mem [Min α] [MinEqOr α] {l : List α} (hl : l ≠ []) : l.min hl ∈ l :=
171+
min?_mem (min?_eq_some_min hl)
174172

175173
protected theorem le_min_iff [Min α] [LE α] [LawfulOrderInf α]
176-
{l : List α} {hl : l ≠ []} : ∀ {x}, x ≤ l.min hl ↔ ∀ b, b ∈ l → x ≤ b := by
177-
exact le_min?_iff (min?_eq_some_min hl)
174+
{l : List α} (hl : l ≠ []) : ∀ {x}, x ≤ l.min hl ↔ ∀ b, b ∈ l → x ≤ b :=
175+
le_min?_iff (min?_eq_some_min hl)
178176

179-
theorem min_iff [Min α] [LE α] {l : List α} [IsLinearOrder α] [LawfulOrderMin α] {hl : l ≠ []} :
177+
theorem min_eq_iff [Min α] [LE α] {l : List α} [IsLinearOrder α] [LawfulOrderMin α] (hl : l ≠ []) :
180178
l.min hl = a ↔ a ∈ l ∧ ∀ b, b ∈ l → a ≤ b := by
181179
simpa [min?_eq_some_min hl] using (min?_eq_some_iff (xs := l))
182180

183-
theorem min_eq_min_attach [Min α] [MinEqOr α] {l : List α} {hl : l ≠ []} :
181+
theorem min_eq_min_attach [Min α] [MinEqOr α] {l : List α} (hl : l ≠ []) :
184182
l.min hl = Subtype.val (l.attach.min (List.attach_ne_nil_iff.mpr hl)) := by
185183
simpa [min?_eq_some_min hl, min?_eq_some_min (List.attach_ne_nil_iff.mpr hl)]
186184
using (min?_eq_min?_attach (xs := l))
187185

188-
theorem min_iff_subtype [Min α] [LE α] {l : List α} {hl : l ≠ []}
186+
theorem min_eq_iff_subtype [Min α] [LE α] {l : List α} (hl : l ≠ [])
189187
[MinEqOr α] [IsLinearOrder (Subtype (· ∈ l))] [LawfulOrderMin (Subtype (· ∈ l))] :
190188
l.min hl = a ↔ a ∈ l ∧ ∀ b, b ∈ l → a ≤ b := by
191189
simpa [min?_eq_some_min hl] using (min?_eq_some_iff_subtype (xs := l))
192190

193-
theorem min_replicate [Min α] [MinEqOr α] {n : Nat} {a : α} (h: replicate n a ≠ []) :
191+
@[simp] theorem min_replicate [Min α] [MinEqOr α] {n : Nat} {a : α} (h : replicate n a ≠ []) :
194192
(replicate n a).min h = a := by
195193
have n_pos : 0 < n := Nat.pos_of_ne_zero (fun hn => by simp [hn] at h)
196-
simpa [min?_eq_some_min h] using (min?_replicate_of_pos (a:=a) n_pos)
194+
simpa [min?_eq_some_min h] using (min?_replicate_of_pos (a := a) n_pos)
197195

198196
theorem foldl_min_eq_min [Min α] [Std.IdempotentOp (min : α → α → α)] [Std.Associative (min : α → α → α)]
199-
{l : List α} {hl : l ≠ []} {a : α}:
197+
{l : List α} (hl : l ≠ []) {a : α} :
200198
l.foldl min a = min a (l.min hl) := by
201199
simpa [min?_eq_some_min hl] using foldl_min (l := l)
202200

@@ -347,42 +345,40 @@ theorem max?_eq_some_max [Max α] : {l : List α} → (hl : l ≠ []) →
347345
l.max? = some (l.max hl)
348346
| a::as, _ => by simp [List.max, List.max?_cons']
349347

350-
theorem max_eq_head {α : Type u} [Max α] {l : List α}
351-
(hl : l ≠ [])
348+
theorem max_eq_head {α : Type u} [Max α] {l : List α} (hl : l ≠ [])
352349
(h : l.Pairwise (fun a b => max a b = a)) : l.max hl = l.head hl := by
353350
apply Option.some.inj
354-
rw [← max?_eq_some_max, ←head?_eq_some_head]
351+
rw [← max?_eq_some_max, ← head?_eq_some_head]
355352
exact max?_eq_head? h
356353

357-
theorem max_mem [Max α] [MaxEqOr α] {l : List α} {hl : l ≠ []} :
358-
l.max hl ∈ l := by
359-
exact max?_mem (max?_eq_some_max hl)
354+
theorem max_mem [Max α] [MaxEqOr α] {l : List α} (hl : l ≠ []) : l.max hl ∈ l :=
355+
max?_mem (max?_eq_some_max hl)
360356

361357
protected theorem max_le_iff [Max α] [LE α] [LawfulOrderSup α]
362-
{l : List α} {hl : l ≠ []} : ∀ {x}, l.max hl ≤ x ↔ ∀ b, b ∈ l → b ≤ x := by
363-
exact max?_le_iff (max?_eq_some_max hl)
358+
{l : List α} (hl : l ≠ []) : ∀ {x}, l.max hl ≤ x ↔ ∀ b, b ∈ l → b ≤ x :=
359+
max?_le_iff (max?_eq_some_max hl)
364360

365-
theorem max_iff [Max α] [LE α] {l : List α} [IsLinearOrder α] [LawfulOrderMax α] {hl : l ≠ []} :
361+
theorem max_eq_iff [Max α] [LE α] {l : List α} [IsLinearOrder α] [LawfulOrderMax α] (hl : l ≠ []) :
366362
l.max hl = a ↔ a ∈ l ∧ ∀ b, b ∈ l → b ≤ a := by
367363
simpa [max?_eq_some_max hl] using (max?_eq_some_iff (xs := l))
368364

369-
theorem max_eq_max_attach [Max α] [MaxEqOr α] {l : List α} {hl : l ≠ []} :
365+
theorem max_eq_max_attach [Max α] [MaxEqOr α] {l : List α} (hl : l ≠ []) :
370366
l.max hl = Subtype.val (l.attach.max (List.attach_ne_nil_iff.mpr hl)) := by
371367
simpa [max?_eq_some_max hl, max?_eq_some_max (List.attach_ne_nil_iff.mpr hl)]
372368
using (max?_eq_max?_attach (xs := l))
373369

374-
theorem max_iff_subtype [Max α] [LE α] {l : List α} {hl : l ≠ []}
370+
theorem max_eq_iff_subtype [Max α] [LE α] {l : List α} (hl : l ≠ [])
375371
[MaxEqOr α] [IsLinearOrder (Subtype (· ∈ l))] [LawfulOrderMax (Subtype (· ∈ l))] :
376372
l.max hl = a ↔ a ∈ l ∧ ∀ b, b ∈ l → b ≤ a := by
377373
simpa [max?_eq_some_max hl] using (max?_eq_some_iff_subtype (xs := l))
378374

379-
theorem max_replicate [Max α] [MaxEqOr α] {n : Nat} {a : α} (h: replicate n a ≠ []) :
375+
@[simp] theorem max_replicate [Max α] [MaxEqOr α] {n : Nat} {a : α} (h : replicate n a ≠ []) :
380376
(replicate n a).max h = a := by
381377
have n_pos : 0 < n := Nat.pos_of_ne_zero (fun hn => by simp [hn] at h)
382-
simpa [max?_eq_some_max h] using (max?_replicate_of_pos (a:=a) n_pos)
378+
simpa [max?_eq_some_max h] using (max?_replicate_of_pos (a := a) n_pos)
383379

384380
theorem foldl_max_eq_max [Max α] [Std.IdempotentOp (max : α → α → α)] [Std.Associative (max : α → α → α)]
385-
{l : List α} {hl : l ≠ []} {a : α}:
381+
{l : List α} (hl : l ≠ []) {a : α} :
386382
l.foldl max a = max a (l.max hl) := by
387383
simpa [max?_eq_some_max hl] using foldl_max (l := l)
388384

0 commit comments

Comments
 (0)