ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- associated_one_iff_isUnit
@[simp]
theorem associated_one_iff_isUnit [Monoid α] {a : α} : (a : α) ~ᵤ 1 ↔ IsUnit a 
Arguments: {α : Type u_1} [Monoid α] {a : α}
Goal: a ~ᵤ 1 ↔ IsUnit a
-- associated_zero_iff_eq_zero
@[simp]
theorem associated_zero_iff_eq_zero [MonoidWithZero α] (a : α) : a ~ᵤ 0 ↔ a = 0 
Arguments: {α : Type u_1} [MonoidWithZero α] (a : α)
Goal: a ~ᵤ 0 ↔ a = 0
-- associated_one_of_mul_eq_one
theorem associated_one_of_mul_eq_one [CommMonoid α] {a : α} (b : α) (hab : a * b = 1) : a ~ᵤ 1 
Arguments: {α : Type u_1} [CommMonoid α] {a : α} (b : α) (hab : a * b = 1)
Goal: a ~ᵤ 1
-- associated_one_of_associated_mul_one
theorem associated_one_of_associated_mul_one [CommMonoid α] {a b : α} : a * b ~ᵤ 1 → a ~ᵤ 1
  
Arguments: {α : Type u_1} [CommMonoid α] {a b : α}
Goal: a * b ~ᵤ 1 → a ~ᵤ 1
-- associated_mul_unit_left
theorem associated_mul_unit_left {β : Type*} [Monoid β] (a u : β) (hu : IsUnit u) :
    Associated (a * u) a 
Arguments: {β : Type u_5} [Monoid β] (a u : β) (hu : IsUnit u)
Goal: a * u ~ᵤ a
-- associated_unit_mul_left
theorem associated_unit_mul_left {β : Type*} [CommMonoid β] (a u : β) (hu : IsUnit u) :
    Associated (u * a) a 
Arguments: {β : Type u_5} [CommMonoid β] (a u : β) (hu : IsUnit u)
Goal: u * a ~ᵤ a
-- associated_mul_unit_right
theorem associated_mul_unit_right {β : Type*} [Monoid β] (a u : β) (hu : IsUnit u) :
    Associated a (a * u) 
Arguments: {β : Type u_5} [Monoid β] (a u : β) (hu : IsUnit u)
Goal: a ~ᵤ a * u
-- associated_unit_mul_right
theorem associated_unit_mul_right {β : Type*} [CommMonoid β] (a u : β) (hu : IsUnit u) :
    Associated a (u * a) 
Arguments: {β : Type u_5} [CommMonoid β] (a u : β) (hu : IsUnit u)
Goal: a ~ᵤ u * a
-- associated_mul_isUnit_left_iff
theorem associated_mul_isUnit_left_iff {β : Type*} [Monoid β] {a u b : β} (hu : IsUnit u) :
    Associated (a * u) b ↔ Associated a b 
Arguments: {β : Type u_5} [Monoid β] {a u b : β} (hu : IsUnit u)
Goal: a * u ~ᵤ b ↔ a ~ᵤ b
-- associated_isUnit_mul_left_iff
theorem associated_isUnit_mul_left_iff {β : Type*} [CommMonoid β] {u a b : β} (hu : IsUnit u) :
    Associated (u * a) b ↔ Associated a b 
Arguments: {β : Type u_5} [CommMonoid β] {u a b : β} (hu : IsUnit u)
Goal: u * a ~ᵤ b ↔ a ~ᵤ b
-- associated_mul_isUnit_right_iff
theorem associated_mul_isUnit_right_iff {β : Type*} [Monoid β] {a b u : β} (hu : IsUnit u) :
    Associated a (b * u) ↔ Associated a b 
Arguments: {β : Type u_5} [Monoid β] {a b u : β} (hu : IsUnit u)
Goal: a ~ᵤ b * u ↔ a ~ᵤ b
-- associated_isUnit_mul_right_iff
theorem associated_isUnit_mul_right_iff {β : Type*} [CommMonoid β] {a u b : β} (hu : IsUnit u) :
    Associated a (u * b) ↔ Associated a b 
Arguments: {β : Type u_5} [CommMonoid β] {a u b : β} (hu : IsUnit u)
Goal: a ~ᵤ u * b ↔ a ~ᵤ b
-- associated_mul_unit_left_iff
@[simp]
theorem associated_mul_unit_left_iff {β : Type*} [Monoid β] {a b : β} {u : Units β} :
    Associated (a * u) b ↔ Associated a b 
Arguments: {β : Type u_5} [Monoid β] {a b : β} {u : βˣ}
Goal: a * ↑u ~ᵤ b ↔ a ~ᵤ b
-- associated_unit_mul_left_iff
@[simp]
theorem associated_unit_mul_left_iff {β : Type*} [CommMonoid β] {a b : β} {u : Units β} :
    Associated (↑u * a) b ↔ Associated a b 
