ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- LinearMap.nondegenerate_restrict_of_disjoint_orthogonal
theorem nondegenerate_restrict_of_disjoint_orthogonal {B : M →ₗ[R] M →ₗ[R] M₁} (hB : B.IsRefl)
    {W : Submodule R M} (hW : Disjoint W (W.orthogonalBilin B)) :
    (B.domRestrict₁₂ W W).Nondegenerate 
Arguments: {R : Type u_1} {M : Type u_5} {M₁ : Type u_6} [CommRing R] [AddCommGroup M] [Module R M] [AddCommGroup M₁] [Module R M₁] {B : M →ₗ[R] M →ₗ[R] M₁} (hB : B.IsRefl) {W : Submodule R M} (hW : Disjoint W (W.orthogonalBilin B))
Goal: (B.domRestrict₁₂ W W).Nondegenerate
-- LinearMap.IsOrthoᵢ.not_isOrtho_basis_self_of_separatingLeft
theorem IsOrthoᵢ.not_isOrtho_basis_self_of_separatingLeft [Nontrivial R]
    {B : M →ₛₗ[I] M →ₛₗ[I'] M₁} {v : Basis n R M} (h : B.IsOrthoᵢ v) (hB : B.SeparatingLeft)
    (i : n) : ¬B.IsOrtho (v i) (v i) 
Arguments: {R : Type u_1} {M : Type u_5} {M₁ : Type u_6} {n : Type u_19} [CommRing R] [AddCommGroup M] [Module R M] [AddCommGroup M₁] [Module R M₁] {I I' : R →+* R} [Nontrivial R] {B : M →ₛₗ[I] M →ₛₗ[I'] M₁} {v : Basis n R M} (h : B.IsOrthoᵢ ⇑v) (hB : B.SeparatingLeft) (i : n)
Goal: ¬B.IsOrtho (v i) (v i)
-- LinearMap.IsOrthoᵢ.not_isOrtho_basis_self_of_separatingRight
theorem IsOrthoᵢ.not_isOrtho_basis_self_of_separatingRight [Nontrivial R]
    {B : M →ₛₗ[I] M →ₛₗ[I'] M₁} {v : Basis n R M} (h : B.IsOrthoᵢ v) (hB : B.SeparatingRight)
    (i : n) : ¬B.IsOrtho (v i) (v i) 
Arguments: {R : Type u_1} {M : Type u_5} {M₁ : Type u_6} {n : Type u_19} [CommRing R] [AddCommGroup M] [Module R M] [AddCommGroup M₁] [Module R M₁] {I I' : R →+* R} [Nontrivial R] {B : M →ₛₗ[I] M →ₛₗ[I'] M₁} {v : Basis n R M} (h : B.IsOrthoᵢ ⇑v) (hB : B.SeparatingRight) (i : n)
Goal: ¬B.IsOrtho (v i) (v i)
-- LinearMap.IsOrthoᵢ.separatingLeft_of_not_isOrtho_basis_self
theorem IsOrthoᵢ.separatingLeft_of_not_isOrtho_basis_self [NoZeroSMulDivisors R M₁]
    {B : M →ₗ[R] M →ₗ[R] M₁} (v : Basis n R M) (hO : B.IsOrthoᵢ v)
    (h : ∀ i, ¬B.IsOrtho (v i) (v i)) : B.SeparatingLeft 
Arguments: {R : Type u_1} {M : Type u_5} {M₁ : Type u_6} {n : Type u_19} [CommRing R] [AddCommGroup M] [Module R M] [AddCommGroup M₁] [Module R M₁] [NoZeroSMulDivisors R M₁] {B : M →ₗ[R] M →ₗ[R] M₁} (v : Basis n R M) (hO : B.IsOrthoᵢ ⇑v) (h : ∀ (i : n), ¬B.IsOrtho (v i) (v i))
Goal: B.SeparatingLeft
-- LinearMap.IsOrthoᵢ.separatingRight_iff_not_isOrtho_basis_self
theorem IsOrthoᵢ.separatingRight_iff_not_isOrtho_basis_self [NoZeroSMulDivisors R M₁]
    {B : M →ₗ[R] M →ₗ[R] M₁} (v : Basis n R M) (hO : B.IsOrthoᵢ v)
    (h : ∀ i, ¬B.IsOrtho (v i) (v i)) : B.SeparatingRight 
Arguments: {R : Type u_1} {M : Type u_5} {M₁ : Type u_6} {n : Type u_19} [CommRing R] [AddCommGroup M] [Module R M] [AddCommGroup M₁] [Module R M₁] [NoZeroSMulDivisors R M₁] {B : M →ₗ[R] M →ₗ[R] M₁} (v : Basis n R M) (hO : B.IsOrthoᵢ ⇑v) (h : ∀ (i : n), ¬B.IsOrtho (v i) (v i))
Goal: B.SeparatingRight
-- LinearMap.IsOrthoᵢ.nondegenerate_of_not_isOrtho_basis_self
theorem IsOrthoᵢ.nondegenerate_of_not_isOrtho_basis_self [NoZeroSMulDivisors R M₁]
    {B : M →ₗ[R] M →ₗ[R] M₁} (v : Basis n R M) (hO : B.IsOrthoᵢ v)
    (h : ∀ i, ¬B.IsOrtho (v i) (v i)) : B.Nondegenerate 
Arguments: {R : Type u_1} {M : Type u_5} {M₁ : Type u_6} {n : Type u_19} [CommRing R] [AddCommGroup M] [Module R M] [AddCommGroup M₁] [Module R M₁] [NoZeroSMulDivisors R M₁] {B : M →ₗ[R] M →ₗ[R] M₁} (v : Basis n R M) (hO : B.IsOrthoᵢ ⇑v) (h : ∀ (i : n), ¬B.IsOrtho (v i) (v i))
Goal: B.Nondegenerate
-- FiniteDimensional.of_injective
theorem of_injective (f : V →ₗ[K] V₂) (w : Function.Injective f) [FiniteDimensional K V₂] :
    FiniteDimensional K V 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] {V₂ : Type v'} [AddCommGroup V₂] [Module K V₂] (f : V →ₗ[K] V₂) (w : Function.Injective ⇑f) [FiniteDimensional K V₂]
Goal: FiniteDimensional K V
-- FiniteDimensional.of_surjective
theorem of_surjective (f : V →ₗ[K] V₂) (w : Function.Surjective f) [FiniteDimensional K V] :
    FiniteDimensional K V₂ 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] {V₂ : Type v'} [AddCommGroup V₂] [Module K V₂] (f : V →ₗ[K] V₂) (w : Function.Surjective ⇑f) [FiniteDimensional K V]
Goal: FiniteDimensional K V₂
-- FiniteDimensional.finite_of_finite
theorem finite_of_finite [Finite K] [FiniteDimensional K V] : Finite V 
Arguments: (K : Type u) (V : Type v) [DivisionRing K] [AddCommGroup V] [Module K V] [Finite K] [FiniteDimensional K V]
Goal: Finite V
-- FiniteDimensional.of_fintype_basis
theorem of_fintype_basis {ι : Type w} [Finite ι] (h : Basis ι K V) : FiniteDimensional K V 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] {ι : Type w} [Finite ι] (h : Basis ι K V)
Goal: FiniteDimensional K V
-- FiniteDimensional.of_finite_basis
theorem of_finite_basis {ι : Type w} {s : Set ι} (h : Basis s K V) (hs : Set.Finite s) :
    FiniteDimensional K V 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] {ι : Type w} {s : Set ι} (h : Basis (↑s) K V) (hs : s.Finite)
