@@ -3589,12 +3589,9 @@ theorem length_le_length_of_containsKey [BEq α] [EquivBEq α]
35893589 have hc := h hd.1 (by rw [containsKey_cons_self])
35903590 suffices tl.length ≤ (eraseKey hd.1 l₂).length by
35913591 rw [List.length_eraseKey, hc] at this
3592- simp at this
3593- simp
3594- have : l₂.length > 0 := by
3595- cases l₂
3596- case nil => simp at hc
3597- case cons => simp
3592+ simp only [↓reduceIte] at this
3593+ simp only [List.length_cons, ge_iff_le]
3594+ have : l₂.length > 0 := by cases l₂ <;> simp_all
35983595 omega
35993596 apply ih
36003597 · rw [List.distinctKeys_cons_iff] at dl₁
@@ -3621,7 +3618,7 @@ theorem containsKey_of_length_eq [BEq α] [EquivBEq α] {l₁ l₂ : List ((a :
36213618 intro a ha
36223619 apply Classical.byContradiction
36233620 intro hb
3624- simp at hb
3621+ simp only [Bool.not_eq_true] at hb
36253622 suffices l₁.length < l₂.length by omega
36263623 suffices l₁.length ≤ (eraseKey a l₂).length ∧ 1 + (eraseKey a l₂).length = l₂.length by omega
36273624 apply And.intro
@@ -3640,9 +3637,9 @@ theorem containsKey_of_length_eq [BEq α] [EquivBEq α] {l₁ l₂ : List ((a :
36403637 exact mem₂
36413638 · simp only [length_eraseKey, ha, ↓reduceIte]
36423639 have : l₂.length > 0 := by
3643- cases l₂
3644- · simp at ha
3645- · simp
3640+ cases l₂ with
3641+ | nil => simp at ha
3642+ | _ => simp
36463643 omega
36473644
36483645section
@@ -7633,7 +7630,7 @@ theorem isEmpty_filter_key_iff [BEq α] [EquivBEq α] {f : α → Bool}
76337630 simp only [getKey, getKey?_eq_getEntry?, this ] at h
76347631 exact h
76357632
7636- theorem beqModel_eq_true_of_perm [BEq α] [LawfulBEq α] [LawfulBEq α] [ ∀ k, BEq (β k)] [∀ k, ReflBEq (β k)] {l₁ l₂ : List ((a : α) × β a)} (hl₁ : DistinctKeys l₁) : l₁.Perm l₂ → beqModel l₁ l₂ := by
7633+ theorem beqModel_eq_true_of_perm [BEq α] [LawfulBEq α] [∀ k, BEq (β k)] [∀ k, ReflBEq (β k)] {l₁ l₂ : List ((a : α) × β a)} (hl₁ : DistinctKeys l₁) : l₁.Perm l₂ → beqModel l₁ l₂ := by
76377634 intro hyp
76387635 rw [beqModel, if_neg (by simpa using hyp.length_eq)]
76397636 simp only [List.all_eq_true]
0 commit comments