ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- List.dProdIndex_cons
@[simp]
theorem List.dProdIndex_cons (a : α) (l : List α) (fι : α → ι) :
    (a :: l).dProdIndex fι = fι a + l.dProdIndex fι 
Arguments: {ι : Type u_1} {α : Type u_2} [AddMonoid ι] (a : α) (l : List α) (fι : α → ι)
Goal: (a :: l).dProdIndex fι = fι a + l.dProdIndex fι
-- List.dProdIndex_eq_map_sum
theorem List.dProdIndex_eq_map_sum (l : List α) (fι : α → ι) :
    l.dProdIndex fι = (l.map fι).sum 
Arguments: {ι : Type u_1} {α : Type u_2} [AddMonoid ι] (l : List α) (fι : α → ι)
Goal: l.dProdIndex fι = (List.map fι l).sum
-- List.dProd_nil
@[simp]
theorem List.dProd_nil (fι : α → ι) (fA : ∀ a, A (fι a)) :
    (List.nil : List α).dProd fι fA = GradedMonoid.GOne.one 
Arguments: {ι : Type u_1} {α : Type u_2} {A : ι → Type u_3} [AddMonoid ι] [GradedMonoid.GMonoid A] (fι : α → ι) (fA : (a : α) → A (fι a))
Goal: [].dProd fι fA = GradedMonoid.GOne.one
-- List.dProd_cons
@[simp]
theorem List.dProd_cons (fι : α → ι) (fA : ∀ a, A (fι a)) (a : α) (l : List α) :
    (a :: l).dProd fι fA = (GradedMonoid.GMul.mul (fA a) (l.dProd fι fA) : _) 
Arguments: {ι : Type u_1} {α : Type u_2} {A : ι → Type u_3} [AddMonoid ι] [GradedMonoid.GMonoid A] (fι : α → ι) (fA : (a : α) → A (fι a)) (a : α) (l : List α)
Goal: (a :: l).dProd fι fA = GradedMonoid.GMul.mul (fA a) (l.dProd fι fA)
-- GradedMonoid.mk_list_dProd
theorem GradedMonoid.mk_list_dProd (l : List α) (fι : α → ι) (fA : ∀ a, A (fι a)) :
    GradedMonoid.mk _ (l.dProd fι fA) = (l.map fun a => GradedMonoid.mk (fι a) (fA a)).prod 
Arguments: {ι : Type u_1} {α : Type u_2} {A : ι → Type u_3} [AddMonoid ι] [GradedMonoid.GMonoid A] (l : List α) (fι : α → ι) (fA : (a : α) → A (fι a))
Goal: GradedMonoid.mk (l.dProdIndex fι) (l.dProd fι fA) = (List.map (fun a => GradedMonoid.mk (fι a) (fA a)) l).prod
-- GradedMonoid.list_prod_map_eq_dProd
theorem GradedMonoid.list_prod_map_eq_dProd (l : List α) (f : α → GradedMonoid A) :
    (l.map f).prod = GradedMonoid.mk _ (l.dProd (fun i => (f i).1) fun i => (f i).2) 
Arguments: {ι : Type u_1} {α : Type u_2} {A : ι → Type u_3} [AddMonoid ι] [GradedMonoid.GMonoid A] (l : List α) (f : α → GradedMonoid A)
Goal: (List.map f l).prod =
  GradedMonoid.mk (l.dProdIndex fun i => (f i).fst) (l.dProd (fun i => (f i).fst) fun i => (f i).snd)
-- GradedMonoid.list_prod_ofFn_eq_dProd
theorem GradedMonoid.list_prod_ofFn_eq_dProd {n : ℕ} (f : Fin n → GradedMonoid A) :
    (List.ofFn f).prod =
      GradedMonoid.mk _ ((List.finRange n).dProd (fun i => (f i).1) fun i => (f i).2) 
Arguments: {ι : Type u_1} {A : ι → Type u_3} [AddMonoid ι] [GradedMonoid.GMonoid A] {n : ℕ} (f : Fin n → GradedMonoid A)
Goal: (List.ofFn f).prod =
  GradedMonoid.mk ((List.finRange n).dProdIndex fun i => (f i).fst)
    ((List.finRange n).dProd (fun i => (f i).fst) fun i => (f i).snd)