Goal: FiniteDimensional K V
-- FiniteDimensional.finrank_eq_rank'
theorem finrank_eq_rank' [FiniteDimensional K V] : (finrank K V : Cardinal.{v}) = Module.rank K V 
Arguments: (K : Type u) (V : Type v) [DivisionRing K] [AddCommGroup V] [Module K V] [FiniteDimensional K V]
Goal: ↑(FiniteDimensional.finrank K V) = Module.rank K V
-- FiniteDimensional.finrank_of_infinite_dimensional
theorem finrank_of_infinite_dimensional (h : ¬FiniteDimensional K V) : finrank K V = 0 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] (h : ¬FiniteDimensional K V)
Goal: FiniteDimensional.finrank K V = 0
-- FiniteDimensional.of_finrank_pos
theorem of_finrank_pos (h : 0 < finrank K V) : FiniteDimensional K V 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] (h : 0 < FiniteDimensional.finrank K V)
Goal: FiniteDimensional K V
-- FiniteDimensional.of_finrank_eq_succ
theorem of_finrank_eq_succ {n : ℕ} (hn : finrank K V = n.succ) :
    FiniteDimensional K V 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] {n : ℕ} (hn : FiniteDimensional.finrank K V = n.succ)
Goal: FiniteDimensional K V
-- FiniteDimensional.of_fact_finrank_eq_succ
theorem of_fact_finrank_eq_succ (n : ℕ) [hn : Fact (finrank K V = n + 1)] :
    FiniteDimensional K V 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] (n : ℕ) [hn : Fact (FiniteDimensional.finrank K V = n + 1)]