Arguments: {β : Type u_5} [CommMonoid β] {a b : β} {u : βˣ}
Goal: ↑u * a ~ᵤ b ↔ a ~ᵤ b
-- associated_mul_unit_right_iff
@[simp]
theorem associated_mul_unit_right_iff {β : Type*} [Monoid β] {a b : β} {u : Units β} :
    Associated a (b * u) ↔ Associated a b 
Arguments: {β : Type u_5} [Monoid β] {a b : β} {u : βˣ}
Goal: a ~ᵤ b * ↑u ↔ a ~ᵤ b
-- associated_unit_mul_right_iff
@[simp]
theorem associated_unit_mul_right_iff {β : Type*} [CommMonoid β] {a b : β} {u : Units β} :
    Associated a (↑u * b) ↔ Associated a b 
Arguments: {β : Type u_5} [CommMonoid β] {a b : β} {u : βˣ}
Goal: a ~ᵤ ↑u * b ↔ a ~ᵤ b
-- Associated.mul_left
theorem Associated.mul_left [Monoid α] (a : α) {b c : α} (h : b ~ᵤ c) : a * b ~ᵤ a * c 
Arguments: {α : Type u_1} [Monoid α] (a : α) {b c : α} (h : b ~ᵤ c)
Goal: a * b ~ᵤ a * c
-- Associated.mul_right
theorem Associated.mul_right [CommMonoid α] {a b : α} (h : a ~ᵤ b) (c : α) : a * c ~ᵤ b * c 
Arguments: {α : Type u_1} [CommMonoid α] {a b : α} (h : a ~ᵤ b) (c : α)
Goal: a * c ~ᵤ b * c
-- Associated.mul_mul
theorem Associated.mul_mul [CommMonoid α] {a₁ a₂ b₁ b₂ : α}
    (h₁ : a₁ ~ᵤ b₁) (h₂ : a₂ ~ᵤ b₂) : a₁ * a₂ ~ᵤ b₁ * b₂ 
Arguments: {α : Type u_1} [CommMonoid α] {a₁ a₂ b₁ b₂ : α} (h₁ : a₁ ~ᵤ b₁) (h₂ : a₂ ~ᵤ b₂)
Goal: a₁ * a₂ ~ᵤ b₁ * b₂
-- Associated.pow_pow
theorem Associated.pow_pow [CommMonoid α] {a b : α} {n : ℕ} (h : a ~ᵤ b) : a ^ n ~ᵤ b ^ n 
Arguments: {α : Type u_1} [CommMonoid α] {a b : α} {n : ℕ} (h : a ~ᵤ b)
Goal: a ^ n ~ᵤ b ^ n
-- Associated.dvd
protected theorem Associated.dvd [Monoid α] {a b : α} : a ~ᵤ b → a ∣ b 
Arguments: {α : Type u_1} [Monoid α] {a b : α}
Goal: a ~ᵤ b → a ∣ b
-- Associated.dvd'
protected theorem Associated.dvd' [Monoid α] {a b : α} (h : a ~ᵤ b) : b ∣ a 
Arguments: {α : Type u_1} [Monoid α] {a b : α} (h : a ~ᵤ b)
Goal: b ∣ a
-- Associated.dvd_dvd
protected theorem Associated.dvd_dvd [Monoid α] {a b : α} (h : a ~ᵤ b) : a ∣ b ∧ b ∣ a 
Arguments: {α : Type u_1} [Monoid α] {a b : α} (h : a ~ᵤ b)
Goal: a ∣ b ∧ b ∣ a
-- associated_of_dvd_dvd
theorem associated_of_dvd_dvd [CancelMonoidWithZero α] {a b : α} (hab : a ∣ b) (hba : b ∣ a) :
    a ~ᵤ b 
