Lemmas about Euclidean domains #
Main statements #
gcd_eq_gcd_ab
: states Bézout's lemma for Euclidean domains.
@[instance 100]
@[simp]
@[simp]
theorem
EuclideanDomain.eq_div_of_mul_eq_left
{R : Type u}
[EuclideanDomain R]
{a b c : R}
(hb : b ≠ 0)
(h : a * b = c)
:
theorem
EuclideanDomain.eq_div_of_mul_eq_right
{R : Type u}
[EuclideanDomain R]
{a b c : R}
(ha : a ≠ 0)
(h : a * b = c)
:
theorem
EuclideanDomain.mul_div_assoc
{R : Type u}
[EuclideanDomain R]
(x : R)
{y z : R}
(h : z ∣ y)
:
theorem
EuclideanDomain.mul_div_cancel'
{R : Type u}
[EuclideanDomain R]
{a b : R}
(hb : b ≠ 0)
(hab : b ∣ a)
:
theorem
EuclideanDomain.dvd_div_of_mul_dvd
{R : Type u}
[EuclideanDomain R]
{a b c : R}
(h : a * b ∣ c)
:
@[simp]
theorem
EuclideanDomain.gcd_eq_zero_iff
{R : Type u}
[EuclideanDomain R]
[DecidableEq R]
{a b : R}
:
@[simp]
@[simp]
@[simp]
theorem
EuclideanDomain.xgcdAux_fst
{R : Type u}
[EuclideanDomain R]
[DecidableEq R]
(x y s t s' t' : R)
:
theorem
EuclideanDomain.xgcdAux_P
{R : Type u}
[EuclideanDomain R]
[DecidableEq R]
(a b : R)
{r r' s t s' t' : R}
(p : EuclideanDomain.P✝ a b (r, s, t))
(p' : EuclideanDomain.P✝ a b (r', s', t'))
:
EuclideanDomain.P✝ a b (xgcdAux r s t r' s' t')
An explicit version of Bézout's lemma for Euclidean domains.
@[instance 70]
@[instance 70]
theorem
EuclideanDomain.lcm_dvd
{R : Type u}
[EuclideanDomain R]
[DecidableEq R]
{x y z : R}
(hxz : x ∣ z)
(hyz : y ∣ z)
:
@[simp]
@[simp]
@[simp]
@[simp]
theorem
EuclideanDomain.lcm_eq_zero_iff
{R : Type u}
[EuclideanDomain R]
[DecidableEq R]
{x y : R}
:
@[simp]