Goal: FiniteDimensional K V
-- FiniteDimensional.finiteDimensional_iff_of_rank_eq_nsmul
theorem finiteDimensional_iff_of_rank_eq_nsmul {W} [AddCommGroup W] [Module K W] {n : ℕ}
    (hn : n ≠ 0) (hVW : Module.rank K V = n • Module.rank K W) :
    FiniteDimensional K V ↔ FiniteDimensional K W 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] {W : Type v} [AddCommGroup W] [Module K W] {n : ℕ} (hn : n ≠ 0) (hVW : Module.rank K V = n • Module.rank K W)
Goal: FiniteDimensional K V ↔ FiniteDimensional K W
-- FiniteDimensional.finrank_eq_card_basis'
theorem finrank_eq_card_basis' [FiniteDimensional K V] {ι : Type w} (h : Basis ι K V) :
    (finrank K V : Cardinal.{w}) = #ι 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] [FiniteDimensional K V] {ι : Type w} (h : Basis ι K V)
Goal: ↑(FiniteDimensional.finrank K V) = #ι
-- LinearIndependent.lt_aleph0_of_finiteDimensional
theorem _root_.LinearIndependent.lt_aleph0_of_finiteDimensional {ι : Type w} [FiniteDimensional K V]
    {v : ι → V} (h : LinearIndependent K v) : #ι < ℵ₀ 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] {ι : Type w} [FiniteDimensional K V] {v : ι → V} (h : LinearIndependent K v)
Goal: #ι < ℵ₀
-- Submodule.eq_top_of_finrank_eq
theorem _root_.Submodule.eq_top_of_finrank_eq [FiniteDimensional K V] {S : Submodule K V}
    (h : finrank K S = finrank K V) : S = ⊤ 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] [FiniteDimensional K V] {S : Submodule K V} (h : FiniteDimensional.finrank K ↥S = FiniteDimensional.finrank K V)
Goal: S = ⊤
-- FiniteDimensional.span_of_finite
theorem span_of_finite {A : Set V} (hA : Set.Finite A) : FiniteDimensional K (Submodule.span K A) 
Arguments: (K : Type u) {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] {A : Set V} (hA : A.Finite)
Goal: FiniteDimensional K ↥(Submodule.span K A)
-- FiniteDimensional.exists_relation_sum_zero_pos_coefficient_of_finrank_succ_lt_card
theorem exists_relation_sum_zero_pos_coefficient_of_finrank_succ_lt_card [FiniteDimensional L W]
    {t : Finset W} (h : finrank L W + 1 < t.card) :
    ∃ f : W → L, ∑ e ∈ t, f e • e = 0 ∧ ∑ e ∈ t, f e = 0 ∧ ∃ x ∈ t, 0 < f x 