Arguments: {α : Type u_1} [CancelMonoidWithZero α] {a b : α} (hab : a ∣ b) (hba : b ∣ a)
Goal: a ~ᵤ b
-- dvd_dvd_iff_associated
theorem dvd_dvd_iff_associated [CancelMonoidWithZero α] {a b : α} : a ∣ b ∧ b ∣ a ↔ a ~ᵤ b 
Arguments: {α : Type u_1} [CancelMonoidWithZero α] {a b : α}
Goal: a ∣ b ∧ b ∣ a ↔ a ~ᵤ b
-- Associated.dvd_iff_dvd_left
theorem Associated.dvd_iff_dvd_left [Monoid α] {a b c : α} (h : a ~ᵤ b) : a ∣ c ↔ b ∣ c 
Arguments: {α : Type u_1} [Monoid α] {a b c : α} (h : a ~ᵤ b)
Goal: a ∣ c ↔ b ∣ c
-- Associated.dvd_iff_dvd_right
theorem Associated.dvd_iff_dvd_right [Monoid α] {a b c : α} (h : b ~ᵤ c) : a ∣ b ↔ a ∣ c 
Arguments: {α : Type u_1} [Monoid α] {a b c : α} (h : b ~ᵤ c)
Goal: a ∣ b ↔ a ∣ c
-- Associated.eq_zero_iff
theorem Associated.eq_zero_iff [MonoidWithZero α] {a b : α} (h : a ~ᵤ b) : a = 0 ↔ b = 0 
Arguments: {α : Type u_1} [MonoidWithZero α] {a b : α} (h : a ~ᵤ b)
Goal: a = 0 ↔ b = 0
-- Associated.ne_zero_iff
theorem Associated.ne_zero_iff [MonoidWithZero α] {a b : α} (h : a ~ᵤ b) : a ≠ 0 ↔ b ≠ 0 
Arguments: {α : Type u_1} [MonoidWithZero α] {a b : α} (h : a ~ᵤ b)
Goal: a ≠ 0 ↔ b ≠ 0
-- Associated.neg_left
theorem Associated.neg_left [Monoid α] [HasDistribNeg α] {a b : α} (h : Associated a b) :
    Associated (-a) b 
Arguments: {α : Type u_1} [Monoid α] [HasDistribNeg α] {a b : α} (h : a ~ᵤ b)
Goal: -a ~ᵤ b
-- Associated.neg_right
theorem Associated.neg_right [Monoid α] [HasDistribNeg α] {a b : α} (h : Associated a b) :
    Associated a (-b) 
Arguments: {α : Type u_1} [Monoid α] [HasDistribNeg α] {a b : α} (h : a ~ᵤ b)
Goal: a ~ᵤ -b
-- Associated.neg_neg
theorem Associated.neg_neg [Monoid α] [HasDistribNeg α] {a b : α} (h : Associated a b) :
    Associated (-a) (-b) 
Arguments: {α : Type u_1} [Monoid α] [HasDistribNeg α] {a b : α} (h : a ~ᵤ b)
Goal: -a ~ᵤ -b
-- Associated.prime
protected theorem Associated.prime [CommMonoidWithZero α] {p q : α} (h : p ~ᵤ q) (hp : Prime p) :
    Prime q 
Arguments: {α : Type u_1} [CommMonoidWithZero α] {p q : α} (h : p ~ᵤ q) (hp : Prime p)
Goal: Prime q
-- prime_mul_iff
theorem prime_mul_iff [CancelCommMonoidWithZero α] {x y : α} :
    Prime (x * y) ↔ (Prime x ∧ IsUnit y) ∨ (IsUnit x ∧ Prime y) 
Arguments: {α : Type u_1} [CancelCommMonoidWithZero α] {x y : α}
Goal: Prime (x * y) ↔ Prime x ∧ IsUnit y ∨ IsUnit x ∧ Prime y
-- prime_pow_iff
@[simp]
lemma prime_pow_iff [CancelCommMonoidWithZero α] {p : α} {n : ℕ} :
    Prime (p ^ n) ↔ Prime p ∧ n = 1 
Arguments: {α : Type u_1} [CancelCommMonoidWithZero α] {p : α} {n : ℕ}
Goal: Prime (p ^ n) ↔ Prime p ∧ n = 1
-- Irreducible.dvd_iff
theorem Irreducible.dvd_iff [Monoid α] {x y : α} (hx : Irreducible x) :
    y ∣ x ↔ IsUnit y ∨ Associated x y 
Arguments: {α : Type u_1} [Monoid α] {x y : α} (hx : Irreducible x)
Goal: y ∣ x ↔ IsUnit y ∨ x ~ᵤ y
-- Irreducible.associated_of_dvd
theorem Irreducible.associated_of_dvd [Monoid α] {p q : α} (p_irr : Irreducible p)
    (q_irr : Irreducible q) (dvd : p ∣ q) : Associated p q 
Arguments: {α : Type u_1} [Monoid α] {p q : α} (p_irr : Irreducible p) (q_irr : Irreducible q) (dvd : p ∣ q)
Goal: p ~ᵤ q
-- Irreducible.dvd_irreducible_iff_associated
theorem Irreducible.dvd_irreducible_iff_associated [Monoid α] {p q : α}
    (pp : Irreducible p) (qp : Irreducible q) : p ∣ q ↔ Associated p q 
Arguments: {α : Type u_1} [Monoid α] {p q : α} (pp : Irreducible p) (qp : Irreducible q)
Goal: p ∣ q ↔ p ~ᵤ q
-- Prime.associated_of_dvd
theorem Prime.associated_of_dvd [CancelCommMonoidWithZero α] {p q : α} (p_prime : Prime p)
    (q_prime : Prime q) (dvd : p ∣ q) : Associated p q 
