ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- Polynomial.natDegree_map
@[simp]
theorem natDegree_map [Semiring S] [Nontrivial S] (f : R →+* S) :
    natDegree (p.map f) = natDegree p 
Arguments: {R : Type u} {S : Type v} [DivisionRing R] {p : R[X]} [Semiring S] [Nontrivial S] (f : R →+* S)
Goal: (Polynomial.map f p).natDegree = p.natDegree
-- Polynomial.leadingCoeff_map
@[simp]
theorem leadingCoeff_map [Semiring S] [Nontrivial S] (f : R →+* S) :
    leadingCoeff (p.map f) = f (leadingCoeff p) 
Arguments: {R : Type u} {S : Type v} [DivisionRing R] {p : R[X]} [Semiring S] [Nontrivial S] (f : R →+* S)
Goal: (Polynomial.map f p).leadingCoeff = f p.leadingCoeff
-- Polynomial.monic_map_iff
theorem monic_map_iff [Semiring S] [Nontrivial S] {f : R →+* S} {p : R[X]} :
    (p.map f).Monic ↔ p.Monic 
Arguments: {R : Type u} {S : Type v} [DivisionRing R] [Semiring S] [Nontrivial S] {f : R →+* S} {p : R[X]}
Goal: (Polynomial.map f p).Monic ↔ p.Monic
-- Polynomial.isUnit_iff_degree_eq_zero
theorem isUnit_iff_degree_eq_zero : IsUnit p ↔ degree p = 0 
Arguments: {R : Type u} [Field R] {p : R[X]}
Goal: IsUnit p ↔ p.degree = 0
-- _private.Mathlib.Algebra.Polynomial.FieldDivision.0.Polynomial.quotient_mul_add_remainder_eq_aux
private theorem quotient_mul_add_remainder_eq_aux (p q : R[X]) : q * div p q + mod p q = p 
Arguments: {R : Type u} [Field R] (p q : R[X])
Goal: q * p.div q + p.mod q = p
-- _private.Mathlib.Algebra.Polynomial.FieldDivision.0.Polynomial.remainder_lt_aux
private theorem remainder_lt_aux (p : R[X]) (hq : q ≠ 0) : degree (mod p q) < degree q 
Arguments: {R : Type u} [Field R] {q : R[X]} (p : R[X]) (hq : q ≠ 0)
Goal: (p.mod q).degree < q.degree
-- Polynomial.div_def
theorem div_def : p / q = C (leadingCoeff q)⁻¹ * (p /ₘ (q * C (leadingCoeff q)⁻¹)) 
Arguments: {R : Type u} [Field R] {p q : R[X]}
Goal: p / q = Polynomial.C q.leadingCoeff⁻¹ * (p /ₘ (q * Polynomial.C q.leadingCoeff⁻¹))
-- Polynomial.mod_def
theorem mod_def : p % q = p %ₘ (q * C (leadingCoeff q)⁻¹) 
Arguments: {R : Type u} [Field R] {p q : R[X]}
Goal: p % q = p %ₘ (q * Polynomial.C q.leadingCoeff⁻¹)
-- Polynomial.modByMonic_eq_mod
theorem modByMonic_eq_mod (p : R[X]) (hq : Monic q) : p %ₘ q = p % q 
Arguments: {R : Type u} [Field R] {q : R[X]} (p : R[X]) (hq : q.Monic)
Goal: p %ₘ q = p % q
-- Polynomial.divByMonic_eq_div
theorem divByMonic_eq_div (p : R[X]) (hq : Monic q) : p /ₘ q = p / q 
Arguments: {R : Type u} [Field R] {q : R[X]} (p : R[X]) (hq : q.Monic)
Goal: p /ₘ q = p / q
-- Polynomial.mod_X_sub_C_eq_C_eval
theorem mod_X_sub_C_eq_C_eval (p : R[X]) (a : R) : p % (X - C a) = C (p.eval a) 
Arguments: {R : Type u} [Field R] (p : R[X]) (a : R)
Goal: p % (Polynomial.X - Polynomial.C a) = Polynomial.C (Polynomial.eval a p)
-- Polynomial.mul_div_eq_iff_isRoot
theorem mul_div_eq_iff_isRoot : (X - C a) * (p / (X - C a)) = p ↔ IsRoot p a 
Arguments: {R : Type u} {a : R} [Field R] {p : R[X]}
Goal: (Polynomial.X - Polynomial.C a) * (p / (Polynomial.X - Polynomial.C a)) = p ↔ p.IsRoot a
-- Polynomial.mod_eq_self_iff
theorem mod_eq_self_iff (hq0 : q ≠ 0) : p % q = p ↔ degree p < degree q 
Arguments: {R : Type u} [Field R] {p q : R[X]} (hq0 : q ≠ 0)
Goal: p % q = p ↔ p.degree < q.degree
-- Polynomial.div_eq_zero_iff
theorem div_eq_zero_iff (hq0 : q ≠ 0) : p / q = 0 ↔ degree p < degree q 
Arguments: {R : Type u} [Field R] {p q : R[X]} (hq0 : q ≠ 0)
Goal: p / q = 0 ↔ p.degree < q.degree
-- Polynomial.degree_add_div
theorem degree_add_div (hq0 : q ≠ 0) (hpq : degree q ≤ degree p) :
    degree q + degree (p / q) = degree p 