-- One.gOne_one
@[simps one]
instance One.gOne [Zero ι] [One R] : GradedMonoid.GOne fun _ : ι => R 
Arguments: (ι : Type u_1) {R : Type u_2} [Zero ι] [One R]
Goal: GradedMonoid.GOne.one = 1
-- Mul.gMul_mul
@[simps mul]
instance Mul.gMul [Add ι] [Mul R] : GradedMonoid.GMul fun _ : ι => R 
Arguments: (ι : Type u_1) {R : Type u_2} [Add ι] [Mul R]
Goal: ∀ {i j : ι} (x y : R), GradedMonoid.GMul.mul x y = x * y
-- Monoid.gMonoid_gnpow
@[simps gnpow]
instance Monoid.gMonoid [AddMonoid ι] [Monoid R] : GradedMonoid.GMonoid fun _ : ι => R 
Arguments: (ι : Type u_1) {R : Type u_2} [AddMonoid ι] [Monoid R] (n : ℕ)
Goal: ∀ (x : ι) (a : R), GradedMonoid.GMonoid.gnpow n a = a ^ n
-- List.dProd_monoid
@[simp]
theorem List.dProd_monoid {α} [AddMonoid ι] [Monoid R] (l : List α) (fι : α → ι) (fA : α → R) :
    @List.dProd _ _ (fun _ : ι => R) _ _ l fι fA = (l.map fA).prod 
Arguments: (ι : Type u_1) {R : Type u_2} {α : Type u_3} [AddMonoid ι] [Monoid R] (l : List α) (fι : α → ι) (fA : α → R)
Goal: l.dProd fι fA = (List.map fA l).prod
-- SetLike.GradedOne.one_mem
class SetLike.GradedOne {S : Type*} [SetLike S R] [One R] [Zero ι] (A : ι → S) : Prop where
    one_mem : (1 : R) ∈ A 0
Arguments: {ι : Type u_1} {R : Type u_2} {S : Type u_3} [SetLike S R] [One R] [Zero ι] {A : ι → S} [self : SetLike.GradedOne A]
Goal: 1 ∈ A 0
-- SetLike.one_mem_graded
theorem SetLike.one_mem_graded {S : Type*} [SetLike S R] [One R] [Zero ι] (A : ι → S)
    [SetLike.GradedOne A] : (1 : R) ∈ A 0 
Arguments: {ι : Type u_1} {R : Type u_2} {S : Type u_3} [SetLike S R] [One R] [Zero ι] (A : ι → S) [SetLike.GradedOne A]
Goal: 1 ∈ A 0
-- SetLike.coe_gOne
@[simp]
theorem SetLike.coe_gOne {S : Type*} [SetLike S R] [One R] [Zero ι] (A : ι → S)
    [SetLike.GradedOne A] : ↑(@GradedMonoid.GOne.one _ (fun i => A i) _ _) = (1 : R) 
Arguments: {ι : Type u_1} {R : Type u_2} {S : Type u_3} [SetLike S R] [One R] [Zero ι] (A : ι → S) [SetLike.GradedOne A]
Goal: ↑GradedMonoid.GOne.one = 1
-- SetLike.GradedMul.mul_mem
class SetLike.GradedMul {S : Type*} [SetLike S R] [Mul R] [Add ι] (A : ι → S) : Prop where
    mul_mem : ∀ ⦃i j⦄ {gi gj}, gi ∈ A i → gj ∈ A j → gi * gj ∈ A (i + j)
Arguments: {ι : Type u_1} {R : Type u_2} {S : Type u_3} [SetLike S R] [Mul R] [Add ι] {A : ι → S} [self : SetLike.GradedMul A] ⦃i j : ι⦄ {gi gj : R}
Goal: gi ∈ A i → gj ∈ A j → gi * gj ∈ A (i + j)
-- SetLike.mul_mem_graded
theorem SetLike.mul_mem_graded {S : Type*} [SetLike S R] [Mul R] [Add ι] {A : ι → S}
    [SetLike.GradedMul A] ⦃i j⦄ {gi gj} (hi : gi ∈ A i) (hj : gj ∈ A j) : gi * gj ∈ A (i + j) 
Arguments: {ι : Type u_1} {R : Type u_2} {S : Type u_3} [SetLike S R] [Mul R] [Add ι] {A : ι → S} [SetLike.GradedMul A] ⦃i j : ι⦄ {gi gj : R} (hi : gi ∈ A i) (hj : gj ∈ A j)
Goal: gi * gj ∈ A (i + j)
-- SetLike.coe_gMul
@[simp,nolint simpNF]
theorem SetLike.coe_gMul {S : Type*} [SetLike S R] [Mul R] [Add ι] (A : ι → S)
    [SetLike.GradedMul A] {i j : ι} (x : A i) (y : A j) :
    ↑(@GradedMonoid.GMul.mul _ (fun i => A i) _ _ _ _ x y) = (x * y : R) 