Arguments: {α : Type u_1} [CancelCommMonoidWithZero α] {p q : α} (p_prime : Prime p) (q_prime : Prime q) (dvd : p ∣ q)
Goal: p ~ᵤ q
-- Prime.dvd_prime_iff_associated
theorem Prime.dvd_prime_iff_associated [CancelCommMonoidWithZero α] {p q : α} (pp : Prime p)
    (qp : Prime q) : p ∣ q ↔ Associated p q 
Arguments: {α : Type u_1} [CancelCommMonoidWithZero α] {p q : α} (pp : Prime p) (qp : Prime q)
Goal: p ∣ q ↔ p ~ᵤ q
-- Associated.prime_iff
theorem Associated.prime_iff [CommMonoidWithZero α] {p q : α} (h : p ~ᵤ q) : Prime p ↔ Prime q 
Arguments: {α : Type u_1} [CommMonoidWithZero α] {p q : α} (h : p ~ᵤ q)
Goal: Prime p ↔ Prime q
-- Associated.isUnit
protected theorem Associated.isUnit [Monoid α] {a b : α} (h : a ~ᵤ b) : IsUnit a → IsUnit b 
Arguments: {α : Type u_1} [Monoid α] {a b : α} (h : a ~ᵤ b)
Goal: IsUnit a → IsUnit b
-- Associated.isUnit_iff
theorem Associated.isUnit_iff [Monoid α] {a b : α} (h : a ~ᵤ b) : IsUnit a ↔ IsUnit b 
Arguments: {α : Type u_1} [Monoid α] {a b : α} (h : a ~ᵤ b)
Goal: IsUnit a ↔ IsUnit b
-- Irreducible.isUnit_iff_not_associated_of_dvd
theorem Irreducible.isUnit_iff_not_associated_of_dvd [Monoid α]
    {x y : α} (hx : Irreducible x) (hy : y ∣ x) : IsUnit y ↔ ¬ Associated x y 
Arguments: {α : Type u_1} [Monoid α] {x y : α} (hx : Irreducible x) (hy : y ∣ x)
Goal: IsUnit y ↔ ¬x ~ᵤ y
-- Associated.irreducible
protected theorem Associated.irreducible [Monoid α] {p q : α} (h : p ~ᵤ q) (hp : Irreducible p) :
    Irreducible q 
Arguments: {α : Type u_1} [Monoid α] {p q : α} (h : p ~ᵤ q) (hp : Irreducible p)
Goal: Irreducible q
-- Associated.irreducible_iff
protected theorem Associated.irreducible_iff [Monoid α] {p q : α} (h : p ~ᵤ q) :
    Irreducible p ↔ Irreducible q 
Arguments: {α : Type u_1} [Monoid α] {p q : α} (h : p ~ᵤ q)
Goal: Irreducible p ↔ Irreducible q
-- Associated.of_mul_left
theorem Associated.of_mul_left [CancelCommMonoidWithZero α] {a b c d : α} (h : a * b ~ᵤ c * d)
    (h₁ : a ~ᵤ c) (ha : a ≠ 0) : b ~ᵤ d 
Arguments: {α : Type u_1} [CancelCommMonoidWithZero α] {a b c d : α} (h : a * b ~ᵤ c * d) (h₁ : a ~ᵤ c) (ha : a ≠ 0)
Goal: b ~ᵤ d
-- Associated.of_mul_right
theorem Associated.of_mul_right [CancelCommMonoidWithZero α] {a b c d : α} :
    a * b ~ᵤ c * d → b ~ᵤ d → b ≠ 0 → a ~ᵤ c 
Arguments: {α : Type u_1} [CancelCommMonoidWithZero α] {a b c d : α}
Goal: a * b ~ᵤ c * d → b ~ᵤ d → b ≠ 0 → a ~ᵤ c
-- Associated.of_pow_associated_of_prime
theorem Associated.of_pow_associated_of_prime [CancelCommMonoidWithZero α] {p₁ p₂ : α} {k₁ k₂ : ℕ}
    (hp₁ : Prime p₁) (hp₂ : Prime p₂) (hk₁ : 0 < k₁) (h : p₁ ^ k₁ ~ᵤ p₂ ^ k₂) : p₁ ~ᵤ p₂ 
Arguments: {α : Type u_1} [CancelCommMonoidWithZero α] {p₁ p₂ : α} {k₁ k₂ : ℕ} (hp₁ : Prime p₁) (hp₂ : Prime p₂) (hk₁ : 0 < k₁) (h : p₁ ^ k₁ ~ᵤ p₂ ^ k₂)
Goal: p₁ ~ᵤ p₂
-- Associated.of_pow_associated_of_prime'
theorem Associated.of_pow_associated_of_prime' [CancelCommMonoidWithZero α] {p₁ p₂ : α} {k₁ k₂ : ℕ}
    (hp₁ : Prime p₁) (hp₂ : Prime p₂) (hk₂ : 0 < k₂) (h : p₁ ^ k₁ ~ᵤ p₂ ^ k₂) : p₁ ~ᵤ p₂ 