Arguments: {R : Type u} [Field R] {p q : R[X]} (hq0 : q ≠ 0) (hpq : q.degree ≤ p.degree)
Goal: q.degree + (p / q).degree = p.degree
-- Polynomial.degree_div_le
theorem degree_div_le (p q : R[X]) : degree (p / q) ≤ degree p 
Arguments: {R : Type u} [Field R] (p q : R[X])
Goal: (p / q).degree ≤ p.degree
-- Polynomial.degree_div_lt
theorem degree_div_lt (hp : p ≠ 0) (hq : 0 < degree q) : degree (p / q) < degree p 
Arguments: {R : Type u} [Field R] {p q : R[X]} (hp : p ≠ 0) (hq : 0 < q.degree)
Goal: (p / q).degree < p.degree
-- Polynomial.isUnit_map
theorem isUnit_map [Field k] (f : R →+* k) : IsUnit (p.map f) ↔ IsUnit p 
Arguments: {R : Type u} {k : Type y} [Field R] {p : R[X]} [Field k] (f : R →+* k)
Goal: IsUnit (Polynomial.map f p) ↔ IsUnit p
-- Polynomial.map_div
theorem map_div [Field k] (f : R →+* k) : (p / q).map f = p.map f / q.map f 
Arguments: {R : Type u} {k : Type y} [Field R] {p q : R[X]} [Field k] (f : R →+* k)
Goal: Polynomial.map f (p / q) = Polynomial.map f p / Polynomial.map f q
-- Polynomial.map_mod
theorem map_mod [Field k] (f : R →+* k) : (p % q).map f = p.map f % q.map f 
Arguments: {R : Type u} {k : Type y} [Field R] {p q : R[X]} [Field k] (f : R →+* k)
Goal: Polynomial.map f (p % q) = Polynomial.map f p % Polynomial.map f q
-- Polynomial.gcd_map
theorem gcd_map [Field k] [DecidableEq R] [DecidableEq k] (f : R →+* k) :
    gcd (p.map f) (q.map f) = (gcd p q).map f 
Arguments: {R : Type u} {k : Type y} [Field R] {p q : R[X]} [Field k] [DecidableEq R] [DecidableEq k] (f : R →+* k)
Goal: EuclideanDomain.gcd (Polynomial.map f p) (Polynomial.map f q) = Polynomial.map f (EuclideanDomain.gcd p q)
-- Polynomial.eval₂_gcd_eq_zero
theorem eval₂_gcd_eq_zero [CommSemiring k] [DecidableEq R]
    {ϕ : R →+* k} {f g : R[X]} {α : k} (hf : f.eval₂ ϕ α = 0)
    (hg : g.eval₂ ϕ α = 0) : (EuclideanDomain.gcd f g).eval₂ ϕ α = 0 
Arguments: {R : Type u} {k : Type y} [Field R] [CommSemiring k] [DecidableEq R] {ϕ : R →+* k} {f g : R[X]} {α : k} (hf : Polynomial.eval₂ ϕ α f = 0) (hg : Polynomial.eval₂ ϕ α g = 0)
Goal: Polynomial.eval₂ ϕ α (EuclideanDomain.gcd f g) = 0
-- Polynomial.eval_gcd_eq_zero
theorem eval_gcd_eq_zero [DecidableEq R] {f g : R[X]} {α : R}
    (hf : f.eval α = 0) (hg : g.eval α = 0) : (EuclideanDomain.gcd f g).eval α = 0 
Arguments: {R : Type u} [Field R] [DecidableEq R] {f g : R[X]} {α : R} (hf : Polynomial.eval α f = 0) (hg : Polynomial.eval α g = 0)
Goal: Polynomial.eval α (EuclideanDomain.gcd f g) = 0
-- Polynomial.root_left_of_root_gcd
theorem root_left_of_root_gcd [CommSemiring k] [DecidableEq R] {ϕ : R →+* k} {f g : R[X]} {α : k}
    (hα : (EuclideanDomain.gcd f g).eval₂ ϕ α = 0) : f.eval₂ ϕ α = 0 