Arguments: {L : Type u_1} [LinearOrderedField L] {W : Type v} [AddCommGroup W] [Module L W] [FiniteDimensional L W] {t : Finset W} (h : FiniteDimensional.finrank L W + 1 < t.card)
Goal: ∃ f, ∑ e ∈ t, f e • e = 0 ∧ ∑ e ∈ t, f e = 0 ∧ ∃ x ∈ t, 0 < f x
-- FiniteDimensional.basisSingleton_repr_apply
@[simps repr_apply]
noncomputable def basisSingleton (ι : Type*) [Unique ι] (h : finrank K V = 1) (v : V)
    (hv : v ≠ 0) : Basis ι K V 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] (ι : Type u_1) [Unique ι] (h : FiniteDimensional.finrank K V = 1) (v : V) (hv : v ≠ 0) (w : V)
Goal: (FiniteDimensional.basisSingleton ι h v hv).repr w =
  Finsupp.single default
    (((FiniteDimensional.basisUnique ι h).repr w) default / ((FiniteDimensional.basisUnique ι h).repr v) default)
-- FiniteDimensional.basisSingleton_apply
@[simp]
theorem basisSingleton_apply (ι : Type*) [Unique ι] (h : finrank K V = 1) (v : V) (hv : v ≠ 0)
    (i : ι) : basisSingleton ι h v hv i = v 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] (ι : Type u_1) [Unique ι] (h : FiniteDimensional.finrank K V = 1) (v : V) (hv : v ≠ 0) (i : ι)
Goal: (FiniteDimensional.basisSingleton ι h v hv) i = v
-- FiniteDimensional.range_basisSingleton
@[simp]
theorem range_basisSingleton (ι : Type*) [Unique ι] (h : finrank K V = 1) (v : V) (hv : v ≠ 0) :
    Set.range (basisSingleton ι h v hv) = {v} 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] (ι : Type u_1) [Unique ι] (h : FiniteDimensional.finrank K V = 1) (v : V) (hv : v ≠ 0)
Goal: Set.range ⇑(FiniteDimensional.basisSingleton ι h v hv) = {v}
-- FiniteDimensional.trans
theorem trans [FiniteDimensional F K] [FiniteDimensional K A] : FiniteDimensional F A 
Arguments: (F : Type u_1) (K : Type u_2) (A : Type u_3) [DivisionRing F] [DivisionRing K] [AddCommGroup A] [Module F K] [Module K A] [Module F A] [IsScalarTower F K A] [FiniteDimensional F K] [FiniteDimensional K A]
Goal: FiniteDimensional F A
-- FiniteDimensional.of_rank_eq_nat
theorem FiniteDimensional.of_rank_eq_nat {n : ℕ} (h : Module.rank K V = n) :
    FiniteDimensional K V 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] {n : ℕ} (h : Module.rank K V = ↑n)
Goal: FiniteDimensional K V
-- FiniteDimensional.of_rank_eq_zero
theorem FiniteDimensional.of_rank_eq_zero (h : Module.rank K V = 0) : FiniteDimensional K V 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] (h : Module.rank K V = 0)
Goal: FiniteDimensional K V
-- FiniteDimensional.of_rank_eq_one
theorem FiniteDimensional.of_rank_eq_one (h : Module.rank K V = 1) : FiniteDimensional K V 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] (h : Module.rank K V = 1)
Goal: FiniteDimensional K V
-- Submodule.fg_iff_finiteDimensional
theorem fg_iff_finiteDimensional (s : Submodule K V) : s.FG ↔ FiniteDimensional K s 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] (s : Submodule K V)
Goal: s.FG ↔ FiniteDimensional K ↥s
-- Submodule.finiteDimensional_of_le
theorem finiteDimensional_of_le {S₁ S₂ : Submodule K V} [FiniteDimensional K S₂] (h : S₁ ≤ S₂) :
    FiniteDimensional K S₁ 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] {S₁ S₂ : Submodule K V} [FiniteDimensional K ↥S₂] (h : S₁ ≤ S₂)
