ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- NonUnitalSubalgebra.iSupLift_inclusion
@[simp]
theorem iSupLift_inclusion {i : ι} (x : K i) (h : K i ≤ T) :
    iSupLift K dir f hf T hT (inclusion h x) = f i x 
Arguments: {R : Type u} {A : Type v} {B : Type w} [CommSemiring R] [NonUnitalNonAssocSemiring A] [Module R A] [IsScalarTower R A A] [SMulCommClass R A A] [NonUnitalNonAssocSemiring B] [Module R B] {ι : Type u_1} [Nonempty ι] {K : ι → NonUnitalSubalgebra R A} {dir : Directed (fun x x_1 => x ≤ x_1) K} {f : (i : ι) → ↥(K i) →ₙₐ[R] B} {hf : ∀ (i j : ι) (h : K i ≤ K j), f i = (f j).comp (NonUnitalSubalgebra.inclusion h)} {T : NonUnitalSubalgebra R A} {hT : T = iSup K} {i : ι} (x : ↥(K i)) (h : K i ≤ T)
Goal: (NonUnitalSubalgebra.iSupLift K dir f hf T hT) ((NonUnitalSubalgebra.inclusion h) x) = (f i) x
-- NonUnitalSubalgebra.iSupLift_comp_inclusion
@[simp]
theorem iSupLift_comp_inclusion {i : ι} (h : K i ≤ T) :
    (iSupLift K dir f hf T hT).comp (inclusion h) = f i 
Arguments: {R : Type u} {A : Type v} {B : Type w} [CommSemiring R] [NonUnitalNonAssocSemiring A] [Module R A] [IsScalarTower R A A] [SMulCommClass R A A] [NonUnitalNonAssocSemiring B] [Module R B] {ι : Type u_1} [Nonempty ι] {K : ι → NonUnitalSubalgebra R A} {dir : Directed (fun x x_1 => x ≤ x_1) K} {f : (i : ι) → ↥(K i) →ₙₐ[R] B} {hf : ∀ (i j : ι) (h : K i ≤ K j), f i = (f j).comp (NonUnitalSubalgebra.inclusion h)} {T : NonUnitalSubalgebra R A} {hT : T = iSup K} {i : ι} (h : K i ≤ T)
Goal: (NonUnitalSubalgebra.iSupLift K dir f hf T hT).comp (NonUnitalSubalgebra.inclusion h) = f i
-- NonUnitalSubalgebra.iSupLift_mk
@[simp]
theorem iSupLift_mk {i : ι} (x : K i) (hx : (x : A) ∈ T) :
    iSupLift K dir f hf T hT ⟨x, hx⟩ = f i x 
Arguments: {R : Type u} {A : Type v} {B : Type w} [CommSemiring R] [NonUnitalNonAssocSemiring A] [Module R A] [IsScalarTower R A A] [SMulCommClass R A A] [NonUnitalNonAssocSemiring B] [Module R B] {ι : Type u_1} [Nonempty ι] {K : ι → NonUnitalSubalgebra R A} {dir : Directed (fun x x_1 => x ≤ x_1) K} {f : (i : ι) → ↥(K i) →ₙₐ[R] B} {hf : ∀ (i j : ι) (h : K i ≤ K j), f i = (f j).comp (NonUnitalSubalgebra.inclusion h)} {T : NonUnitalSubalgebra R A} {hT : T = iSup K} {i : ι} (x : ↥(K i)) (hx : ↑x ∈ T)
Goal: (NonUnitalSubalgebra.iSupLift K dir f hf T hT) ⟨↑x, hx⟩ = (f i) x
-- NonUnitalSubalgebra.iSupLift_of_mem
theorem iSupLift_of_mem {i : ι} (x : T) (hx : (x : A) ∈ K i) :
    iSupLift K dir f hf T hT x = f i ⟨x, hx⟩ 
