ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- FractionalIdeal.exists_mem_algebraMap_eq
@[simp]
theorem exists_mem_algebraMap_eq {x : R} {I : Ideal R} (h : S ≤ nonZeroDivisors R) :
    (∃ x', x' ∈ I ∧ algebraMap R P x' = algebraMap R P x) ↔ x ∈ I 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} (P : Type u_2) [CommRing P] [Algebra R P] [loc : IsLocalization S P] {x : R} {I : Ideal R} (h : S ≤ R⁰)
Goal: (∃ x' ∈ I, (algebraMap R P) x' = (algebraMap R P) x) ↔ x ∈ I
-- FractionalIdeal.coeIdeal_injective'
theorem coeIdeal_injective' (h : S ≤ nonZeroDivisors R) :
    Function.Injective (fun (I : Ideal R) ↦ (I : FractionalIdeal S P)) 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] [loc : IsLocalization S P] (h : S ≤ R⁰)
Goal: Function.Injective fun I => ↑I
-- FractionalIdeal.coeIdeal_inj'
theorem coeIdeal_inj' (h : S ≤ nonZeroDivisors R) {I J : Ideal R} :
    (I : FractionalIdeal S P) = J ↔ I = J 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] [loc : IsLocalization S P] (h : S ≤ R⁰) {I J : Ideal R}
Goal: ↑I = ↑J ↔ I = J
-- FractionalIdeal.coeIdeal_eq_zero'
theorem coeIdeal_eq_zero' {I : Ideal R} (h : S ≤ nonZeroDivisors R) :
    (I : FractionalIdeal S P) = 0 ↔ I = (⊥ : Ideal R) 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] [loc : IsLocalization S P] {I : Ideal R} (h : S ≤ R⁰)
Goal: ↑I = 0 ↔ I = ⊥
-- FractionalIdeal.coeIdeal_ne_zero'
theorem coeIdeal_ne_zero' {I : Ideal R} (h : S ≤ nonZeroDivisors R) :
    (I : FractionalIdeal S P) ≠ 0 ↔ I ≠ (⊥ : Ideal R) 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] [loc : IsLocalization S P] {I : Ideal R} (h : S ≤ R⁰)
Goal: ↑I ≠ 0 ↔ I ≠ ⊥
-- FractionalIdeal.coeToSubmodule_eq_bot
theorem coeToSubmodule_eq_bot {I : FractionalIdeal S P} : (I : Submodule R P) = ⊥ ↔ I = 0 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] {I : FractionalIdeal S P}
Goal: ↑I = ⊥ ↔ I = 0
-- FractionalIdeal.coeToSubmodule_ne_bot
theorem coeToSubmodule_ne_bot {I : FractionalIdeal S P} : ↑I ≠ (⊥ : Submodule R P) ↔ I ≠ 0 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] {I : FractionalIdeal S P}
Goal: ↑I ≠ ⊥ ↔ I ≠ 0
-- FractionalIdeal.zero_of_num_eq_bot
theorem zero_of_num_eq_bot [NoZeroSMulDivisors R P] (hS : 0 ∉ S) {I : FractionalIdeal S P}
    (hI : I.num = ⊥) : I = 0 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] [NoZeroSMulDivisors R P] (hS : 0 ∉ S) {I : FractionalIdeal S P} (hI : I.num = ⊥)
Goal: I = 0
-- FractionalIdeal.num_zero_eq
theorem num_zero_eq (h_inj : Function.Injective (algebraMap R P)) :
    num (0 : FractionalIdeal S P) = 0 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] (h_inj : Function.Injective ⇑(algebraMap R P))