Arguments: {α : Type u_1} [CancelCommMonoidWithZero α] {p₁ p₂ : α} {k₁ k₂ : ℕ} (hp₁ : Prime p₁) (hp₂ : Prime p₂) (hk₂ : 0 < k₂) (h : p₁ ^ k₁ ~ᵤ p₂ ^ k₂)
Goal: p₁ ~ᵤ p₂
-- Irreducible.isRelPrime_iff_not_dvd
lemma Irreducible.isRelPrime_iff_not_dvd [Monoid α] {p n : α} (hp : Irreducible p) :
    IsRelPrime p n ↔ ¬ p ∣ n 
Arguments: {α : Type u_1} [Monoid α] {p n : α} (hp : Irreducible p)
Goal: IsRelPrime p n ↔ ¬p ∣ n
-- Irreducible.dvd_or_isRelPrime
lemma Irreducible.dvd_or_isRelPrime [Monoid α] {p n : α} (hp : Irreducible p) :
    p ∣ n ∨ IsRelPrime p n 
Arguments: {α : Type u_1} [Monoid α] {p n : α} (hp : Irreducible p)
Goal: p ∣ n ∨ IsRelPrime p n
-- associated_iff_eq
theorem associated_iff_eq {x y : α} : x ~ᵤ y ↔ x = y 
Arguments: {α : Type u_1} [Monoid α] [Unique αˣ] {x y : α}
Goal: x ~ᵤ y ↔ x = y
-- associated_eq_eq
theorem associated_eq_eq : (Associated : α → α → Prop) = Eq 
Arguments: {α : Type u_1} [Monoid α] [Unique αˣ]
Goal: Associated = Eq
-- prime_dvd_prime_iff_eq
theorem prime_dvd_prime_iff_eq {M : Type*} [CancelCommMonoidWithZero M] [Unique Mˣ] {p q : M}
    (pp : Prime p) (qp : Prime q) : p ∣ q ↔ p = q 
Arguments: {M : Type u_5} [CancelCommMonoidWithZero M] [Unique Mˣ] {p q : M} (pp : Prime p) (qp : Prime q)
Goal: p ∣ q ↔ p = q
-- eq_of_prime_pow_eq
theorem eq_of_prime_pow_eq (hp₁ : Prime p₁) (hp₂ : Prime p₂) (hk₁ : 0 < k₁)
    (h : p₁ ^ k₁ = p₂ ^ k₂) : p₁ = p₂ 
Arguments: {R : Type u_5} [CancelCommMonoidWithZero R] [Unique Rˣ] {p₁ p₂ : R} {k₁ k₂ : ℕ} (hp₁ : Prime p₁) (hp₂ : Prime p₂) (hk₁ : 0 < k₁) (h : p₁ ^ k₁ = p₂ ^ k₂)
Goal: p₁ = p₂
-- eq_of_prime_pow_eq'
theorem eq_of_prime_pow_eq' (hp₁ : Prime p₁) (hp₂ : Prime p₂) (hk₁ : 0 < k₂)
    (h : p₁ ^ k₁ = p₂ ^ k₂) : p₁ = p₂ 
Arguments: {R : Type u_5} [CancelCommMonoidWithZero R] [Unique Rˣ] {p₁ p₂ : R} {k₁ k₂ : ℕ} (hp₁ : Prime p₁) (hp₂ : Prime p₂) (hk₁ : 0 < k₂) (h : p₁ ^ k₁ = p₂ ^ k₂)
Goal: p₁ = p₂
-- Associates.mk_eq_mk_iff_associated
theorem mk_eq_mk_iff_associated [Monoid α] {a b : α} : Associates.mk a = Associates.mk b ↔ a ~ᵤ b 
Arguments: {α : Type u_1} [Monoid α] {a b : α}
Goal: Associates.mk a = Associates.mk b ↔ a ~ᵤ b
-- Associates.quotient_mk_eq_mk
theorem quotient_mk_eq_mk [Monoid α] (a : α) : ⟦a⟧ = Associates.mk a 
Arguments: {α : Type u_1} [Monoid α] (a : α)
Goal: ⟦a⟧ = Associates.mk a
-- Associates.quot_mk_eq_mk
theorem quot_mk_eq_mk [Monoid α] (a : α) : Quot.mk Setoid.r a = Associates.mk a 
Arguments: {α : Type u_1} [Monoid α] (a : α)
Goal: Quot.mk Setoid.r a = Associates.mk a
-- Associates.quot_out
@[simp]
theorem quot_out [Monoid α] (a : Associates α) : Associates.mk (Quot.out a) = a 
Arguments: {α : Type u_1} [Monoid α] (a : Associates α)
Goal: Associates.mk (Quot.out a) = a
-- Associates.mk_quot_out
theorem mk_quot_out [Monoid α] (a : α) : Quot.out (Associates.mk a) ~ᵤ a 
Arguments: {α : Type u_1} [Monoid α] (a : α)
Goal: Quot.out (Associates.mk a) ~ᵤ a
-- Associates.forall_associated
theorem forall_associated [Monoid α] {p : Associates α → Prop} :
    (∀ a, p a) ↔ ∀ a, p (Associates.mk a) 