Arguments: {R : Type u} {A : Type v} {B : Type w} [CommSemiring R] [NonUnitalNonAssocSemiring A] [Module R A] [IsScalarTower R A A] [SMulCommClass R A A] [NonUnitalNonAssocSemiring B] [Module R B] {ι : Type u_1} [Nonempty ι] {K : ι → NonUnitalSubalgebra R A} {dir : Directed (fun x x_1 => x ≤ x_1) K} {f : (i : ι) → ↥(K i) →ₙₐ[R] B} {hf : ∀ (i j : ι) (h : K i ≤ K j), f i = (f j).comp (NonUnitalSubalgebra.inclusion h)} {T : NonUnitalSubalgebra R A} {hT : T = iSup K} {i : ι} (x : ↥T) (hx : ↑x ∈ K i)
Goal: (NonUnitalSubalgebra.iSupLift K dir f hf T hT) x = (f i) ⟨↑x, hx⟩
-- Set.smul_mem_center
theorem _root_.Set.smul_mem_center (r : R) {a : A} (ha : a ∈ Set.center A) :
    r • a ∈ Set.center A 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [NonUnitalNonAssocSemiring A] [Module R A] [IsScalarTower R A A] [SMulCommClass R A A] (r : R) {a : A} (ha : a ∈ Set.center A)
Goal: r • a ∈ Set.center A
-- NonUnitalSubalgebra.coe_center
theorem coe_center : (center R A : Set A) = Set.center A 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [NonUnitalNonAssocSemiring A] [Module R A] [IsScalarTower R A A] [SMulCommClass R A A]
Goal: ↑(NonUnitalSubalgebra.center R A) = Set.center A
-- NonUnitalSubalgebra.center_toNonUnitalSubsemiring
@[simp]
theorem center_toNonUnitalSubsemiring :
    (center R A).toNonUnitalSubsemiring = NonUnitalSubsemiring.center A 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [NonUnitalNonAssocSemiring A] [Module R A] [IsScalarTower R A A] [SMulCommClass R A A]
Goal: (NonUnitalSubalgebra.center R A).toNonUnitalSubsemiring = NonUnitalSubsemiring.center A
-- NonUnitalSubalgebra.center_toNonUnitalSubring
@[simp] lemma center_toNonUnitalSubring (R A : Type*) [CommRing R] [NonUnitalRing A]
    [Module R A] [IsScalarTower R A A] [SMulCommClass R A A] :
    (center R A).toNonUnitalSubring = NonUnitalSubring.center A 
Arguments: (R : Type u_3) (A : Type u_4) [CommRing R] [NonUnitalRing A] [Module R A] [IsScalarTower R A A] [SMulCommClass R A A]
Goal: (NonUnitalSubalgebra.center R A).toNonUnitalSubring = NonUnitalSubring.center A
-- NonUnitalSubalgebra.center_eq_top
@[simp]
theorem center_eq_top (A : Type*) [NonUnitalCommSemiring A] [Module R A] [IsScalarTower R A A]
    [SMulCommClass R A A] : center R A = ⊤ 
Arguments: (R : Type u_1) [CommSemiring R] (A : Type u_3) [NonUnitalCommSemiring A] [Module R A] [IsScalarTower R A A] [SMulCommClass R A A]
Goal: NonUnitalSubalgebra.center R A = ⊤
-- NonUnitalSubalgebra.mem_center_iff
theorem mem_center_iff {a : A} : a ∈ center R A ↔ ∀ b : A, b * a = a * b 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [NonUnitalSemiring A] [Module R A] [IsScalarTower R A A] [SMulCommClass R A A] {a : A}
Goal: a ∈ NonUnitalSubalgebra.center R A ↔ ∀ (b : A), b * a = a * b
-- Set.smul_mem_centralizer
@[simp]
theorem _root_.Set.smul_mem_centralizer {s : Set A} (r : R) {a : A} (ha : a ∈ s.centralizer) :
    r • a ∈ s.centralizer 