Goal: FractionalIdeal.num 0 = 0
-- FractionalIdeal.coeIdeal_top
@[simp, norm_cast]
theorem coeIdeal_top : ((⊤ : Ideal R) : FractionalIdeal S P) = 1 
Arguments: {R : Type u_1} [CommRing R] (S : Submonoid R) {P : Type u_2} [CommRing P] [Algebra R P]
Goal: ↑⊤ = 1
-- FractionalIdeal.mem_one_iff
theorem mem_one_iff {x : P} : x ∈ (1 : FractionalIdeal S P) ↔ ∃ x' : R, algebraMap R P x' = x 
Arguments: {R : Type u_1} [CommRing R] (S : Submonoid R) {P : Type u_2} [CommRing P] [Algebra R P] {x : P}
Goal: x ∈ 1 ↔ ∃ x', (algebraMap R P) x' = x
-- FractionalIdeal.coe_mem_one
theorem coe_mem_one (x : R) : algebraMap R P x ∈ (1 : FractionalIdeal S P) 
Arguments: {R : Type u_1} [CommRing R] (S : Submonoid R) {P : Type u_2} [CommRing P] [Algebra R P] (x : R)
Goal: (algebraMap R P) x ∈ 1
-- FractionalIdeal.one_mem_one
theorem one_mem_one : (1 : P) ∈ (1 : FractionalIdeal S P) 
Arguments: {R : Type u_1} [CommRing R] (S : Submonoid R) {P : Type u_2} [CommRing P] [Algebra R P]
Goal: 1 ∈ 1
-- FractionalIdeal.coe_one_eq_coeSubmodule_top
theorem coe_one_eq_coeSubmodule_top : ↑(1 : FractionalIdeal S P) = coeSubmodule P (⊤ : Ideal R) 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P]
Goal: ↑1 = IsLocalization.coeSubmodule P ⊤
-- FractionalIdeal.coe_one
@[simp, norm_cast]
theorem coe_one : (↑(1 : FractionalIdeal S P) : Submodule R P) = 1 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P]
Goal: ↑1 = 1
-- FractionalIdeal.coe_le_coe
@[simp]
theorem coe_le_coe {I J : FractionalIdeal S P} :
    (I : Submodule R P) ≤ (J : Submodule R P) ↔ I ≤ J 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] {I J : FractionalIdeal S P}
Goal: ↑I ≤ ↑J ↔ I ≤ J
-- FractionalIdeal.zero_le
theorem zero_le (I : FractionalIdeal S P) : 0 ≤ I 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] (I : FractionalIdeal S P)
Goal: 0 ≤ I
-- FractionalIdeal.bot_eq_zero
@[simp]
theorem bot_eq_zero : (⊥ : FractionalIdeal S P) = 0 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P]
Goal: ⊥ = 0
-- FractionalIdeal.le_zero_iff
@[simp]
theorem le_zero_iff {I : FractionalIdeal S P} : I ≤ 0 ↔ I = 0 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] {I : FractionalIdeal S P}
Goal: I ≤ 0 ↔ I = 0
-- FractionalIdeal.eq_zero_iff
theorem eq_zero_iff {I : FractionalIdeal S P} : I = 0 ↔ ∀ x ∈ I, x = (0 : P) 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] {I : FractionalIdeal S P}
Goal: I = 0 ↔ ∀ x ∈ I, x = 0
-- IsFractional.sup
theorem _root_.IsFractional.sup {I J : Submodule R P} :
    IsFractional S I → IsFractional S J → IsFractional S (I ⊔ J)
  
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] {I J : Submodule R P}
Goal: IsFractional S I → IsFractional S J → IsFractional S (I ⊔ J)
-- IsFractional.inf_right
theorem _root_.IsFractional.inf_right {I : Submodule R P} :
    IsFractional S I → ∀ J, IsFractional S (I ⊓ J)
  
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] {I : Submodule R P}
Goal: IsFractional S I → ∀ (J : Submodule R P), IsFractional S (I ⊓ J)
-- FractionalIdeal.coe_inf
@[simp, norm_cast]
theorem coe_inf (I J : FractionalIdeal S P) : ↑(I ⊓ J) = (I ⊓ J : Submodule R P) 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] (I J : FractionalIdeal S P)
Goal: ↑(I ⊓ J) = ↑I ⊓ ↑J
-- FractionalIdeal.coe_sup
@[norm_cast]
theorem coe_sup (I J : FractionalIdeal S P) : ↑(I ⊔ J) = (I ⊔ J : Submodule R P) 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] (I J : FractionalIdeal S P)
Goal: ↑(I ⊔ J) = ↑I ⊔ ↑J
-- FractionalIdeal.sup_eq_add
@[simp]
theorem sup_eq_add (I J : FractionalIdeal S P) : I ⊔ J = I + J 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] (I J : FractionalIdeal S P)
Goal: I ⊔ J = I + J
-- FractionalIdeal.coe_add
@[simp, norm_cast]
theorem coe_add (I J : FractionalIdeal S P) : (↑(I + J) : Submodule R P) = I + J 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] (I J : FractionalIdeal S P)
Goal: ↑(I + J) = ↑I + ↑J
-- FractionalIdeal.coeIdeal_sup
@[simp, norm_cast]
theorem coeIdeal_sup (I J : Ideal R) : ↑(I ⊔ J) = (I + J : FractionalIdeal S P) 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] (I J : Ideal R)
Goal: ↑(I ⊔ J) = ↑I + ↑J
-- IsFractional.nsmul
theorem _root_.IsFractional.nsmul {I : Submodule R P} :
    ∀ n : ℕ, IsFractional S I → IsFractional S (n • I : Submodule R P)
  
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] {I : Submodule R P} (n : ℕ)
Goal: IsFractional S I → IsFractional S (n • I)
-- FractionalIdeal.coe_nsmul
@[norm_cast]
theorem coe_nsmul (n : ℕ) (I : FractionalIdeal S P) :
    (↑(n • I) : Submodule R P) = n • (I : Submodule R P) 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] (n : ℕ) (I : FractionalIdeal S P)
