ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- Pi.basisFun_repr
@[simp]
theorem basisFun_repr (x : η → R) (i : η) : (Pi.basisFun R η).repr x i = x i 
Arguments: (R : Type u_1) (η : Type u_2) [Semiring R] [Finite η] (x : η → R) (i : η)
Goal: ((Pi.basisFun R η).repr x) i = x i
-- Pi.basisFun_equivFun
@[simp]
theorem basisFun_equivFun : (Pi.basisFun R η).equivFun = LinearEquiv.refl _ _ 
Arguments: (R : Type u_1) (η : Type u_2) [Semiring R] [Finite η]
Goal: (Pi.basisFun R η).equivFun = LinearEquiv.refl R (η → R)
-- Module.piEquiv_apply_apply
lemma piEquiv_apply_apply (ι R M : Type*) [Fintype ι] [CommSemiring R]
    [AddCommMonoid M] [Module R M] (v : ι → M) (w : ι → R) :
    piEquiv ι R M v w = ∑ i, w i • v i 
Arguments: (ι : Type u_5) (R : Type u_6) (M : Type u_7) [Fintype ι] [CommSemiring R] [AddCommMonoid M] [Module R M] (v : ι → M) (w : ι → R)
Goal: ((Module.piEquiv ι R M) v) w = ∑ i : ι, w i • v i
-- Module.range_piEquiv
@[simp] lemma range_piEquiv (v : ι → M) :
    LinearMap.range (piEquiv ι R M v) = span R (range v) 
Arguments: (ι : Type u_1) (R : Type u_2) (M : Type u_3) [Finite ι] [CommSemiring R] [AddCommMonoid M] [Module R M] (v : ι → M)
Goal: LinearMap.range ((Module.piEquiv ι R M) v) = Submodule.span R (Set.range v)
-- Module.surjective_piEquiv_apply_iff
@[simp] lemma surjective_piEquiv_apply_iff (v : ι → M) :
    Surjective (piEquiv ι R M v) ↔ span R (range v) = ⊤ 
Arguments: (ι : Type u_1) (R : Type u_2) (M : Type u_3) [Finite ι] [CommSemiring R] [AddCommMonoid M] [Module R M] (v : ι → M)
Goal: Function.Surjective ⇑((Module.piEquiv ι R M) v) ↔ Submodule.span R (Set.range v) = ⊤
-- Matrix.stdBasis_eq_stdBasisMatrix
theorem stdBasis_eq_stdBasisMatrix (i : m) (j : n) [DecidableEq m] [DecidableEq n] :
    stdBasis R m n (i, j) = stdBasisMatrix i j (1 : R) 
Arguments: (R : Type u_1) {m : Type u_2} {n : Type u_3} [Fintype m] [Finite n] [Semiring R] (i : m) (j : n) [DecidableEq m] [DecidableEq n]
Goal: (Matrix.stdBasis R m n) (i, j) = Matrix.stdBasisMatrix i j 1
-- Matrix.trace_diagonal
lemma trace_diagonal {o} [Fintype o] [DecidableEq o] (d : o → R) :
    trace (diagonal d) = ∑ i, d i 
Arguments: {R : Type u_6} [AddCommMonoid R] {o : Type u_8} [Fintype o] [DecidableEq o] (d : o → R)
Goal: (Matrix.diagonal d).trace = ∑ i : o, d i
-- Matrix.trace_zero
@[simp]
theorem trace_zero : trace (0 : Matrix n n R) = 0 
Arguments: (n : Type u_3) (R : Type u_6) [Fintype n] [AddCommMonoid R]
Goal: Matrix.trace 0 = 0
-- Matrix.trace_eq_zero_of_isEmpty
@[simp]
lemma trace_eq_zero_of_isEmpty [IsEmpty n] (A : Matrix n n R) : trace A = 0 
Arguments: {n : Type u_3} {R : Type u_6} [Fintype n] [AddCommMonoid R] [IsEmpty n] (A : Matrix n n R)
Goal: A.trace = 0
-- Matrix.trace_add
@[simp]
theorem trace_add (A B : Matrix n n R) : trace (A + B) = trace A + trace B 
Arguments: {n : Type u_3} {R : Type u_6} [Fintype n] [AddCommMonoid R] (A B : Matrix n n R)
Goal: (A + B).trace = A.trace + B.trace
-- Matrix.trace_smul
@[simp]
theorem trace_smul [Monoid α] [DistribMulAction α R] (r : α) (A : Matrix n n R) :
    trace (r • A) = r • trace A 