Arguments: {R : Type u_1} {A : Type u_2} [CommSemiring R] [NonUnitalSemiring A] [Module R A] [IsScalarTower R A A] [SMulCommClass R A A] {s : Set A} (r : R) {a : A} (ha : a ∈ s.centralizer)
Goal: r • a ∈ s.centralizer
-- NonUnitalSubalgebra.coe_centralizer
@[simp, norm_cast]
theorem coe_centralizer (s : Set A) : (centralizer R s : Set A) = s.centralizer 
Arguments: (R : Type u_1) {A : Type u_2} [CommSemiring R] [NonUnitalSemiring A] [Module R A] [IsScalarTower R A A] [SMulCommClass R A A] (s : Set A)
Goal: ↑(NonUnitalSubalgebra.centralizer R s) = s.centralizer
-- NonUnitalSubalgebra.mem_centralizer_iff
theorem mem_centralizer_iff {s : Set A} {z : A} : z ∈ centralizer R s ↔ ∀ g ∈ s, g * z = z * g 
Arguments: (R : Type u_1) {A : Type u_2} [CommSemiring R] [NonUnitalSemiring A] [Module R A] [IsScalarTower R A A] [SMulCommClass R A A] {s : Set A} {z : A}
Goal: z ∈ NonUnitalSubalgebra.centralizer R s ↔ ∀ g ∈ s, g * z = z * g
-- NonUnitalSubalgebra.centralizer_le
theorem centralizer_le (s t : Set A) (h : s ⊆ t) : centralizer R t ≤ centralizer R s 
Arguments: (R : Type u_1) {A : Type u_2} [CommSemiring R] [NonUnitalSemiring A] [Module R A] [IsScalarTower R A A] [SMulCommClass R A A] (s t : Set A) (h : s ⊆ t)
Goal: NonUnitalSubalgebra.centralizer R t ≤ NonUnitalSubalgebra.centralizer R s
-- NonUnitalSubalgebra.centralizer_univ
@[simp]
theorem centralizer_univ : centralizer R Set.univ = center R A 
Arguments: (R : Type u_1) {A : Type u_2} [CommSemiring R] [NonUnitalSemiring A] [Module R A] [IsScalarTower R A A] [SMulCommClass R A A]
Goal: NonUnitalSubalgebra.centralizer R Set.univ = NonUnitalSubalgebra.center R A
-- mem_nonUnitalSubalgebraOfNonUnitalSubsemiring
@[simp]
theorem mem_nonUnitalSubalgebraOfNonUnitalSubsemiring {x : R} {S : NonUnitalSubsemiring R} :
    x ∈ nonUnitalSubalgebraOfNonUnitalSubsemiring S ↔ x ∈ S 
Arguments: {R : Type u_1} [NonUnitalNonAssocSemiring R] {x : R} {S : NonUnitalSubsemiring R}
Goal: x ∈ nonUnitalSubalgebraOfNonUnitalSubsemiring S ↔ x ∈ S
-- mem_nonUnitalSubalgebraOfNonUnitalSubring
@[simp]
theorem mem_nonUnitalSubalgebraOfNonUnitalSubring {x : R} {S : NonUnitalSubring R} :
    x ∈ nonUnitalSubalgebraOfNonUnitalSubring S ↔ x ∈ S 
Arguments: {R : Type u_1} [NonUnitalNonAssocRing R] {x : R} {S : NonUnitalSubring R}
Goal: x ∈ nonUnitalSubalgebraOfNonUnitalSubring S ↔ x ∈ S
-- Commute.list_sum_right
lemma list_sum_right (a : R) (l : List R) (h : ∀ b ∈ l, Commute a b) : Commute a l.sum 
Arguments: {R : Type u_5} [NonUnitalNonAssocSemiring R] (a : R) (l : List R) (h : ∀ b ∈ l, Commute a b)
Goal: Commute a l.sum
-- Commute.list_sum_left
lemma list_sum_left (b : R) (l : List R) (h : ∀ a ∈ l, Commute a b) : Commute l.sum b 
Arguments: {R : Type u_5} [NonUnitalNonAssocSemiring R] (b : R) (l : List R) (h : ∀ a ∈ l, Commute a b)
Goal: Commute l.sum b
-- List.prod_map_neg
@[simp]
lemma prod_map_neg (l : List M) :
    (l.map Neg.neg).prod = (-1) ^ l.length * l.prod 
Arguments: {M : Type u_3} [CommMonoid M] [HasDistribNeg M] (l : List M)
Goal: (List.map Neg.neg l).prod = (-1) ^ l.length * l.prod
-- List.prod_eq_zero
lemma prod_eq_zero : ∀ {l : List M₀}, (0 : M₀) ∈ l → l.prod = 0
  -- |  absurd h (not_mem_nil _)
  
Arguments: {M₀ : Type u_4} [MonoidWithZero M₀] {l : List M₀}
Goal: 0 ∈ l → l.prod = 0
-- List.prod_eq_zero_iff
@[simp] lemma prod_eq_zero_iff : ∀ {l : List M₀}, l.prod = 0 ↔ (0 : M₀) ∈ l
  