Goal: ↑(n • I) = n • ↑I
-- IsFractional.mul
theorem _root_.IsFractional.mul {I J : Submodule R P} :
    IsFractional S I → IsFractional S J → IsFractional S (I * J : Submodule R P)
  
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] {I J : Submodule R P}
Goal: IsFractional S I → IsFractional S J → IsFractional S (I * J)
-- IsFractional.pow
theorem _root_.IsFractional.pow {I : Submodule R P} (h : IsFractional S I) :
    ∀ n : ℕ, IsFractional S (I ^ n : Submodule R P)
  
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] {I : Submodule R P} (h : IsFractional S I) (n : ℕ)
Goal: IsFractional S (I ^ n)
-- FractionalIdeal.mul_def'
irreducible_def mul (lemma := mul_def') (I J : FractionalIdeal S P) : FractionalIdeal S P 
Arguments: {R : Type u_3} [CommRing R] {S : Submonoid R} {P : Type u_4} [CommRing P] [Algebra R P] (I J : FractionalIdeal S P)
Goal: I.mul J = ⟨↑I * ↑J, ⋯⟩
-- FractionalIdeal.mul_eq_mul
@[simp]
theorem mul_eq_mul (I J : FractionalIdeal S P) : mul I J = I * J 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] (I J : FractionalIdeal S P)
Goal: I.mul J = I * J
-- FractionalIdeal.mul_def
theorem mul_def (I J : FractionalIdeal S P) :
    I * J = ⟨I * J, I.isFractional.mul J.isFractional⟩ 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] (I J : FractionalIdeal S P)
Goal: I * J = ⟨↑I * ↑J, ⋯⟩
-- FractionalIdeal.coe_mul
@[simp, norm_cast]
theorem coe_mul (I J : FractionalIdeal S P) : (↑(I * J) : Submodule R P) = I * J 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] (I J : FractionalIdeal S P)
Goal: ↑(I * J) = ↑I * ↑J
-- FractionalIdeal.coeIdeal_mul
@[simp, norm_cast]
theorem coeIdeal_mul (I J : Ideal R) : (↑(I * J) : FractionalIdeal S P) = I * J 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] (I J : Ideal R)
Goal: ↑(I * J) = ↑I * ↑J
-- FractionalIdeal.mul_left_mono
theorem mul_left_mono (I : FractionalIdeal S P) : Monotone (I * ·) 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] (I : FractionalIdeal S P)
Goal: Monotone fun x => I * x
-- FractionalIdeal.mul_right_mono
theorem mul_right_mono (I : FractionalIdeal S P) : Monotone fun J => J * I 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] (I : FractionalIdeal S P)
Goal: Monotone fun J => J * I
-- FractionalIdeal.mul_mem_mul
theorem mul_mem_mul {I J : FractionalIdeal S P} {i j : P} (hi : i ∈ I) (hj : j ∈ J) :
    i * j ∈ I * J 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] {I J : FractionalIdeal S P} {i j : P} (hi : i ∈ I) (hj : j ∈ J)