Arguments: {ι : Type u_1} {R : Type u_2} {S : Type u_3} [SetLike S R] [Mul R] [Add ι] (A : ι → S) [SetLike.GradedMul A] {i j : ι} (x : ↥(A i)) (y : ↥(A j))
Goal: ↑(GradedMonoid.GMul.mul x y) = ↑x * ↑y
-- SetLike.GradeZero.submonoid_coe
@[simps]
def submonoid : Submonoid R 
Arguments: {ι : Type u_1} {R : Type u_2} {S : Type u_3} [SetLike S R] [Monoid R] [AddMonoid ι] (A : ι → S) [SetLike.GradedMonoid A]
Goal: ↑(SetLike.GradeZero.submonoid A) = ↑(A 0)
-- SetLike.GradeZero.coe_one
@[nolint simpNF, simp, norm_cast] theorem coe_one : ↑(1 : A 0) = (1 : R) 
Arguments: {ι : Type u_1} {R : Type u_2} {S : Type u_3} [SetLike S R] [Monoid R] [AddMonoid ι] {A : ι → S} [SetLike.GradedMonoid A]
Goal: ↑1 = 1
-- SetLike.GradeZero.coe_mul
@[nolint simpNF, simp, norm_cast] theorem coe_mul (a b : A 0) : ↑(a * b) = (↑a * ↑b : R) 
Arguments: {ι : Type u_1} {R : Type u_2} {S : Type u_3} [SetLike S R] [Monoid R] [AddMonoid ι] {A : ι → S} [SetLike.GradedMonoid A] (a b : ↥(A 0))
Goal: ↑(a * b) = ↑a * ↑b
-- SetLike.GradeZero.coe_pow
@[nolint simpNF, simp, norm_cast] theorem coe_pow (a : A 0) (n : ℕ) : ↑(a ^ n) = (↑a : R) ^ n 
Arguments: {ι : Type u_1} {R : Type u_2} {S : Type u_3} [SetLike S R] [Monoid R] [AddMonoid ι] {A : ι → S} [SetLike.GradedMonoid A] (a : ↥(A 0)) (n : ℕ)
Goal: ↑(a ^ n) = ↑a ^ n
-- SetLike.pow_mem_graded
theorem pow_mem_graded (n : ℕ) {r : R} {i : ι} (h : r ∈ A i) : r ^ n ∈ A (n • i) 
Arguments: {ι : Type u_1} {R : Type u_2} {S : Type u_3} [SetLike S R] [Monoid R] [AddMonoid ι] {A : ι → S} [SetLike.GradedMonoid A] (n : ℕ) {r : R} {i : ι} (h : r ∈ A i)
Goal: r ^ n ∈ A (n • i)
-- SetLike.list_prod_map_mem_graded
theorem list_prod_map_mem_graded {ι'} (l : List ι') (i : ι' → ι) (r : ι' → R)
    (h : ∀ j ∈ l, r j ∈ A (i j)) : (l.map r).prod ∈ A (l.map i).sum 
Arguments: {ι : Type u_1} {R : Type u_2} {S : Type u_3} [SetLike S R] [Monoid R] [AddMonoid ι] {A : ι → S} [SetLike.GradedMonoid A] {ι' : Type u_4} (l : List ι') (i : ι' → ι) (r : ι' → R) (h : ∀ j ∈ l, r j ∈ A (i j))
Goal: (List.map r l).prod ∈ A (List.map i l).sum
-- SetLike.list_prod_ofFn_mem_graded
theorem list_prod_ofFn_mem_graded {n} (i : Fin n → ι) (r : Fin n → R) (h : ∀ j, r j ∈ A (i j)) :
    (List.ofFn r).prod ∈ A (List.ofFn i).sum 
Arguments: {ι : Type u_1} {R : Type u_2} {S : Type u_3} [SetLike S R] [Monoid R] [AddMonoid ι] {A : ι → S} [SetLike.GradedMonoid A] {n : ℕ} (i : Fin n → ι) (r : Fin n → R) (h : ∀ (j : Fin n), r j ∈ A (i j))
Goal: (List.ofFn r).prod ∈ A (List.ofFn i).sum
-- SetLike.coe_gnpow
@[simp,nolint simpNF]
theorem SetLike.coe_gnpow {S : Type*} [SetLike S R] [Monoid R] [AddMonoid ι] (A : ι → S)
    [SetLike.GradedMonoid A] {i : ι} (x : A i) (n : ℕ) :
    ↑(@GradedMonoid.GMonoid.gnpow _ (fun i => A i) _ _ n _ x) = (x:R)^n 
