Miscellaneous lemmas about the integers #
This file contains lemmas about integers, which require further imports than
Data.Int.Basic
or Data.Int.Order
.
succ
and pred
#
natAbs
#
theorem
Int.natAbs_inj_of_nonneg_of_nonneg
{a : ℤ}
{b : ℤ}
(ha : 0 ≤ a)
(hb : 0 ≤ b)
:
Int.natAbs a = Int.natAbs b ↔ a = b
theorem
Int.natAbs_inj_of_nonpos_of_nonpos
{a : ℤ}
{b : ℤ}
(ha : a ≤ 0)
(hb : b ≤ 0)
:
Int.natAbs a = Int.natAbs b ↔ a = b
theorem
Int.natAbs_inj_of_nonneg_of_nonpos
{a : ℤ}
{b : ℤ}
(ha : 0 ≤ a)
(hb : b ≤ 0)
:
Int.natAbs a = Int.natAbs b ↔ a = -b
theorem
Int.natAbs_inj_of_nonpos_of_nonneg
{a : ℤ}
{b : ℤ}
(ha : a ≤ 0)
(hb : 0 ≤ b)
:
Int.natAbs a = Int.natAbs b ↔ -a = b
theorem
Int.natAbs_coe_sub_coe_le_of_le
{a : ℕ}
{b : ℕ}
{n : ℕ}
(a_le_n : a ≤ n)
(b_le_n : b ≤ n)
:
Int.natAbs (↑a - ↑b) ≤ n
A specialization of abs_sub_le_of_nonneg_of_le
for working with the signed subtraction
of natural numbers.
theorem
Int.natAbs_coe_sub_coe_lt_of_lt
{a : ℕ}
{b : ℕ}
{n : ℕ}
(a_lt_n : a < n)
(b_lt_n : b < n)
:
Int.natAbs (↑a - ↑b) < n
A specialization of abs_sub_lt_of_nonneg_of_lt
for working with the signed subtraction
of natural numbers.
toNat
#
bitwise ops #
This lemma is orphaned from Data.Int.Bitwise
as it also requires material from Data.Int.Order
.