From 7d26a1604f146a5f2e6e2ff826609cd46a52d8a4 Mon Sep 17 00:00:00 2001 From: Kim Morrison Date: Sun, 29 Sep 2024 23:28:13 +1000 Subject: [PATCH] chore: restore @[simp] on List.getElem_mem et al (#5520) --- src/Init/Data/List/Lemmas.lean | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Init/Data/List/Lemmas.lean b/src/Init/Data/List/Lemmas.lean index 779b18a68d..2a0cb6b35e 100644 --- a/src/Init/Data/List/Lemmas.lean +++ b/src/Init/Data/List/Lemmas.lean @@ -489,7 +489,7 @@ theorem getElem?_of_mem {a} {l : List α} (h : a ∈ l) : ∃ n : Nat, l[n]? = s theorem get?_of_mem {a} {l : List α} (h : a ∈ l) : ∃ n, l.get? n = some a := let ⟨⟨n, _⟩, e⟩ := get_of_mem h; ⟨n, e ▸ get?_eq_get _⟩ -theorem getElem_mem : ∀ {l : List α} {n} (h : n < l.length), l[n]'h ∈ l +@[simp] theorem getElem_mem : ∀ {l : List α} {n} (h : n < l.length), l[n]'h ∈ l | _ :: _, 0, _ => .head .. | _ :: l, _+1, _ => .tail _ (getElem_mem (l := l) ..) @@ -1018,7 +1018,7 @@ theorem getLast_eq_getLastD (a l h) : @getLast α (a::l) h = getLastD l a := by theorem getLast!_cons [Inhabited α] : @getLast! α _ (a::l) = getLastD l a := by simp [getLast!, getLast_eq_getLastD] -theorem getLast_mem : ∀ {l : List α} (h : l ≠ []), getLast l h ∈ l +@[simp] theorem getLast_mem : ∀ {l : List α} (h : l ≠ []), getLast l h ∈ l | [], h => absurd rfl h | [_], _ => .head .. | _::a::l, _ => .tail _ <| getLast_mem (cons_ne_nil a l) @@ -1116,7 +1116,7 @@ theorem head?_eq_some_iff {xs : List α} {a : α} : xs.head? = some a ↔ ∃ ys @[simp] theorem head?_isSome : l.head?.isSome ↔ l ≠ [] := by cases l <;> simp -theorem head_mem : ∀ {l : List α} (h : l ≠ []), head l h ∈ l +@[simp] theorem head_mem : ∀ {l : List α} (h : l ≠ []), head l h ∈ l | [], h => absurd rfl h | _::_, _ => .head ..