Goal: FiniteDimensional K ↥S₁
-- LinearEquiv.finiteDimensional
protected theorem finiteDimensional (f : V ≃ₗ[K] V₂) [FiniteDimensional K V] :
    FiniteDimensional K V₂ 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] {V₂ : Type v'} [AddCommGroup V₂] [Module K V₂] (f : V ≃ₗ[K] V₂) [FiniteDimensional K V]
Goal: FiniteDimensional K V₂
-- FiniteDimensional.eq_of_le_of_finrank_le
theorem eq_of_le_of_finrank_le {S₁ S₂ : Submodule K V} [FiniteDimensional K S₂] (hle : S₁ ≤ S₂)
    (hd : finrank K S₂ ≤ finrank K S₁) : S₁ = S₂ 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] {S₁ S₂ : Submodule K V} [FiniteDimensional K ↥S₂] (hle : S₁ ≤ S₂) (hd : FiniteDimensional.finrank K ↥S₂ ≤ FiniteDimensional.finrank K ↥S₁)
Goal: S₁ = S₂
-- FiniteDimensional.eq_of_le_of_finrank_eq
theorem eq_of_le_of_finrank_eq {S₁ S₂ : Submodule K V} [FiniteDimensional K S₂] (hle : S₁ ≤ S₂)
    (hd : finrank K S₁ = finrank K S₂) : S₁ = S₂ 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] {S₁ S₂ : Submodule K V} [FiniteDimensional K ↥S₂] (hle : S₁ ≤ S₂) (hd : FiniteDimensional.finrank K ↥S₁ = FiniteDimensional.finrank K ↥S₂)
Goal: S₁ = S₂
-- Subalgebra.eq_of_le_of_finrank_le
theorem _root_.Subalgebra.eq_of_le_of_finrank_le (h_finrank : finrank K E ≤ finrank K F) : F = E 
Arguments: {K : Type u_1} {L : Type u_2} [Field K] [Ring L] [Algebra K L] {F E : Subalgebra K L} [hfin : FiniteDimensional K ↥E] (h_le : F ≤ E) (h_finrank : FiniteDimensional.finrank K ↥E ≤ FiniteDimensional.finrank K ↥F)
Goal: F = E
-- Subalgebra.eq_of_le_of_finrank_eq
theorem _root_.Subalgebra.eq_of_le_of_finrank_eq (h_finrank : finrank K F = finrank K E) : F = E 
Arguments: {K : Type u_1} {L : Type u_2} [Field K] [Ring L] [Algebra K L] {F E : Subalgebra K L} [hfin : FiniteDimensional K ↥E] (h_le : F ≤ E) (h_finrank : FiniteDimensional.finrank K ↥F = FiniteDimensional.finrank K ↥E)
Goal: F = E
-- LinearMap.surjective_of_injective
theorem surjective_of_injective [FiniteDimensional K V] {f : V →ₗ[K] V} (hinj : Injective f) :
    Surjective f 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] [FiniteDimensional K V] {f : V →ₗ[K] V} (hinj : Function.Injective ⇑f)
Goal: Function.Surjective ⇑f
-- LinearMap.finiteDimensional_of_surjective
theorem finiteDimensional_of_surjective [FiniteDimensional K V] (f : V →ₗ[K] V₂)
    (hf : LinearMap.range f = ⊤) : FiniteDimensional K V₂ 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] {V₂ : Type v'} [AddCommGroup V₂] [Module K V₂] [FiniteDimensional K V] (f : V →ₗ[K] V₂) (hf : LinearMap.range f = ⊤)
Goal: FiniteDimensional K V₂
-- LinearMap.injective_iff_surjective
theorem injective_iff_surjective [FiniteDimensional K V] {f : V →ₗ[K] V} :
    Injective f ↔ Surjective f 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] [FiniteDimensional K V] {f : V →ₗ[K] V}