Arguments: {M₀ : Type u_4} [MonoidWithZero M₀] [Nontrivial M₀] [NoZeroDivisors M₀] {l : List M₀}
Goal: l.prod = 0 ↔ 0 ∈ l
-- List.prod_ne_zero
lemma prod_ne_zero (hL : (0 : M₀) ∉ l) : l.prod ≠ 0 
Arguments: {M₀ : Type u_4} [MonoidWithZero M₀] {l : List M₀} [Nontrivial M₀] [NoZeroDivisors M₀] (hL : 0 ∉ l)
Goal: l.prod ≠ 0
-- List.sum_map_mul_left
lemma sum_map_mul_left : (l.map fun b ↦ r * f b).sum = r * (l.map f).sum 
Arguments: {ι : Type u_1} {R : Type u_5} [NonUnitalNonAssocSemiring R] (l : List ι) (f : ι → R) (r : R)
Goal: (List.map (fun b => r * f b) l).sum = r * (List.map f l).sum
-- List.sum_map_mul_right
lemma sum_map_mul_right : (l.map fun b ↦ f b * r).sum = (l.map f).sum * r 
Arguments: {ι : Type u_1} {R : Type u_5} [NonUnitalNonAssocSemiring R] (l : List ι) (f : ι → R) (r : R)
Goal: (List.map (fun b => f b * r) l).sum = (List.map f l).sum * r
-- List.dvd_sum
lemma dvd_sum [NonUnitalSemiring R] {a} {l : List R} (h : ∀ x ∈ l, a ∣ x) : a ∣ l.sum 
Arguments: {R : Type u_5} [NonUnitalSemiring R] {a : R} {l : List R} (h : ∀ x ∈ l, a ∣ x)
Goal: a ∣ l.sum
-- List.sum_zipWith_distrib_left
@[simp] lemma sum_zipWith_distrib_left [Semiring R] (f : ι → κ → R) (a : R) :
    ∀ (l₁ : List ι) (l₂ : List κ),
      (zipWith (fun i j ↦ a * f i j) l₁ l₂).sum = a * (zipWith f l₁ l₂).sum
  
Arguments: {ι : Type u_1} {κ : Type u_2} {R : Type u_5} [Semiring R] (f : ι → κ → R) (a : R) (l₁ : List ι) (l₂ : List κ)
Goal: (List.zipWith (fun i j => a * f i j) l₁ l₂).sum = a * (List.zipWith f l₁ l₂).sum
-- Multiset.prod_map_neg
@[simp] lemma prod_map_neg (s : Multiset α) : (s.map Neg.neg).prod = (-1) ^ card s * s.prod 
Arguments: {α : Type u_2} [CommMonoid α] [HasDistribNeg α] (s : Multiset α)
Goal: (Multiset.map Neg.neg s).prod = (-1) ^ Multiset.card s * s.prod
-- Multiset.prod_eq_zero
lemma prod_eq_zero (h : (0 : α) ∈ s) : s.prod = 0 
Arguments: {α : Type u_2} [CommMonoidWithZero α] {s : Multiset α} (h : 0 ∈ s)
Goal: s.prod = 0
-- Multiset.prod_eq_zero_iff
@[simp] lemma prod_eq_zero_iff : s.prod = 0 ↔ (0 : α) ∈ s 
Arguments: {α : Type u_2} [CommMonoidWithZero α] [NoZeroDivisors α] [Nontrivial α] {s : Multiset α}
Goal: s.prod = 0 ↔ 0 ∈ s
-- Multiset.prod_ne_zero
lemma prod_ne_zero (h : (0 : α) ∉ s) : s.prod ≠ 0 
Arguments: {α : Type u_2} [CommMonoidWithZero α] [NoZeroDivisors α] [Nontrivial α] {s : Multiset α} (h : 0 ∉ s)
Goal: s.prod ≠ 0
-- Multiset.sum_map_mul_left
lemma sum_map_mul_left : sum (s.map fun i ↦ a * f i) = a * sum (s.map f) 
Arguments: {ι : Type u_1} {α : Type u_2} [NonUnitalNonAssocSemiring α] {a : α} {s : Multiset ι} {f : ι → α}
Goal: (Multiset.map (fun i => a * f i) s).sum = a * (Multiset.map f s).sum
-- Multiset.sum_map_mul_right
lemma sum_map_mul_right : sum (s.map fun i ↦ f i * a) = sum (s.map f) * a 
Arguments: {ι : Type u_1} {α : Type u_2} [NonUnitalNonAssocSemiring α] {a : α} {s : Multiset ι} {f : ι → α}
Goal: (Multiset.map (fun i => f i * a) s).sum = (Multiset.map f s).sum * a
-- Multiset.dvd_sum
lemma dvd_sum : (∀ x ∈ s, a ∣ x) → a ∣ s.sum 
Arguments: {α : Type u_2} [NonUnitalSemiring α] {s : Multiset α} {a : α}
Goal: (∀ x ∈ s, a ∣ x) → a ∣ s.sum
-- Multiset.prod_map_sum
lemma prod_map_sum {s : Multiset (Multiset α)} :
    prod (s.map sum) = sum ((Sections s).map prod) 
