Divisibility in groups with zero. #
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.
theorem
mul_dvd_mul_iff_left
{α : Type u_1}
[CancelMonoidWithZero α]
{a : α}
{b : α}
{c : α}
(ha : a ≠ 0)
:
Given two elements b, c of a CancelMonoidWithZero and a nonzero element a,
a*b divides a*c iff b divides c.
theorem
mul_dvd_mul_iff_right
{α : Type u_1}
[CancelCommMonoidWithZero α]
{a : α}
{b : α}
{c : α}
(hc : c ≠ 0)
:
Given two elements a, b of a commutative CancelMonoidWithZero and a nonzero
element c, a*c divides b*c iff a divides b.
DvdNotUnit a b expresses that a divides b "strictly", i.e. that b divided by a
is not a unit.
Instances For
theorem
dvdNotUnit_of_dvd_of_not_dvd
{α : Type u_1}
[CommMonoidWithZero α]
{a : α}
{b : α}
(hd : a ∣ b)
(hnd : ¬b ∣ a)
:
DvdNotUnit a b
theorem
isRelPrime_zero_left
{α : Type u_1}
[CommMonoidWithZero α]
{x : α}
:
IsRelPrime 0 x ↔ IsUnit x
theorem
isRelPrime_zero_right
{α : Type u_1}
[CommMonoidWithZero α]
{x : α}
:
IsRelPrime x 0 ↔ IsUnit x
theorem
not_isRelPrime_zero_zero
{α : Type u_1}
[CommMonoidWithZero α]
[Nontrivial α]
:
¬IsRelPrime 0 0
theorem
IsRelPrime.ne_zero_or_ne_zero
{α : Type u_1}
[CommMonoidWithZero α]
{x : α}
{y : α}
[Nontrivial α]
(h : IsRelPrime x y)
:
theorem
isRelPrime_of_no_nonunits_factors
{α : Type u_1}
[MonoidWithZero α]
{x : α}
{y : α}
(nonzero : ¬(x = 0 ∧ y = 0))
(H : ∀ (z : α), ¬IsUnit z → z ≠ 0 → z ∣ x → ¬z ∣ y)
:
IsRelPrime x y
theorem
ne_zero_of_dvd_ne_zero
{α : Type u_1}
[MonoidWithZero α]
{p : α}
{q : α}
(h₁ : q ≠ 0)
(h₂ : p ∣ q)
:
p ≠ 0
theorem
IsPrimal.mul
{α : Type u_2}
[CancelCommMonoidWithZero α]
{m : α}
{n : α}
(hm : IsPrimal m)
(hn : IsPrimal n)
:
theorem
dvd_antisymm
{α : Type u_1}
[CancelCommMonoidWithZero α]
[Subsingleton αˣ]
{a : α}
{b : α}
:
theorem
dvd_antisymm'
{α : Type u_1}
[CancelCommMonoidWithZero α]
[Subsingleton αˣ]
{a : α}
{b : α}
:
theorem
Dvd.dvd.antisymm
{α : Type u_1}
[CancelCommMonoidWithZero α]
[Subsingleton αˣ]
{a : α}
{b : α}
:
Alias of dvd_antisymm.
theorem
Dvd.dvd.antisymm'
{α : Type u_1}
[CancelCommMonoidWithZero α]
[Subsingleton αˣ]
{a : α}
{b : α}
:
Alias of dvd_antisymm'.
theorem
eq_of_forall_dvd
{α : Type u_1}
[CancelCommMonoidWithZero α]
[Subsingleton αˣ]
{a : α}
{b : α}
(h : ∀ (c : α), a ∣ c ↔ b ∣ c)
:
a = b
theorem
eq_of_forall_dvd'
{α : Type u_1}
[CancelCommMonoidWithZero α]
[Subsingleton αˣ]
{a : α}
{b : α}
(h : ∀ (c : α), c ∣ a ↔ c ∣ b)
:
a = b