ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- LinearIndependent.union_of_quotient
theorem LinearIndependent.union_of_quotient
    {M' : Submodule R M} {s : Set M} (hs : s ⊆ M') (hs' : LinearIndependent (ι := s) R Subtype.val)
  {t : Set M} (ht : LinearIndependent (ι := t) R (Submodule.Quotient.mk (p := M') ∘ Subtype.val)) :
    LinearIndependent (ι := (s ∪ t : _)) R Subtype.val 
Arguments: {R : Type u} {M : Type v} [Ring R] [AddCommGroup M] [Module R M] {M' : Submodule R M} {s : Set M} (hs : s ⊆ ↑M') (hs' : LinearIndependent (ι := ↑s) R Subtype.val) {t : Set M} (ht : LinearIndependent (ι := ↑t) R (Submodule.Quotient.mk ∘ Subtype.val))
Goal: LinearIndependent (ι := ↑(s ∪ t)) R Subtype.val
-- rank_quotient_add_rank_le
theorem rank_quotient_add_rank_le [Nontrivial R] (M' : Submodule R M) :
    Module.rank R (M ⧸ M') + Module.rank R M' ≤ Module.rank R M 
Arguments: {R : Type u} {M : Type v} [Ring R] [AddCommGroup M] [Module R M] [Nontrivial R] (M' : Submodule R M)
Goal: Module.rank R (M ⧸ M') + Module.rank R ↥M' ≤ Module.rank R M
-- rank_quotient_le
theorem rank_quotient_le (p : Submodule R M) : Module.rank R (M ⧸ p) ≤ Module.rank R M 
Arguments: {R : Type u} {M : Type v} [Ring R] [AddCommGroup M] [Module R M] (p : Submodule R M)
Goal: Module.rank R (M ⧸ p) ≤ Module.rank R M
-- rank_quotient_eq_of_le_torsion
theorem rank_quotient_eq_of_le_torsion {R M} [CommRing R] [AddCommGroup M] [Module R M]
    {M' : Submodule R M} (hN : M' ≤ torsion R M) : Module.rank R (M ⧸ M') = Module.rank R M 
Arguments: {R : Type u_2} {M : Type u_3} [CommRing R] [AddCommGroup M] [Module R M] {M' : Submodule R M} (hN : M' ≤ Submodule.torsion R M)
Goal: Module.rank R (M ⧸ M') = Module.rank R M
-- rank_ulift
@[simp]
theorem rank_ulift : Module.rank R (ULift.{w} M) = Cardinal.lift.{w} (Module.rank R M) 
Arguments: {R : Type u} {M : Type v} [Ring R] [AddCommGroup M] [Module R M]
Goal: Module.rank R (ULift.{w, v} M) = Cardinal.lift.{w, v} (Module.rank R M)
-- finrank_ulift
@[simp]
theorem finrank_ulift : finrank R (ULift M) = finrank R M 
Arguments: {R : Type u} {M : Type v} [Ring R] [AddCommGroup M] [Module R M]
Goal: FiniteDimensional.finrank R (ULift.{u_2, v} M) = FiniteDimensional.finrank R M
-- lift_rank_add_lift_rank_le_rank_prod
theorem lift_rank_add_lift_rank_le_rank_prod [Nontrivial R] :
    lift.{v'} (Module.rank R M) + lift.{v} (Module.rank R M') ≤ Module.rank R (M × M') 
Arguments: (R : Type u) (M : Type v) (M' : Type v') [Ring R] [AddCommGroup M] [AddCommGroup M'] [Module R M] [Module R M'] [Nontrivial R]
Goal: Cardinal.lift.{v', v} (Module.rank R M) + Cardinal.lift.{v, v'} (Module.rank R M') ≤ Module.rank R (M × M')
-- rank_add_rank_le_rank_prod
theorem rank_add_rank_le_rank_prod [Nontrivial R] :
    Module.rank R M + Module.rank R M₁ ≤ Module.rank R (M × M₁) 
Arguments: (R : Type u) (M : Type v) {M₁ : Type v} [Ring R] [AddCommGroup M] [AddCommGroup M₁] [Module R M] [Module R M₁] [Nontrivial R]
Goal: Module.rank R M + Module.rank R M₁ ≤ Module.rank R (M × M₁)
-- rank_prod
@[simp]
theorem rank_prod : Module.rank R (M × M') =
    Cardinal.lift.{v'} (Module.rank R M) + Cardinal.lift.{v, v'} (Module.rank R M') 
Arguments: {R : Type u} {M : Type v} {M' : Type v'} [Ring R] [AddCommGroup M] [AddCommGroup M'] [Module R M] [Module R M'] [StrongRankCondition R] [Module.Free R M] [Module.Free R M']
Goal: Module.rank R (M × M') = Cardinal.lift.{v', v} (Module.rank R M) + Cardinal.lift.{v, v'} (Module.rank R M')
-- rank_prod'
theorem rank_prod' : Module.rank R (M × M₁) = Module.rank R M + Module.rank R M₁ 
Arguments: {R : Type u} {M M₁ : Type v} [Ring R] [AddCommGroup M] [AddCommGroup M₁] [Module R M] [Module R M₁] [StrongRankCondition R] [Module.Free R M] [Module.Free R M₁]
Goal: Module.rank R (M × M₁) = Module.rank R M + Module.rank R M₁
-- FiniteDimensional.finrank_prod
@[simp]
theorem FiniteDimensional.finrank_prod [Module.Finite R M] [Module.Finite R M'] :
    finrank R (M × M') = finrank R M + finrank R M' 
Arguments: {R : Type u} {M : Type v} {M' : Type v'} [Ring R] [AddCommGroup M] [AddCommGroup M'] [Module R M] [Module R M'] [StrongRankCondition R] [Module.Free R M] [Module.Free R M'] [Module.Finite R M] [Module.Finite R M']
Goal: FiniteDimensional.finrank R (M × M') = FiniteDimensional.finrank R M + FiniteDimensional.finrank R M'
-- rank_finsupp
@[simp]
theorem rank_finsupp (ι : Type w) :
    Module.rank R (ι →₀ M) = Cardinal.lift.{v} #ι * Cardinal.lift.{w} (Module.rank R M) 
Arguments: (R : Type u) (M : Type v) [Ring R] [AddCommGroup M] [Module R M] [StrongRankCondition R] [Module.Free R M] (ι : Type w)
Goal: Module.rank R (ι →₀ M) = Cardinal.lift.{v, w} #ι * Cardinal.lift.{w, v} (Module.rank R M)
-- rank_finsupp'
theorem rank_finsupp' (ι : Type v) : Module.rank R (ι →₀ M) = #ι * Module.rank R M 
Arguments: (R : Type u) (M : Type v) [Ring R] [AddCommGroup M] [Module R M] [StrongRankCondition R] [Module.Free R M] (ι : Type v)
Goal: Module.rank R (ι →₀ M) = #ι * Module.rank R M
-- rank_finsupp_self
-- Porting note, this should not be `@[simp]`, as simp can prove it.
-- @[simp]
theorem rank_finsupp_self (ι : Type w) : Module.rank R (ι →₀ R) = Cardinal.lift.{u} #ι 
Arguments: (R : Type u) [Ring R] [StrongRankCondition R] (ι : Type w)
Goal: Module.rank R (ι →₀ R) = Cardinal.lift.{u, w} #ι
-- rank_finsupp_self'
theorem rank_finsupp_self' {ι : Type u} : Module.rank R (ι →₀ R) = #ι 
Arguments: (R : Type u) [Ring R] [StrongRankCondition R] {ι : Type u}
Goal: Module.rank R (ι →₀ R) = #ι
-- rank_directSum
@[simp]
theorem rank_directSum {ι : Type v} (M : ι → Type w) [∀ i : ι, AddCommGroup (M i)]
    [∀ i : ι, Module R (M i)] [∀ i : ι, Module.Free R (M i)] :
    Module.rank R (⨁ i, M i) = Cardinal.sum fun i => Module.rank R (M i) 
Arguments: (R : Type u) [Ring R] [StrongRankCondition R] {ι : Type v} (M : ι → Type w) [(i : ι) → AddCommGroup (M i)] [(i : ι) → Module R (M i)] [∀ (i : ι), Module.Free R (M i)]
Goal: Module.rank R (⨁ (i : ι), M i) = Cardinal.sum fun i => Module.rank R (M i)
-- rank_matrix
@[simp]
theorem rank_matrix (m : Type v) (n : Type w) [Finite m] [Finite n] :
    Module.rank R (Matrix m n R) =
      Cardinal.lift.{max v w u, v} #m * Cardinal.lift.{max v w u, w} #n 
Arguments: (R : Type u) [Ring R] [StrongRankCondition R] (m : Type v) (n : Type w) [Finite m] [Finite n]
Goal: Module.rank R (Matrix m n R) = Cardinal.lift.{max v w u, v} #m * Cardinal.lift.{max v w u, w} #n
-- rank_matrix'
@[simp high]
theorem rank_matrix' (m n : Type v) [Finite m] [Finite n] :
    Module.rank R (Matrix m n R) = Cardinal.lift.{u} (#m * #n) 
Arguments: (R : Type u) [Ring R] [StrongRankCondition R] (m n : Type v) [Finite m] [Finite n]
Goal: Module.rank R (Matrix m n R) = Cardinal.lift.{u, v} (#m * #n)
-- rank_matrix''
-- @[simp] -- Porting note (#10618): simp can prove this
theorem rank_matrix'' (m n : Type u) [Finite m] [Finite n] :
    Module.rank R (Matrix m n R) = #m * #n 
Arguments: (R : Type u) [Ring R] [StrongRankCondition R] (m n : Type u) [Finite m] [Finite n]
Goal: Module.rank R (Matrix m n R) = #m * #n
-- FiniteDimensional.finrank_finsupp
@[simp]
theorem finrank_finsupp {ι : Type v} [Fintype ι] : finrank R (ι →₀ M) = card ι * finrank R M 
Arguments: (R : Type u) (M : Type v) [Ring R] [AddCommGroup M] [Module R M] [StrongRankCondition R] [Module.Free R M] {ι : Type v} [Fintype ι]
Goal: FiniteDimensional.finrank R (ι →₀ M) = Fintype.card ι * FiniteDimensional.finrank R M
-- FiniteDimensional.finrank_finsupp_self
@[simp]
theorem finrank_finsupp_self {ι : Type v} [Fintype ι] : finrank R (ι →₀ R) = card ι 
Arguments: (R : Type u) [Ring R] [StrongRankCondition R] {ι : Type v} [Fintype ι]
Goal: FiniteDimensional.finrank R (ι →₀ R) = Fintype.card ι
-- FiniteDimensional.finrank_directSum
@[simp]
theorem finrank_directSum {ι : Type v} [Fintype ι] (M : ι → Type w) [∀ i : ι, AddCommGroup (M i)]
    [∀ i : ι, Module R (M i)] [∀ i : ι, Module.Free R (M i)] [∀ i : ι, Module.Finite R (M i)] :
    finrank R (⨁ i, M i) = ∑ i, finrank R (M i) 
Arguments: (R : Type u) [Ring R] [StrongRankCondition R] {ι : Type v} [Fintype ι] (M : ι → Type w) [(i : ι) → AddCommGroup (M i)] [(i : ι) → Module R (M i)] [∀ (i : ι), Module.Free R (M i)] [∀ (i : ι), Module.Finite R (M i)]
Goal: FiniteDimensional.finrank R (⨁ (i : ι), M i) = ∑ i : ι, FiniteDimensional.finrank R (M i)
-- FiniteDimensional.finrank_matrix
theorem finrank_matrix (m n : Type*) [Fintype m] [Fintype n] :
    finrank R (Matrix m n R) = card m * card n 
Arguments: (R : Type u) [Ring R] [StrongRankCondition R] (m : Type u_2) (n : Type u_3) [Fintype m] [Fintype n]
Goal: FiniteDimensional.finrank R (Matrix m n R) = Fintype.card m * Fintype.card n
-- rank_pi
-- this result is not true without the freeness assumption
@[simp]
theorem rank_pi [Finite η] : Module.rank R (∀ i, φ i) =
    Cardinal.sum fun i => Module.rank R (φ i) 
Arguments: {R : Type u} {η : Type u₁'} {φ : η → Type u_1} [Ring R] [StrongRankCondition R] [(i : η) → AddCommGroup (φ i)] [(i : η) → Module R (φ i)] [∀ (i : η), Module.Free R (φ i)] [Finite η]
Goal: Module.rank R ((i : η) → φ i) = Cardinal.sum fun i => Module.rank R (φ i)
-- FiniteDimensional.finrank_pi
theorem FiniteDimensional.finrank_pi {ι : Type v} [Fintype ι] :
    finrank R (ι → R) = Fintype.card ι 
Arguments: (R : Type u) [Ring R] [StrongRankCondition R] {ι : Type v} [Fintype ι]
Goal: FiniteDimensional.finrank R (ι → R) = Fintype.card ι
-- FiniteDimensional.finrank_pi_fintype
theorem FiniteDimensional.finrank_pi_fintype
    {ι : Type v} [Fintype ι] {M : ι → Type w} [∀ i : ι, AddCommGroup (M i)]
    [∀ i : ι, Module R (M i)] [∀ i : ι, Module.Free R (M i)] [∀ i : ι, Module.Finite R (M i)] :
    finrank R (∀ i, M i) = ∑ i, finrank R (M i) 
Arguments: (R : Type u) [Ring R] [StrongRankCondition R] {ι : Type v} [Fintype ι] {M : ι → Type w} [(i : ι) → AddCommGroup (M i)] [(i : ι) → Module R (M i)] [∀ (i : ι), Module.Free R (M i)] [∀ (i : ι), Module.Finite R (M i)]
Goal: FiniteDimensional.finrank R ((i : ι) → M i) = ∑ i : ι, FiniteDimensional.finrank R (M i)
-- rank_fun
theorem rank_fun {M η : Type u} [Fintype η] [AddCommGroup M] [Module R M] [Module.Free R M] :
    Module.rank R (η → M) = Fintype.card η * Module.rank R M 
Arguments: {R : Type u} [Ring R] [StrongRankCondition R] {M η : Type u} [Fintype η] [AddCommGroup M] [Module R M] [Module.Free R M]
Goal: Module.rank R (η → M) = ↑(Fintype.card η) * Module.rank R M
-- rank_fun_eq_lift_mul
theorem rank_fun_eq_lift_mul : Module.rank R (η → M) =
    (Fintype.card η : Cardinal.{max u₁' v}) * Cardinal.lift.{u₁'} (Module.rank R M) 
Arguments: {R : Type u} {M : Type v} {η : Type u₁'} [Ring R] [AddCommGroup M] [Module R M] [StrongRankCondition R] [Module.Free R M] [Fintype η]
Goal: Module.rank R (η → M) = ↑(Fintype.card η) * Cardinal.lift.{u₁', v} (Module.rank R M)
-- rank_fun'
theorem rank_fun' : Module.rank R (η → R) = Fintype.card η 
Arguments: {R : Type u} {η : Type u₁'} [Ring R] [StrongRankCondition R] [Fintype η]
Goal: Module.rank R (η → R) = ↑(Fintype.card η)
-- rank_fin_fun
theorem rank_fin_fun (n : ℕ) : Module.rank R (Fin n → R) = n 
Arguments: {R : Type u} [Ring R] [StrongRankCondition R] (n : ℕ)
Goal: Module.rank R (Fin n → R) = ↑n
-- FiniteDimensional.finrank_fintype_fun_eq_card
@[simp]
theorem FiniteDimensional.finrank_fintype_fun_eq_card : finrank R (η → R) = Fintype.card η 
Arguments: (R : Type u) {η : Type u₁'} [Ring R] [StrongRankCondition R] [Fintype η]
Goal: FiniteDimensional.finrank R (η → R) = Fintype.card η
-- FiniteDimensional.finrank_fin_fun
-- @[simp] -- Porting note (#10618): simp already proves this
theorem FiniteDimensional.finrank_fin_fun {n : ℕ} : finrank R (Fin n → R) = n 
Arguments: (R : Type u) [Ring R] [StrongRankCondition R] {n : ℕ}
Goal: FiniteDimensional.finrank R (Fin n → R) = n
-- rank_tensorProduct
@[simp]
theorem rank_tensorProduct :
    Module.rank R (M ⊗[S] M') =
      Cardinal.lift.{v'} (Module.rank R M) * Cardinal.lift.{v} (Module.rank S M') 
Arguments: {R S : Type u} {M : Type v} {M' : Type v'} [Ring R] [CommRing S] [AddCommGroup M] [AddCommGroup M'] [StrongRankCondition R] [StrongRankCondition S] [Module S M] [Module S M'] [Module.Free S M'] [Algebra S R] [Module R M] [IsScalarTower S R M] [Module.Free R M]
Goal: Module.rank R (TensorProduct S M M') =
  Cardinal.lift.{v', v} (Module.rank R M) * Cardinal.lift.{v, v'} (Module.rank S M')
-- rank_tensorProduct'
theorem rank_tensorProduct' :
    Module.rank R (M ⊗[S] M₁) = Module.rank R M * Module.rank S M₁ 
Arguments: {R S : Type u} {M M₁ : Type v} [Ring R] [CommRing S] [AddCommGroup M] [AddCommGroup M₁] [StrongRankCondition R] [StrongRankCondition S] [Module S M] [Module S M₁] [Module.Free S M₁] [Algebra S R] [Module R M] [IsScalarTower S R M] [Module.Free R M]
Goal: Module.rank R (TensorProduct S M M₁) = Module.rank R M * Module.rank S M₁
-- FiniteDimensional.finrank_tensorProduct
@[simp]
theorem FiniteDimensional.finrank_tensorProduct :
    finrank R (M ⊗[S] M') = finrank R M * finrank S M' 
Arguments: {R S : Type u} {M : Type v} {M' : Type v'} [Ring R] [CommRing S] [AddCommGroup M] [AddCommGroup M'] [StrongRankCondition R] [StrongRankCondition S] [Module S M] [Module S M'] [Module.Free S M'] [Algebra S R] [Module R M] [IsScalarTower S R M] [Module.Free R M]
Goal: FiniteDimensional.finrank R (TensorProduct S M M') = FiniteDimensional.finrank R M * FiniteDimensional.finrank S M'
-- Submodule.lt_of_le_of_finrank_lt_finrank
theorem lt_of_le_of_finrank_lt_finrank {s t : Submodule R M} (le : s ≤ t)
    (lt : finrank R s < finrank R t) : s < t 
Arguments: {R : Type u} {M : Type v} [Ring R] [AddCommGroup M] [Module R M] {s t : Submodule R M} (le : s ≤ t) (lt : FiniteDimensional.finrank R ↥s < FiniteDimensional.finrank R ↥t)
Goal: s < t
-- Submodule.lt_top_of_finrank_lt_finrank
theorem lt_top_of_finrank_lt_finrank {s : Submodule R M} (lt : finrank R s < finrank R M) :
    s < ⊤ 
Arguments: {R : Type u} {M : Type v} [Ring R] [AddCommGroup M] [Module R M] {s : Submodule R M} (lt : FiniteDimensional.finrank R ↥s < FiniteDimensional.finrank R M)
Goal: s < ⊤
-- Submodule.finrank_le
theorem Submodule.finrank_le [Module.Finite R M] (s : Submodule R M) :
    finrank R s ≤ finrank R M 
Arguments: {R : Type u} {M : Type v} [Ring R] [AddCommGroup M] [Module R M] [StrongRankCondition R] [Module.Finite R M] (s : Submodule R M)
Goal: FiniteDimensional.finrank R ↥s ≤ FiniteDimensional.finrank R M
-- Submodule.finrank_quotient_le
theorem Submodule.finrank_quotient_le [Module.Finite R M] (s : Submodule R M) :
    finrank R (M ⧸ s) ≤ finrank R M 
Arguments: {R : Type u} {M : Type v} [Ring R] [AddCommGroup M] [Module R M] [StrongRankCondition R] [Module.Finite R M] (s : Submodule R M)
Goal: FiniteDimensional.finrank R (M ⧸ s) ≤ FiniteDimensional.finrank R M
-- Submodule.finrank_map_le
theorem Submodule.finrank_map_le (f : M →ₗ[R] M') (p : Submodule R M) [Module.Finite R p] :
    finrank R (p.map f) ≤ finrank R p 
Arguments: {R : Type u} {M : Type v} {M' : Type v'} [Ring R] [AddCommGroup M] [AddCommGroup M'] [Module R M] [Module R M'] [StrongRankCondition R] (f : M →ₗ[R] M') (p : Submodule R M) [Module.Finite R ↥p]
Goal: FiniteDimensional.finrank R ↥(Submodule.map f p) ≤ FiniteDimensional.finrank R ↥p
-- Submodule.finrank_le_finrank_of_le
theorem Submodule.finrank_le_finrank_of_le {s t : Submodule R M} [Module.Finite R t] (hst : s ≤ t) :
    finrank R s ≤ finrank R t 
Arguments: {R : Type u} {M : Type v} [Ring R] [AddCommGroup M] [Module R M] [StrongRankCondition R] {s t : Submodule R M} [Module.Finite R ↥t] (hst : s ≤ t)
Goal: FiniteDimensional.finrank R ↥s ≤ FiniteDimensional.finrank R ↥t
-- rank_span_le
theorem rank_span_le (s : Set M) : Module.rank R (span R s) ≤ #s 
Arguments: {R : Type u} {M : Type v} [Ring R] [AddCommGroup M] [Module R M] [StrongRankCondition R] (s : Set M)
Goal: Module.rank R ↥(Submodule.span R s) ≤ #↑s
-- rank_span_finset_le
theorem rank_span_finset_le (s : Finset M) : Module.rank R (span R (s : Set M)) ≤ s.card 
Arguments: {R : Type u} {M : Type v} [Ring R] [AddCommGroup M] [Module R M] [StrongRankCondition R] (s : Finset M)
Goal: Module.rank R ↥(Submodule.span R ↑s) ≤ ↑s.card
-- rank_span_of_finset
theorem rank_span_of_finset (s : Finset M) : Module.rank R (span R (s : Set M)) < ℵ₀ 
Arguments: {R : Type u} {M : Type v} [Ring R] [AddCommGroup M] [Module R M] [StrongRankCondition R] (s : Finset M)
Goal: Module.rank R ↥(Submodule.span R ↑s) < ℵ₀
-- finrank_span_le_card
theorem finrank_span_le_card (s : Set M) [Fintype s] : finrank R (span R s) ≤ s.toFinset.card 
Arguments: {R : Type u} {M : Type v} [Ring R] [AddCommGroup M] [Module R M] [StrongRankCondition R] (s : Set M) [Fintype ↑s]
Goal: FiniteDimensional.finrank R ↥(Submodule.span R s) ≤ s.toFinset.card
-- finrank_span_finset_le_card
theorem finrank_span_finset_le_card (s : Finset M) : (s : Set M).finrank R ≤ s.card 
Arguments: {R : Type u} {M : Type v} [Ring R] [AddCommGroup M] [Module R M] [StrongRankCondition R] (s : Finset M)
Goal: Set.finrank R ↑s ≤ s.card
-- finrank_range_le_card
theorem finrank_range_le_card {ι : Type*} [Fintype ι] (b : ι → M) :
    (Set.range b).finrank R ≤ Fintype.card ι 
Arguments: {R : Type u} {M : Type v} [Ring R] [AddCommGroup M] [Module R M] [StrongRankCondition R] {ι : Type u_2} [Fintype ι] (b : ι → M)
Goal: Set.finrank R (Set.range b) ≤ Fintype.card ι
-- finrank_span_eq_card
theorem finrank_span_eq_card [Nontrivial R] {ι : Type*} [Fintype ι] {b : ι → M}
    (hb : LinearIndependent R b) :
    finrank R (span R (Set.range b)) = Fintype.card ι 
Arguments: {R : Type u} {M : Type v} [Ring R] [AddCommGroup M] [Module R M] [StrongRankCondition R] [Nontrivial R] {ι : Type u_2} [Fintype ι] {b : ι → M} (hb : LinearIndependent R b)
Goal: FiniteDimensional.finrank R ↥(Submodule.span R (Set.range b)) = Fintype.card ι
-- finrank_span_set_eq_card
theorem finrank_span_set_eq_card {s : Set M} [Fintype s] (hs : LinearIndependent R ((↑) : s → M)) :
    finrank R (span R s) = s.toFinset.card 
Arguments: {R : Type u} {M : Type v} [Ring R] [AddCommGroup M] [Module R M] [StrongRankCondition R] {s : Set M} [Fintype ↑s] (hs : LinearIndependent (ι := { x // x ∈ s }) R Subtype.val)
Goal: FiniteDimensional.finrank R ↥(Submodule.span R s) = s.toFinset.card
-- finrank_span_finset_eq_card
theorem finrank_span_finset_eq_card {s : Finset M} (hs : LinearIndependent R ((↑) : s → M)) :
    finrank R (span R (s : Set M)) = s.card 
Arguments: {R : Type u} {M : Type v} [Ring R] [AddCommGroup M] [Module R M] [StrongRankCondition R] {s : Finset M} (hs : LinearIndependent R Subtype.val)
Goal: FiniteDimensional.finrank R ↥(Submodule.span R ↑s) = s.card
-- span_lt_of_subset_of_card_lt_finrank
theorem span_lt_of_subset_of_card_lt_finrank {s : Set M} [Fintype s] {t : Submodule R M}
    (subset : s ⊆ t) (card_lt : s.toFinset.card < finrank R t) : span R s < t 
Arguments: {R : Type u} {M : Type v} [Ring R] [AddCommGroup M] [Module R M] [StrongRankCondition R] {s : Set M} [Fintype ↑s] {t : Submodule R M} (subset : s ⊆ ↑t) (card_lt : s.toFinset.card < FiniteDimensional.finrank R ↥t)
Goal: Submodule.span R s < t
-- span_lt_top_of_card_lt_finrank
theorem span_lt_top_of_card_lt_finrank {s : Set M} [Fintype s]
    (card_lt : s.toFinset.card < finrank R M) : span R s < ⊤ 
Arguments: {R : Type u} {M : Type v} [Ring R] [AddCommGroup M] [Module R M] [StrongRankCondition R] {s : Set M} [Fintype ↑s] (card_lt : s.toFinset.card < FiniteDimensional.finrank R M)
Goal: Submodule.span R s < ⊤
-- Subalgebra.rank_toSubmodule
@[simp]
theorem Subalgebra.rank_toSubmodule (S : Subalgebra F E) :
    Module.rank F (Subalgebra.toSubmodule S) = Module.rank F S 
Arguments: {F : Type u_2} {E : Type u_3} [CommRing F] [Ring E] [Algebra F E] (S : Subalgebra F E)
Goal: Module.rank F ↥(Subalgebra.toSubmodule S) = Module.rank F ↥S
-- Subalgebra.finrank_toSubmodule
@[simp]
theorem Subalgebra.finrank_toSubmodule (S : Subalgebra F E) :
    finrank F (Subalgebra.toSubmodule S) = finrank F S 
Arguments: {F : Type u_2} {E : Type u_3} [CommRing F] [Ring E] [Algebra F E] (S : Subalgebra F E)
Goal: FiniteDimensional.finrank F ↥(Subalgebra.toSubmodule S) = FiniteDimensional.finrank F ↥S
-- subalgebra_top_rank_eq_submodule_top_rank
theorem subalgebra_top_rank_eq_submodule_top_rank :
    Module.rank F (⊤ : Subalgebra F E) = Module.rank F (⊤ : Submodule F E) 
Arguments: {F : Type u_2} {E : Type u_3} [CommRing F] [Ring E] [Algebra F E]
Goal: Module.rank F ↥⊤ = Module.rank F ↥⊤
-- subalgebra_top_finrank_eq_submodule_top_finrank
theorem subalgebra_top_finrank_eq_submodule_top_finrank :
    finrank F (⊤ : Subalgebra F E) = finrank F (⊤ : Submodule F E) 
Arguments: {F : Type u_2} {E : Type u_3} [CommRing F] [Ring E] [Algebra F E]
Goal: FiniteDimensional.finrank F ↥⊤ = FiniteDimensional.finrank F ↥⊤
-- Subalgebra.rank_top
theorem Subalgebra.rank_top : Module.rank F (⊤ : Subalgebra F E) = Module.rank F E 
Arguments: {F : Type u_2} {E : Type u_3} [CommRing F] [Ring E] [Algebra F E]
Goal: Module.rank F ↥⊤ = Module.rank F E
-- Subalgebra.rank_bot
@[simp]
theorem Subalgebra.rank_bot : Module.rank F (⊥ : Subalgebra F E) = 1 
Arguments: {F : Type u_2} {E : Type u_3} [CommRing F] [Ring E] [Algebra F E] [StrongRankCondition F] [NoZeroSMulDivisors F E] [Nontrivial E]
Goal: Module.rank F ↥⊥ = 1
-- Subalgebra.finrank_bot
@[simp]
theorem Subalgebra.finrank_bot : finrank F (⊥ : Subalgebra F E) = 1 
Arguments: {F : Type u_2} {E : Type u_3} [CommRing F] [Ring E] [Algebra F E] [StrongRankCondition F] [NoZeroSMulDivisors F E] [Nontrivial E]
Goal: FiniteDimensional.finrank F ↥⊥ = 1
-- Projectivization.mk'_eq_mk
@[simp]
theorem mk'_eq_mk (v : { v : V // v ≠ 0 }) : mk' K v = mk K ↑v v.2 
Arguments: (K : Type u_1) {V : Type u_2} [DivisionRing K] [AddCommGroup V] [Module K V] (v : { v // v ≠ 0 })
Goal: Projectivization.mk' K v = Projectivization.mk K ↑v ⋯
-- Projectivization.rep_nonzero
theorem rep_nonzero (v : ℙ K V) : v.rep ≠ 0 
Arguments: {K : Type u_1} {V : Type u_2} [DivisionRing K] [AddCommGroup V] [Module K V] (v : Projectivization K V)
Goal: v.rep ≠ 0
-- Projectivization.mk_rep
@[simp]
theorem mk_rep (v : ℙ K V) : mk K v.rep v.rep_nonzero = v 
Arguments: {K : Type u_1} {V : Type u_2} [DivisionRing K] [AddCommGroup V] [Module K V] (v : Projectivization K V)
Goal: Projectivization.mk K v.rep ⋯ = v
-- Projectivization.mk_eq_mk_iff
theorem mk_eq_mk_iff (v w : V) (hv : v ≠ 0) (hw : w ≠ 0) :
    mk K v hv = mk K w hw ↔ ∃ a : Kˣ, a • w = v 
Arguments: (K : Type u_1) {V : Type u_2} [DivisionRing K] [AddCommGroup V] [Module K V] (v w : V) (hv : v ≠ 0) (hw : w ≠ 0)
Goal: Projectivization.mk K v hv = Projectivization.mk K w hw ↔ ∃ a, a • w = v
-- Projectivization.mk_eq_mk_iff'
theorem mk_eq_mk_iff' (v w : V) (hv : v ≠ 0) (hw : w ≠ 0) :
    mk K v hv = mk K w hw ↔ ∃ a : K, a • w = v 
Arguments: (K : Type u_1) {V : Type u_2} [DivisionRing K] [AddCommGroup V] [Module K V] (v w : V) (hv : v ≠ 0) (hw : w ≠ 0)
Goal: Projectivization.mk K v hv = Projectivization.mk K w hw ↔ ∃ a, a • w = v
-- Projectivization.exists_smul_eq_mk_rep
theorem exists_smul_eq_mk_rep (v : V) (hv : v ≠ 0) : ∃ a : Kˣ, a • v = (mk K v hv).rep 
Arguments: (K : Type u_1) {V : Type u_2} [DivisionRing K] [AddCommGroup V] [Module K V] (v : V) (hv : v ≠ 0)
Goal: ∃ a, a • v = (Projectivization.mk K v hv).rep
-- Projectivization.ind
@[elab_as_elim, cases_eliminator, induction_eliminator]
theorem ind {P : ℙ K V → Prop} (h : ∀ (v : V) (h : v ≠ 0), P (mk K v h)) : ∀ p, P p 
Arguments: {K : Type u_1} {V : Type u_2} [DivisionRing K] [AddCommGroup V] [Module K V] {P : Projectivization K V → Prop} (h : ∀ (v : V) (h : v ≠ 0), P (Projectivization.mk K v h)) (p : Projectivization K V)
Goal: P p
-- Projectivization.submodule_mk
@[simp]
theorem submodule_mk (v : V) (hv : v ≠ 0) : (mk K v hv).submodule = K ∙ v 
Arguments: {K : Type u_1} {V : Type u_2} [DivisionRing K] [AddCommGroup V] [Module K V] (v : V) (hv : v ≠ 0)
Goal: (Projectivization.mk K v hv).submodule = Submodule.span K {v}
-- Projectivization.submodule_eq
theorem submodule_eq (v : ℙ K V) : v.submodule = K ∙ v.rep 
Arguments: {K : Type u_1} {V : Type u_2} [DivisionRing K] [AddCommGroup V] [Module K V] (v : Projectivization K V)
Goal: v.submodule = Submodule.span K {v.rep}
-- Projectivization.finrank_submodule
theorem finrank_submodule (v : ℙ K V) : finrank K v.submodule = 1 
Arguments: {K : Type u_1} {V : Type u_2} [DivisionRing K] [AddCommGroup V] [Module K V] (v : Projectivization K V)
Goal: FiniteDimensional.finrank K ↥v.submodule = 1