Arguments: {α : Type u_2} [CommSemiring α] {s : Multiset (Multiset α)}
Goal: (Multiset.map Multiset.sum s).prod = (Multiset.map Multiset.prod s.Sections).sum
-- Multiset.prod_map_add
lemma prod_map_add {s : Multiset ι} {f g : ι → α} :
    prod (s.map fun i ↦ f i + g i) =
      sum ((antidiagonal s).map fun p ↦ (p.1.map f).prod * (p.2.map g).prod) 
Arguments: {ι : Type u_1} {α : Type u_2} [CommSemiring α] {s : Multiset ι} {f g : ι → α}
Goal: (Multiset.map (fun i => f i + g i) s).prod =
  (Multiset.map (fun p => (Multiset.map f p.1).prod * (Multiset.map g p.2).prod) s.antidiagonal).sum
-- Commute.multiset_sum_right
theorem multiset_sum_right (a : α) (h : ∀ b ∈ s, Commute a b) : Commute a s.sum 
Arguments: {α : Type u_2} [NonUnitalNonAssocSemiring α] (s : Multiset α) (a : α) (h : ∀ b ∈ s, Commute a b)
Goal: Commute a s.sum
-- Commute.multiset_sum_left
theorem multiset_sum_left (b : α) (h : ∀ a ∈ s, Commute a b) : Commute s.sum b 
Arguments: {α : Type u_2} [NonUnitalNonAssocSemiring α] (s : Multiset α) (b : α) (h : ∀ a ∈ s, Commute a b)
Goal: Commute s.sum b
-- AddMonoidAlgebra.sup_support_add_le
theorem sup_support_add_le : (f + g).support.sup degb ≤ f.support.sup degb ⊔ g.support.sup degb 
Arguments: {R : Type u_1} {A : Type u_3} {B : Type u_5} [SemilatticeSup B] [OrderBot B] [Semiring R] (degb : A → B) (f g : AddMonoidAlgebra R A)
Goal: (f + g).support.sup degb ≤ f.support.sup degb ⊔ g.support.sup degb
-- AddMonoidAlgebra.le_inf_support_add
theorem le_inf_support_add : f.support.inf degt ⊓ g.support.inf degt ≤ (f + g).support.inf degt 
Arguments: {R : Type u_1} {A : Type u_3} {T : Type u_4} [SemilatticeInf T] [OrderTop T] [Semiring R] (degt : A → T) (f g : AddMonoidAlgebra R A)
Goal: f.support.inf degt ⊓ g.support.inf degt ≤ (f + g).support.inf degt
-- AddMonoidAlgebra.sup_support_mul_le
theorem sup_support_mul_le {degb : A → B} (degbm : ∀ {a b}, degb (a + b) ≤ degb a + degb b)
    (f g : R[A]) :
    (f * g).support.sup degb ≤ f.support.sup degb + g.support.sup degb 