Arguments: {α : Type u_1} [Monoid α] {p : Associates α → Prop}
Goal: (∀ (a : Associates α), p a) ↔ ∀ (a : α), p (Associates.mk a)
-- Associates.mk_surjective
theorem mk_surjective [Monoid α] : Function.Surjective (@Associates.mk α _) 
Arguments: {α : Type u_1} [Monoid α]
Goal: Function.Surjective Associates.mk
-- Associates.mk_one
@[simp]
theorem mk_one [Monoid α] : Associates.mk (1 : α) = 1 
Arguments: {α : Type u_1} [Monoid α]
Goal: Associates.mk 1 = 1
-- Associates.one_eq_mk_one
theorem one_eq_mk_one [Monoid α] : (1 : Associates α) = Associates.mk 1 
Arguments: {α : Type u_1} [Monoid α]
Goal: 1 = Associates.mk 1
-- Associates.mk_eq_one
@[simp]
theorem mk_eq_one [Monoid α] {a : α} : Associates.mk a = 1 ↔ IsUnit a 
Arguments: {α : Type u_1} [Monoid α] {a : α}
Goal: Associates.mk a = 1 ↔ IsUnit a
-- Associates.bot_eq_one
theorem bot_eq_one [Monoid α] : (⊥ : Associates α) = 1 
Arguments: {α : Type u_1} [Monoid α]
Goal: ⊥ = 1
-- Associates.exists_rep
theorem exists_rep [Monoid α] (a : Associates α) : ∃ a0 : α, Associates.mk a0 = a 
Arguments: {α : Type u_1} [Monoid α] (a : Associates α)
Goal: ∃ a0, Associates.mk a0 = a
-- Associates.mk_injective
theorem mk_injective [Monoid α] [Unique (Units α)] : Function.Injective (@Associates.mk α _) 
Arguments: {α : Type u_1} [Monoid α] [Unique αˣ]
Goal: Function.Injective Associates.mk
-- Associates.mk_mul_mk
theorem mk_mul_mk {x y : α} : Associates.mk x * Associates.mk y = Associates.mk (x * y) 
Arguments: {α : Type u_1} [CommMonoid α] {x y : α}
Goal: Associates.mk x * Associates.mk y = Associates.mk (x * y)
-- Associates.mkMonoidHom_apply
@[simp]
theorem mkMonoidHom_apply (a : α) : Associates.mkMonoidHom a = Associates.mk a 
Arguments: {α : Type u_1} [CommMonoid α] (a : α)
Goal: Associates.mkMonoidHom a = Associates.mk a
-- Associates.associated_map_mk
theorem associated_map_mk {f : Associates α →* α} (hinv : Function.RightInverse f Associates.mk)
    (a : α) : a ~ᵤ f (Associates.mk a) 
