@[instance]
Equations
- int.comm_ring = {add := int.add, add_assoc := int.add_assoc, zero := int.zero, zero_add := int.zero_add, add_zero := int.add_zero, neg := int.neg, add_left_neg := int.add_left_neg, add_comm := int.add_comm, mul := int.mul, mul_assoc := int.mul_assoc, one := int.one, one_mul := int.one_mul, mul_one := int.mul_one, left_distrib := int.distrib_left, right_distrib := int.distrib_right, mul_comm := int.mul_comm}
@[instance]
@[instance]
Equations
@[instance]
Equations
@[instance]
Equations
@[instance]
@[instance]
Equations
@[instance]
Equations
@[instance]
Equations
- int.decidable_linear_ordered_comm_ring = {add := comm_ring.add int.comm_ring, add_assoc := _, zero := comm_ring.zero int.comm_ring, zero_add := _, add_zero := _, neg := comm_ring.neg int.comm_ring, add_left_neg := _, add_comm := _, mul := comm_ring.mul int.comm_ring, mul_assoc := _, one := comm_ring.one int.comm_ring, one_mul := _, mul_one := _, left_distrib := _, right_distrib := _, le := decidable_linear_order.le int.decidable_linear_order, lt := decidable_linear_order.lt int.decidable_linear_order, le_refl := _, le_trans := _, lt_iff_le_not_le := _, le_antisymm := _, add_le_add_left := int.add_le_add_left, exists_pair_ne := _, mul_pos := int.mul_pos, le_total := _, zero_lt_one := int.zero_lt_one, mul_comm := _, decidable_le := decidable_linear_order.decidable_le int.decidable_linear_order, decidable_eq := decidable_linear_order.decidable_eq int.decidable_linear_order, decidable_lt := decidable_linear_order.decidable_lt int.decidable_linear_order}
Equations
- z.induction_on' b = λ (H0 : C b) (Hs : Π (k : ℤ), b ≤ k → C k → C (k + 1)) (Hp : Π (k : ℤ), k ≤ b → C k → C (k - 1)), _.mpr (int.rec (λ (a : ℕ), nat.rec (_.mpr (_.mpr H0)) (λ (n : ℕ) (ih : C (int.of_nat n + b)), _.mpr (_.mpr (_.mpr (_.mpr (Hs (int.of_nat n + b) _ ih))))) a) (λ (a : ℕ), nat.rec (_.mpr (_.mpr (_.mpr (_.mpr (_.mpr (Hp b _ H0)))))) (λ (n : ℕ) (ih : C (-[1+ n] + b)), _.mpr (_.mpr (_.mpr (_.mpr (Hp (-[1+ n] + b) _ ih))))) a) (z - b))
@[instance]
Equations
- int.decidable_dvd = λ (a n : ℤ), decidable_of_decidable_of_iff (int.decidable_eq (n % a) 0) _
theorem
int.of_nat_add_neg_succ_of_nat_of_ge
{m n : ℕ} :
n.succ ≤ m → int.of_nat m + -[1+ n] = int.of_nat (m - n.succ)
Equations
- -[1+ n].to_nat' = option.none
- ↑n.to_nat' = option.some n
@[simp]
@[simp]
theorem
int.bitwise_bit
(f : bool → bool → bool)
(a : bool)
(m : ℤ)
(b : bool)
(n : ℤ) :
int.bitwise f (int.bit a m) (int.bit b n) = int.bit (f a b) (int.bitwise f m n)