Arguments: {R : Type u_1} {A : Type u_3} {B : Type u_5} [SemilatticeSup B] [OrderBot B] [Semiring R] [Add A] [Add B] [CovariantClass B B (fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] [CovariantClass B B (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] {degb : A → B} (degbm : ∀ {a b : A}, degb (a + b) ≤ degb a + degb b) (f g : AddMonoidAlgebra R A)
Goal: (f * g).support.sup degb ≤ f.support.sup degb + g.support.sup degb
-- AddMonoidAlgebra.le_inf_support_mul
theorem le_inf_support_mul {degt : A → T} (degtm : ∀ {a b}, degt a + degt b ≤ degt (a + b))
    (f g : R[A]) :
    f.support.inf degt + g.support.inf degt ≤ (f * g).support.inf degt 
Arguments: {R : Type u_1} {A : Type u_3} {T : Type u_4} [SemilatticeInf T] [OrderTop T] [Semiring R] [Add A] [Add T] [CovariantClass T T (fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] [CovariantClass T T (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] {degt : A → T} (degtm : ∀ {a b : A}, degt a + degt b ≤ degt (a + b)) (f g : AddMonoidAlgebra R A)
Goal: f.support.inf degt + g.support.inf degt ≤ (f * g).support.inf degt
-- AddMonoidAlgebra.sup_support_list_prod_le
theorem sup_support_list_prod_le (degb0 : degb 0 ≤ 0)
    (degbm : ∀ a b, degb (a + b) ≤ degb a + degb b) :
    ∀ l : List R[A],
      l.prod.support.sup degb ≤ (l.map fun f : R[A] => f.support.sup degb).sum
  
Arguments: {R : Type u_1} {A : Type u_3} {B : Type u_5} [SemilatticeSup B] [OrderBot B] [Semiring R] [AddMonoid A] [AddMonoid B] [CovariantClass B B (fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] [CovariantClass B B (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] {degb : A → B} (degb0 : degb 0 ≤ 0) (degbm : ∀ (a b : A), degb (a + b) ≤ degb a + degb b) (l : List (AddMonoidAlgebra R A))
Goal: l.prod.support.sup degb ≤ (List.map (fun f => f.support.sup degb) l).sum
-- AddMonoidAlgebra.le_inf_support_list_prod
theorem le_inf_support_list_prod (degt0 : 0 ≤ degt 0)
    (degtm : ∀ a b, degt a + degt b ≤ degt (a + b)) (l : List R[A]) :
    (l.map fun f : R[A] => f.support.inf degt).sum ≤ l.prod.support.inf degt 
Arguments: {R : Type u_1} {A : Type u_3} {T : Type u_4} [SemilatticeInf T] [OrderTop T] [Semiring R] [AddMonoid A] [AddMonoid T] [CovariantClass T T (fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] [CovariantClass T T (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] {degt : A → T} (degt0 : 0 ≤ degt 0) (degtm : ∀ (a b : A), degt a + degt b ≤ degt (a + b)) (l : List (AddMonoidAlgebra R A))
Goal: (List.map (fun f => f.support.inf degt) l).sum ≤ l.prod.support.inf degt
-- AddMonoidAlgebra.sup_support_pow_le
theorem sup_support_pow_le (degb0 : degb 0 ≤ 0) (degbm : ∀ a b, degb (a + b) ≤ degb a + degb b)
    (n : ℕ) (f : R[A]) : (f ^ n).support.sup degb ≤ n • f.support.sup degb 
Arguments: {R : Type u_1} {A : Type u_3} {B : Type u_5} [SemilatticeSup B] [OrderBot B] [Semiring R] [AddMonoid A] [AddMonoid B] [CovariantClass B B (fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] [CovariantClass B B (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] {degb : A → B} (degb0 : degb 0 ≤ 0) (degbm : ∀ (a b : A), degb (a + b) ≤ degb a + degb b) (n : ℕ) (f : AddMonoidAlgebra R A)
Goal: (f ^ n).support.sup degb ≤ n • f.support.sup degb
-- AddMonoidAlgebra.le_inf_support_pow
theorem le_inf_support_pow (degt0 : 0 ≤ degt 0) (degtm : ∀ a b, degt a + degt b ≤ degt (a + b))
    (n : ℕ) (f : R[A]) : n • f.support.inf degt ≤ (f ^ n).support.inf degt 
Arguments: {R : Type u_1} {A : Type u_3} {T : Type u_4} [SemilatticeInf T] [OrderTop T] [Semiring R] [AddMonoid A] [AddMonoid T] [CovariantClass T T (fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] [CovariantClass T T (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] {degt : A → T} (degt0 : 0 ≤ degt 0) (degtm : ∀ (a b : A), degt a + degt b ≤ degt (a + b)) (n : ℕ) (f : AddMonoidAlgebra R A)
Goal: n • f.support.inf degt ≤ (f ^ n).support.inf degt
-- AddMonoidAlgebra.sup_support_multiset_prod_le
theorem sup_support_multiset_prod_le (degb0 : degb 0 ≤ 0)
    (degbm : ∀ a b, degb (a + b) ≤ degb a + degb b) (m : Multiset R[A]) :
    m.prod.support.sup degb ≤ (m.map fun f : R[A] => f.support.sup degb).sum 
Arguments: {R : Type u_1} {A : Type u_3} {B : Type u_5} [SemilatticeSup B] [OrderBot B] [CommSemiring R] [AddCommMonoid A] [AddCommMonoid B] [CovariantClass B B (fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] [CovariantClass B B (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] {degb : A → B} (degb0 : degb 0 ≤ 0) (degbm : ∀ (a b : A), degb (a + b) ≤ degb a + degb b) (m : Multiset (AddMonoidAlgebra R A))
Goal: m.prod.support.sup degb ≤ (Multiset.map (fun f => f.support.sup degb) m).sum
-- AddMonoidAlgebra.le_inf_support_multiset_prod
theorem le_inf_support_multiset_prod (degt0 : 0 ≤ degt 0)
    (degtm : ∀ a b, degt a + degt b ≤ degt (a + b)) (m : Multiset R[A]) :
    (m.map fun f : R[A] => f.support.inf degt).sum ≤ m.prod.support.inf degt 
Arguments: {R : Type u_1} {A : Type u_3} {T : Type u_4} [SemilatticeInf T] [OrderTop T] [CommSemiring R] [AddCommMonoid A] [AddCommMonoid T] [CovariantClass T T (fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] [CovariantClass T T (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] {degt : A → T} (degt0 : 0 ≤ degt 0) (degtm : ∀ (a b : A), degt a + degt b ≤ degt (a + b)) (m : Multiset (AddMonoidAlgebra R A))
Goal: (Multiset.map (fun f => f.support.inf degt) m).sum ≤ m.prod.support.inf degt
-- AddMonoidAlgebra.sup_support_finset_prod_le
theorem sup_support_finset_prod_le (degb0 : degb 0 ≤ 0)
    (degbm : ∀ a b, degb (a + b) ≤ degb a + degb b) (s : Finset ι) (f : ι → R[A]) :
    (∏ i ∈ s, f i).support.sup degb ≤ ∑ i ∈ s, (f i).support.sup degb 
Arguments: {R : Type u_1} {A : Type u_3} {B : Type u_5} {ι : Type u_6} [SemilatticeSup B] [OrderBot B] [CommSemiring R] [AddCommMonoid A] [AddCommMonoid B] [CovariantClass B B (fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] [CovariantClass B B (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] {degb : A → B} (degb0 : degb 0 ≤ 0) (degbm : ∀ (a b : A), degb (a + b) ≤ degb a + degb b) (s : Finset ι) (f : ι → AddMonoidAlgebra R A)
Goal: (∏ i ∈ s, f i).support.sup degb ≤ ∑ i ∈ s, (f i).support.sup degb
-- AddMonoidAlgebra.le_inf_support_finset_prod
theorem le_inf_support_finset_prod (degt0 : 0 ≤ degt 0)
    (degtm : ∀ a b, degt a + degt b ≤ degt (a + b)) (s : Finset ι) (f : ι → R[A]) :
    (∑ i ∈ s, (f i).support.inf degt) ≤ (∏ i ∈ s, f i).support.inf degt 
Arguments: {R : Type u_1} {A : Type u_3} {T : Type u_4} {ι : Type u_6} [SemilatticeInf T] [OrderTop T] [CommSemiring R] [AddCommMonoid A] [AddCommMonoid T] [CovariantClass T T (fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] [CovariantClass T T (Function.swap fun x x_1 => x + x_1) fun x x_1 => x ≤ x_1] {degt : A → T} (degt0 : 0 ≤ degt 0) (degtm : ∀ (a b : A), degt a + degt b ≤ degt (a + b)) (s : Finset ι) (f : ι → AddMonoidAlgebra R A)
Goal: ∑ i ∈ s, (f i).support.inf degt ≤ (∏ i ∈ s, f i).support.inf degt
-- AddMonoidAlgebra.supDegree_add_le
theorem supDegree_add_le {f g : R[A]} :
    (f + g).supDegree D ≤ (f.supDegree D) ⊔ (g.supDegree D) 
Arguments: {R : Type u_1} {A : Type u_3} {B : Type u_5} [Semiring R] [AddZeroClass A] [SemilatticeSup B] [OrderBot B] {D : A → B} {f g : AddMonoidAlgebra R A}
Goal: AddMonoidAlgebra.supDegree D (f + g) ≤ AddMonoidAlgebra.supDegree D f ⊔ AddMonoidAlgebra.supDegree D g
-- AddMonoidAlgebra.supDegree_neg
@[simp]
theorem supDegree_neg {f : R'[A]} :
    (-f).supDegree D = f.supDegree D 
Arguments: {R' : Type u_2} {A : Type u_3} {B : Type u_5} [Ring R'] [AddZeroClass A] [SemilatticeSup B] [OrderBot B] {D : A → B} {f : AddMonoidAlgebra R' A}
Goal: AddMonoidAlgebra.supDegree D (-f) = AddMonoidAlgebra.supDegree D f
-- AddMonoidAlgebra.supDegree_sub_le
theorem supDegree_sub_le {f g : R'[A]} :
    (f - g).supDegree D ≤ f.supDegree D ⊔ g.supDegree D 
Arguments: {R' : Type u_2} {A : Type u_3} {B : Type u_5} [Ring R'] [AddZeroClass A] [SemilatticeSup B] [OrderBot B] {D : A → B} {f g : AddMonoidAlgebra R' A}
Goal: AddMonoidAlgebra.supDegree D (f - g) ≤ AddMonoidAlgebra.supDegree D f ⊔ AddMonoidAlgebra.supDegree D g
-- AddMonoidAlgebra.supDegree_sum_le
theorem supDegree_sum_le {ι} {s : Finset ι} {f : ι → R[A]} :
    (∑ i ∈ s, f i).supDegree D ≤ s.sup (fun i => (f i).supDegree D) 
Arguments: {R : Type u_1} {A : Type u_3} {B : Type u_5} [Semiring R] [SemilatticeSup B] [OrderBot B] {D : A → B} {ι : Type u_7} {s : Finset ι} {f : ι → AddMonoidAlgebra R A}
Goal: AddMonoidAlgebra.supDegree D (∑ i ∈ s, f i) ≤ s.sup fun i => AddMonoidAlgebra.supDegree D (f i)
-- AddMonoidAlgebra.supDegree_single_ne_zero
theorem supDegree_single_ne_zero (a : A) {r : R} (hr : r ≠ 0) :
    (single a r).supDegree D = D a 
Arguments: {R : Type u_1} {A : Type u_3} {B : Type u_5} [Semiring R] [SemilatticeSup B] [OrderBot B] {D : A → B} (a : A) {r : R} (hr : r ≠ 0)
Goal: AddMonoidAlgebra.supDegree D (AddMonoidAlgebra.single a r) = D a
-- AddMonoidAlgebra.supDegree_single
theorem supDegree_single (a : A) (r : R) :
    (single a r).supDegree D = if r = 0 then ⊥ else D a 
Arguments: {R : Type u_1} {A : Type u_3} {B : Type u_5} [Semiring R] [SemilatticeSup B] [OrderBot B] {D : A → B} (a : A) (r : R)
Goal: AddMonoidAlgebra.supDegree D (AddMonoidAlgebra.single a r) = if r = 0 then ⊥ else D a
-- AddMonoidAlgebra.supDegree_zero
@[simp]
theorem supDegree_zero : (0 : R[A]).supDegree D = ⊥ 
Arguments: {R : Type u_1} {A : Type u_3} {B : Type u_5} [Semiring R] [AddZeroClass A] [SemilatticeSup B] [OrderBot B] {D : A → B}
Goal: AddMonoidAlgebra.supDegree D 0 = ⊥
-- AddMonoidAlgebra.ne_zero_of_supDegree_ne_bot
theorem ne_zero_of_supDegree_ne_bot : p.supDegree D ≠ ⊥ → p ≠ 0 
Arguments: {R : Type u_1} {A : Type u_3} {B : Type u_5} [Semiring R] [AddZeroClass A] [SemilatticeSup B] [OrderBot B] {D : A → B} {p : AddMonoidAlgebra R A}
Goal: AddMonoidAlgebra.supDegree D p ≠ ⊥ → p ≠ 0
-- AddMonoidAlgebra.ne_zero_of_not_supDegree_le
theorem ne_zero_of_not_supDegree_le {b : B} (h : ¬ p.supDegree D ≤ b) : p ≠ 0 
Arguments: {R : Type u_1} {A : Type u_3} {B : Type u_5} [Semiring R] [AddZeroClass A] [SemilatticeSup B] [OrderBot B] {D : A → B} {p : AddMonoidAlgebra R A} {b : B} (h : ¬AddMonoidAlgebra.supDegree D p ≤ b)
Goal: p ≠ 0
-- AddMonoidAlgebra.apply_eq_zero_of_not_le_supDegree
theorem apply_eq_zero_of_not_le_supDegree {a : A} (hlt : ¬ D a ≤ p.supDegree D) : p a = 0 
Arguments: {R : Type u_1} {A : Type u_3} {B : Type u_5} [Semiring R] [SemilatticeSup B] [OrderBot B] {D : A → B} {p : AddMonoidAlgebra R A} {a : A} (hlt : ¬D a ≤ AddMonoidAlgebra.supDegree D p)
Goal: p a = 0