Arguments: {α : Type u_1} [CommMonoid α] {f : Associates α →* α} (hinv : Function.RightInverse (⇑f) Associates.mk) (a : α)
Goal: a ~ᵤ f (Associates.mk a)
-- Associates.mk_pow
theorem mk_pow (a : α) (n : ℕ) : Associates.mk (a ^ n) = Associates.mk a ^ n 
Arguments: {α : Type u_1} [CommMonoid α] (a : α) (n : ℕ)
Goal: Associates.mk (a ^ n) = Associates.mk a ^ n
-- Associates.dvd_eq_le
theorem dvd_eq_le : ((· ∣ ·) : Associates α → Associates α → Prop) = (· ≤ ·) 
Arguments: {α : Type u_1} [CommMonoid α]
Goal: (fun x x_1 => x ∣ x_1) = fun x x_1 => x ≤ x_1
-- Associates.mul_eq_one_iff
theorem mul_eq_one_iff {x y : Associates α} : x * y = 1 ↔ x = 1 ∧ y = 1 
Arguments: {α : Type u_1} [CommMonoid α] {x y : Associates α}
Goal: x * y = 1 ↔ x = 1 ∧ y = 1
-- Associates.units_eq_one
theorem units_eq_one (u : (Associates α)ˣ) : u = 1 
Arguments: {α : Type u_1} [CommMonoid α] (u : (Associates α)ˣ)
Goal: u = 1
-- Associates.coe_unit_eq_one
@[simp]
theorem coe_unit_eq_one (u : (Associates α)ˣ) : (u : Associates α) = 1 
Arguments: {α : Type u_1} [CommMonoid α] (u : (Associates α)ˣ)
Goal: ↑u = 1
-- Associates.isUnit_iff_eq_one
theorem isUnit_iff_eq_one (a : Associates α) : IsUnit a ↔ a = 1 
Arguments: {α : Type u_1} [CommMonoid α] (a : Associates α)
Goal: IsUnit a ↔ a = 1
-- Associates.isUnit_iff_eq_bot
theorem isUnit_iff_eq_bot {a : Associates α} : IsUnit a ↔ a = ⊥ 
Arguments: {α : Type u_1} [CommMonoid α] {a : Associates α}
Goal: IsUnit a ↔ a = ⊥
-- Associates.isUnit_mk
theorem isUnit_mk {a : α} : IsUnit (Associates.mk a) ↔ IsUnit a 
Arguments: {α : Type u_1} [CommMonoid α] {a : α}
Goal: IsUnit (Associates.mk a) ↔ IsUnit a
-- Associates.mul_mono
theorem mul_mono {a b c d : Associates α} (h₁ : a ≤ b) (h₂ : c ≤ d) : a * c ≤ b * d 
Arguments: {α : Type u_1} [CommMonoid α] {a b c d : Associates α} (h₁ : a ≤ b) (h₂ : c ≤ d)
Goal: a * c ≤ b * d
-- Associates.one_le
theorem one_le {a : Associates α} : 1 ≤ a 
Arguments: {α : Type u_1} [CommMonoid α] {a : Associates α}
Goal: 1 ≤ a
-- Associates.le_mul_right
theorem le_mul_right {a b : Associates α} : a ≤ a * b 
Arguments: {α : Type u_1} [CommMonoid α] {a b : Associates α}
Goal: a ≤ a * b
-- Associates.le_mul_left
theorem le_mul_left {a b : Associates α} : a ≤ b * a 
Arguments: {α : Type u_1} [CommMonoid α] {a b : Associates α}
Goal: a ≤ b * a
-- Associates.mk_dvd_mk
@[simp]
theorem mk_dvd_mk {a b : α} : Associates.mk a ∣ Associates.mk b ↔ a ∣ b 
Arguments: {α : Type u_1} [CommMonoid α] {a b : α}
Goal: Associates.mk a ∣ Associates.mk b ↔ a ∣ b
-- Associates.dvd_of_mk_le_mk
theorem dvd_of_mk_le_mk {a b : α} : Associates.mk a ≤ Associates.mk b → a ∣ b 
Arguments: {α : Type u_1} [CommMonoid α] {a b : α}
Goal: Associates.mk a ≤ Associates.mk b → a ∣ b
-- Associates.mk_le_mk_of_dvd
theorem mk_le_mk_of_dvd {a b : α} : a ∣ b → Associates.mk a ≤ Associates.mk b 
Arguments: {α : Type u_1} [CommMonoid α] {a b : α}
Goal: a ∣ b → Associates.mk a ≤ Associates.mk b
-- Associates.mk_le_mk_iff_dvd
theorem mk_le_mk_iff_dvd {a b : α} : Associates.mk a ≤ Associates.mk b ↔ a ∣ b 
Arguments: {α : Type u_1} [CommMonoid α] {a b : α}
Goal: Associates.mk a ≤ Associates.mk b ↔ a ∣ b
-- Associates.isPrimal_mk
@[simp]
theorem isPrimal_mk {a : α} : IsPrimal (Associates.mk a) ↔ IsPrimal a 
Arguments: {α : Type u_1} [CommMonoid α] {a : α}
Goal: IsPrimal (Associates.mk a) ↔ IsPrimal a
-- Associates.decompositionMonoid_iff
@[simp]
theorem decompositionMonoid_iff : DecompositionMonoid (Associates α) ↔ DecompositionMonoid α 
Arguments: {α : Type u_1} [CommMonoid α]
Goal: DecompositionMonoid (Associates α) ↔ DecompositionMonoid α
-- Associates.mk_isRelPrime_iff
@[simp]
theorem mk_isRelPrime_iff {a b : α} :
    IsRelPrime (Associates.mk a) (Associates.mk b) ↔ IsRelPrime a b 