Goal: i * j ∈ I * J
-- FractionalIdeal.mul_le
theorem mul_le {I J K : FractionalIdeal S P} : I * J ≤ K ↔ ∀ i ∈ I, ∀ j ∈ J, i * j ∈ K 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] {I J K : FractionalIdeal S P}
Goal: I * J ≤ K ↔ ∀ i ∈ I, ∀ j ∈ J, i * j ∈ K
-- FractionalIdeal.coe_pow
@[simp, norm_cast]
theorem coe_pow (I : FractionalIdeal S P) (n : ℕ) : ↑(I ^ n) = (I : Submodule R P) ^ n 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] (I : FractionalIdeal S P) (n : ℕ)
Goal: ↑(I ^ n) = ↑I ^ n
-- FractionalIdeal.mul_induction_on
@[elab_as_elim]
protected theorem mul_induction_on {I J : FractionalIdeal S P} {C : P → Prop} {r : P}
    (hr : r ∈ I * J) (hm : ∀ i ∈ I, ∀ j ∈ J, C (i * j)) (ha : ∀ x y, C x → C y → C (x + y)) :
    C r 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] {I J : FractionalIdeal S P} {C : P → Prop} {r : P} (hr : r ∈ I * J) (hm : ∀ i ∈ I, ∀ j ∈ J, C (i * j)) (ha : ∀ (x y : P), C x → C y → C (x + y))
Goal: C r
-- FractionalIdeal.coe_natCast
theorem coe_natCast (n : ℕ) : ((n : FractionalIdeal S P) : Submodule R P) = n 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] (n : ℕ)
Goal: ↑↑n = ↑n
-- FractionalIdeal.coeSubmoduleHom_apply
@[simps]
def coeSubmoduleHom : FractionalIdeal S P →+* Submodule R P 
Arguments: {R : Type u_1} [CommRing R] (S : Submonoid R) (P : Type u_2) [CommRing P] [Algebra R P] (I : FractionalIdeal S P)
Goal: (FractionalIdeal.coeSubmoduleHom S P) I = ↑I
-- FractionalIdeal.add_le_add_left
theorem add_le_add_left {I J : FractionalIdeal S P} (hIJ : I ≤ J) (J' : FractionalIdeal S P) :
    J' + I ≤ J' + J 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] {I J : FractionalIdeal S P} (hIJ : I ≤ J) (J' : FractionalIdeal S P)
Goal: J' + I ≤ J' + J
-- FractionalIdeal.mul_le_mul_left
theorem mul_le_mul_left {I J : FractionalIdeal S P} (hIJ : I ≤ J) (J' : FractionalIdeal S P) :
    J' * I ≤ J' * J 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] {I J : FractionalIdeal S P} (hIJ : I ≤ J) (J' : FractionalIdeal S P)
Goal: J' * I ≤ J' * J
-- FractionalIdeal.le_self_mul_self
theorem le_self_mul_self {I : FractionalIdeal S P} (hI : 1 ≤ I) : I ≤ I * I 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] {I : FractionalIdeal S P} (hI : 1 ≤ I)
Goal: I ≤ I * I
-- FractionalIdeal.mul_self_le_self
theorem mul_self_le_self {I : FractionalIdeal S P} (hI : I ≤ 1) : I * I ≤ I 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] {I : FractionalIdeal S P} (hI : I ≤ 1)
Goal: I * I ≤ I
-- FractionalIdeal.coeIdeal_le_one
theorem coeIdeal_le_one {I : Ideal R} : (I : FractionalIdeal S P) ≤ 1 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] {I : Ideal R}
Goal: ↑I ≤ 1
-- FractionalIdeal.le_one_iff_exists_coeIdeal
theorem le_one_iff_exists_coeIdeal {J : FractionalIdeal S P} :
    J ≤ (1 : FractionalIdeal S P) ↔ ∃ I : Ideal R, ↑I = J 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] {J : FractionalIdeal S P}