Arguments: {n : Type u_3} {α : Type u_5} {R : Type u_6} [Fintype n] [AddCommMonoid R] [Monoid α] [DistribMulAction α R] (r : α) (A : Matrix n n R)
Goal: (r • A).trace = r • A.trace
-- Matrix.trace_transpose
@[simp]
theorem trace_transpose (A : Matrix n n R) : trace Aᵀ = trace A 
Arguments: {n : Type u_3} {R : Type u_6} [Fintype n] [AddCommMonoid R] (A : Matrix n n R)
Goal: Aᵀ.trace = A.trace
-- Matrix.trace_conjTranspose
@[simp]
theorem trace_conjTranspose [StarAddMonoid R] (A : Matrix n n R) : trace Aᴴ = star (trace A) 
Arguments: {n : Type u_3} {R : Type u_6} [Fintype n] [AddCommMonoid R] [StarAddMonoid R] (A : Matrix n n R)
Goal: Aᴴ.trace = star A.trace
-- Matrix.traceAddMonoidHom_apply
@[simps]
def traceAddMonoidHom : Matrix n n R →+ R 
Arguments: (n : Type u_3) (R : Type u_6) [Fintype n] [AddCommMonoid R] (A : Matrix n n R)
Goal: (Matrix.traceAddMonoidHom n R) A = A.trace
-- Matrix.traceLinearMap_apply
@[simps]
def traceLinearMap [Semiring α] [Module α R] : Matrix n n R →ₗ[α] R 
Arguments: (n : Type u_3) (α : Type u_5) (R : Type u_6) [Fintype n] [AddCommMonoid R] [Semiring α] [Module α R] (A : Matrix n n R)
Goal: (Matrix.traceLinearMap n α R) A = A.trace
-- Matrix.trace_list_sum
@[simp]
theorem trace_list_sum (l : List (Matrix n n R)) : trace l.sum = (l.map trace).sum 
Arguments: {n : Type u_3} {R : Type u_6} [Fintype n] [AddCommMonoid R] (l : List (Matrix n n R))
Goal: l.sum.trace = (List.map Matrix.trace l).sum
-- Matrix.trace_multiset_sum
@[simp]
theorem trace_multiset_sum (s : Multiset (Matrix n n R)) : trace s.sum = (s.map trace).sum 
Arguments: {n : Type u_3} {R : Type u_6} [Fintype n] [AddCommMonoid R] (s : Multiset (Matrix n n R))
Goal: s.sum.trace = (Multiset.map Matrix.trace s).sum
-- Matrix.trace_sum
@[simp]
theorem trace_sum (s : Finset ι) (f : ι → Matrix n n R) :
    trace (∑ i ∈ s, f i) = ∑ i ∈ s, trace (f i) 
Arguments: {ι : Type u_1} {n : Type u_3} {R : Type u_6} [Fintype n] [AddCommMonoid R] (s : Finset ι) (f : ι → Matrix n n R)
Goal: (∑ i ∈ s, f i).trace = ∑ i ∈ s, (f i).trace
-- AddMonoidHom.map_trace
theorem _root_.AddMonoidHom.map_trace [AddCommMonoid S] (f : R →+ S) (A : Matrix n n R) :
    f (trace A)  = trace (f.mapMatrix A) 
Arguments: {n : Type u_3} {R : Type u_6} {S : Type u_7} [Fintype n] [AddCommMonoid R] [AddCommMonoid S] (f : R →+ S) (A : Matrix n n R)
Goal: f A.trace = (f.mapMatrix A).trace
-- Matrix.trace_blockDiagonal
lemma trace_blockDiagonal [DecidableEq p] (M : p → Matrix n n R) :
    trace (blockDiagonal M) = ∑ i, trace (M i) 
