@@ -3,12 +3,12 @@ Copyright (c) 2017 Mario Carneiro. All rights reserved.
3
3
Released under Apache 2.0 license as described in the file LICENSE.
4
4
Authors: Mario Carneiro
5
5
-/
6
- import Mathlib.Data.Ordmap.Ordnode
7
6
import Mathlib.Algebra.Order.Ring.Defs
8
- import Mathlib.Data.Nat.Dist
9
7
import Mathlib.Data.Int.Basic
10
- import Mathlib.Tactic.Linarith
8
+ import Mathlib.Data.Nat.Dist
9
+ import Mathlib.Data.Ordmap.Ordnode
11
10
import Mathlib.Tactic.Abel
11
+ import Mathlib.Tactic.Linarith
12
12
13
13
#align_import data.ordmap.ordset from "leanprover-community/mathlib" @"47b51515e69f59bca5cf34ef456e6000fe205a69"
14
14
@@ -680,15 +680,15 @@ theorem balance_eq_balance' {l x r} (hl : Balanced l) (hr : Balanced r) (sl : Si
680
680
· rfl
681
681
· have : size rrl = 0 ∧ size rrr = 0 := by
682
682
have := balancedSz_zero.1 hr.1 .symm
683
- rwa [size, sr.2 .2 .1 , Nat.succ_le_succ_iff, le_zero_iff , add_eq_zero_iff] at this
683
+ rwa [size, sr.2 .2 .1 , Nat.succ_le_succ_iff, Nat.le_zero , add_eq_zero_iff] at this
684
684
cases sr.2 .2 .2 .1 .size_eq_zero.1 this.1
685
685
cases sr.2 .2 .2 .2 .size_eq_zero.1 this.2
686
686
obtain rfl : rrs = 1 := sr.2 .2 .1
687
687
rw [if_neg, if_pos, rotateL, if_pos]; · rfl
688
688
all_goals dsimp only [size]; decide
689
689
· have : size rll = 0 ∧ size rlr = 0 := by
690
690
have := balancedSz_zero.1 hr.1
691
- rwa [size, sr.2 .1 .1 , Nat.succ_le_succ_iff, le_zero_iff , add_eq_zero_iff] at this
691
+ rwa [size, sr.2 .1 .1 , Nat.succ_le_succ_iff, Nat.le_zero , add_eq_zero_iff] at this
692
692
cases sr.2 .1 .2 .1 .size_eq_zero.1 this.1
693
693
cases sr.2 .1 .2 .2 .size_eq_zero.1 this.2
694
694
obtain rfl : rls = 1 := sr.2 .1 .1
@@ -707,15 +707,15 @@ theorem balance_eq_balance' {l x r} (hl : Balanced l) (hr : Balanced r) (sl : Si
707
707
· rfl
708
708
· have : size lrl = 0 ∧ size lrr = 0 := by
709
709
have := balancedSz_zero.1 hl.1 .symm
710
- rwa [size, sl.2 .2 .1 , Nat.succ_le_succ_iff, le_zero_iff , add_eq_zero_iff] at this
710
+ rwa [size, sl.2 .2 .1 , Nat.succ_le_succ_iff, Nat.le_zero , add_eq_zero_iff] at this
711
711
cases sl.2 .2 .2 .1 .size_eq_zero.1 this.1
712
712
cases sl.2 .2 .2 .2 .size_eq_zero.1 this.2
713
713
obtain rfl : lrs = 1 := sl.2 .2 .1
714
714
rw [if_neg, if_neg, if_pos, rotateR, if_neg]; · rfl
715
715
all_goals dsimp only [size]; decide
716
716
· have : size lll = 0 ∧ size llr = 0 := by
717
717
have := balancedSz_zero.1 hl.1
718
- rwa [size, sl.2 .1 .1 , Nat.succ_le_succ_iff, le_zero_iff , add_eq_zero_iff] at this
718
+ rwa [size, sl.2 .1 .1 , Nat.succ_le_succ_iff, Nat.le_zero , add_eq_zero_iff] at this
719
719
cases sl.2 .1 .2 .1 .size_eq_zero.1 this.1
720
720
cases sl.2 .1 .2 .2 .size_eq_zero.1 this.2
721
721
obtain rfl : lls = 1 := sl.2 .1 .1
@@ -765,7 +765,7 @@ theorem balanceL_eq_balance {l x r} (sl : Sized l) (sr : Sized r) (H1 : size l =
765
765
· cases' l with ls ll lx lr
766
766
· have : size rl = 0 ∧ size rr = 0 := by
767
767
have := H1 rfl
768
- rwa [size, sr.1 , Nat.succ_le_succ_iff, le_zero_iff , add_eq_zero_iff] at this
768
+ rwa [size, sr.1 , Nat.succ_le_succ_iff, Nat.le_zero , add_eq_zero_iff] at this
769
769
cases sr.2 .1 .size_eq_zero.1 this.1
770
770
cases sr.2 .2 .size_eq_zero.1 this.2
771
771
rw [sr.eq_node']; rfl
@@ -1195,7 +1195,7 @@ theorem Valid'.node4L {l} {x : α} {m} {y : α} {r o₁ o₂} (hl : Valid' o₁
1195
1195
· rw [Nat.succ_add] at mm; rcases mm with (_ | ⟨⟨⟩⟩)
1196
1196
rcases hm.3 .1 .resolve_left mm with ⟨mm₁, mm₂⟩
1197
1197
rcases Nat.eq_zero_or_pos (size ml) with ml0 | ml0
1198
- · rw [ml0, mul_zero, le_zero_iff ] at mm₂
1198
+ · rw [ml0, mul_zero, Nat.le_zero ] at mm₂
1199
1199
rw [ml0, mm₂] at mm; cases mm (by decide)
1200
1200
have : 2 * size l ≤ size ml + size mr + 1 := by
1201
1201
have := Nat.mul_le_mul_left ratio lr₁
@@ -1274,9 +1274,9 @@ theorem Valid'.rotateL {l} {x : α} {r o₁ o₂} (hl : Valid' o₁ l x) (hr : V
1274
1274
le_trans hb₂
1275
1275
(Nat.mul_le_mul_left _ <| le_trans (Nat.le_add_left _ _) (Nat.le_add_right _ _))
1276
1276
· rcases Nat.eq_zero_or_pos (size rl) with rl0 | rl0
1277
- · rw [rl0, not_lt, le_zero_iff , Nat.mul_eq_zero] at h
1277
+ · rw [rl0, not_lt, Nat.le_zero , Nat.mul_eq_zero] at h
1278
1278
replace h := h.resolve_left (by decide)
1279
- erw [rl0, h, le_zero_iff , Nat.mul_eq_zero] at H2
1279
+ erw [rl0, h, Nat.le_zero , Nat.mul_eq_zero] at H2
1280
1280
rw [hr.2 .size_eq, rl0, h, H2.resolve_left (by decide)] at H1
1281
1281
cases H1 (by decide)
1282
1282
refine' hl.node4L hr.left hr.right rl0 _
0 commit comments