Arguments: {R : Type u} {k : Type y} [Field R] [CommSemiring k] [DecidableEq R] {ϕ : R →+* k} {f g : R[X]} {α : k} (hα : Polynomial.eval₂ ϕ α (EuclideanDomain.gcd f g) = 0)
Goal: Polynomial.eval₂ ϕ α f = 0
-- Polynomial.root_right_of_root_gcd
theorem root_right_of_root_gcd [CommSemiring k] [DecidableEq R] {ϕ : R →+* k} {f g : R[X]} {α : k}
    (hα : (EuclideanDomain.gcd f g).eval₂ ϕ α = 0) : g.eval₂ ϕ α = 0 
Arguments: {R : Type u} {k : Type y} [Field R] [CommSemiring k] [DecidableEq R] {ϕ : R →+* k} {f g : R[X]} {α : k} (hα : Polynomial.eval₂ ϕ α (EuclideanDomain.gcd f g) = 0)
Goal: Polynomial.eval₂ ϕ α g = 0
-- Polynomial.root_gcd_iff_root_left_right
theorem root_gcd_iff_root_left_right [CommSemiring k] [DecidableEq R]
    {ϕ : R →+* k} {f g : R[X]} {α : k} :
    (EuclideanDomain.gcd f g).eval₂ ϕ α = 0 ↔ f.eval₂ ϕ α = 0 ∧ g.eval₂ ϕ α = 0 
Arguments: {R : Type u} {k : Type y} [Field R] [CommSemiring k] [DecidableEq R] {ϕ : R →+* k} {f g : R[X]} {α : k}
Goal: Polynomial.eval₂ ϕ α (EuclideanDomain.gcd f g) = 0 ↔ Polynomial.eval₂ ϕ α f = 0 ∧ Polynomial.eval₂ ϕ α g = 0
-- Polynomial.isRoot_gcd_iff_isRoot_left_right
theorem isRoot_gcd_iff_isRoot_left_right [DecidableEq R] {f g : R[X]} {α : R} :
    (EuclideanDomain.gcd f g).IsRoot α ↔ f.IsRoot α ∧ g.IsRoot α 
Arguments: {R : Type u} [Field R] [DecidableEq R] {f g : R[X]} {α : R}
Goal: (EuclideanDomain.gcd f g).IsRoot α ↔ f.IsRoot α ∧ g.IsRoot α
-- Polynomial.isCoprime_map
theorem isCoprime_map [Field k] (f : R →+* k) : IsCoprime (p.map f) (q.map f) ↔ IsCoprime p q 
Arguments: {R : Type u} {k : Type y} [Field R] {p q : R[X]} [Field k] (f : R →+* k)
Goal: IsCoprime (Polynomial.map f p) (Polynomial.map f q) ↔ IsCoprime p q
-- Polynomial.mem_roots_map
theorem mem_roots_map [CommRing k] [IsDomain k] {f : R →+* k} {x : k} (hp : p ≠ 0) :
    x ∈ (p.map f).roots ↔ p.eval₂ f x = 0 
Arguments: {R : Type u} {k : Type y} [Field R] {p : R[X]} [CommRing k] [IsDomain k] {f : R →+* k} {x : k} (hp : p ≠ 0)
Goal: x ∈ (Polynomial.map f p).roots ↔ Polynomial.eval₂ f x p = 0
-- Polynomial.rootSet_monomial
theorem rootSet_monomial [CommRing S] [IsDomain S] [Algebra R S] {n : ℕ} (hn : n ≠ 0) {a : R}
    (ha : a ≠ 0) : (monomial n a).rootSet S = {0} 
Arguments: {R : Type u} {S : Type v} [Field R] [CommRing S] [IsDomain S] [Algebra R S] {n : ℕ} (hn : n ≠ 0) {a : R} (ha : a ≠ 0)
Goal: ((Polynomial.monomial n) a).rootSet S = {0}
-- Polynomial.rootSet_C_mul_X_pow
theorem rootSet_C_mul_X_pow [CommRing S] [IsDomain S] [Algebra R S] {n : ℕ} (hn : n ≠ 0) {a : R}
    (ha : a ≠ 0) : rootSet (C a * X ^ n) S = {0} 
Arguments: {R : Type u} {S : Type v} [Field R] [CommRing S] [IsDomain S] [Algebra R S] {n : ℕ} (hn : n ≠ 0) {a : R} (ha : a ≠ 0)
Goal: (Polynomial.C a * Polynomial.X ^ n).rootSet S = {0}
-- Polynomial.rootSet_X_pow
theorem rootSet_X_pow [CommRing S] [IsDomain S] [Algebra R S] {n : ℕ} (hn : n ≠ 0) :
    (X ^ n : R[X]).rootSet S = {0} 
Arguments: {R : Type u} {S : Type v} [Field R] [CommRing S] [IsDomain S] [Algebra R S] {n : ℕ} (hn : n ≠ 0)
Goal: (Polynomial.X ^ n).rootSet S = {0}
-- Polynomial.rootSet_prod
theorem rootSet_prod [CommRing S] [IsDomain S] [Algebra R S] {ι : Type*} (f : ι → R[X])
    (s : Finset ι) (h : s.prod f ≠ 0) : (s.prod f).rootSet S = ⋃ i ∈ s, (f i).rootSet S 