Arguments: {ι : Type u_1} {R : Type u_2} {S : Type u_3} [SetLike S R] [Monoid R] [AddMonoid ι] (A : ι → S) [SetLike.GradedMonoid A] {i : ι} (x : ↥(A i)) (n : ℕ)
Goal: ↑(GradedMonoid.GMonoid.gnpow n x) = ↑x ^ n
-- SetLike.coe_list_dProd
@[simp,nolint simpNF]
theorem SetLike.coe_list_dProd (A : ι → S) [SetLike.GradedMonoid A] (fι : α → ι)
    (fA : ∀ a, A (fι a)) (l : List α) : ↑(@List.dProd _ _ (fun i => ↥(A i)) _ _ l fι fA)
    = (List.prod (l.map fun a => fA a) : R) 
Arguments: {ι : Type u_1} {R : Type u_2} {α : Type u_3} {S : Type u_4} [SetLike S R] [Monoid R] [AddMonoid ι] (A : ι → S) [SetLike.GradedMonoid A] (fι : α → ι) (fA : (a : α) → ↥(A (fι a))) (l : List α)
Goal: ↑(l.dProd fι fA) = (List.map (fun a => ↑(fA a)) l).prod
-- SetLike.list_dProd_eq
theorem SetLike.list_dProd_eq (A : ι → S) [SetLike.GradedMonoid A] (fι : α → ι) (fA : ∀ a, A (fι a))
    (l : List α) :
    (@List.dProd _ _ (fun i => ↥(A i)) _ _ l fι fA) =
      ⟨List.prod (l.map fun a => fA a),
        (l.dProdIndex_eq_map_sum fι).symm ▸
          list_prod_map_mem_graded l _ _ fun i _ => (fA i).prop⟩ 
Arguments: {ι : Type u_1} {R : Type u_2} {α : Type u_3} {S : Type u_4} [SetLike S R] [Monoid R] [AddMonoid ι] (A : ι → S) [SetLike.GradedMonoid A] (fι : α → ι) (fA : (a : α) → ↥(A (fι a))) (l : List α)
Goal: l.dProd fι fA = ⟨(List.map (fun a => ↑(fA a)) l).prod, ⋯⟩
-- SetLike.homogeneous_coe
@[simp]
theorem SetLike.homogeneous_coe {A : ι → S} {i} (x : A i) : SetLike.Homogeneous A (x : R) 
Arguments: {ι : Type u_1} {R : Type u_2} {S : Type u_3} [SetLike S R] {A : ι → S} {i : ι} (x : ↥(A i))
Goal: SetLike.Homogeneous A ↑x
-- SetLike.homogeneous_one
theorem SetLike.homogeneous_one [Zero ι] [One R] (A : ι → S) [SetLike.GradedOne A] :
    SetLike.Homogeneous A (1 : R) 
Arguments: {ι : Type u_1} {R : Type u_2} {S : Type u_3} [SetLike S R] [Zero ι] [One R] (A : ι → S) [SetLike.GradedOne A]
Goal: SetLike.Homogeneous A 1
-- SetLike.homogeneous_mul
theorem SetLike.homogeneous_mul [Add ι] [Mul R] {A : ι → S} [SetLike.GradedMul A] {a b : R} :
    SetLike.Homogeneous A a → SetLike.Homogeneous A b → SetLike.Homogeneous A (a * b)
  
Arguments: {ι : Type u_1} {R : Type u_2} {S : Type u_3} [SetLike S R] [Add ι] [Mul R] {A : ι → S} [SetLike.GradedMul A] {a b : R}
Goal: SetLike.Homogeneous A a → SetLike.Homogeneous A b → SetLike.Homogeneous A (a * b)
-- add_one_le_two_mul
theorem add_one_le_two_mul [LE α] [Semiring α] [CovariantClass α α (· + ·) (· ≤ ·)] {a : α}
    (a1 : 1 ≤ a) : a + 1 ≤ 2 * a 