Goal: Function.Injective ⇑f ↔ Function.Surjective ⇑f
-- LinearMap.injOn_iff_surjOn
lemma injOn_iff_surjOn {p : Submodule K V} [FiniteDimensional K p]
    {f : V →ₗ[K] V} (h : ∀ x ∈ p, f x ∈ p) :
    Set.InjOn f p ↔ Set.SurjOn f p p 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] {p : Submodule K V} [FiniteDimensional K ↥p] {f : V →ₗ[K] V} (h : ∀ x ∈ p, f x ∈ p)
Goal: Set.InjOn ⇑f ↑p ↔ Set.SurjOn ⇑f ↑p ↑p
-- LinearMap.ker_eq_bot_iff_range_eq_top
theorem ker_eq_bot_iff_range_eq_top [FiniteDimensional K V] {f : V →ₗ[K] V} :
    LinearMap.ker f = ⊥ ↔ LinearMap.range f = ⊤ 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] [FiniteDimensional K V] {f : V →ₗ[K] V}
Goal: LinearMap.ker f = ⊥ ↔ LinearMap.range f = ⊤
-- LinearMap.mul_eq_one_of_mul_eq_one
theorem mul_eq_one_of_mul_eq_one [FiniteDimensional K V] {f g : V →ₗ[K] V} (hfg : f * g = 1) :
    g * f = 1 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] [FiniteDimensional K V] {f g : V →ₗ[K] V} (hfg : f * g = 1)
Goal: g * f = 1
-- LinearMap.mul_eq_one_comm
theorem mul_eq_one_comm [FiniteDimensional K V] {f g : V →ₗ[K] V} : f * g = 1 ↔ g * f = 1 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] [FiniteDimensional K V] {f g : V →ₗ[K] V}
Goal: f * g = 1 ↔ g * f = 1
-- LinearMap.comp_eq_id_comm
theorem comp_eq_id_comm [FiniteDimensional K V] {f g : V →ₗ[K] V} : f.comp g = id ↔ g.comp f = id 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] [FiniteDimensional K V] {f g : V →ₗ[K] V}
Goal: f ∘ₗ g = LinearMap.id ↔ g ∘ₗ f = LinearMap.id
-- LinearMap.comap_eq_sup_ker_of_disjoint
theorem comap_eq_sup_ker_of_disjoint {p : Submodule K V} [FiniteDimensional K p] {f : V →ₗ[K] V}
    (h : ∀ x ∈ p, f x ∈ p) (h' : Disjoint p (ker f)) :
    p.comap f = p ⊔ ker f 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] {p : Submodule K V} [FiniteDimensional K ↥p] {f : V →ₗ[K] V} (h : ∀ x ∈ p, f x ∈ p) (h' : Disjoint p (LinearMap.ker f))
Goal: Submodule.comap f p = p ⊔ LinearMap.ker f
-- LinearMap.ker_comp_eq_of_commute_of_disjoint_ker
theorem ker_comp_eq_of_commute_of_disjoint_ker [FiniteDimensional K V] {f g : V →ₗ[K] V}
    (h : Commute f g) (h' : Disjoint (ker f) (ker g)) :
    ker (f ∘ₗ g) = ker f ⊔ ker g 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] [FiniteDimensional K V] {f g : V →ₗ[K] V} (h : Commute f g) (h' : Disjoint (LinearMap.ker f) (LinearMap.ker g))
Goal: LinearMap.ker (f ∘ₗ g) = LinearMap.ker f ⊔ LinearMap.ker g
-- LinearMap.ker_noncommProd_eq_of_supIndep_ker
theorem ker_noncommProd_eq_of_supIndep_ker [FiniteDimensional K V] {ι : Type*} {f : ι → V →ₗ[K] V}
    (s : Finset ι) (comm) (h : s.SupIndep fun i ↦ ker (f i)) :
    ker (s.noncommProd f comm) = ⨆ i ∈ s, ker (f i) 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] [FiniteDimensional K V] {ι : Type u_1} {f : ι → V →ₗ[K] V} (s : Finset ι) (comm : (↑s).Pairwise fun a b => Commute (f a) (f b)) (h : s.SupIndep fun i => LinearMap.ker (f i))
Goal: LinearMap.ker (s.noncommProd f comm) = ⨆ i ∈ s, LinearMap.ker (f i)
-- LinearEquiv.coe_ofInjectiveEndo
@[simp]
theorem coe_ofInjectiveEndo (f : V →ₗ[K] V) (h_inj : Injective f) :
    ⇑(ofInjectiveEndo f h_inj) = f 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] [FiniteDimensional K V] (f : V →ₗ[K] V) (h_inj : Function.Injective ⇑f)