Arguments: {R : Type u} {S : Type v} [Field R] [CommRing S] [IsDomain S] [Algebra R S] {ι : Type u_1} (f : ι → R[X]) (s : Finset ι) (h : s.prod f ≠ 0)
Goal: (s.prod f).rootSet S = ⋃ i ∈ s, (f i).rootSet S
-- Polynomial.exists_root_of_degree_eq_one
theorem exists_root_of_degree_eq_one (h : degree p = 1) : ∃ x, IsRoot p x 
Arguments: {R : Type u} [Field R] {p : R[X]} (h : p.degree = 1)
Goal: ∃ x, p.IsRoot x
-- Polynomial.coeff_inv_units
theorem coeff_inv_units (u : R[X]ˣ) (n : ℕ) : ((↑u : R[X]).coeff n)⁻¹ = (↑u⁻¹ : R[X]).coeff n 
Arguments: {R : Type u} [Field R] (u : R[X]ˣ) (n : ℕ)
Goal: ((↑u).coeff n)⁻¹ = (↑u⁻¹).coeff n
-- Polynomial.monic_normalize
theorem monic_normalize [DecidableEq R] (hp0 : p ≠ 0) : Monic (normalize p) 
Arguments: {R : Type u} [Field R] {p : R[X]} [DecidableEq R] (hp0 : p ≠ 0)
Goal: (normalize p).Monic
-- Polynomial.leadingCoeff_div
theorem leadingCoeff_div (hpq : q.degree ≤ p.degree) :
    (p / q).leadingCoeff = p.leadingCoeff / q.leadingCoeff 
Arguments: {R : Type u} [Field R] {p q : R[X]} (hpq : q.degree ≤ p.degree)
Goal: (p / q).leadingCoeff = p.leadingCoeff / q.leadingCoeff
-- Polynomial.div_C_mul
theorem div_C_mul : p / (C a * q) = C a⁻¹ * (p / q) 
Arguments: {R : Type u} {a : R} [Field R] {p q : R[X]}
Goal: p / (Polynomial.C a * q) = Polynomial.C a⁻¹ * (p / q)
-- Polynomial.C_mul_dvd
theorem C_mul_dvd (ha : a ≠ 0) : C a * p ∣ q ↔ p ∣ q 
Arguments: {R : Type u} {a : R} [Field R] {p q : R[X]} (ha : a ≠ 0)
Goal: Polynomial.C a * p ∣ q ↔ p ∣ q
-- Polynomial.dvd_C_mul
theorem dvd_C_mul (ha : a ≠ 0) : p ∣ Polynomial.C a * q ↔ p ∣ q 
Arguments: {R : Type u} {a : R} [Field R] {p q : R[X]} (ha : a ≠ 0)
Goal: p ∣ Polynomial.C a * q ↔ p ∣ q
-- Polynomial.coe_normUnit_of_ne_zero
theorem coe_normUnit_of_ne_zero [DecidableEq R] (hp : p ≠ 0) :
    (normUnit p : R[X]) = C p.leadingCoeff⁻¹ 
Arguments: {R : Type u} [Field R] {p : R[X]} [DecidableEq R] (hp : p ≠ 0)
Goal: ↑(normUnit p) = Polynomial.C p.leadingCoeff⁻¹
-- Polynomial.normalize_monic
theorem normalize_monic [DecidableEq R] (h : Monic p) : normalize p = p 
Arguments: {R : Type u} [Field R] {p : R[X]} [DecidableEq R] (h : p.Monic)
Goal: normalize p = p
-- Polynomial.map_dvd_map'
theorem map_dvd_map' [Field k] (f : R →+* k) {x y : R[X]} : x.map f ∣ y.map f ↔ x ∣ y 
Arguments: {R : Type u} {k : Type y} [Field R] [Field k] (f : R →+* k) {x y : R[X]}
Goal: Polynomial.map f x ∣ Polynomial.map f y ↔ x ∣ y
-- Polynomial.degree_normalize
theorem degree_normalize [DecidableEq R] : degree (normalize p) = degree p 
Arguments: {R : Type u} [Field R] {p : R[X]} [DecidableEq R]
Goal: (normalize p).degree = p.degree
-- Polynomial.prime_of_degree_eq_one
theorem prime_of_degree_eq_one (hp1 : degree p = 1) : Prime p 
Arguments: {R : Type u} [Field R] {p : R[X]} (hp1 : p.degree = 1)
Goal: Prime p
-- Polynomial.irreducible_of_degree_eq_one
theorem irreducible_of_degree_eq_one (hp1 : degree p = 1) : Irreducible p 
Arguments: {R : Type u} [Field R] {p : R[X]} (hp1 : p.degree = 1)
Goal: Irreducible p
-- Polynomial.not_irreducible_C
theorem not_irreducible_C (x : R) : ¬Irreducible (C x) 
Arguments: {R : Type u} [Field R] (x : R)
Goal: ¬Irreducible (Polynomial.C x)
-- Polynomial.degree_pos_of_irreducible
theorem degree_pos_of_irreducible (hp : Irreducible p) : 0 < p.degree 
Arguments: {R : Type u} [Field R] {p : R[X]} (hp : Irreducible p)
Goal: 0 < p.degree
-- Polynomial.X_sub_C_mul_divByMonic_eq_sub_modByMonic
theorem X_sub_C_mul_divByMonic_eq_sub_modByMonic {K : Type*} [Field K] (f : K[X]) (a : K) :
    (X - C a) * (f /ₘ (X - C a)) = f - f %ₘ (X - C a) 
