Divisibility in groups with zero. #
THIS FILE IS SYNCHRONIZED WITH MATHLIB4. Any changes to this file require a corresponding PR to mathlib4.
Lemmas about divisibility in groups and monoids with zero.
@[simp]
Given an element a of a commutative semigroup with zero, there exists another element whose
product with zero equals a iff a equals zero.
Given two elements b, c of a cancel_monoid_with_zero and a nonzero element a,
a*b divides a*c iff b divides c.
theorem
mul_dvd_mul_iff_right
{α : Type u_1}
[cancel_comm_monoid_with_zero α]
{a b c : α}
(hc : c ≠ 0) :
Given two elements a, b of a commutative cancel_monoid_with_zero and a nonzero
element c, a*c divides b*c iff a divides b.
dvd_not_unit a b expresses that a divides b "strictly", i.e. that b divided by a
is not a unit.
theorem
dvd_not_unit_of_dvd_of_not_dvd
{α : Type u_1}
[comm_monoid_with_zero α]
{a b : α}
(hd : a ∣ b)
(hnd : ¬b ∣ a) :
dvd_not_unit a b
theorem
ne_zero_of_dvd_ne_zero
{α : Type u_1}
[monoid_with_zero α]
{p q : α}
(h₁ : q ≠ 0)
(h₂ : p ∣ q) :
p ≠ 0
theorem
has_dvd.dvd.antisymm
{α : Type u_1}
[cancel_comm_monoid_with_zero α]
[subsingleton αˣ]
{a b : α} :
Alias of dvd_antisymm.
theorem
has_dvd.dvd.antisymm'
{α : Type u_1}
[cancel_comm_monoid_with_zero α]
[subsingleton αˣ]
{a b : α} :
Alias of dvd_antisymm'.
theorem
eq_of_forall_dvd
{α : Type u_1}
[cancel_comm_monoid_with_zero α]
[subsingleton αˣ]
{a b : α}
(h : ∀ (c : α), a ∣ c ↔ b ∣ c) :
a = b
theorem
eq_of_forall_dvd'
{α : Type u_1}
[cancel_comm_monoid_with_zero α]
[subsingleton αˣ]
{a b : α}
(h : ∀ (c : α), c ∣ a ↔ c ∣ b) :
a = b