Goal: ⇑(LinearEquiv.ofInjectiveEndo f h_inj) = ⇑f
-- LinearEquiv.ofInjectiveEndo_right_inv
@[simp]
theorem ofInjectiveEndo_right_inv (f : V →ₗ[K] V) (h_inj : Injective f) :
    f * (ofInjectiveEndo f h_inj).symm = 1 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] [FiniteDimensional K V] (f : V →ₗ[K] V) (h_inj : Function.Injective ⇑f)
Goal: f * ↑(LinearEquiv.ofInjectiveEndo f h_inj).symm = 1
-- LinearEquiv.ofInjectiveEndo_left_inv
@[simp]
theorem ofInjectiveEndo_left_inv (f : V →ₗ[K] V) (h_inj : Injective f) :
    ((ofInjectiveEndo f h_inj).symm : V →ₗ[K] V) * f = 1 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] [FiniteDimensional K V] (f : V →ₗ[K] V) (h_inj : Function.Injective ⇑f)
Goal: ↑(LinearEquiv.ofInjectiveEndo f h_inj).symm * f = 1
-- LinearMap.isUnit_iff_ker_eq_bot
theorem isUnit_iff_ker_eq_bot [FiniteDimensional K V] (f : V →ₗ[K] V) :
    IsUnit f ↔ (LinearMap.ker f) = ⊥ 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] [FiniteDimensional K V] (f : V →ₗ[K] V)
Goal: IsUnit f ↔ LinearMap.ker f = ⊥
-- LinearMap.isUnit_iff_range_eq_top
theorem isUnit_iff_range_eq_top [FiniteDimensional K V] (f : V →ₗ[K] V) :
    IsUnit f ↔ (LinearMap.range f) = ⊤ 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] [FiniteDimensional K V] (f : V →ₗ[K] V)
Goal: IsUnit f ↔ LinearMap.range f = ⊤
-- finrank_zero_iff_forall_zero
theorem finrank_zero_iff_forall_zero [FiniteDimensional K V] : finrank K V = 0 ↔ ∀ x : V, x = 0 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] [FiniteDimensional K V]
Goal: FiniteDimensional.finrank K V = 0 ↔ ∀ (x : V), x = 0
-- FiniteDimensional.exists_mul_eq_one
lemma FiniteDimensional.exists_mul_eq_one (F : Type*) {K : Type*} [Field F] [Ring K] [IsDomain K]
    [Algebra F K] [FiniteDimensional F K] {x : K} (H : x ≠ 0) : ∃ y, x * y = 1 
Arguments: (F : Type u_1) {K : Type u_2} [Field F] [Ring K] [IsDomain K] [Algebra F K] [FiniteDimensional F K] {x : K} (H : x ≠ 0)
Goal: ∃ y, x * y = 1
-- Submodule.finrank_mono
theorem finrank_mono [FiniteDimensional K V] : Monotone fun s : Submodule K V => finrank K s 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] [FiniteDimensional K V]
Goal: Monotone fun s => FiniteDimensional.finrank K ↥s
-- finrank_span_singleton
theorem finrank_span_singleton {v : V} (hv : v ≠ 0) : finrank K (K ∙ v) = 1 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] {v : V} (hv : v ≠ 0)
Goal: FiniteDimensional.finrank K ↥(Submodule.span K {v}) = 1
-- exists_smul_eq_of_finrank_eq_one
lemma exists_smul_eq_of_finrank_eq_one
    (h : finrank K V = 1) {x : V} (hx : x ≠ 0) (y : V) :
    ∃ (c : K), c • x = y 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] (h : FiniteDimensional.finrank K V = 1) {x : V} (hx : x ≠ 0) (y : V)