Arguments: {K : Type u_1} [Field K] (f : K[X]) (a : K)
Goal: (Polynomial.X - Polynomial.C a) * (f /ₘ (Polynomial.X - Polynomial.C a)) = f - f %ₘ (Polynomial.X - Polynomial.C a)
-- Polynomial.divByMonic_add_X_sub_C_mul_derivate_divByMonic_eq_derivative
theorem divByMonic_add_X_sub_C_mul_derivate_divByMonic_eq_derivative
    {K : Type*} [Field K] (f : K[X]) (a : K) :
    f /ₘ (X - C a) + (X - C a) * derivative (f /ₘ (X - C a)) = derivative f 
Arguments: {K : Type u_1} [Field K] (f : K[X]) (a : K)
Goal: f /ₘ (Polynomial.X - Polynomial.C a) +
    (Polynomial.X - Polynomial.C a) * Polynomial.derivative (f /ₘ (Polynomial.X - Polynomial.C a)) =
  Polynomial.derivative f
-- Polynomial.X_sub_C_dvd_derivative_of_X_sub_C_dvd_divByMonic
theorem X_sub_C_dvd_derivative_of_X_sub_C_dvd_divByMonic {K : Type*} [Field K] (f : K[X]) {a : K}
    (hf : (X - C a) ∣ f /ₘ (X - C a)) : X - C a ∣ derivative f 