Goal: J ≤ 1 ↔ ∃ I, ↑I = J
-- FractionalIdeal.one_le
@[simp]
theorem one_le {I : FractionalIdeal S P} : 1 ≤ I ↔ (1 : P) ∈ I 
Arguments: {R : Type u_1} [CommRing R] {S : Submonoid R} {P : Type u_2} [CommRing P] [Algebra R P] {I : FractionalIdeal S P}
Goal: 1 ≤ I ↔ 1 ∈ I
-- FractionalIdeal.coeIdealHom_apply
@[simps]
def coeIdealHom : Ideal R →+* FractionalIdeal S P 
Arguments: {R : Type u_1} [CommRing R] (S : Submonoid R) (P : Type u_2) [CommRing P] [Algebra R P] (I : Ideal R)
Goal: (FractionalIdeal.coeIdealHom S P) I = ↑I
-- FractionalIdeal.coeIdeal_pow
theorem coeIdeal_pow (I : Ideal R) (n : ℕ) : ↑(I ^ n) = (I : FractionalIdeal S P) ^ n 
Arguments: {R : Type u_1} [CommRing R] (S : Submonoid R) (P : Type u_2) [CommRing P] [Algebra R P] (I : Ideal R) (n : ℕ)
Goal: ↑(I ^ n) = ↑I ^ n
-- FractionalIdeal.coeIdeal_finprod
theorem coeIdeal_finprod [IsLocalization S P] {α : Sort*} {f : α → Ideal R}
    (hS : S ≤ nonZeroDivisors R) :
    ((∏ᶠ a : α, f a : Ideal R) : FractionalIdeal S P) = ∏ᶠ a : α, (f a : FractionalIdeal S P) 
Arguments: {R : Type u_1} [CommRing R] (S : Submonoid R) (P : Type u_2) [CommRing P] [Algebra R P] [IsLocalization S P] {α : Sort u_3} {f : α → Ideal R} (hS : S ≤ R⁰)
Goal: ↑(∏ᶠ (a : α), f a) = ∏ᶠ (a : α), ↑(f a)
-- FractionalIdeal.fg_of_isNoetherianRing
lemma fg_of_isNoetherianRing [hR : IsNoetherianRing R] (hS : S ≤ R⁰) (I : FractionalIdeal S P) :
    FG I.coeToSubmodule 