Arguments: {α : Type u} [LE α] [Semiring α] [CovariantClass α α (fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] {a : α} (a1 : 1 ≤ a)
Goal: a + 1 ≤ 2 * a
-- pow_nonneg
@[simp]
theorem pow_nonneg [ZeroLEOneClass α] [PosMulMono α]
    (H : 0 ≤ a) : ∀ n : ℕ, 0 ≤ a ^ n
  
Arguments: {α : Type u} [Semiring α] [Preorder α] {a : α} [ZeroLEOneClass α] [PosMulMono α] (H : 0 ≤ a) (n : ℕ)
Goal: 0 ≤ a ^ n
-- pow_le_pow_of_le_one
lemma pow_le_pow_of_le_one [ZeroLEOneClass α] [PosMulMono α] [MulPosMono α]
    (ha₀ : 0 ≤ a) (ha₁ : a ≤ 1) : ∀ {m n : ℕ}, m ≤ n → a ^ n ≤ a ^ m
  
Arguments: {α : Type u} [Semiring α] [Preorder α] {a : α} [ZeroLEOneClass α] [PosMulMono α] [MulPosMono α] (ha₀ : 0 ≤ a) (ha₁ : a ≤ 1) {m n : ℕ}
Goal: m ≤ n → a ^ n ≤ a ^ m
-- pow_le_of_le_one
lemma pow_le_of_le_one [ZeroLEOneClass α] [PosMulMono α] [MulPosMono α]
    (h₀ : 0 ≤ a) (h₁ : a ≤ 1) {n : ℕ} (hn : n ≠ 0) : a ^ n ≤ a 
Arguments: {α : Type u} [Semiring α] [Preorder α] {a : α} [ZeroLEOneClass α] [PosMulMono α] [MulPosMono α] (h₀ : 0 ≤ a) (h₁ : a ≤ 1) {n : ℕ} (hn : n ≠ 0)
Goal: a ^ n ≤ a
-- sq_le
lemma sq_le [ZeroLEOneClass α] [PosMulMono α] [MulPosMono α]
    (h₀ : 0 ≤ a) (h₁ : a ≤ 1) : a ^ 2 ≤ a 
Arguments: {α : Type u} [Semiring α] [Preorder α] {a : α} [ZeroLEOneClass α] [PosMulMono α] [MulPosMono α] (h₀ : 0 ≤ a) (h₁ : a ≤ 1)
Goal: a ^ 2 ≤ a
-- add_le_mul_two_add
theorem add_le_mul_two_add [ZeroLEOneClass α] [MulPosMono α] [CovariantClass α α (· + ·) (· ≤ ·)]
    (a2 : 2 ≤ a) (b0 : 0 ≤ b) : a + (2 + b) ≤ a * (2 + b) 
Arguments: {α : Type u} [Semiring α] [Preorder α] {a b : α} [ZeroLEOneClass α] [MulPosMono α] [CovariantClass α α (fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] (a2 : 2 ≤ a) (b0 : 0 ≤ b)
Goal: a + (2 + b) ≤ a * (2 + b)
-- one_le_mul_of_one_le_of_one_le
theorem one_le_mul_of_one_le_of_one_le [ZeroLEOneClass α] [PosMulMono α]
    (ha : 1 ≤ a) (hb : 1 ≤ b) : (1 : α) ≤ a * b 
Arguments: {α : Type u} [Semiring α] [Preorder α] {a b : α} [ZeroLEOneClass α] [PosMulMono α] (ha : 1 ≤ a) (hb : 1 ≤ b)
Goal: 1 ≤ a * b
-- monotone_mul_left_of_nonneg
theorem monotone_mul_left_of_nonneg [PosMulMono α]
    (ha : 0 ≤ a) : Monotone fun x => a * x 
Arguments: {α : Type u} [Semiring α] [Preorder α] {a : α} [PosMulMono α] (ha : 0 ≤ a)
Goal: Monotone fun x => a * x
-- monotone_mul_right_of_nonneg
theorem monotone_mul_right_of_nonneg [MulPosMono α]
    (ha : 0 ≤ a) : Monotone fun x => x * a 
Arguments: {α : Type u} [Semiring α] [Preorder α] {a : α} [MulPosMono α] (ha : 0 ≤ a)
Goal: Monotone fun x => x * a
-- Monotone.mul_const
theorem Monotone.mul_const [MulPosMono α]
    (hf : Monotone f) (ha : 0 ≤ a) : Monotone fun x => f x * a 
Arguments: {α : Type u} {β : Type u_1} [Semiring α] [Preorder α] {a : α} [Preorder β] {f : β → α} [MulPosMono α] (hf : Monotone f) (ha : 0 ≤ a)
Goal: Monotone fun x => f x * a
-- Monotone.const_mul
theorem Monotone.const_mul [PosMulMono α]
    (hf : Monotone f) (ha : 0 ≤ a) : Monotone fun x => a * f x 
Arguments: {α : Type u} {β : Type u_1} [Semiring α] [Preorder α] {a : α} [Preorder β] {f : β → α} [PosMulMono α] (hf : Monotone f) (ha : 0 ≤ a)
Goal: Monotone fun x => a * f x
-- Antitone.mul_const
theorem Antitone.mul_const [MulPosMono α]
    (hf : Antitone f) (ha : 0 ≤ a) : Antitone fun x => f x * a 
Arguments: {α : Type u} {β : Type u_1} [Semiring α] [Preorder α] {a : α} [Preorder β] {f : β → α} [MulPosMono α] (hf : Antitone f) (ha : 0 ≤ a)
Goal: Antitone fun x => f x * a
-- Antitone.const_mul
theorem Antitone.const_mul [PosMulMono α]
    (hf : Antitone f) (ha : 0 ≤ a) : Antitone fun x => a * f x 
Arguments: {α : Type u} {β : Type u_1} [Semiring α] [Preorder α] {a : α} [Preorder β] {f : β → α} [PosMulMono α] (hf : Antitone f) (ha : 0 ≤ a)
Goal: Antitone fun x => a * f x
-- Monotone.mul
theorem Monotone.mul [PosMulMono α] [MulPosMono α]
    (hf : Monotone f) (hg : Monotone g) (hf₀ : ∀ x, 0 ≤ f x) (hg₀ : ∀ x, 0 ≤ g x) :
    Monotone (f * g) 
Arguments: {α : Type u} {β : Type u_1} [Semiring α] [Preorder α] [Preorder β] {f g : β → α} [PosMulMono α] [MulPosMono α] (hf : Monotone f) (hg : Monotone g) (hf₀ : ∀ (x : β), 0 ≤ f x) (hg₀ : ∀ (x : β), 0 ≤ g x)
Goal: Monotone (f * g)
-- mul_le_one
theorem mul_le_one [ZeroLEOneClass α] [PosMulMono α] [MulPosMono α]
    (ha : a ≤ 1) (hb' : 0 ≤ b) (hb : b ≤ 1) : a * b ≤ 1 
Arguments: {α : Type u} [Semiring α] [Preorder α] {a b : α} [ZeroLEOneClass α] [PosMulMono α] [MulPosMono α] (ha : a ≤ 1) (hb' : 0 ≤ b) (hb : b ≤ 1)
Goal: a * b ≤ 1
-- one_lt_mul_of_le_of_lt
theorem one_lt_mul_of_le_of_lt [ZeroLEOneClass α] [MulPosMono α]
    (ha : 1 ≤ a) (hb : 1 < b) : 1 < a * b 
Arguments: {α : Type u} [Semiring α] [Preorder α] {a b : α} [ZeroLEOneClass α] [MulPosMono α] (ha : 1 ≤ a) (hb : 1 < b)
Goal: 1 < a * b
-- one_lt_mul_of_lt_of_le
theorem one_lt_mul_of_lt_of_le [ZeroLEOneClass α] [PosMulMono α]
    (ha : 1 < a) (hb : 1 ≤ b) : 1 < a * b 
Arguments: {α : Type u} [Semiring α] [Preorder α] {a b : α} [ZeroLEOneClass α] [PosMulMono α] (ha : 1 < a) (hb : 1 ≤ b)
Goal: 1 < a * b
-- mul_lt_one_of_nonneg_of_lt_one_left
theorem mul_lt_one_of_nonneg_of_lt_one_left [PosMulMono α]
    (ha₀ : 0 ≤ a) (ha : a < 1) (hb : b ≤ 1) : a * b < 1 
Arguments: {α : Type u} [Semiring α] [Preorder α] {a b : α} [PosMulMono α] (ha₀ : 0 ≤ a) (ha : a < 1) (hb : b ≤ 1)
Goal: a * b < 1
-- mul_lt_one_of_nonneg_of_lt_one_right
theorem mul_lt_one_of_nonneg_of_lt_one_right [MulPosMono α]
    (ha : a ≤ 1) (hb₀ : 0 ≤ b) (hb : b < 1) : a * b < 1 
Arguments: {α : Type u} [Semiring α] [Preorder α] {a b : α} [MulPosMono α] (ha : a ≤ 1) (hb₀ : 0 ≤ b) (hb : b < 1)
Goal: a * b < 1
-- mul_le_mul_of_nonpos_left
theorem mul_le_mul_of_nonpos_left [ExistsAddOfLE α] [PosMulMono α]
    [CovariantClass α α (swap (· + ·)) (· ≤ ·)] [ContravariantClass α α (swap (· + ·)) (· ≤ ·)]
    (h : b ≤ a) (hc : c ≤ 0) : c * a ≤ c * b 
Arguments: {α : Type u} [Semiring α] [Preorder α] {a b c : α} [ExistsAddOfLE α] [PosMulMono α] [CovariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] [ContravariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] (h : b ≤ a) (hc : c ≤ 0)
Goal: c * a ≤ c * b
-- mul_le_mul_of_nonpos_right
theorem mul_le_mul_of_nonpos_right [ExistsAddOfLE α] [MulPosMono α]
    [CovariantClass α α (swap (· + ·)) (· ≤ ·)] [ContravariantClass α α (swap (· + ·)) (· ≤ ·)]
    (h : b ≤ a) (hc : c ≤ 0) : a * c ≤ b * c 
Arguments: {α : Type u} [Semiring α] [Preorder α] {a b c : α} [ExistsAddOfLE α] [MulPosMono α] [CovariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] [ContravariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] (h : b ≤ a) (hc : c ≤ 0)
Goal: a * c ≤ b * c
-- mul_nonneg_of_nonpos_of_nonpos
theorem mul_nonneg_of_nonpos_of_nonpos [ExistsAddOfLE α] [MulPosMono α]
    [CovariantClass α α (swap (· + ·)) (· ≤ ·)] [ContravariantClass α α (swap (· + ·)) (· ≤ ·)]
    (ha : a ≤ 0) (hb : b ≤ 0) : 0 ≤ a * b 
Arguments: {α : Type u} [Semiring α] [Preorder α] {a b : α} [ExistsAddOfLE α] [MulPosMono α] [CovariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] [ContravariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] (ha : a ≤ 0) (hb : b ≤ 0)
Goal: 0 ≤ a * b
-- mul_le_mul_of_nonneg_of_nonpos
theorem mul_le_mul_of_nonneg_of_nonpos [ExistsAddOfLE α] [MulPosMono α] [PosMulMono α]
    [CovariantClass α α (swap (· + ·)) (· ≤ ·)] [ContravariantClass α α (swap (· + ·)) (· ≤ ·)]
    (hca : c ≤ a) (hbd : b ≤ d) (hc : 0 ≤ c) (hb : b ≤ 0) : a * b ≤ c * d 
Arguments: {α : Type u} [Semiring α] [Preorder α] {a b c d : α} [ExistsAddOfLE α] [MulPosMono α] [PosMulMono α] [CovariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] [ContravariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] (hca : c ≤ a) (hbd : b ≤ d) (hc : 0 ≤ c) (hb : b ≤ 0)
Goal: a * b ≤ c * d
-- mul_le_mul_of_nonneg_of_nonpos'
theorem mul_le_mul_of_nonneg_of_nonpos' [ExistsAddOfLE α] [PosMulMono α] [MulPosMono α]
    [CovariantClass α α (swap (· + ·)) (· ≤ ·)] [ContravariantClass α α (swap (· + ·)) (· ≤ ·)]
    (hca : c ≤ a) (hbd : b ≤ d) (ha : 0 ≤ a) (hd : d ≤ 0) : a * b ≤ c * d 
Arguments: {α : Type u} [Semiring α] [Preorder α] {a b c d : α} [ExistsAddOfLE α] [PosMulMono α] [MulPosMono α] [CovariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] [ContravariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] (hca : c ≤ a) (hbd : b ≤ d) (ha : 0 ≤ a) (hd : d ≤ 0)
Goal: a * b ≤ c * d
-- mul_le_mul_of_nonpos_of_nonneg
theorem mul_le_mul_of_nonpos_of_nonneg [ExistsAddOfLE α] [MulPosMono α] [PosMulMono α]
    [CovariantClass α α (swap (· + ·)) (· ≤ ·)] [ContravariantClass α α (swap (· + ·)) (· ≤ ·)]
    (hac : a ≤ c) (hdb : d ≤ b) (hc : c ≤ 0) (hb : 0 ≤ b) : a * b ≤ c * d 
Arguments: {α : Type u} [Semiring α] [Preorder α] {a b c d : α} [ExistsAddOfLE α] [MulPosMono α] [PosMulMono α] [CovariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] [ContravariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] (hac : a ≤ c) (hdb : d ≤ b) (hc : c ≤ 0) (hb : 0 ≤ b)
Goal: a * b ≤ c * d
-- mul_le_mul_of_nonpos_of_nonneg'
theorem mul_le_mul_of_nonpos_of_nonneg' [ExistsAddOfLE α] [PosMulMono α] [MulPosMono α]
    [CovariantClass α α (swap (· + ·)) (· ≤ ·)] [ContravariantClass α α (swap (· + ·)) (· ≤ ·)]
    (hca : c ≤ a) (hbd : b ≤ d) (ha : 0 ≤ a) (hd : d ≤ 0) : a * b ≤ c * d 
Arguments: {α : Type u} [Semiring α] [Preorder α] {a b c d : α} [ExistsAddOfLE α] [PosMulMono α] [MulPosMono α] [CovariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] [ContravariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] (hca : c ≤ a) (hbd : b ≤ d) (ha : 0 ≤ a) (hd : d ≤ 0)
Goal: a * b ≤ c * d
-- mul_le_mul_of_nonpos_of_nonpos
theorem mul_le_mul_of_nonpos_of_nonpos [ExistsAddOfLE α] [MulPosMono α] [PosMulMono α]
    [CovariantClass α α (swap (· + ·)) (· ≤ ·)] [ContravariantClass α α (swap (· + ·)) (· ≤ ·)]
    (hca : c ≤ a) (hdb : d ≤ b) (hc : c ≤ 0) (hb : b ≤ 0) : a * b ≤ c * d 
Arguments: {α : Type u} [Semiring α] [Preorder α] {a b c d : α} [ExistsAddOfLE α] [MulPosMono α] [PosMulMono α] [CovariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] [ContravariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] (hca : c ≤ a) (hdb : d ≤ b) (hc : c ≤ 0) (hb : b ≤ 0)
Goal: a * b ≤ c * d
-- mul_le_mul_of_nonpos_of_nonpos'
theorem mul_le_mul_of_nonpos_of_nonpos' [ExistsAddOfLE α] [PosMulMono α] [MulPosMono α]
    [CovariantClass α α (swap (· + ·)) (· ≤ ·)] [ContravariantClass α α (swap (· + ·)) (· ≤ ·)]
    (hca : c ≤ a) (hdb : d ≤ b) (ha : a ≤ 0) (hd : d ≤ 0) : a * b ≤ c * d 
Arguments: {α : Type u} [Semiring α] [Preorder α] {a b c d : α} [ExistsAddOfLE α] [PosMulMono α] [MulPosMono α] [CovariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] [ContravariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] (hca : c ≤ a) (hdb : d ≤ b) (ha : a ≤ 0) (hd : d ≤ 0)
Goal: a * b ≤ c * d
-- le_mul_of_le_one_left
theorem le_mul_of_le_one_left [ExistsAddOfLE α] [MulPosMono α]
    [CovariantClass α α (swap (· + ·)) (· ≤ ·)] [ContravariantClass α α (swap (· + ·)) (· ≤ ·)]
    (hb : b ≤ 0) (h : a ≤ 1) : b ≤ a * b 
Arguments: {α : Type u} [Semiring α] [Preorder α] {a b : α} [ExistsAddOfLE α] [MulPosMono α] [CovariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] [ContravariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] (hb : b ≤ 0) (h : a ≤ 1)
Goal: b ≤ a * b
-- mul_le_of_one_le_left
theorem mul_le_of_one_le_left [ExistsAddOfLE α] [MulPosMono α]
    [CovariantClass α α (swap (· + ·)) (· ≤ ·)] [ContravariantClass α α (swap (· + ·)) (· ≤ ·)]
    (hb : b ≤ 0) (h : 1 ≤ a) : a * b ≤ b 
Arguments: {α : Type u} [Semiring α] [Preorder α] {a b : α} [ExistsAddOfLE α] [MulPosMono α] [CovariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] [ContravariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] (hb : b ≤ 0) (h : 1 ≤ a)
Goal: a * b ≤ b
-- le_mul_of_le_one_right
theorem le_mul_of_le_one_right [ExistsAddOfLE α] [PosMulMono α]
    [CovariantClass α α (swap (· + ·)) (· ≤ ·)] [ContravariantClass α α (swap (· + ·)) (· ≤ ·)]
    (ha : a ≤ 0) (h : b ≤ 1) : a ≤ a * b 
Arguments: {α : Type u} [Semiring α] [Preorder α] {a b : α} [ExistsAddOfLE α] [PosMulMono α] [CovariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] [ContravariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] (ha : a ≤ 0) (h : b ≤ 1)
Goal: a ≤ a * b
-- mul_le_of_one_le_right
theorem mul_le_of_one_le_right [ExistsAddOfLE α] [PosMulMono α]
    [CovariantClass α α (swap (· + ·)) (· ≤ ·)] [ContravariantClass α α (swap (· + ·)) (· ≤ ·)]
    (ha : a ≤ 0) (h : 1 ≤ b) : a * b ≤ a 
Arguments: {α : Type u} [Semiring α] [Preorder α] {a b : α} [ExistsAddOfLE α] [PosMulMono α] [CovariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] [ContravariantClass α α (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] (ha : a ≤ 0) (h : 1 ≤ b)
Goal: a * b ≤ a