@@ -3482,15 +3482,15 @@ theorem foldrM_append [Monad m] [LawfulMonad m] {f : α → β → m β} {b} {xs
34823482@[simp] theorem foldr_append' {f : α → β → β} {b} {xs ys : Array α} {start : Nat}
34833483 (w : start = xs.size + ys.size) :
34843484 (xs ++ ys).foldr f b start 0 = xs.foldr f (ys.foldr f b) :=
3485- foldrM_append' _ _ _ _ w
3485+ foldrM_append' w
34863486
34873487@[grind _=_] theorem foldl_append {β : Type _} {f : β → α → β} {b} {xs ys : Array α} :
34883488 (xs ++ ys).foldl f b = ys.foldl f (xs.foldl f b) :=
3489- foldlM_append _ _ _ _
3489+ foldlM_append
34903490
34913491@[grind _=_] theorem foldr_append {f : α → β → β} {b} {xs ys : Array α} :
34923492 (xs ++ ys).foldr f b = xs.foldr f (ys.foldr f b) :=
3493- foldrM_append _ _ _ _
3493+ foldrM_append
34943494
34953495@[simp] theorem foldl_flatten' {f : β → α → β} {b} {xss : Array (Array α)} {stop : Nat}
34963496 (w : stop = xss.flatten.size) :
@@ -3520,21 +3520,21 @@ theorem foldrM_append [Monad m] [LawfulMonad m] {f : α → β → m β} {b} {xs
35203520@[simp] theorem foldl_reverse' {xs : Array α} {f : β → α → β} {b} {stop : Nat}
35213521 (w : stop = xs.size) :
35223522 xs.reverse.foldl f b 0 stop = xs.foldr (fun x y => f y x) b :=
3523- foldlM_reverse' _ _ _ w
3523+ foldlM_reverse' w
35243524
35253525/-- Variant of `foldr_reverse` with a side condition for the `start` argument. -/
35263526@[simp] theorem foldr_reverse' {xs : Array α} {f : α → β → β} {b} {start : Nat}
35273527 (w : start = xs.size) :
35283528 xs.reverse.foldr f b start 0 = xs.foldl (fun x y => f y x) b :=
3529- foldrM_reverse' _ _ _ w
3529+ foldrM_reverse' w
35303530
35313531@[grind] theorem foldl_reverse {xs : Array α} {f : β → α → β} {b} :
35323532 xs.reverse.foldl f b = xs.foldr (fun x y => f y x) b :=
3533- foldlM_reverse _ _ _
3533+ foldlM_reverse
35343534
35353535@[grind] theorem foldr_reverse {xs : Array α} {f : α → β → β} {b} :
35363536 xs.reverse.foldr f b = xs.foldl (fun x y => f y x) b :=
3537- foldrM_reverse _ _ _
3537+ foldrM_reverse
35383538
35393539theorem foldl_eq_foldr_reverse {xs : Array α} {f : β → α → β} {b} :
35403540 xs.foldl f b = xs.reverse.foldr (fun x y => f y x) b := by simp
@@ -4049,15 +4049,16 @@ abbrev all_mkArray := @all_replicate
40494049/-! ### modify -/
40504050
40514051@[simp] theorem size_modify {xs : Array α} {i : Nat} {f : α → α} : (xs.modify i f).size = xs.size := by
4052- unfold modify modifyM Id.run
4052+ unfold modify modifyM
40534053 split <;> simp
40544054
40554055theorem getElem_modify {xs : Array α} {j i} (h : i < (xs.modify j f).size) :
40564056 (xs.modify j f)[i] = if j = i then f (xs[i]'(by simpa using h)) else xs[i]'(by simpa using h) := by
4057- simp only [modify, modifyM, Id.run, Id.pure_eq ]
4057+ simp only [modify, modifyM]
40584058 split
4059- · simp only [Id.bind_eq, getElem_set]; split <;> simp [*]
4060- · rw [if_neg (mt (by rintro rfl; exact h) (by simp_all))]
4059+ · simp only [getElem_set, Id.run_pure, Id.run_bind]; split <;> simp [*]
4060+ · simp only [Id.run_pure]
4061+ rw [if_neg (mt (by rintro rfl; exact h) (by simp_all))]
40614062
40624063@[simp] theorem toList_modify {xs : Array α} {f : α → α} {i : Nat} :
40634064 (xs.modify i f).toList = xs.toList.modify i f := by
0 commit comments