Arguments: {α : Type u_1} [CommMonoid α] {a b : α}
Goal: IsRelPrime (Associates.mk a) (Associates.mk b) ↔ IsRelPrime a b
-- Associates.mk_zero
@[simp] theorem mk_zero [Zero α] [Monoid α] : Associates.mk (0 : α) = 0 
Arguments: {α : Type u_1} [Zero α] [Monoid α]
Goal: Associates.mk 0 = 0
-- Associates.mk_eq_zero
@[simp]
theorem mk_eq_zero {a : α} : Associates.mk a = 0 ↔ a = 0 
Arguments: {α : Type u_1} [MonoidWithZero α] {a : α}
Goal: Associates.mk a = 0 ↔ a = 0
-- Associates.quot_out_zero
@[simp]
theorem quot_out_zero : Quot.out (0 : Associates α) = 0 
Arguments: {α : Type u_1} [MonoidWithZero α]
Goal: Quot.out 0 = 0
-- Associates.mk_ne_zero
theorem mk_ne_zero {a : α} : Associates.mk a ≠ 0 ↔ a ≠ 0 
Arguments: {α : Type u_1} [MonoidWithZero α] {a : α}
Goal: Associates.mk a ≠ 0 ↔ a ≠ 0
-- Associates.exists_non_zero_rep
theorem exists_non_zero_rep {a : Associates α} : a ≠ 0 → ∃ a0 : α, a0 ≠ 0 ∧ Associates.mk a0 = a 
Arguments: {α : Type u_1} [MonoidWithZero α] {a : Associates α}
Goal: a ≠ 0 → ∃ a0, a0 ≠ 0 ∧ Associates.mk a0 = a
-- Associates.le_zero
@[simp] protected theorem le_zero (a : Associates α) : a ≤ 0 
Arguments: {α : Type u_1} [CommMonoidWithZero α] (a : Associates α)
Goal: a ≤ 0
-- Associates.Prime.le_or_le
theorem Prime.le_or_le {p : Associates α} (hp : Prime p) {a b : Associates α} (h : p ≤ a * b) :
    p ≤ a ∨ p ≤ b 
Arguments: {α : Type u_1} [CommMonoidWithZero α] {p : Associates α} (hp : Prime p) {a b : Associates α} (h : p ≤ a * b)
Goal: p ≤ a ∨ p ≤ b
-- Associates.prime_mk
@[simp]
theorem prime_mk {p : α} : Prime (Associates.mk p) ↔ Prime p 
Arguments: {α : Type u_1} [CommMonoidWithZero α] {p : α}
Goal: Prime (Associates.mk p) ↔ Prime p
-- Associates.irreducible_mk
@[simp]
theorem irreducible_mk {a : α} : Irreducible (Associates.mk a) ↔ Irreducible a 
Arguments: {α : Type u_1} [CommMonoidWithZero α] {a : α}
Goal: Irreducible (Associates.mk a) ↔ Irreducible a
-- Associates.mk_dvdNotUnit_mk_iff
@[simp]
theorem mk_dvdNotUnit_mk_iff {a b : α} :
    DvdNotUnit (Associates.mk a) (Associates.mk b) ↔ DvdNotUnit a b 
Arguments: {α : Type u_1} [CommMonoidWithZero α] {a b : α}
Goal: DvdNotUnit (Associates.mk a) (Associates.mk b) ↔ DvdNotUnit a b
-- Associates.dvdNotUnit_of_lt
theorem dvdNotUnit_of_lt {a b : Associates α} (hlt : a < b) : DvdNotUnit a b 
Arguments: {α : Type u_1} [CommMonoidWithZero α] {a b : Associates α} (hlt : a < b)
Goal: DvdNotUnit a b
-- Associates.irreducible_iff_prime_iff
theorem irreducible_iff_prime_iff :
    (∀ a : α, Irreducible a ↔ Prime a) ↔ ∀ a : Associates α, Irreducible a ↔ Prime a 
Arguments: {α : Type u_1} [CommMonoidWithZero α]
Goal: (∀ (a : α), Irreducible a ↔ Prime a) ↔ ∀ (a : Associates α), Irreducible a ↔ Prime a
-- associates_irreducible_iff_prime
theorem _root_.associates_irreducible_iff_prime [DecompositionMonoid α] {p : Associates α} :
    Irreducible p ↔ Prime p 
Arguments: {α : Type u_1} [CancelCommMonoidWithZero α] [DecompositionMonoid α] {p : Associates α}
Goal: Irreducible p ↔ Prime p
-- Associates.le_of_mul_le_mul_left
theorem le_of_mul_le_mul_left (a b c : Associates α) (ha : a ≠ 0) : a * b ≤ a * c → b ≤ c
  
Arguments: {α : Type u_1} [CancelCommMonoidWithZero α] (a b c : Associates α) (ha : a ≠ 0)
Goal: a * b ≤ a * c → b ≤ c
-- Associates.one_or_eq_of_le_of_prime
theorem one_or_eq_of_le_of_prime {p m : Associates α} (hp : Prime p) (hle : m ≤ p) :
    m = 1 ∨ m = p 
Arguments: {α : Type u_1} [CancelCommMonoidWithZero α] {p m : Associates α} (hp : Prime p) (hle : m ≤ p)
Goal: m = 1 ∨ m = p
-- Associates.dvdNotUnit_iff_lt
theorem dvdNotUnit_iff_lt {a b : Associates α} : DvdNotUnit a b ↔ a < b 
Arguments: {α : Type u_1} [CancelCommMonoidWithZero α] {a b : Associates α}
Goal: DvdNotUnit a b ↔ a < b