Arguments: {n : Type u_3} {p : Type u_4} {R : Type u_6} [Fintype n] [Fintype p] [AddCommMonoid R] [DecidableEq p] (M : p → Matrix n n R)
Goal: (Matrix.blockDiagonal M).trace = ∑ i : p, (M i).trace
-- Matrix.trace_blockDiagonal'
lemma trace_blockDiagonal' [DecidableEq p] {m : p → Type*} [∀ i, Fintype (m i)]
    (M : ∀ i, Matrix (m i) (m i) R) :
    trace (blockDiagonal' M) = ∑ i, trace (M i) 
Arguments: {p : Type u_4} {R : Type u_6} [Fintype p] [AddCommMonoid R] [DecidableEq p] {m : p → Type u_8} [(i : p) → Fintype (m i)] (M : (i : p) → Matrix (m i) (m i) R)
Goal: (Matrix.blockDiagonal' M).trace = ∑ i : p, (M i).trace
-- Matrix.trace_sub
@[simp]
theorem trace_sub (A B : Matrix n n R) : trace (A - B) = trace A - trace B 
Arguments: {n : Type u_3} {R : Type u_6} [Fintype n] [AddCommGroup R] (A B : Matrix n n R)
Goal: (A - B).trace = A.trace - B.trace
-- Matrix.trace_neg
@[simp]
theorem trace_neg (A : Matrix n n R) : trace (-A) = -trace A 
Arguments: {n : Type u_3} {R : Type u_6} [Fintype n] [AddCommGroup R] (A : Matrix n n R)
Goal: (-A).trace = -A.trace
-- Matrix.trace_one
@[simp]
theorem trace_one : trace (1 : Matrix n n R) = Fintype.card n 
Arguments: {n : Type u_3} {R : Type u_6} [Fintype n] [DecidableEq n] [AddCommMonoidWithOne R]
Goal: Matrix.trace 1 = ↑(Fintype.card n)
-- Matrix.trace_transpose_mul
@[simp]
theorem trace_transpose_mul [AddCommMonoid R] [Mul R] (A : Matrix m n R) (B : Matrix n m R) :
    trace (Aᵀ * Bᵀ) = trace (A * B) 
Arguments: {m : Type u_2} {n : Type u_3} {R : Type u_6} [Fintype m] [Fintype n] [AddCommMonoid R] [Mul R] (A : Matrix m n R) (B : Matrix n m R)
Goal: (Aᵀ * Bᵀ).trace = (A * B).trace
-- Matrix.trace_mul_comm
theorem trace_mul_comm [AddCommMonoid R] [CommSemigroup R] (A : Matrix m n R) (B : Matrix n m R) :
    trace (A * B) = trace (B * A) 
Arguments: {m : Type u_2} {n : Type u_3} {R : Type u_6} [Fintype m] [Fintype n] [AddCommMonoid R] [CommSemigroup R] (A : Matrix m n R) (B : Matrix n m R)
Goal: (A * B).trace = (B * A).trace
-- Matrix.trace_mul_cycle
theorem trace_mul_cycle [NonUnitalCommSemiring R] (A : Matrix m n R) (B : Matrix n p R)
    (C : Matrix p m R) : trace (A * B * C) = trace (C * A * B) 
Arguments: {m : Type u_2} {n : Type u_3} {p : Type u_4} {R : Type u_6} [Fintype m] [Fintype n] [Fintype p] [NonUnitalCommSemiring R] (A : Matrix m n R) (B : Matrix n p R) (C : Matrix p m R)
Goal: (A * B * C).trace = (C * A * B).trace
-- Matrix.trace_mul_cycle'
theorem trace_mul_cycle' [NonUnitalCommSemiring R] (A : Matrix m n R) (B : Matrix n p R)
    (C : Matrix p m R) : trace (A * (B * C)) = trace (C * (A * B)) 
Arguments: {m : Type u_2} {n : Type u_3} {p : Type u_4} {R : Type u_6} [Fintype m] [Fintype n] [Fintype p] [NonUnitalCommSemiring R] (A : Matrix m n R) (B : Matrix n p R) (C : Matrix p m R)
Goal: (A * (B * C)).trace = (C * (A * B)).trace
-- Matrix.trace_col_mul_row
@[simp]
theorem trace_col_mul_row {ι : Type*} [Unique ι] [NonUnitalNonAssocSemiring R] (a b : n → R) :
    trace (col ι a * row ι b) = dotProduct a b 
Arguments: {n : Type u_3} {R : Type u_6} [Fintype n] {ι : Type u_8} [Unique ι] [NonUnitalNonAssocSemiring R] (a b : n → R)
Goal: (Matrix.col ι a * Matrix.row ι b).trace = a ⬝ᵥ b
-- Matrix.trace_submatrix_succ
lemma trace_submatrix_succ {n : ℕ} [NonUnitalNonAssocSemiring R]
    (M : Matrix (Fin n.succ) (Fin n.succ) R) :
    M 0 0 + trace (submatrix M Fin.succ Fin.succ) = trace M 
Arguments: {R : Type u_6} {n : ℕ} [NonUnitalNonAssocSemiring R] (M : Matrix (Fin n.succ) (Fin n.succ) R)
Goal: M 0 0 + (M.submatrix Fin.succ Fin.succ).trace = M.trace
-- Matrix.trace_fin_zero
theorem trace_fin_zero (A : Matrix (Fin 0) (Fin 0) R) : trace A = 0 
Arguments: {R : Type u_6} [AddCommMonoid R] (A : Matrix (Fin 0) (Fin 0) R)
Goal: A.trace = 0
-- Matrix.trace_fin_one
theorem trace_fin_one (A : Matrix (Fin 1) (Fin 1) R) : trace A = A 0 0 
Arguments: {R : Type u_6} [AddCommMonoid R] (A : Matrix (Fin 1) (Fin 1) R)
Goal: A.trace = A 0 0
-- Matrix.trace_fin_two
theorem trace_fin_two (A : Matrix (Fin 2) (Fin 2) R) : trace A = A 0 0 + A 1 1 
Arguments: {R : Type u_6} [AddCommMonoid R] (A : Matrix (Fin 2) (Fin 2) R)
Goal: A.trace = A 0 0 + A 1 1
-- Matrix.trace_fin_three
theorem trace_fin_three (A : Matrix (Fin 3) (Fin 3) R) : trace A = A 0 0 + A 1 1 + A 2 2 
Arguments: {R : Type u_6} [AddCommMonoid R] (A : Matrix (Fin 3) (Fin 3) R)
Goal: A.trace = A 0 0 + A 1 1 + A 2 2
-- Matrix.IsSymm.eq
theorem IsSymm.eq {A : Matrix n n α} (h : A.IsSymm) : Aᵀ = A 
Arguments: {α : Type u_1} {n : Type u_3} {A : Matrix n n α} (h : A.IsSymm)
Goal: A.transpose = A
-- Matrix.IsSymm.ext_iff
theorem IsSymm.ext_iff {A : Matrix n n α} : A.IsSymm ↔ ∀ i j, A j i = A i j 
Arguments: {α : Type u_1} {n : Type u_3} {A : Matrix n n α}
Goal: A.IsSymm ↔ ∀ (i j : n), A j i = A i j
-- Matrix.IsSymm.ext
-- @[ext] -- Porting note: removed attribute
theorem IsSymm.ext {A : Matrix n n α} : (∀ i j, A j i = A i j) → A.IsSymm 
Arguments: {α : Type u_1} {n : Type u_3} {A : Matrix n n α}
Goal: (∀ (i j : n), A j i = A i j) → A.IsSymm
-- Matrix.IsSymm.apply
theorem IsSymm.apply {A : Matrix n n α} (h : A.IsSymm) (i j : n) : A j i = A i j 
Arguments: {α : Type u_1} {n : Type u_3} {A : Matrix n n α} (h : A.IsSymm) (i j : n)
Goal: A j i = A i j
-- Matrix.isSymm_mul_transpose_self
theorem isSymm_mul_transpose_self [Fintype n] [CommSemiring α] (A : Matrix n n α) :
    (A * Aᵀ).IsSymm 
Arguments: {α : Type u_1} {n : Type u_3} [Fintype n] [CommSemiring α] (A : Matrix n n α)
Goal: (A * A.transpose).IsSymm
-- Matrix.isSymm_transpose_mul_self
theorem isSymm_transpose_mul_self [Fintype n] [CommSemiring α] (A : Matrix n n α) :
    (Aᵀ * A).IsSymm 
Arguments: {α : Type u_1} {n : Type u_3} [Fintype n] [CommSemiring α] (A : Matrix n n α)
Goal: (A.transpose * A).IsSymm
-- Matrix.isSymm_add_transpose_self
theorem isSymm_add_transpose_self [AddCommSemigroup α] (A : Matrix n n α) : (A + Aᵀ).IsSymm 
Arguments: {α : Type u_1} {n : Type u_3} [AddCommSemigroup α] (A : Matrix n n α)
Goal: (A + A.transpose).IsSymm
-- Matrix.isSymm_transpose_add_self
theorem isSymm_transpose_add_self [AddCommSemigroup α] (A : Matrix n n α) : (Aᵀ + A).IsSymm 
Arguments: {α : Type u_1} {n : Type u_3} [AddCommSemigroup α] (A : Matrix n n α)
Goal: (A.transpose + A).IsSymm
-- Matrix.isSymm_zero
@[simp]
theorem isSymm_zero [Zero α] : (0 : Matrix n n α).IsSymm 
Arguments: {α : Type u_1} {n : Type u_3} [Zero α]
Goal: Matrix.IsSymm 0
-- Matrix.isSymm_one
@[simp]
theorem isSymm_one [DecidableEq n] [Zero α] [One α] : (1 : Matrix n n α).IsSymm 
Arguments: {α : Type u_1} {n : Type u_3} [DecidableEq n] [Zero α] [One α]
Goal: Matrix.IsSymm 1
-- Matrix.IsSymm.pow
theorem IsSymm.pow [CommSemiring α] [Fintype n] [DecidableEq n] {A : Matrix n n α} (h : A.IsSymm)
    (k : ℕ) :
    (A ^ k).IsSymm 
Arguments: {α : Type u_1} {n : Type u_3} [CommSemiring α] [Fintype n] [DecidableEq n] {A : Matrix n n α} (h : A.IsSymm) (k : ℕ)
Goal: (A ^ k).IsSymm
-- Matrix.IsSymm.map
@[simp]
theorem IsSymm.map {A : Matrix n n α} (h : A.IsSymm) (f : α → β) : (A.map f).IsSymm 
Arguments: {α : Type u_1} {β : Type u_2} {n : Type u_3} {A : Matrix n n α} (h : A.IsSymm) (f : α → β)
Goal: (A.map f).IsSymm
-- Matrix.IsSymm.transpose
@[simp]
theorem IsSymm.transpose {A : Matrix n n α} (h : A.IsSymm) : Aᵀ.IsSymm 
Arguments: {α : Type u_1} {n : Type u_3} {A : Matrix n n α} (h : A.IsSymm)
Goal: A.transpose.IsSymm
-- Matrix.IsSymm.conjTranspose
@[simp]
theorem IsSymm.conjTranspose [Star α] {A : Matrix n n α} (h : A.IsSymm) : Aᴴ.IsSymm 
Arguments: {α : Type u_1} {n : Type u_3} [Star α] {A : Matrix n n α} (h : A.IsSymm)
Goal: A.conjTranspose.IsSymm
-- Matrix.IsSymm.neg
@[simp]
theorem IsSymm.neg [Neg α] {A : Matrix n n α} (h : A.IsSymm) : (-A).IsSymm 
Arguments: {α : Type u_1} {n : Type u_3} [Neg α] {A : Matrix n n α} (h : A.IsSymm)
Goal: (-A).IsSymm
-- Matrix.IsSymm.add
@[simp]
theorem IsSymm.add {A B : Matrix n n α} [Add α] (hA : A.IsSymm) (hB : B.IsSymm) : (A + B).IsSymm 
Arguments: {α : Type u_1} {n : Type u_3} {A B : Matrix n n α} [Add α] (hA : A.IsSymm) (hB : B.IsSymm)
Goal: (A + B).IsSymm
-- Matrix.IsSymm.sub
@[simp]
theorem IsSymm.sub {A B : Matrix n n α} [Sub α] (hA : A.IsSymm) (hB : B.IsSymm) : (A - B).IsSymm 
Arguments: {α : Type u_1} {n : Type u_3} {A B : Matrix n n α} [Sub α] (hA : A.IsSymm) (hB : B.IsSymm)
Goal: (A - B).IsSymm
-- Matrix.IsSymm.smul
@[simp]
theorem IsSymm.smul [SMul R α] {A : Matrix n n α} (h : A.IsSymm) (k : R) : (k • A).IsSymm 
Arguments: {α : Type u_1} {n : Type u_3} {R : Type u_5} [SMul R α] {A : Matrix n n α} (h : A.IsSymm) (k : R)
Goal: (k • A).IsSymm
-- Matrix.IsSymm.submatrix
@[simp]
theorem IsSymm.submatrix {A : Matrix n n α} (h : A.IsSymm) (f : m → n) : (A.submatrix f f).IsSymm 
Arguments: {α : Type u_1} {n : Type u_3} {m : Type u_4} {A : Matrix n n α} (h : A.IsSymm) (f : m → n)
Goal: (A.submatrix f f).IsSymm
-- Matrix.isSymm_diagonal
@[simp]
theorem isSymm_diagonal [DecidableEq n] [Zero α] (v : n → α) : (diagonal v).IsSymm 
Arguments: {α : Type u_1} {n : Type u_3} [DecidableEq n] [Zero α] (v : n → α)
Goal: (Matrix.diagonal v).IsSymm
-- Matrix.IsSymm.fromBlocks
theorem IsSymm.fromBlocks {A : Matrix m m α} {B : Matrix m n α} {C : Matrix n m α}
    {D : Matrix n n α} (hA : A.IsSymm) (hBC : Bᵀ = C) (hD : D.IsSymm) :
    (A.fromBlocks B C D).IsSymm 
Arguments: {α : Type u_1} {n : Type u_3} {m : Type u_4} {A : Matrix m m α} {B : Matrix m n α} {C : Matrix n m α} {D : Matrix n n α} (hA : A.IsSymm) (hBC : B.transpose = C) (hD : D.IsSymm)
Goal: (Matrix.fromBlocks A B C D).IsSymm
-- Matrix.isSymm_fromBlocks_iff
theorem isSymm_fromBlocks_iff {A : Matrix m m α} {B : Matrix m n α} {C : Matrix n m α}
    {D : Matrix n n α} : (A.fromBlocks B C D).IsSymm ↔ A.IsSymm ∧ Bᵀ = C ∧ Cᵀ = B ∧ D.IsSymm 
Arguments: {α : Type u_1} {n : Type u_3} {m : Type u_4} {A : Matrix m m α} {B : Matrix m n α} {C : Matrix n m α} {D : Matrix n n α}
Goal: (Matrix.fromBlocks A B C D).IsSymm ↔ A.IsSymm ∧ B.transpose = C ∧ C.transpose = B ∧ D.IsSymm
-- finiteDimensional_vectorSpan_of_finite
theorem finiteDimensional_vectorSpan_of_finite {s : Set P} (h : Set.Finite s) :
    FiniteDimensional k (vectorSpan k s) 
Arguments: (k : Type u_1) {V : Type u_2} {P : Type u_3} [DivisionRing k] [AddCommGroup V] [Module k V] [AffineSpace V P] {s : Set P} (h : s.Finite)
Goal: FiniteDimensional k ↥(vectorSpan k s)
-- finiteDimensional_direction_affineSpan_of_finite
theorem finiteDimensional_direction_affineSpan_of_finite {s : Set P} (h : Set.Finite s) :
    FiniteDimensional k (affineSpan k s).direction 
Arguments: (k : Type u_1) {V : Type u_2} {P : Type u_3} [DivisionRing k] [AddCommGroup V] [Module k V] [AffineSpace V P] {s : Set P} (h : s.Finite)
Goal: FiniteDimensional k ↥(affineSpan k s).direction
-- finite_of_fin_dim_affineIndependent
theorem finite_of_fin_dim_affineIndependent [FiniteDimensional k V] {p : ι → P}
    (hi : AffineIndependent k p) : Finite ι 
Arguments: (k : Type u_1) {V : Type u_2} {P : Type u_3} {ι : Type u_4} [DivisionRing k] [AddCommGroup V] [Module k V] [AffineSpace V P] [FiniteDimensional k V] {p : ι → P} (hi : AffineIndependent k p)
Goal: Finite ι
-- finite_set_of_fin_dim_affineIndependent
theorem finite_set_of_fin_dim_affineIndependent [FiniteDimensional k V] {s : Set ι} {f : s → P}
    (hi : AffineIndependent k f) : s.Finite 
Arguments: (k : Type u_1) {V : Type u_2} {P : Type u_3} {ι : Type u_4} [DivisionRing k] [AddCommGroup V] [Module k V] [AffineSpace V P] [FiniteDimensional k V] {s : Set ι} {f : ↑s → P} (hi : AffineIndependent k f)
Goal: s.Finite
-- AffineIndependent.finrank_vectorSpan_image_finset
theorem AffineIndependent.finrank_vectorSpan_image_finset [DecidableEq P]
    {p : ι → P} (hi : AffineIndependent k p) {s : Finset ι} {n : ℕ} (hc : Finset.card s = n + 1) :
    finrank k (vectorSpan k (s.image p : Set P)) = n 
Arguments: {k : Type u_1} {V : Type u_2} {P : Type u_3} {ι : Type u_4} [DivisionRing k] [AddCommGroup V] [Module k V] [AffineSpace V P] [DecidableEq P] {p : ι → P} (hi : AffineIndependent k p) {s : Finset ι} {n : ℕ} (hc : s.card = n + 1)
Goal: FiniteDimensional.finrank k ↥(vectorSpan k ↑(Finset.image p s)) = n
-- AffineIndependent.finrank_vectorSpan
theorem AffineIndependent.finrank_vectorSpan [Fintype ι] {p : ι → P} (hi : AffineIndependent k p)
    {n : ℕ} (hc : Fintype.card ι = n + 1) : finrank k (vectorSpan k (Set.range p)) = n 
Arguments: {k : Type u_1} {V : Type u_2} {P : Type u_3} {ι : Type u_4} [DivisionRing k] [AddCommGroup V] [Module k V] [AffineSpace V P] [Fintype ι] {p : ι → P} (hi : AffineIndependent k p) {n : ℕ} (hc : Fintype.card ι = n + 1)
Goal: FiniteDimensional.finrank k ↥(vectorSpan k (Set.range p)) = n
-- AffineIndependent.finrank_vectorSpan_add_one
lemma AffineIndependent.finrank_vectorSpan_add_one [Fintype ι] [Nonempty ι] {p : ι → P}
    (hi : AffineIndependent k p) : finrank k (vectorSpan k (Set.range p)) + 1 = Fintype.card ι 
Arguments: {k : Type u_1} {V : Type u_2} {P : Type u_3} {ι : Type u_4} [DivisionRing k] [AddCommGroup V] [Module k V] [AffineSpace V P] [Fintype ι] [Nonempty ι] {p : ι → P} (hi : AffineIndependent k p)
Goal: FiniteDimensional.finrank k ↥(vectorSpan k (Set.range p)) + 1 = Fintype.card ι
-- AffineIndependent.vectorSpan_eq_top_of_card_eq_finrank_add_one
theorem AffineIndependent.vectorSpan_eq_top_of_card_eq_finrank_add_one [FiniteDimensional k V]
    [Fintype ι] {p : ι → P} (hi : AffineIndependent k p) (hc : Fintype.card ι = finrank k V + 1) :
    vectorSpan k (Set.range p) = ⊤ 
Arguments: {k : Type u_1} {V : Type u_2} {P : Type u_3} {ι : Type u_4} [DivisionRing k] [AddCommGroup V] [Module k V] [AffineSpace V P] [FiniteDimensional k V] [Fintype ι] {p : ι → P} (hi : AffineIndependent k p) (hc : Fintype.card ι = FiniteDimensional.finrank k V + 1)
Goal: vectorSpan k (Set.range p) = ⊤
-- finrank_vectorSpan_image_finset_le
theorem finrank_vectorSpan_image_finset_le [DecidableEq P] (p : ι → P) (s : Finset ι) {n : ℕ}
    (hc : Finset.card s = n + 1) : finrank k (vectorSpan k (s.image p : Set P)) ≤ n 
Arguments: (k : Type u_1) {V : Type u_2} {P : Type u_3} {ι : Type u_4} [DivisionRing k] [AddCommGroup V] [Module k V] [AffineSpace V P] [DecidableEq P] (p : ι → P) (s : Finset ι) {n : ℕ} (hc : s.card = n + 1)
Goal: FiniteDimensional.finrank k ↥(vectorSpan k ↑(Finset.image p s)) ≤ n
-- finrank_vectorSpan_range_le
theorem finrank_vectorSpan_range_le [Fintype ι] (p : ι → P) {n : ℕ} (hc : Fintype.card ι = n + 1) :
    finrank k (vectorSpan k (Set.range p)) ≤ n 
Arguments: (k : Type u_1) {V : Type u_2} {P : Type u_3} {ι : Type u_4} [DivisionRing k] [AddCommGroup V] [Module k V] [AffineSpace V P] [Fintype ι] (p : ι → P) {n : ℕ} (hc : Fintype.card ι = n + 1)
Goal: FiniteDimensional.finrank k ↥(vectorSpan k (Set.range p)) ≤ n
-- finrank_vectorSpan_range_add_one_le
lemma finrank_vectorSpan_range_add_one_le [Fintype ι] [Nonempty ι] (p : ι → P) :
    finrank k (vectorSpan k (Set.range p)) + 1 ≤ Fintype.card ι 
Arguments: (k : Type u_1) {V : Type u_2} {P : Type u_3} {ι : Type u_4} [DivisionRing k] [AddCommGroup V] [Module k V] [AffineSpace V P] [Fintype ι] [Nonempty ι] (p : ι → P)
Goal: FiniteDimensional.finrank k ↥(vectorSpan k (Set.range p)) + 1 ≤ Fintype.card ι
-- affineIndependent_iff_finrank_vectorSpan_eq
theorem affineIndependent_iff_finrank_vectorSpan_eq [Fintype ι] (p : ι → P) {n : ℕ}
    (hc : Fintype.card ι = n + 1) :
    AffineIndependent k p ↔ finrank k (vectorSpan k (Set.range p)) = n 
Arguments: (k : Type u_1) {V : Type u_2} {P : Type u_3} {ι : Type u_4} [DivisionRing k] [AddCommGroup V] [Module k V] [AffineSpace V P] [Fintype ι] (p : ι → P) {n : ℕ} (hc : Fintype.card ι = n + 1)
Goal: AffineIndependent k p ↔ FiniteDimensional.finrank k ↥(vectorSpan k (Set.range p)) = n
-- affineIndependent_iff_le_finrank_vectorSpan
theorem affineIndependent_iff_le_finrank_vectorSpan [Fintype ι] (p : ι → P) {n : ℕ}
    (hc : Fintype.card ι = n + 1) :
    AffineIndependent k p ↔ n ≤ finrank k (vectorSpan k (Set.range p)) 
Arguments: (k : Type u_1) {V : Type u_2} {P : Type u_3} {ι : Type u_4} [DivisionRing k] [AddCommGroup V] [Module k V] [AffineSpace V P] [Fintype ι] (p : ι → P) {n : ℕ} (hc : Fintype.card ι = n + 1)
Goal: AffineIndependent k p ↔ n ≤ FiniteDimensional.finrank k ↥(vectorSpan k (Set.range p))
-- affineIndependent_iff_not_finrank_vectorSpan_le
theorem affineIndependent_iff_not_finrank_vectorSpan_le [Fintype ι] (p : ι → P) {n : ℕ}
    (hc : Fintype.card ι = n + 2) :
    AffineIndependent k p ↔ ¬finrank k (vectorSpan k (Set.range p)) ≤ n 
Arguments: (k : Type u_1) {V : Type u_2} {P : Type u_3} {ι : Type u_4} [DivisionRing k] [AddCommGroup V] [Module k V] [AffineSpace V P] [Fintype ι] (p : ι → P) {n : ℕ} (hc : Fintype.card ι = n + 2)
Goal: AffineIndependent k p ↔ ¬FiniteDimensional.finrank k ↥(vectorSpan k (Set.range p)) ≤ n
-- finrank_vectorSpan_le_iff_not_affineIndependent
theorem finrank_vectorSpan_le_iff_not_affineIndependent [Fintype ι] (p : ι → P) {n : ℕ}
    (hc : Fintype.card ι = n + 2) :
    finrank k (vectorSpan k (Set.range p)) ≤ n ↔ ¬AffineIndependent k p 
Arguments: (k : Type u_1) {V : Type u_2} {P : Type u_3} {ι : Type u_4} [DivisionRing k] [AddCommGroup V] [Module k V] [AffineSpace V P] [Fintype ι] (p : ι → P) {n : ℕ} (hc : Fintype.card ι = n + 2)
Goal: FiniteDimensional.finrank k ↥(vectorSpan k (Set.range p)) ≤ n ↔ ¬AffineIndependent k p
-- AffineIndependent.card_le_finrank_succ
lemma AffineIndependent.card_le_finrank_succ [Fintype ι] {p : ι → P} (hp : AffineIndependent k p) :
    Fintype.card ι ≤ FiniteDimensional.finrank k (vectorSpan k (Set.range p)) + 1 
Arguments: {k : Type u_1} {V : Type u_2} {P : Type u_3} {ι : Type u_4} [DivisionRing k] [AddCommGroup V] [Module k V] [AffineSpace V P] [Fintype ι] {p : ι → P} (hp : AffineIndependent k p)
Goal: Fintype.card ι ≤ FiniteDimensional.finrank k ↥(vectorSpan k (Set.range p)) + 1
-- AffineIndependent.card_le_card_of_subset_affineSpan
lemma AffineIndependent.card_le_card_of_subset_affineSpan {s t : Finset V}
    (hs : AffineIndependent k ((↑) : s → V)) (hst : (s : Set V) ⊆ affineSpan k (t : Set V)) :
    s.card ≤ t.card 
Arguments: {k : Type u_1} {V : Type u_2} [DivisionRing k] [AddCommGroup V] [Module k V] {s t : Finset V} (hs : AffineIndependent k Subtype.val) (hst : ↑s ⊆ ↑(affineSpan k ↑t))
Goal: s.card ≤ t.card
-- AffineIndependent.card_lt_card_of_affineSpan_lt_affineSpan
lemma AffineIndependent.card_lt_card_of_affineSpan_lt_affineSpan {s t : Finset V}
    (hs : AffineIndependent k ((↑) : s → V))
    (hst : affineSpan k (s : Set V) < affineSpan k (t : Set V)) : s.card < t.card 
Arguments: {k : Type u_1} {V : Type u_2} [DivisionRing k] [AddCommGroup V] [Module k V] {s t : Finset V} (hs : AffineIndependent k Subtype.val) (hst : affineSpan k ↑s < affineSpan k ↑t)
Goal: s.card < t.card