Arguments: {K : Type u_1} [Field K] (f : K[X]) {a : K} (hf : Polynomial.X - Polynomial.C a ∣ f /ₘ (Polynomial.X - Polynomial.C a))
Goal: Polynomial.X - Polynomial.C a ∣ Polynomial.derivative f
-- Polynomial.isCoprime_of_is_root_of_eval_derivative_ne_zero
theorem isCoprime_of_is_root_of_eval_derivative_ne_zero {K : Type*} [Field K] (f : K[X]) (a : K)
    (hf' : f.derivative.eval a ≠ 0) : IsCoprime (X - C a : K[X]) (f /ₘ (X - C a)) 
Arguments: {K : Type u_1} [Field K] (f : K[X]) (a : K) (hf' : Polynomial.eval a (Polynomial.derivative f) ≠ 0)
Goal: IsCoprime (Polynomial.X - Polynomial.C a) (f /ₘ (Polynomial.X - Polynomial.C a))
-- Polynomial.irreducible_iff_degree_lt
theorem irreducible_iff_degree_lt (p : R[X]) (hp0 : p ≠ 0) (hpu : ¬ IsUnit p) :
    Irreducible p ↔ ∀ q, q.degree ≤ ↑(natDegree p / 2) → q ∣ p → IsUnit q 
Arguments: {R : Type u} [Field R] (p : R[X]) (hp0 : p ≠ 0) (hpu : ¬IsUnit p)
Goal: Irreducible p ↔ ∀ (q : R[X]), q.degree ≤ ↑(p.natDegree / 2) → q ∣ p → IsUnit q
-- Polynomial.irreducible_iff_lt_natDegree_lt
theorem irreducible_iff_lt_natDegree_lt {p : R[X]} (hp0 : p ≠ 0) (hpu : ¬ IsUnit p) :
    Irreducible p ↔ ∀ q, Monic q → natDegree q ∈ Finset.Ioc 0 (natDegree p / 2) → ¬ q ∣ p 
Arguments: {R : Type u} [Field R] {p : R[X]} (hp0 : p ≠ 0) (hpu : ¬IsUnit p)
Goal: Irreducible p ↔ ∀ (q : R[X]), q.Monic → q.natDegree ∈ Finset.Ioc 0 (p.natDegree / 2) → ¬q ∣ p
-- Irreducible.natDegree_pos
theorem Irreducible.natDegree_pos {F : Type*} [Field F] {f : F[X]} (h : Irreducible f) :
    0 < f.natDegree 
Arguments: {F : Type u_1} [Field F] {f : F[X]} (h : Irreducible f)
Goal: 0 < f.natDegree
-- NNRat.cast_nonneg
lemma NNRat.cast_nonneg (q : ℚ≥0) : 0 ≤ (q : α) 
Arguments: {α : Type u_1} [LinearOrderedSemifield α] (q : ℚ≥0)
Goal: 0 ≤ ↑q
-- nnqsmul_nonneg
lemma nnqsmul_nonneg (q : ℚ≥0) (ha : 0 ≤ a) : 0 ≤ q • a 
Arguments: {α : Type u_1} [LinearOrderedSemifield α] {a : α} (q : ℚ≥0) (ha : 0 ≤ a)
Goal: 0 ≤ q • a
-- Nonneg.coe_inv
@[simp, norm_cast]
protected theorem coe_inv (a : { x : α // 0 ≤ x }) : ((a⁻¹ : { x : α // 0 ≤ x }) : α) = (a : α)⁻¹ 
Arguments: {α : Type u_1} [LinearOrderedSemifield α] (a : { x // 0 ≤ x })
Goal: ↑a⁻¹ = (↑a)⁻¹
-- Nonneg.inv_mk
@[simp]
theorem inv_mk (hx : 0 ≤ x) :
    (⟨x, hx⟩ : { x : α // 0 ≤ x })⁻¹ = ⟨x⁻¹, inv_nonneg (α := α) |>.2 hx⟩ 
Arguments: {α : Type u_1} [LinearOrderedSemifield α] {x : α} (hx : 0 ≤ x)
Goal: ⟨x, hx⟩⁻¹ = ⟨x⁻¹, ⋯⟩
-- Nonneg.coe_div
@[simp, norm_cast]
protected theorem coe_div (a b : { x : α // 0 ≤ x }) : ((a / b : { x : α // 0 ≤ x }) : α) = a / b 
Arguments: {α : Type u_1} [LinearOrderedSemifield α] (a b : { x // 0 ≤ x })
Goal: ↑(a / b) = ↑a / ↑b
-- Nonneg.mk_div_mk
@[simp]
theorem mk_div_mk (hx : 0 ≤ x) (hy : 0 ≤ y) :
    (⟨x, hx⟩ : { x : α // 0 ≤ x }) / ⟨y, hy⟩ = ⟨x / y, div_nonneg hx hy⟩ 
Arguments: {α : Type u_1} [LinearOrderedSemifield α] {x y : α} (hx : 0 ≤ x) (hy : 0 ≤ y)
Goal: ⟨x, hx⟩ / ⟨y, hy⟩ = ⟨x / y, ⋯⟩
-- Nonneg.coe_zpow
@[simp, norm_cast]
protected theorem coe_zpow (a : { x : α // 0 ≤ x }) (n : ℤ) :
    ((a ^ n : { x : α // 0 ≤ x }) : α) = (a : α) ^ n 
Arguments: {α : Type u_1} [LinearOrderedSemifield α] (a : { x // 0 ≤ x }) (n : ℤ)
Goal: ↑(a ^ n) = ↑a ^ n
-- Nonneg.mk_zpow
@[simp]
theorem mk_zpow (hx : 0 ≤ x) (n : ℤ) :
    (⟨x, hx⟩ : { x : α // 0 ≤ x }) ^ n = ⟨x ^ n, zpow_nonneg hx n⟩ 
Arguments: {α : Type u_1} [LinearOrderedSemifield α] {x : α} (hx : 0 ≤ x) (n : ℤ)
Goal: ⟨x, hx⟩ ^ n = ⟨x ^ n, ⋯⟩
-- Nonneg.coe_nnratCast
@[simp, norm_cast] lemma coe_nnratCast (q : ℚ≥0) : (q : {x : α // 0 ≤ x}) = (q : α) 
Arguments: {α : Type u_1} [LinearOrderedSemifield α] (q : ℚ≥0)
Goal: ↑↑q = ↑q
-- Nonneg.mk_nnratCast
@[simp] lemma mk_nnratCast (q : ℚ≥0) : (⟨q, q.cast_nonneg⟩ : {x : α // 0 ≤ x}) = q 
Arguments: {α : Type u_1} [LinearOrderedSemifield α] (q : ℚ≥0)
Goal: ⟨↑q, ⋯⟩ = ↑q
-- Nonneg.coe_nnqsmul
@[simp, norm_cast] lemma coe_nnqsmul (q : ℚ≥0) (a : {x : α // 0 ≤ x}) :
    ↑(q • a) = (q • a : α) 
Arguments: {α : Type u_1} [LinearOrderedSemifield α] (q : ℚ≥0) (a : { x // 0 ≤ x })
Goal: ↑(q • a) = q • ↑a
-- Nonneg.mk_nnqsmul
@[simp] lemma mk_nnqsmul (q : ℚ≥0) (a : α) (ha : 0 ≤ a) :
    (⟨q • a, by rw [NNRat.smul_def]; exact mul_nonneg q.cast_nonneg ha⟩ : {x : α // 0 ≤ x}) =
      q • a 
Arguments: {α : Type u_1} [LinearOrderedSemifield α] (q : ℚ≥0) (a : α) (ha : 0 ≤ a)
Goal: ↑⟨q • a, ⋯⟩ = q • a
-- WithTop.coe_sub
@[simp, norm_cast]
theorem coe_sub {a b : α} : (↑(a - b) : WithTop α) = ↑a - ↑b 
Arguments: {α : Type u_1} [Sub α] [Bot α] {a b : α}
Goal: ↑(a - b) = ↑a - ↑b
-- WithTop.top_sub_coe
@[simp]
theorem top_sub_coe {a : α} : (⊤ : WithTop α) - a = ⊤ 
Arguments: {α : Type u_1} [Sub α] [Bot α] {a : α}
Goal: ⊤ - ↑a = ⊤
-- WithTop.sub_top
@[simp]
theorem sub_top {a : WithTop α} : a - ⊤ = (⊥ : α) 
Arguments: {α : Type u_1} [Sub α] [Bot α] {a : WithTop α}
Goal: a - ⊤ = ↑⊥
-- WithTop.sub_eq_top_iff
@[simp] theorem sub_eq_top_iff {a b : WithTop α} : a - b = ⊤ ↔ a = ⊤ ∧ b ≠ ⊤ 
Arguments: {α : Type u_1} [Sub α] [Bot α] {a b : WithTop α}
Goal: a - b = ⊤ ↔ a = ⊤ ∧ b ≠ ⊤
-- WithTop.map_sub
theorem map_sub [Sub β] [Bot β] {f : α → β} (h : ∀ x y, f (x - y) = f x - f y) (h₀ : f ⊥ = ⊥) :
    ∀ x y : WithTop α, (x - y).map f = x.map f - y.map f
  
Arguments: {α : Type u_1} {β : Type u_2} [Sub α] [Bot α] [Sub β] [Bot β] {f : α → β} (h : ∀ (x y : α), f (x - y) = f x - f y) (h₀ : f ⊥ = ⊥) (x y : WithTop α)
Goal: WithTop.map f (x - y) = WithTop.map f x - WithTop.map f y
-- smul_lowerBounds_subset_lowerBounds_smul_of_nonneg
lemma smul_lowerBounds_subset_lowerBounds_smul_of_nonneg (ha : 0 ≤ a) :
    a • lowerBounds s ⊆ lowerBounds (a • s) 
Arguments: {α : Type u_1} {β : Type u_2} [SMul α β] [Preorder α] [Preorder β] [Zero α] [PosSMulMono α β] {a : α} {s : Set β} (ha : 0 ≤ a)
Goal: a • lowerBounds s ⊆ lowerBounds (a • s)
-- smul_upperBounds_subset_upperBounds_smul_of_nonneg
lemma smul_upperBounds_subset_upperBounds_smul_of_nonneg (ha : 0 ≤ a) :
    a • upperBounds s ⊆ upperBounds (a • s) 
Arguments: {α : Type u_1} {β : Type u_2} [SMul α β] [Preorder α] [Preorder β] [Zero α] [PosSMulMono α β] {a : α} {s : Set β} (ha : 0 ≤ a)
Goal: a • upperBounds s ⊆ upperBounds (a • s)
-- BddBelow.smul_of_nonneg
lemma BddBelow.smul_of_nonneg (hs : BddBelow s) (ha : 0 ≤ a) : BddBelow (a • s) 
Arguments: {α : Type u_1} {β : Type u_2} [SMul α β] [Preorder α] [Preorder β] [Zero α] [PosSMulMono α β] {a : α} {s : Set β} (hs : BddBelow s) (ha : 0 ≤ a)
Goal: BddBelow (a • s)
-- BddAbove.smul_of_nonneg
lemma BddAbove.smul_of_nonneg (hs : BddAbove s) (ha : 0 ≤ a) : BddAbove (a • s) 
Arguments: {α : Type u_1} {β : Type u_2} [SMul α β] [Preorder α] [Preorder β] [Zero α] [PosSMulMono α β] {a : α} {s : Set β} (hs : BddAbove s) (ha : 0 ≤ a)
Goal: BddAbove (a • s)
-- lowerBounds_smul_of_pos
@[simp] lemma lowerBounds_smul_of_pos (ha : 0 < a) : lowerBounds (a • s) = a • lowerBounds s 
Arguments: {α : Type u_1} {β : Type u_2} [Preorder α] [Preorder β] [GroupWithZero α] [Zero β] [MulActionWithZero α β] [PosSMulMono α β] [PosSMulReflectLE α β] {s : Set β} {a : α} (ha : 0 < a)
Goal: lowerBounds (a • s) = a • lowerBounds s
-- upperBounds_smul_of_pos
@[simp] lemma upperBounds_smul_of_pos (ha : 0 < a) : upperBounds (a • s) = a • upperBounds s 
Arguments: {α : Type u_1} {β : Type u_2} [Preorder α] [Preorder β] [GroupWithZero α] [Zero β] [MulActionWithZero α β] [PosSMulMono α β] [PosSMulReflectLE α β] {s : Set β} {a : α} (ha : 0 < a)
Goal: upperBounds (a • s) = a • upperBounds s
-- bddBelow_smul_iff_of_pos
@[simp] lemma bddBelow_smul_iff_of_pos (ha : 0 < a) : BddBelow (a • s) ↔ BddBelow s 
Arguments: {α : Type u_1} {β : Type u_2} [Preorder α] [Preorder β] [GroupWithZero α] [Zero β] [MulActionWithZero α β] [PosSMulMono α β] [PosSMulReflectLE α β] {s : Set β} {a : α} (ha : 0 < a)
Goal: BddBelow (a • s) ↔ BddBelow s
-- bddAbove_smul_iff_of_pos
@[simp] lemma bddAbove_smul_iff_of_pos (ha : 0 < a) : BddAbove (a • s) ↔ BddAbove s 
Arguments: {α : Type u_1} {β : Type u_2} [Preorder α] [Preorder β] [GroupWithZero α] [Zero β] [MulActionWithZero α β] [PosSMulMono α β] [PosSMulReflectLE α β] {s : Set β} {a : α} (ha : 0 < a)
Goal: BddAbove (a • s) ↔ BddAbove s
-- smul_lowerBounds_subset_upperBounds_smul
lemma smul_lowerBounds_subset_upperBounds_smul (ha : a ≤ 0) :
    a • lowerBounds s ⊆ upperBounds (a • s) 
Arguments: {α : Type u_1} {β : Type u_2} [OrderedRing α] [OrderedAddCommGroup β] [Module α β] [PosSMulMono α β] {s : Set β} {a : α} (ha : a ≤ 0)
Goal: a • lowerBounds s ⊆ upperBounds (a • s)
-- smul_upperBounds_subset_lowerBounds_smul
lemma smul_upperBounds_subset_lowerBounds_smul (ha : a ≤ 0) :
    a • upperBounds s ⊆ lowerBounds (a • s) 
Arguments: {α : Type u_1} {β : Type u_2} [OrderedRing α] [OrderedAddCommGroup β] [Module α β] [PosSMulMono α β] {s : Set β} {a : α} (ha : a ≤ 0)
Goal: a • upperBounds s ⊆ lowerBounds (a • s)
-- BddBelow.smul_of_nonpos
lemma BddBelow.smul_of_nonpos (ha : a ≤ 0) (hs : BddBelow s) : BddAbove (a • s) 
Arguments: {α : Type u_1} {β : Type u_2} [OrderedRing α] [OrderedAddCommGroup β] [Module α β] [PosSMulMono α β] {s : Set β} {a : α} (ha : a ≤ 0) (hs : BddBelow s)
Goal: BddAbove (a • s)
-- BddAbove.smul_of_nonpos
lemma BddAbove.smul_of_nonpos (ha : a ≤ 0) (hs : BddAbove s) : BddBelow (a • s) 
Arguments: {α : Type u_1} {β : Type u_2} [OrderedRing α] [OrderedAddCommGroup β] [Module α β] [PosSMulMono α β] {s : Set β} {a : α} (ha : a ≤ 0) (hs : BddAbove s)
Goal: BddBelow (a • s)
-- lowerBounds_smul_of_neg
@[simp] lemma lowerBounds_smul_of_neg (ha : a < 0) : lowerBounds (a • s) = a • upperBounds s 
Arguments: {α : Type u_1} {β : Type u_2} [LinearOrderedField α] [OrderedAddCommGroup β] [Module α β] [PosSMulMono α β] {s : Set β} {a : α} (ha : a < 0)
Goal: lowerBounds (a • s) = a • upperBounds s
-- upperBounds_smul_of_neg
@[simp] lemma upperBounds_smul_of_neg (ha : a < 0) : upperBounds (a • s) = a • lowerBounds s 
Arguments: {α : Type u_1} {β : Type u_2} [LinearOrderedField α] [OrderedAddCommGroup β] [Module α β] [PosSMulMono α β] {s : Set β} {a : α} (ha : a < 0)
Goal: upperBounds (a • s) = a • lowerBounds s
-- bddBelow_smul_iff_of_neg
@[simp] lemma bddBelow_smul_iff_of_neg (ha : a < 0) : BddBelow (a • s) ↔ BddAbove s 
Arguments: {α : Type u_1} {β : Type u_2} [LinearOrderedField α] [OrderedAddCommGroup β] [Module α β] [PosSMulMono α β] {s : Set β} {a : α} (ha : a < 0)
Goal: BddBelow (a • s) ↔ BddAbove s