Goal: ∃ c, c • x = y
-- Set.finrank_mono
theorem Set.finrank_mono [FiniteDimensional K V] {s t : Set V} (h : s ⊆ t) :
    s.finrank K ≤ t.finrank K 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] [FiniteDimensional K V] {s t : Set V} (h : s ⊆ t)
Goal: Set.finrank K s ≤ Set.finrank K t
-- finrank_eq_one_iff_of_nonzero
theorem finrank_eq_one_iff_of_nonzero (v : V) (nz : v ≠ 0) :
    finrank K V = 1 ↔ span K ({v} : Set V) = ⊤ 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] (v : V) (nz : v ≠ 0)
Goal: FiniteDimensional.finrank K V = 1 ↔ Submodule.span K {v} = ⊤
-- finrank_eq_one_iff_of_nonzero'
theorem finrank_eq_one_iff_of_nonzero' (v : V) (nz : v ≠ 0) :
    finrank K V = 1 ↔ ∀ w : V, ∃ c : K, c • v = w 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] (v : V) (nz : v ≠ 0)
Goal: FiniteDimensional.finrank K V = 1 ↔ ∀ (w : V), ∃ c, c • v = w
-- surjective_of_nonzero_of_finrank_eq_one
theorem surjective_of_nonzero_of_finrank_eq_one {W A : Type*} [Semiring A] [Module A V]
    [AddCommGroup W] [Module K W] [Module A W] [LinearMap.CompatibleSMul V W K A]
    (h : finrank K W = 1) {f : V →ₗ[A] W} (w : f ≠ 0) : Surjective f 
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] {W : Type u_1} {A : Type u_2} [Semiring A] [Module A V] [AddCommGroup W] [Module K W] [Module A W] [LinearMap.CompatibleSMul V W K A] (h : FiniteDimensional.finrank K W = 1) {f : V →ₗ[A] W} (w : f ≠ 0)
Goal: Function.Surjective ⇑f
-- Subalgebra.finiteDimensional_toSubmodule
theorem Subalgebra.finiteDimensional_toSubmodule {S : Subalgebra F E} :
    FiniteDimensional F (Subalgebra.toSubmodule S) ↔ FiniteDimensional F S 
Arguments: {F : Type u_1} {E : Type u_2} [Field F] [Ring E] [Algebra F E] {S : Subalgebra F E}
Goal: FiniteDimensional F ↥(Subalgebra.toSubmodule S) ↔ FiniteDimensional F ↥S
-- Subalgebra.finiteDimensional_bot
@[deprecated Subalgebra.finite_bot (since := "2024-04-11")]
theorem Subalgebra.finiteDimensional_bot : FiniteDimensional F (⊥ : Subalgebra F E) 
Arguments: {F : Type u_1} {E : Type u_2} [Field F] [Ring E] [Algebra F E]
Goal: FiniteDimensional F ↥⊥
-- Module.End.ker_pow_constant
theorem ker_pow_constant {f : End K V} {k : ℕ}
    (h : LinearMap.ker (f ^ k) = LinearMap.ker (f ^ k.succ)) :
    ∀ m, LinearMap.ker (f ^ k) = LinearMap.ker (f ^ (k + m))
  
Arguments: {K : Type u} {V : Type v} [DivisionRing K] [AddCommGroup V] [Module K V] {f : Module.End K V} {k : ℕ} (h : LinearMap.ker (f ^ k) = LinearMap.ker (f ^ k.succ)) (m : ℕ)
Goal: LinearMap.ker (f ^ k) = LinearMap.ker (f ^ (k + m))