Arguments: {R : Type u_3} [CommRing R] [Nontrivial R] {S : Submonoid R} {P : Type u_4} [Nontrivial P] [CommRing P] [Algebra R P] [NoZeroSMulDivisors R P] [hR : IsNoetherianRing R] (hS : S ≤ R⁰) (I : FractionalIdeal S P)
Goal: (↑I).FG
-- WittVector.ext
@[ext]
theorem ext {x y : 𝕎 R} (h : ∀ n, x.coeff n = y.coeff n) : x = y 
Arguments: {p : ℕ} {R : Type u_1} {x y : 𝕎 R} (h : ∀ (n : ℕ), x.coeff n = y.coeff n)
Goal: x = y
-- WittVector.ext_iff
theorem ext_iff {x y : 𝕎 R} : x = y ↔ ∀ n, x.coeff n = y.coeff n 
Arguments: {p : ℕ} {R : Type u_1} {x y : 𝕎 R}
Goal: x = y ↔ ∀ (n : ℕ), x.coeff n = y.coeff n
-- WittVector.coeff_mk
theorem coeff_mk (x : ℕ → R) : (mk p x).coeff = x 
Arguments: (p : ℕ) {R : Type u_1} (x : ℕ → R)
Goal: (WittVector.mk p x).coeff = x
-- WittVector.wittZero_eq_zero
@[simp]
theorem wittZero_eq_zero (n : ℕ) : wittZero p n = 0 
Arguments: (p : ℕ) [hp : Fact (Nat.Prime p)] (n : ℕ)
Goal: WittVector.wittZero p n = 0
-- WittVector.wittOne_zero_eq_one
@[simp]
theorem wittOne_zero_eq_one : wittOne p 0 = 1 
Arguments: (p : ℕ) [hp : Fact (Nat.Prime p)]
Goal: WittVector.wittOne p 0 = 1
-- WittVector.wittOne_pos_eq_zero
@[simp]
theorem wittOne_pos_eq_zero (n : ℕ) (hn : 0 < n) : wittOne p n = 0 
Arguments: (p : ℕ) [hp : Fact (Nat.Prime p)] (n : ℕ) (hn : 0 < n)
Goal: WittVector.wittOne p n = 0
-- WittVector.wittAdd_zero
@[simp]
theorem wittAdd_zero : wittAdd p 0 = X (0, 0) + X (1, 0) 
Arguments: (p : ℕ) [hp : Fact (Nat.Prime p)]
Goal: WittVector.wittAdd p 0 = MvPolynomial.X (0, 0) + MvPolynomial.X (1, 0)
-- WittVector.wittSub_zero
@[simp]
theorem wittSub_zero : wittSub p 0 = X (0, 0) - X (1, 0) 
Arguments: (p : ℕ) [hp : Fact (Nat.Prime p)]
Goal: WittVector.wittSub p 0 = MvPolynomial.X (0, 0) - MvPolynomial.X (1, 0)
-- WittVector.wittMul_zero
@[simp]
theorem wittMul_zero : wittMul p 0 = X (0, 0) * X (1, 0) 
Arguments: (p : ℕ) [hp : Fact (Nat.Prime p)]
Goal: WittVector.wittMul p 0 = MvPolynomial.X (0, 0) * MvPolynomial.X (1, 0)
-- WittVector.wittNeg_zero
@[simp]
theorem wittNeg_zero : wittNeg p 0 = -X (0, 0) 
Arguments: (p : ℕ) [hp : Fact (Nat.Prime p)]
Goal: WittVector.wittNeg p 0 = -MvPolynomial.X (0, 0)
-- WittVector.constantCoeff_wittAdd
@[simp]
theorem constantCoeff_wittAdd (n : ℕ) : constantCoeff (wittAdd p n) = 0 
Arguments: (p : ℕ) [hp : Fact (Nat.Prime p)] (n : ℕ)
Goal: MvPolynomial.constantCoeff (WittVector.wittAdd p n) = 0
-- WittVector.constantCoeff_wittSub
@[simp]
theorem constantCoeff_wittSub (n : ℕ) : constantCoeff (wittSub p n) = 0 
Arguments: (p : ℕ) [hp : Fact (Nat.Prime p)] (n : ℕ)
Goal: MvPolynomial.constantCoeff (WittVector.wittSub p n) = 0
-- WittVector.constantCoeff_wittMul
@[simp]
theorem constantCoeff_wittMul (n : ℕ) : constantCoeff (wittMul p n) = 0 
Arguments: (p : ℕ) [hp : Fact (Nat.Prime p)] (n : ℕ)
Goal: MvPolynomial.constantCoeff (WittVector.wittMul p n) = 0
-- WittVector.constantCoeff_wittNeg
@[simp]
theorem constantCoeff_wittNeg (n : ℕ) : constantCoeff (wittNeg p n) = 0 
Arguments: (p : ℕ) [hp : Fact (Nat.Prime p)] (n : ℕ)
Goal: MvPolynomial.constantCoeff (WittVector.wittNeg p n) = 0
-- WittVector.constantCoeff_wittNSMul
@[simp]
theorem constantCoeff_wittNSMul (m : ℕ) (n : ℕ) : constantCoeff (wittNSMul p m n) = 0 
Arguments: (p : ℕ) [hp : Fact (Nat.Prime p)] (m n : ℕ)
Goal: MvPolynomial.constantCoeff (WittVector.wittNSMul p m n) = 0
-- WittVector.constantCoeff_wittZSMul
@[simp]
theorem constantCoeff_wittZSMul (z : ℤ) (n : ℕ) : constantCoeff (wittZSMul p z n) = 0 
Arguments: (p : ℕ) [hp : Fact (Nat.Prime p)] (z : ℤ) (n : ℕ)
Goal: MvPolynomial.constantCoeff (WittVector.wittZSMul p z n) = 0
-- WittVector.zero_coeff
@[simp]
theorem zero_coeff (n : ℕ) : (0 : 𝕎 R).coeff n = 0 
Arguments: (p : ℕ) (R : Type u_1) [hp : Fact (Nat.Prime p)] [CommRing R] (n : ℕ)
Goal: WittVector.coeff 0 n = 0
-- WittVector.one_coeff_zero
@[simp]
theorem one_coeff_zero : (1 : 𝕎 R).coeff 0 = 1 
Arguments: (p : ℕ) (R : Type u_1) [hp : Fact (Nat.Prime p)] [CommRing R]
Goal: WittVector.coeff 1 0 = 1
-- WittVector.one_coeff_eq_of_pos
@[simp]
theorem one_coeff_eq_of_pos (n : ℕ) (hn : 0 < n) : coeff (1 : 𝕎 R) n = 0 
Arguments: (p : ℕ) (R : Type u_1) [hp : Fact (Nat.Prime p)] [CommRing R] (n : ℕ) (hn : 0 < n)
Goal: WittVector.coeff 1 n = 0
-- WittVector.v2_coeff
@[simp]
theorem v2_coeff {p' R'} (x y : WittVector p' R') (i : Fin 2) :
    (![x, y] i).coeff = ![x.coeff, y.coeff] i 
Arguments: {p' : ℕ} {R' : Type u_2} (x y : WittVector p' R') (i : Fin 2)
Goal: (![x, y] i).coeff = ![x.coeff, y.coeff] i
-- WittVector.add_coeff
theorem add_coeff (x y : 𝕎 R) (n : ℕ) :
    (x + y).coeff n = peval (wittAdd p n) ![x.coeff, y.coeff] 
Arguments: {p : ℕ} {R : Type u_1} [hp : Fact (Nat.Prime p)] [CommRing R] (x y : 𝕎 R) (n : ℕ)
Goal: (x + y).coeff n = WittVector.peval (WittVector.wittAdd p n) ![x.coeff, y.coeff]
-- WittVector.sub_coeff
theorem sub_coeff (x y : 𝕎 R) (n : ℕ) :
    (x - y).coeff n = peval (wittSub p n) ![x.coeff, y.coeff] 
Arguments: {p : ℕ} {R : Type u_1} [hp : Fact (Nat.Prime p)] [CommRing R] (x y : 𝕎 R) (n : ℕ)
Goal: (x - y).coeff n = WittVector.peval (WittVector.wittSub p n) ![x.coeff, y.coeff]
-- WittVector.mul_coeff
theorem mul_coeff (x y : 𝕎 R) (n : ℕ) :
    (x * y).coeff n = peval (wittMul p n) ![x.coeff, y.coeff] 
Arguments: {p : ℕ} {R : Type u_1} [hp : Fact (Nat.Prime p)] [CommRing R] (x y : 𝕎 R) (n : ℕ)
Goal: (x * y).coeff n = WittVector.peval (WittVector.wittMul p n) ![x.coeff, y.coeff]
-- WittVector.neg_coeff
theorem neg_coeff (x : 𝕎 R) (n : ℕ) : (-x).coeff n = peval (wittNeg p n) ![x.coeff] 
Arguments: {p : ℕ} {R : Type u_1} [hp : Fact (Nat.Prime p)] [CommRing R] (x : 𝕎 R) (n : ℕ)
Goal: (-x).coeff n = WittVector.peval (WittVector.wittNeg p n) ![x.coeff]
-- WittVector.nsmul_coeff
theorem nsmul_coeff (m : ℕ) (x : 𝕎 R) (n : ℕ) :
    (m • x).coeff n = peval (wittNSMul p m n) ![x.coeff] 
