feat(library/data/nat/sub): additional theorems
This commit is contained in:
parent
f244c0e70a
commit
d52c3327ba
1 changed files with 14 additions and 0 deletions
|
|
@ -21,4 +21,18 @@ protected theorem sub_add_cancel : Π{n i : ℕ}, i ≤ n → (n - i) + i = n
|
|||
= ((n - i) + succ i) : congr_arg (λ v, v + succ i) (succ_sub_succ n i)
|
||||
... = succ n : congr_arg succ (sub_add_cancel (pred_le_pred p))
|
||||
|
||||
theorem add_sub_cancel_left : Π (n m : ℕ), n + m - n = m
|
||||
| 0 m := nat.zero_add m
|
||||
| (succ a) m :=
|
||||
calc succ a + m - succ a
|
||||
= succ (a + m) - succ a
|
||||
: congr_arg (λz, z - succ a) (nat.succ_add a m)
|
||||
... = a + m - a : succ_sub_succ_eq_sub (a+m) a
|
||||
... = m : add_sub_cancel_left a m
|
||||
|
||||
-- defined in data/nat/sub.lean
|
||||
protected theorem sub_le_sub_right {n m : ℕ} (H : n ≤ m) : Πk, n - k ≤ m - k
|
||||
| 0 := H
|
||||
| (succ z) := pred_le_pred (sub_le_sub_right z)
|
||||
|
||||
end nat
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue