ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- Ideal.mem_sSup_of_mem
theorem mem_sSup_of_mem {S : Set (Ideal R)} {s : Ideal R} (hs : s ∈ S) :
    ∀ {x : R}, x ∈ s → x ∈ sSup S 
Arguments: {R : Type u} [Semiring R] {S : Set (Ideal R)} {s : Ideal R} (hs : s ∈ S) {x : R}
Goal: x ∈ s → x ∈ sSup S
-- Ideal.mem_sInf
theorem mem_sInf {s : Set (Ideal R)} {x : R} : x ∈ sInf s ↔ ∀ ⦃I⦄, I ∈ s → x ∈ I 
Arguments: {R : Type u} [Semiring R] {s : Set (Ideal R)} {x : R}
Goal: x ∈ sInf s ↔ ∀ ⦃I : Ideal R⦄, I ∈ s → x ∈ I
-- Ideal.mem_inf
@[simp 1001] -- Porting note: increased priority to appease `simpNF`
theorem mem_inf {I J : Ideal R} {x : R} : x ∈ I ⊓ J ↔ x ∈ I ∧ x ∈ J 
Arguments: {R : Type u} [Semiring R] {I J : Ideal R} {x : R}
Goal: x ∈ I ⊓ J ↔ x ∈ I ∧ x ∈ J
-- Ideal.mem_iInf
@[simp 1001] -- Porting note: increased priority to appease `simpNF`
theorem mem_iInf {ι : Sort*} {I : ι → Ideal R} {x : R} : x ∈ iInf I ↔ ∀ i, x ∈ I i 
Arguments: {R : Type u} [Semiring R] {ι : Sort u_1} {I : ι → Ideal R} {x : R}
Goal: x ∈ iInf I ↔ ∀ (i : ι), x ∈ I i
-- Ideal.mem_bot
@[simp 1001] -- Porting note: increased priority to appease `simpNF`
theorem mem_bot {x : R} : x ∈ (⊥ : Ideal R) ↔ x = 0 
Arguments: {R : Type u} [Semiring R] {x : R}
Goal: x ∈ ⊥ ↔ x = 0
-- Ideal.mem_pi
theorem mem_pi (x : ι → α) : x ∈ I.pi ι ↔ ∀ i, x i ∈ I 
Arguments: {α : Type u} [Semiring α] (I : Ideal α) (ι : Type v) (x : ι → α)
Goal: x ∈ I.pi ι ↔ ∀ (i : ι), x i ∈ I
-- Ideal.sInf_isPrime_of_isChain
theorem sInf_isPrime_of_isChain {s : Set (Ideal α)} (hs : s.Nonempty) (hs' : IsChain (· ≤ ·) s)
    (H : ∀ p ∈ s, Ideal.IsPrime p) : (sInf s).IsPrime 
Arguments: {α : Type u} [Semiring α] {s : Set (Ideal α)} (hs : s.Nonempty) (hs' : IsChain (fun x x_1 => x ≤ x_1) s) (H : ∀ p ∈ s, p.IsPrime)
Goal: (sInf s).IsPrime
-- Ideal.mul_unit_mem_iff_mem
@[simp]
theorem mul_unit_mem_iff_mem {x y : α} (hy : IsUnit y) : x * y ∈ I ↔ x ∈ I 
Arguments: {α : Type u} [CommSemiring α] (I : Ideal α) {x y : α} (hy : IsUnit y)
Goal: x * y ∈ I ↔ x ∈ I
-- Ideal.mem_span_singleton
theorem mem_span_singleton {x y : α} : x ∈ span ({y} : Set α) ↔ y ∣ x 
Arguments: {α : Type u} [CommSemiring α] {x y : α}
Goal: x ∈ Ideal.span {y} ↔ y ∣ x
-- Ideal.mem_span_singleton_self
theorem mem_span_singleton_self (x : α) : x ∈ span ({x} : Set α) 
Arguments: {α : Type u} [CommSemiring α] (x : α)
Goal: x ∈ Ideal.span {x}
-- Ideal.span_singleton_le_span_singleton
theorem span_singleton_le_span_singleton {x y : α} :
    span ({x} : Set α) ≤ span ({y} : Set α) ↔ y ∣ x 
Arguments: {α : Type u} [CommSemiring α] {x y : α}
Goal: Ideal.span {x} ≤ Ideal.span {y} ↔ y ∣ x
-- Ideal.span_singleton_eq_span_singleton
theorem span_singleton_eq_span_singleton {α : Type u} [CommRing α] [IsDomain α] {x y : α} :
    span ({x} : Set α) = span ({y} : Set α) ↔ Associated x y 
Arguments: {α : Type u} [CommRing α] [IsDomain α] {x y : α}
Goal: Ideal.span {x} = Ideal.span {y} ↔ Associated x y
-- Ideal.span_singleton_mul_right_unit
theorem span_singleton_mul_right_unit {a : α} (h2 : IsUnit a) (x : α) :
    span ({x * a} : Set α) = span {x} 
Arguments: {α : Type u} [CommSemiring α] {a : α} (h2 : IsUnit a) (x : α)
Goal: Ideal.span {x * a} = Ideal.span {x}
-- Ideal.span_singleton_eq_top
@[simp]
theorem span_singleton_eq_top {x} : span ({x} : Set α) = ⊤ ↔ IsUnit x 
Arguments: {α : Type u} [CommSemiring α] {x : α}
Goal: Ideal.span {x} = ⊤ ↔ IsUnit x
-- Ideal.span_singleton_prime
theorem span_singleton_prime {p : α} (hp : p ≠ 0) : IsPrime (span ({p} : Set α)) ↔ Prime p 
Arguments: {α : Type u} [CommSemiring α] {p : α} (hp : p ≠ 0)
Goal: (Ideal.span {p}).IsPrime ↔ Prime p
-- Ideal.IsMaximal.isPrime
theorem IsMaximal.isPrime {I : Ideal α} (H : I.IsMaximal) : I.IsPrime 
Arguments: {α : Type u} [CommSemiring α] {I : Ideal α} (H : I.IsMaximal)
Goal: I.IsPrime
-- Ideal.span_singleton_lt_span_singleton
theorem span_singleton_lt_span_singleton [IsDomain α] {x y : α} :
    span ({x} : Set α) < span ({y} : Set α) ↔ DvdNotUnit y x 
Arguments: {α : Type u} [CommSemiring α] [IsDomain α] {x y : α}
Goal: Ideal.span {x} < Ideal.span {y} ↔ DvdNotUnit y x
-- Ideal.factors_decreasing
theorem factors_decreasing [IsDomain α] (b₁ b₂ : α) (h₁ : b₁ ≠ 0) (h₂ : ¬IsUnit b₂) :
    span ({b₁ * b₂} : Set α) < span {b₁} 
Arguments: {α : Type u} [CommSemiring α] [IsDomain α] (b₁ b₂ : α) (h₁ : b₁ ≠ 0) (h₂ : ¬IsUnit b₂)
Goal: Ideal.span {b₁ * b₂} < Ideal.span {b₁}
-- Ideal.mul_mem_right
theorem mul_mem_right (h : a ∈ I) : a * b ∈ I 
Arguments: {α : Type u} {a : α} (b : α) [CommSemiring α] (I : Ideal α) (h : a ∈ I)
Goal: a * b ∈ I
-- Ideal.pow_mem_of_mem
theorem pow_mem_of_mem (ha : a ∈ I) (n : ℕ) (hn : 0 < n) : a ^ n ∈ I 
Arguments: {α : Type u} {a : α} [CommSemiring α] (I : Ideal α) (ha : a ∈ I) (n : ℕ) (hn : 0 < n)
Goal: a ^ n ∈ I
-- Ideal.pow_mem_of_pow_mem
theorem pow_mem_of_pow_mem {m n : ℕ} (ha : a ^ m ∈ I) (h : m ≤ n) : a ^ n ∈ I 
Arguments: {α : Type u} {a : α} [CommSemiring α] (I : Ideal α) {m n : ℕ} (ha : a ^ m ∈ I) (h : m ≤ n)
Goal: a ^ n ∈ I
-- Ideal.add_pow_mem_of_pow_mem_of_le
theorem add_pow_mem_of_pow_mem_of_le {m n k : ℕ}
    (ha : a ^ m ∈ I) (hb : b ^ n ∈ I) (hk : m + n ≤ k + 1) :
    (a + b) ^ k ∈ I 
Arguments: {α : Type u} {a b : α} [CommSemiring α] (I : Ideal α) {m n k : ℕ} (ha : a ^ m ∈ I) (hb : b ^ n ∈ I) (hk : m + n ≤ k + 1)
Goal: (a + b) ^ k ∈ I
-- Ideal.add_pow_add_pred_mem_of_pow_mem
theorem add_pow_add_pred_mem_of_pow_mem  {m n : ℕ}
    (ha : a ^ m ∈ I) (hb : b ^ n ∈ I) :
    (a + b) ^ (m + n - 1) ∈ I 
Arguments: {α : Type u} {a b : α} [CommSemiring α] (I : Ideal α) {m n : ℕ} (ha : a ^ m ∈ I) (hb : b ^ n ∈ I)
Goal: (a + b) ^ (m + n - 1) ∈ I
-- Ideal.IsPrime.mul_mem_iff_mem_or_mem
theorem IsPrime.mul_mem_iff_mem_or_mem {I : Ideal α} (hI : I.IsPrime) :
    ∀ {x y : α}, x * y ∈ I ↔ x ∈ I ∨ y ∈ I 
Arguments: {α : Type u} [CommSemiring α] {I : Ideal α} (hI : I.IsPrime) {x y : α}
Goal: x * y ∈ I ↔ x ∈ I ∨ y ∈ I
-- Ideal.IsPrime.pow_mem_iff_mem
theorem IsPrime.pow_mem_iff_mem {I : Ideal α} (hI : I.IsPrime) {r : α} (n : ℕ) (hn : 0 < n) :
    r ^ n ∈ I ↔ r ∈ I 
Arguments: {α : Type u} [CommSemiring α] {I : Ideal α} (hI : I.IsPrime) {r : α} (n : ℕ) (hn : 0 < n)
Goal: r ^ n ∈ I ↔ r ∈ I
-- Ideal.pow_multiset_sum_mem_span_pow
theorem pow_multiset_sum_mem_span_pow [DecidableEq α] (s : Multiset α) (n : ℕ) :
    s.sum ^ (Multiset.card s * n + 1) ∈
    span ((s.map fun (x : α) ↦ x ^ (n + 1)).toFinset : Set α) 
Arguments: {α : Type u} [CommSemiring α] [DecidableEq α] (s : Multiset α) (n : ℕ)
Goal: s.sum ^ (Multiset.card s * n + 1) ∈ Ideal.span ↑(Multiset.map (fun x => x ^ (n + 1)) s).toFinset
-- Ideal.sum_pow_mem_span_pow
theorem sum_pow_mem_span_pow {ι} (s : Finset ι) (f : ι → α) (n : ℕ) :
    (∑ i ∈ s, f i) ^ (s.card * n + 1) ∈ span ((fun i => f i ^ (n + 1)) '' s) 
Arguments: {α : Type u} [CommSemiring α] {ι : Type u_1} (s : Finset ι) (f : ι → α) (n : ℕ)
Goal: (∑ i ∈ s, f i) ^ (s.card * n + 1) ∈ Ideal.span ((fun i => f i ^ (n + 1)) '' ↑s)
-- Ideal.span_pow_eq_top
theorem span_pow_eq_top (s : Set α) (hs : span s = ⊤) (n : ℕ) :
    span ((fun (x : α) => x ^ n) '' s) = ⊤ 
Arguments: {α : Type u} [CommSemiring α] (s : Set α) (hs : Ideal.span s = ⊤) (n : ℕ)
Goal: Ideal.span ((fun x => x ^ n) '' s) = ⊤
-- Ideal.isPrime_of_maximally_disjoint
lemma isPrime_of_maximally_disjoint (I : Ideal α)
    (S : Submonoid α)
    (disjoint : Disjoint (I : Set α) S)
    (maximally_disjoint : ∀ (J : Ideal α), I < J → ¬ Disjoint (J : Set α) S) :
    I.IsPrime 
Arguments: {α : Type u} [CommSemiring α] (I : Ideal α) (S : Submonoid α) (disjoint : Disjoint ↑I ↑S) (maximally_disjoint : ∀ (J : Ideal α), I < J → ¬Disjoint ↑J ↑S)
Goal: I.IsPrime
-- Ideal.neg_mem_iff
protected theorem neg_mem_iff : -a ∈ I ↔ a ∈ I 
Arguments: {α : Type u} [Ring α] (I : Ideal α) {a : α}
Goal: -a ∈ I ↔ a ∈ I
-- Ideal.add_mem_iff_left
protected theorem add_mem_iff_left : b ∈ I → (a + b ∈ I ↔ a ∈ I) 
Arguments: {α : Type u} [Ring α] (I : Ideal α) {a b : α}
Goal: b ∈ I → (a + b ∈ I ↔ a ∈ I)
-- Ideal.add_mem_iff_right
protected theorem add_mem_iff_right : a ∈ I → (a + b ∈ I ↔ b ∈ I) 
Arguments: {α : Type u} [Ring α] (I : Ideal α) {a b : α}
Goal: a ∈ I → (a + b ∈ I ↔ b ∈ I)
-- Ideal.sub_mem
protected theorem sub_mem : a ∈ I → b ∈ I → a - b ∈ I 
Arguments: {α : Type u} [Ring α] (I : Ideal α) {a b : α}
Goal: a ∈ I → b ∈ I → a - b ∈ I
-- Ideal.mem_span_insert'
theorem mem_span_insert' {s : Set α} {x y} : x ∈ span (insert y s) ↔ ∃ a, x + a * y ∈ span s 
Arguments: {α : Type u} [Ring α] {s : Set α} {x y : α}
Goal: x ∈ Ideal.span (insert y s) ↔ ∃ a, x + a * y ∈ Ideal.span s
-- Ideal.span_singleton_neg
@[simp]
theorem span_singleton_neg (x : α) : (span {-x} : Ideal α) = span {x} 
Arguments: {α : Type u} [Ring α] (x : α)
Goal: Ideal.span {-x} = Ideal.span {x}
-- Ideal.eq_bot_or_top
theorem eq_bot_or_top : I = ⊥ ∨ I = ⊤ 
Arguments: {K : Type u} [DivisionSemiring K] (I : Ideal K)
Goal: I = ⊥ ∨ I = ⊤
-- Ideal.eq_bot_of_prime
theorem eq_bot_of_prime [h : I.IsPrime] : I = ⊥ 
Arguments: {K : Type u} [DivisionSemiring K] (I : Ideal K) [h : I.IsPrime]
Goal: I = ⊥
-- Ideal.bot_isMaximal
theorem bot_isMaximal : IsMaximal (⊥ : Ideal K) 
Arguments: {K : Type u} [DivisionSemiring K]
Goal: ⊥.IsMaximal
-- Ideal.mul_sub_mul_mem
theorem mul_sub_mul_mem {R : Type*} [CommRing R] (I : Ideal R) {a b c d : R} (h1 : a - b ∈ I)
    (h2 : c - d ∈ I) : a * c - b * d ∈ I 
Arguments: {R : Type u_1} [CommRing R] (I : Ideal R) {a b c d : R} (h1 : a - b ∈ I) (h2 : c - d ∈ I)
Goal: a * c - b * d ∈ I
-- Ring.exists_not_isUnit_of_not_isField
theorem exists_not_isUnit_of_not_isField [Nontrivial R] (hf : ¬IsField R) :
    ∃ (x : R) (_hx : x ≠ (0 : R)), ¬IsUnit x 
Arguments: {R : Type u_1} [CommSemiring R] [Nontrivial R] (hf : ¬IsField R)
Goal: ∃ x, ∃ (_ : x ≠ 0), ¬IsUnit x
-- Ring.not_isField_iff_exists_ideal_bot_lt_and_lt_top
theorem not_isField_iff_exists_ideal_bot_lt_and_lt_top [Nontrivial R] :
    ¬IsField R ↔ ∃ I : Ideal R, ⊥ < I ∧ I < ⊤ 
Arguments: {R : Type u_1} [CommSemiring R] [Nontrivial R]
Goal: ¬IsField R ↔ ∃ I, ⊥ < I ∧ I < ⊤
-- Ring.not_isField_iff_exists_prime
theorem not_isField_iff_exists_prime [Nontrivial R] :
    ¬IsField R ↔ ∃ p : Ideal R, p ≠ ⊥ ∧ p.IsPrime 
Arguments: {R : Type u_1} [CommSemiring R] [Nontrivial R]
Goal: ¬IsField R ↔ ∃ p, p ≠ ⊥ ∧ p.IsPrime
-- Ring.isField_iff_isSimpleOrder_ideal
theorem isField_iff_isSimpleOrder_ideal : IsField R ↔ IsSimpleOrder (Ideal R) 
Arguments: {R : Type u_1} [CommSemiring R]
Goal: IsField R ↔ IsSimpleOrder (Ideal R)
-- Ring.ne_bot_of_isMaximal_of_not_isField
theorem ne_bot_of_isMaximal_of_not_isField [Nontrivial R] {M : Ideal R} (max : M.IsMaximal)
    (not_field : ¬IsField R) : M ≠ ⊥ 
Arguments: {R : Type u_1} [CommSemiring R] [Nontrivial R] {M : Ideal R} (max : M.IsMaximal) (not_field : ¬IsField R)
Goal: M ≠ ⊥
-- Ideal.bot_lt_of_maximal
theorem bot_lt_of_maximal (M : Ideal R) [hm : M.IsMaximal] (non_field : ¬IsField R) : ⊥ < M 
Arguments: {R : Type u} [CommSemiring R] [Nontrivial R] (M : Ideal R) [hm : M.IsMaximal] (non_field : ¬IsField R)
Goal: ⊥ < M
-- mem_nonunits_iff
@[simp]
theorem mem_nonunits_iff [Monoid α] : a ∈ nonunits α ↔ ¬IsUnit a 
Arguments: {α : Type u} {a : α} [Monoid α]
Goal: a ∈ nonunits α ↔ ¬IsUnit a
-- mul_mem_nonunits_right
theorem mul_mem_nonunits_right [CommMonoid α] : b ∈ nonunits α → a * b ∈ nonunits α 
Arguments: {α : Type u} {a b : α} [CommMonoid α]
Goal: b ∈ nonunits α → a * b ∈ nonunits α
-- mul_mem_nonunits_left
theorem mul_mem_nonunits_left [CommMonoid α] : a ∈ nonunits α → a * b ∈ nonunits α 
Arguments: {α : Type u} {a b : α} [CommMonoid α]
Goal: a ∈ nonunits α → a * b ∈ nonunits α
-- zero_mem_nonunits
theorem zero_mem_nonunits [Semiring α] : 0 ∈ nonunits α ↔ (0 : α) ≠ 1 
Arguments: {α : Type u} [Semiring α]
Goal: 0 ∈ nonunits α ↔ 0 ≠ 1
-- one_not_mem_nonunits
@[simp 1001] -- increased priority to appease `simpNF`
theorem one_not_mem_nonunits [Monoid α] : (1 : α) ∉ nonunits α 
Arguments: {α : Type u} [Monoid α]
Goal: 1 ∉ nonunits α
-- coe_subset_nonunits
theorem coe_subset_nonunits [Semiring α] {I : Ideal α} (h : I ≠ ⊤) : (I : Set α) ⊆ nonunits α 
Arguments: {α : Type u} [Semiring α] {I : Ideal α} (h : I ≠ ⊤)
Goal: ↑I ⊆ nonunits α
-- exists_max_ideal_of_mem_nonunits
theorem exists_max_ideal_of_mem_nonunits [CommSemiring α] (h : a ∈ nonunits α) :
    ∃ I : Ideal α, I.IsMaximal ∧ a ∈ I 
Arguments: {α : Type u} {a : α} [CommSemiring α] (h : a ∈ nonunits α)
Goal: ∃ I, I.IsMaximal ∧ a ∈ I
-- LinearMap.baseChange_tmul
@[simp]
theorem baseChange_tmul (a : A) (x : M) : f.baseChange A (a ⊗ₜ x) = a ⊗ₜ f x 
Arguments: {R : Type u_1} {A : Type u_2} {M : Type u_4} {N : Type u_5} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [AddCommMonoid N] [Module R M] [Module R N] (f : M →ₗ[R] N) (a : A) (x : M)
Goal: (LinearMap.baseChange A f) (a ⊗ₜ[R] x) = a ⊗ₜ[R] f x
-- LinearMap.baseChange_eq_ltensor
theorem baseChange_eq_ltensor : (f.baseChange A : A ⊗ M → A ⊗ N) = f.lTensor A 
Arguments: {R : Type u_1} {A : Type u_2} {M : Type u_4} {N : Type u_5} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [AddCommMonoid N] [Module R M] [Module R N] (f : M →ₗ[R] N)
Goal: ⇑(LinearMap.baseChange A f) = ⇑(LinearMap.lTensor A f)
-- LinearMap.baseChange_add
@[simp]
theorem baseChange_add : (f + g).baseChange A = f.baseChange A + g.baseChange A 
Arguments: {R : Type u_1} {A : Type u_2} {M : Type u_4} {N : Type u_5} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [AddCommMonoid N] [Module R M] [Module R N] (f g : M →ₗ[R] N)
Goal: LinearMap.baseChange A (f + g) = LinearMap.baseChange A f + LinearMap.baseChange A g
-- LinearMap.baseChange_zero
@[simp]
theorem baseChange_zero : baseChange A (0 : M →ₗ[R] N) = 0 
Arguments: {R : Type u_1} {A : Type u_2} {M : Type u_4} {N : Type u_5} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [AddCommMonoid N] [Module R M] [Module R N]
Goal: LinearMap.baseChange A 0 = 0
-- LinearMap.baseChange_smul
@[simp]
theorem baseChange_smul : (r • f).baseChange A = r • f.baseChange A 
Arguments: {R : Type u_1} {A : Type u_2} {M : Type u_4} {N : Type u_5} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [AddCommMonoid N] [Module R M] [Module R N] (r : R) (f : M →ₗ[R] N)
Goal: LinearMap.baseChange A (r • f) = r • LinearMap.baseChange A f
-- LinearMap.baseChange_id
@[simp]
lemma baseChange_id : (.id : M →ₗ[R] M).baseChange A = .id 
Arguments: {R : Type u_1} {A : Type u_2} {M : Type u_4} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M]
Goal: LinearMap.baseChange A LinearMap.id = LinearMap.id
-- LinearMap.baseChange_comp
lemma baseChange_comp (g : N →ₗ[R] P) :
    (g ∘ₗ f).baseChange A = g.baseChange A ∘ₗ f.baseChange A 
Arguments: {R : Type u_1} {A : Type u_2} {M : Type u_4} {N : Type u_5} {P : Type u_6} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [AddCommMonoid N] [AddCommMonoid P] [Module R M] [Module R N] [Module R P] (f : M →ₗ[R] N) (g : N →ₗ[R] P)
Goal: LinearMap.baseChange A (g ∘ₗ f) = LinearMap.baseChange A g ∘ₗ LinearMap.baseChange A f
-- LinearMap.baseChange_one
@[simp]
lemma baseChange_one : (1 : Module.End R M).baseChange A = 1 
Arguments: (R : Type u_1) {A : Type u_2} (M : Type u_4) [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M]
Goal: LinearMap.baseChange A 1 = 1
-- LinearMap.baseChange_mul
lemma baseChange_mul (f g : Module.End R M) :
    (f * g).baseChange A = f.baseChange A * g.baseChange A 
Arguments: {R : Type u_1} {A : Type u_2} {M : Type u_4} [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f g : Module.End R M)
Goal: LinearMap.baseChange A (f * g) = LinearMap.baseChange A f * LinearMap.baseChange A g
-- LinearMap.baseChangeHom_apply
@[simps]
def baseChangeHom : (M →ₗ[R] N) →ₗ[R] A ⊗[R] M →ₗ[A] A ⊗[R] N 
Arguments: (R : Type u_1) (A : Type u_2) (M : Type u_4) (N : Type u_5) [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [AddCommMonoid N] [Module R M] [Module R N] (f : M →ₗ[R] N)
Goal: (LinearMap.baseChangeHom R A M N) f = LinearMap.baseChange A f
-- Module.End.baseChangeHom_apply_apply
@[simps!]
def _root_.Module.End.baseChangeHom : Module.End R M →ₐ[R] Module.End A (A ⊗[R] M) 
Arguments: (R : Type u_1) (A : Type u_2) (M : Type u_4) [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (a : Module.End R M)
Goal: ∀ (a_1 : A ⊗[R] M),
  ((Module.End.baseChangeHom R A M) a) a_1 =
    (TensorProduct.liftAux
        (↑R
          ({ toFun := fun h => h ∘ₗ a, map_add' := ⋯, map_smul' := ⋯ } ∘ₗ
            TensorProduct.AlgebraTensorModule.mk R A A M)))
      a_1
-- LinearMap.baseChange_pow
lemma baseChange_pow (f : Module.End R M) (n : ℕ) :
    (f ^ n).baseChange A = f.baseChange A ^ n 
Arguments: (R : Type u_1) (A : Type u_2) (M : Type u_4) [CommSemiring R] [Semiring A] [Algebra R A] [AddCommMonoid M] [Module R M] (f : Module.End R M) (n : ℕ)
Goal: LinearMap.baseChange A (f ^ n) = LinearMap.baseChange A f ^ n
-- LinearMap.baseChange_sub
@[simp]
theorem baseChange_sub : (f - g).baseChange A = f.baseChange A - g.baseChange A 
Arguments: {R : Type u_1} {A : Type u_2} {M : Type u_4} {N : Type u_5} [CommRing R] [Ring A] [Algebra R A] [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] (f g : M →ₗ[R] N)
Goal: LinearMap.baseChange A (f - g) = LinearMap.baseChange A f - LinearMap.baseChange A g
-- LinearMap.baseChange_neg
@[simp]
theorem baseChange_neg : (-f).baseChange A = -f.baseChange A 
Arguments: {R : Type u_1} {A : Type u_2} {M : Type u_4} {N : Type u_5} [CommRing R] [Ring A] [Algebra R A] [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] (f : M →ₗ[R] N)
Goal: LinearMap.baseChange A (-f) = -LinearMap.baseChange A f
-- LinearMap.liftBaseChange_tmul
@[simp]
lemma liftBaseChange_tmul (l : M →ₗ[R] N) (x y) : l.liftBaseChange A (x ⊗ₜ y) = x • l y 
Arguments: {R : Type u_1} {M : Type u_2} {N : Type u_3} (A : Type u_4) [CommSemiring R] [CommSemiring A] [Algebra R A] [AddCommMonoid M] [AddCommMonoid N] [Module R M] [Module R N] [Module A N] [IsScalarTower R A N] (l : M →ₗ[R] N) (x : A) (y : M)
Goal: (LinearMap.liftBaseChange A l) (x ⊗ₜ[R] y) = x • l y
-- LinearMap.liftBaseChange_one_tmul
lemma liftBaseChange_one_tmul (l : M →ₗ[R] N) (y) : l.liftBaseChange A (1 ⊗ₜ y) = l y 
Arguments: {R : Type u_1} {M : Type u_2} {N : Type u_3} (A : Type u_4) [CommSemiring R] [CommSemiring A] [Algebra R A] [AddCommMonoid M] [AddCommMonoid N] [Module R M] [Module R N] [Module A N] [IsScalarTower R A N] (l : M →ₗ[R] N) (y : M)
Goal: (LinearMap.liftBaseChange A l) (1 ⊗ₜ[R] y) = l y
-- LinearMap.liftBaseChangeEquiv_symm_apply
@[simp]
lemma liftBaseChangeEquiv_symm_apply (l : A ⊗[R] M →ₗ[A] N) (x) :
    (liftBaseChangeEquiv A).symm l x = l (1 ⊗ₜ x) 
Arguments: {R : Type u_4} {M : Type u_2} {N : Type u_3} (A : Type u_1) [CommSemiring R] [CommSemiring A] [Algebra R A] [AddCommMonoid M] [AddCommMonoid N] [Module R M] [Module R N] [Module A N] [IsScalarTower R A N] (l : A ⊗[R] M →ₗ[A] N) (x : M)
Goal: ((LinearMap.liftBaseChangeEquiv A).symm l) x = l (1 ⊗ₜ[R] x)
-- LinearMap.liftBaseChange_comp
lemma liftBaseChange_comp {P} [AddCommMonoid P] [Module A P] [Module R P] [IsScalarTower R A P]
    (l : M →ₗ[R] N) (l' : N →ₗ[A] P) :
      l' ∘ₗ l.liftBaseChange A = (l'.restrictScalars R ∘ₗ l).liftBaseChange A 
Arguments: {R : Type u_3} {M : Type u_4} {N : Type u_5} (A : Type u_2) [CommSemiring R] [CommSemiring A] [Algebra R A] [AddCommMonoid M] [AddCommMonoid N] [Module R M] [Module R N] [Module A N] [IsScalarTower R A N] {P : Type u_1} [AddCommMonoid P] [Module A P] [Module R P] [IsScalarTower R A P] (l : M →ₗ[R] N) (l' : N →ₗ[A] P)
Goal: l' ∘ₗ LinearMap.liftBaseChange A l = LinearMap.liftBaseChange A (↑R l' ∘ₗ l)
-- LinearMap.range_liftBaseChange
@[simp]
lemma range_liftBaseChange (l : M →ₗ[R] N) :
    LinearMap.range (l.liftBaseChange A) = Submodule.span A (LinearMap.range l) 
Arguments: {R : Type u_1} {M : Type u_2} {N : Type u_3} (A : Type u_4) [CommSemiring R] [CommSemiring A] [Algebra R A] [AddCommMonoid M] [AddCommMonoid N] [Module R M] [Module R N] [Module A N] [IsScalarTower R A N] (l : M →ₗ[R] N)
Goal: LinearMap.range (LinearMap.liftBaseChange A l) = Submodule.span A ↑(LinearMap.range l)
-- Algebra.TensorProduct.one_def
theorem one_def : (1 : A ⊗[R] B) = (1 : A) ⊗ₜ (1 : B) 
Arguments: {R : Type uR} {A : Type uA} {B : Type uB} [CommSemiring R] [AddCommMonoidWithOne A] [Module R A] [AddCommMonoidWithOne B] [Module R B]
Goal: 1 = 1 ⊗ₜ[R] 1
-- Algebra.TensorProduct.natCast_def
theorem natCast_def (n : ℕ) : (n : A ⊗[R] B) = (n : A) ⊗ₜ (1 : B) 
Arguments: {R : Type uR} {A : Type uA} {B : Type uB} [CommSemiring R] [AddCommMonoidWithOne A] [Module R A] [AddCommMonoidWithOne B] [Module R B] (n : ℕ)
Goal: ↑n = ↑n ⊗ₜ[R] 1
-- Algebra.TensorProduct.natCast_def'
theorem natCast_def' (n : ℕ) : (n : A ⊗[R] B) = (1 : A) ⊗ₜ (n : B) 
Arguments: {R : Type uR} {A : Type uA} {B : Type uB} [CommSemiring R] [AddCommMonoidWithOne A] [Module R A] [AddCommMonoidWithOne B] [Module R B] (n : ℕ)
Goal: ↑n = 1 ⊗ₜ[R] ↑n
-- Algebra.TensorProduct.mul_apply
@[simp]
theorem mul_apply (a₁ a₂ : A) (b₁ b₂ : B) :
    mul (a₁ ⊗ₜ[R] b₁) (a₂ ⊗ₜ[R] b₂) = (a₁ * a₂) ⊗ₜ[R] (b₁ * b₂) 
Arguments: {R : Type uR} {A : Type uA} {B : Type uB} [CommSemiring R] [NonUnitalNonAssocSemiring A] [Module R A] [SMulCommClass R A A] [IsScalarTower R A A] [NonUnitalNonAssocSemiring B] [Module R B] [SMulCommClass R B B] [IsScalarTower R B B] (a₁ a₂ : A) (b₁ b₂ : B)
Goal: (Algebra.TensorProduct.mul (a₁ ⊗ₜ[R] b₁)) (a₂ ⊗ₜ[R] b₂) = (a₁ * a₂) ⊗ₜ[R] (b₁ * b₂)
-- Algebra.TensorProduct.tmul_mul_tmul
@[simp]
theorem tmul_mul_tmul (a₁ a₂ : A) (b₁ b₂ : B) :
    a₁ ⊗ₜ[R] b₁ * a₂ ⊗ₜ[R] b₂ = (a₁ * a₂) ⊗ₜ[R] (b₁ * b₂) 
Arguments: {R : Type uR} {A : Type uA} {B : Type uB} [CommSemiring R] [NonUnitalNonAssocSemiring A] [Module R A] [SMulCommClass R A A] [IsScalarTower R A A] [NonUnitalNonAssocSemiring B] [Module R B] [SMulCommClass R B B] [IsScalarTower R B B] (a₁ a₂ : A) (b₁ b₂ : B)
Goal: a₁ ⊗ₜ[R] b₁ * a₂ ⊗ₜ[R] b₂ = (a₁ * a₂) ⊗ₜ[R] (b₁ * b₂)
-- SemiconjBy.tmul
theorem _root_.SemiconjBy.tmul {a₁ a₂ a₃ : A} {b₁ b₂ b₃ : B}
    (ha : SemiconjBy a₁ a₂ a₃) (hb : SemiconjBy b₁ b₂ b₃) :
    SemiconjBy (a₁ ⊗ₜ[R] b₁) (a₂ ⊗ₜ[R] b₂) (a₃ ⊗ₜ[R] b₃) 
Arguments: {R : Type uR} {A : Type uA} {B : Type uB} [CommSemiring R] [NonUnitalNonAssocSemiring A] [Module R A] [SMulCommClass R A A] [IsScalarTower R A A] [NonUnitalNonAssocSemiring B] [Module R B] [SMulCommClass R B B] [IsScalarTower R B B] {a₁ a₂ a₃ : A} {b₁ b₂ b₃ : B} (ha : SemiconjBy a₁ a₂ a₃) (hb : SemiconjBy b₁ b₂ b₃)
Goal: SemiconjBy (a₁ ⊗ₜ[R] b₁) (a₂ ⊗ₜ[R] b₂) (a₃ ⊗ₜ[R] b₃)
-- Commute.tmul
nonrec theorem _root_.Commute.tmul {a₁ a₂ : A} {b₁ b₂ : B}
    (ha : Commute a₁ a₂) (hb : Commute b₁ b₂) :
    Commute (a₁ ⊗ₜ[R] b₁) (a₂ ⊗ₜ[R] b₂) 
Arguments: {R : Type uR} {A : Type uA} {B : Type uB} [CommSemiring R] [NonUnitalNonAssocSemiring A] [Module R A] [SMulCommClass R A A] [IsScalarTower R A A] [NonUnitalNonAssocSemiring B] [Module R B] [SMulCommClass R B B] [IsScalarTower R B B] {a₁ a₂ : A} {b₁ b₂ : B} (ha : Commute a₁ a₂) (hb : Commute b₁ b₂)
Goal: Commute (a₁ ⊗ₜ[R] b₁) (a₂ ⊗ₜ[R] b₂)
-- Algebra.TensorProduct.one_mul
protected theorem one_mul (x : A ⊗[R] B) : mul (1 ⊗ₜ 1) x = x 
Arguments: {R : Type uR} {A : Type uA} {B : Type uB} [CommSemiring R] [NonAssocSemiring A] [Module R A] [SMulCommClass R A A] [IsScalarTower R A A] [NonAssocSemiring B] [Module R B] [SMulCommClass R B B] [IsScalarTower R B B] (x : A ⊗[R] B)
Goal: (Algebra.TensorProduct.mul (1 ⊗ₜ[R] 1)) x = x
-- Algebra.TensorProduct.mul_one
protected theorem mul_one (x : A ⊗[R] B) : mul x (1 ⊗ₜ 1) = x 
Arguments: {R : Type uR} {A : Type uA} {B : Type uB} [CommSemiring R] [NonAssocSemiring A] [Module R A] [SMulCommClass R A A] [IsScalarTower R A A] [NonAssocSemiring B] [Module R B] [SMulCommClass R B B] [IsScalarTower R B B] (x : A ⊗[R] B)
Goal: (Algebra.TensorProduct.mul x) (1 ⊗ₜ[R] 1) = x
-- Algebra.TensorProduct.mul_assoc
protected theorem mul_assoc (x y z : A ⊗[R] B) : mul (mul x y) z = mul x (mul y z) 
Arguments: {R : Type uR} {A : Type uA} {B : Type uB} [CommSemiring R] [NonUnitalSemiring A] [Module R A] [SMulCommClass R A A] [IsScalarTower R A A] [NonUnitalSemiring B] [Module R B] [SMulCommClass R B B] [IsScalarTower R B B] (x y z : A ⊗[R] B)
Goal: (Algebra.TensorProduct.mul ((Algebra.TensorProduct.mul x) y)) z =
  (Algebra.TensorProduct.mul x) ((Algebra.TensorProduct.mul y) z)