Arguments: {p : ℕ} {R : Type u_1} [hp : Fact (Nat.Prime p)] [CommRing R] (m : ℕ) (x : 𝕎 R) (n : ℕ)
Goal: (m • x).coeff n = WittVector.peval (WittVector.wittNSMul p m n) ![x.coeff]
-- WittVector.zsmul_coeff
theorem zsmul_coeff (m : ℤ) (x : 𝕎 R) (n : ℕ) :
    (m • x).coeff n = peval (wittZSMul p m n) ![x.coeff] 
Arguments: {p : ℕ} {R : Type u_1} [hp : Fact (Nat.Prime p)] [CommRing R] (m : ℤ) (x : 𝕎 R) (n : ℕ)
Goal: (m • x).coeff n = WittVector.peval (WittVector.wittZSMul p m n) ![x.coeff]
-- WittVector.pow_coeff
theorem pow_coeff (m : ℕ) (x : 𝕎 R) (n : ℕ) :
    (x ^ m).coeff n = peval (wittPow p m n) ![x.coeff] 
Arguments: {p : ℕ} {R : Type u_1} [hp : Fact (Nat.Prime p)] [CommRing R] (m : ℕ) (x : 𝕎 R) (n : ℕ)
Goal: (x ^ m).coeff n = WittVector.peval (WittVector.wittPow p m n) ![x.coeff]
-- WittVector.add_coeff_zero
theorem add_coeff_zero (x y : 𝕎 R) : (x + y).coeff 0 = x.coeff 0 + y.coeff 0 
Arguments: {p : ℕ} {R : Type u_1} [hp : Fact (Nat.Prime p)] [CommRing R] (x y : 𝕎 R)
Goal: (x + y).coeff 0 = x.coeff 0 + y.coeff 0
-- WittVector.mul_coeff_zero
theorem mul_coeff_zero (x y : 𝕎 R) : (x * y).coeff 0 = x.coeff 0 * y.coeff 0 
Arguments: {p : ℕ} {R : Type u_1} [hp : Fact (Nat.Prime p)] [CommRing R] (x y : 𝕎 R)
Goal: (x * y).coeff 0 = x.coeff 0 * y.coeff 0
-- WittVector.wittAdd_vars
theorem wittAdd_vars (n : ℕ) : (wittAdd p n).vars ⊆ Finset.univ ×ˢ Finset.range (n + 1) 
Arguments: (p : ℕ) [hp : Fact (Nat.Prime p)] (n : ℕ)
Goal: (WittVector.wittAdd p n).vars ⊆ Finset.univ ×ˢ Finset.range (n + 1)
-- WittVector.wittSub_vars
theorem wittSub_vars (n : ℕ) : (wittSub p n).vars ⊆ Finset.univ ×ˢ Finset.range (n + 1) 
Arguments: (p : ℕ) [hp : Fact (Nat.Prime p)] (n : ℕ)
Goal: (WittVector.wittSub p n).vars ⊆ Finset.univ ×ˢ Finset.range (n + 1)
-- WittVector.wittMul_vars
theorem wittMul_vars (n : ℕ) : (wittMul p n).vars ⊆ Finset.univ ×ˢ Finset.range (n + 1) 
Arguments: (p : ℕ) [hp : Fact (Nat.Prime p)] (n : ℕ)
Goal: (WittVector.wittMul p n).vars ⊆ Finset.univ ×ˢ Finset.range (n + 1)
-- WittVector.wittNeg_vars
theorem wittNeg_vars (n : ℕ) : (wittNeg p n).vars ⊆ Finset.univ ×ˢ Finset.range (n + 1) 
Arguments: (p : ℕ) [hp : Fact (Nat.Prime p)] (n : ℕ)
Goal: (WittVector.wittNeg p n).vars ⊆ Finset.univ ×ˢ Finset.range (n + 1)
-- WittVector.wittNSMul_vars
theorem wittNSMul_vars (m : ℕ) (n : ℕ) :
    (wittNSMul p m n).vars ⊆ Finset.univ ×ˢ Finset.range (n + 1) 
Arguments: (p : ℕ) [hp : Fact (Nat.Prime p)] (m n : ℕ)
Goal: (WittVector.wittNSMul p m n).vars ⊆ Finset.univ ×ˢ Finset.range (n + 1)