ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- LinearMap.toMatrix₂_mul_basis_toMatrix
@[simp]
theorem LinearMap.toMatrix₂_mul_basis_toMatrix (c₁ : Basis n' R M₁) (c₂ : Basis m' R M₂)
    (B : M₁ →ₗ[R] M₂ →ₗ[R] R) :
    (b₁.toMatrix c₁)ᵀ * LinearMap.toMatrix₂ b₁ b₂ B * b₂.toMatrix c₂ =
      LinearMap.toMatrix₂ c₁ c₂ B 
Arguments: {R : Type u_1} {M₁ : Type u_7} {M₂ : Type u_8} {n : Type u_12} {m : Type u_13} {n' : Type u_14} {m' : Type u_15} [CommSemiring R] [AddCommMonoid M₁] [Module R M₁] [AddCommMonoid M₂] [Module R M₂] [DecidableEq n] [Fintype n] [DecidableEq m] [Fintype m] (b₁ : Basis n R M₁) (b₂ : Basis m R M₂) [Fintype n'] [Fintype m'] [DecidableEq n'] [DecidableEq m'] (c₁ : Basis n' R M₁) (c₂ : Basis m' R M₂) (B : M₁ →ₗ[R] M₂ →ₗ[R] R)
Goal: (b₁.toMatrix ⇑c₁)ᵀ * (LinearMap.toMatrix₂ b₁ b₂) B * b₂.toMatrix ⇑c₂ = (LinearMap.toMatrix₂ c₁ c₂) B
-- LinearMap.mul_toMatrix₂_mul
theorem LinearMap.mul_toMatrix₂_mul (B : M₁ →ₗ[R] M₂ →ₗ[R] R) (M : Matrix n' n R)
    (N : Matrix m m' R) :
    M * LinearMap.toMatrix₂ b₁ b₂ B * N =
      LinearMap.toMatrix₂ b₁' b₂' (B.compl₁₂ (toLin b₁' b₁ Mᵀ) (toLin b₂' b₂ N)) 
Arguments: {R : Type u_1} {M₁ : Type u_7} {M₂ : Type u_8} {M₁' : Type u_9} {M₂' : Type u_10} {n : Type u_12} {m : Type u_13} {n' : Type u_14} {m' : Type u_15} [CommSemiring R] [AddCommMonoid M₁] [Module R M₁] [AddCommMonoid M₂] [Module R M₂] [DecidableEq n] [Fintype n] [DecidableEq m] [Fintype m] (b₁ : Basis n R M₁) (b₂ : Basis m R M₂) [AddCommMonoid M₁'] [Module R M₁'] [AddCommMonoid M₂'] [Module R M₂'] (b₁' : Basis n' R M₁') (b₂' : Basis m' R M₂') [Fintype n'] [Fintype m'] [DecidableEq n'] [DecidableEq m'] (B : M₁ →ₗ[R] M₂ →ₗ[R] R) (M : Matrix n' n R) (N : Matrix m m' R)
Goal: M * (LinearMap.toMatrix₂ b₁ b₂) B * N =
  (LinearMap.toMatrix₂ b₁' b₂') (B.compl₁₂ ((Matrix.toLin b₁' b₁) Mᵀ) ((Matrix.toLin b₂' b₂) N))
-- LinearMap.mul_toMatrix₂
theorem LinearMap.mul_toMatrix₂ (B : M₁ →ₗ[R] M₂ →ₗ[R] R) (M : Matrix n' n R) :
    M * LinearMap.toMatrix₂ b₁ b₂ B =
      LinearMap.toMatrix₂ b₁' b₂ (B.comp (toLin b₁' b₁ Mᵀ)) 
Arguments: {R : Type u_1} {M₁ : Type u_7} {M₂ : Type u_8} {M₁' : Type u_9} {n : Type u_12} {m : Type u_13} {n' : Type u_14} [CommSemiring R] [AddCommMonoid M₁] [Module R M₁] [AddCommMonoid M₂] [Module R M₂] [DecidableEq n] [Fintype n] [DecidableEq m] [Fintype m] (b₁ : Basis n R M₁) (b₂ : Basis m R M₂) [AddCommMonoid M₁'] [Module R M₁'] (b₁' : Basis n' R M₁') [Fintype n'] [DecidableEq n'] (B : M₁ →ₗ[R] M₂ →ₗ[R] R) (M : Matrix n' n R)
Goal: M * (LinearMap.toMatrix₂ b₁ b₂) B = (LinearMap.toMatrix₂ b₁' b₂) (B ∘ₗ (Matrix.toLin b₁' b₁) Mᵀ)
-- LinearMap.toMatrix₂_mul
theorem LinearMap.toMatrix₂_mul (B : M₁ →ₗ[R] M₂ →ₗ[R] R) (M : Matrix m m' R) :
    LinearMap.toMatrix₂ b₁ b₂ B * M =
      LinearMap.toMatrix₂ b₁ b₂' (B.compl₂ (toLin b₂' b₂ M)) 
Arguments: {R : Type u_1} {M₁ : Type u_7} {M₂ : Type u_8} {M₂' : Type u_10} {n : Type u_12} {m : Type u_13} {m' : Type u_15} [CommSemiring R] [AddCommMonoid M₁] [Module R M₁] [AddCommMonoid M₂] [Module R M₂] [DecidableEq n] [Fintype n] [DecidableEq m] [Fintype m] (b₁ : Basis n R M₁) (b₂ : Basis m R M₂) [AddCommMonoid M₂'] [Module R M₂'] (b₂' : Basis m' R M₂') [Fintype m'] [DecidableEq m'] (B : M₁ →ₗ[R] M₂ →ₗ[R] R) (M : Matrix m m' R)
Goal: (LinearMap.toMatrix₂ b₁ b₂) B * M = (LinearMap.toMatrix₂ b₁ b₂') (B.compl₂ ((Matrix.toLin b₂' b₂) M))
-- Matrix.toLinearMap₂_compl₁₂
theorem Matrix.toLinearMap₂_compl₁₂ (M : Matrix n m R) (P : Matrix n n' R) (Q : Matrix m m' R) :
    (Matrix.toLinearMap₂ b₁ b₂ M).compl₁₂ (toLin b₁' b₁ P) (toLin b₂' b₂ Q) =
      Matrix.toLinearMap₂ b₁' b₂' (Pᵀ * M * Q) 
Arguments: {R : Type u_1} {M₁ : Type u_7} {M₂ : Type u_8} {M₁' : Type u_9} {M₂' : Type u_10} {n : Type u_12} {m : Type u_13} {n' : Type u_14} {m' : Type u_15} [CommSemiring R] [AddCommMonoid M₁] [Module R M₁] [AddCommMonoid M₂] [Module R M₂] [DecidableEq n] [Fintype n] [DecidableEq m] [Fintype m] (b₁ : Basis n R M₁) (b₂ : Basis m R M₂) [AddCommMonoid M₁'] [Module R M₁'] [AddCommMonoid M₂'] [Module R M₂'] (b₁' : Basis n' R M₁') (b₂' : Basis m' R M₂') [Fintype n'] [Fintype m'] [DecidableEq n'] [DecidableEq m'] (M : Matrix n m R) (P : Matrix n n' R) (Q : Matrix m m' R)
Goal: ((Matrix.toLinearMap₂ b₁ b₂) M).compl₁₂ ((Matrix.toLin b₁' b₁) P) ((Matrix.toLin b₂' b₂) Q) =
  (Matrix.toLinearMap₂ b₁' b₂') (Pᵀ * M * Q)
-- isAdjointPair_toLinearMap₂'
@[simp]
theorem isAdjointPair_toLinearMap₂' :
    LinearMap.IsAdjointPair (Matrix.toLinearMap₂' R J) (Matrix.toLinearMap₂' R J')
        (Matrix.toLin' A) (Matrix.toLin' A') ↔
      Matrix.IsAdjointPair J J' A A' 
Arguments: {R : Type u_1} {n : Type u_12} {n' : Type u_14} [CommRing R] [Fintype n] [Fintype n'] (J : Matrix n n R) (J' : Matrix n' n' R) (A : Matrix n' n R) (A' : Matrix n n' R) [DecidableEq n] [DecidableEq n']
Goal: ((Matrix.toLinearMap₂' R) J).IsAdjointPair ((Matrix.toLinearMap₂' R) J') (Matrix.toLin' A) (Matrix.toLin' A') ↔
  J.IsAdjointPair J' A A'
-- isAdjointPair_toLinearMap₂
@[simp]
theorem isAdjointPair_toLinearMap₂ :
    LinearMap.IsAdjointPair (Matrix.toLinearMap₂ b₁ b₁ J)
      (Matrix.toLinearMap₂ b₂ b₂ J') (Matrix.toLin b₁ b₂ A) (Matrix.toLin b₂ b₁ A') ↔
      Matrix.IsAdjointPair J J' A A' 
Arguments: {R : Type u_1} {M₁ : Type u_7} {M₂ : Type u_8} {n : Type u_12} {n' : Type u_14} [CommRing R] [AddCommMonoid M₁] [Module R M₁] [AddCommMonoid M₂] [Module R M₂] [Fintype n] [Fintype n'] (b₁ : Basis n R M₁) (b₂ : Basis n' R M₂) (J : Matrix n n R) (J' : Matrix n' n' R) (A : Matrix n' n R) (A' : Matrix n n' R) [DecidableEq n] [DecidableEq n']
Goal: ((Matrix.toLinearMap₂ b₁ b₁) J).IsAdjointPair ((Matrix.toLinearMap₂ b₂ b₂) J') ((Matrix.toLin b₁ b₂) A)
    ((Matrix.toLin b₂ b₁) A') ↔
  J.IsAdjointPair J' A A'
-- Matrix.isAdjointPair_equiv
theorem Matrix.isAdjointPair_equiv (P : Matrix n n R) (h : IsUnit P) :
    (Pᵀ * J * P).IsAdjointPair (Pᵀ * J * P) A₁ A₂ ↔
      J.IsAdjointPair J (P * A₁ * P⁻¹) (P * A₂ * P⁻¹) 
Arguments: {R : Type u_1} {n : Type u_12} [CommRing R] [Fintype n] (J A₁ A₂ : Matrix n n R) [DecidableEq n] (P : Matrix n n R) (h : IsUnit P)
Goal: (Pᵀ * J * P).IsAdjointPair (Pᵀ * J * P) A₁ A₂ ↔ J.IsAdjointPair J (P * A₁ * P⁻¹) (P * A₂ * P⁻¹)
-- mem_pairSelfAdjointMatricesSubmodule
@[simp]
theorem mem_pairSelfAdjointMatricesSubmodule :
    A₁ ∈ pairSelfAdjointMatricesSubmodule J J₂ ↔ Matrix.IsAdjointPair J J₂ A₁ A₁ 
Arguments: {R : Type u_1} {n : Type u_12} [CommRing R] [Fintype n] (J J₂ A₁ : Matrix n n R) [DecidableEq n]
Goal: A₁ ∈ pairSelfAdjointMatricesSubmodule J J₂ ↔ J.IsAdjointPair J₂ A₁ A₁
-- mem_selfAdjointMatricesSubmodule
@[simp]
theorem mem_selfAdjointMatricesSubmodule :
    A₁ ∈ selfAdjointMatricesSubmodule J ↔ J.IsSelfAdjoint A₁ 
Arguments: {R : Type u_1} {n : Type u_12} [CommRing R] [Fintype n] (J A₁ : Matrix n n R) [DecidableEq n]
Goal: A₁ ∈ selfAdjointMatricesSubmodule J ↔ J.IsSelfAdjoint A₁
-- mem_skewAdjointMatricesSubmodule
@[simp]
theorem mem_skewAdjointMatricesSubmodule :
    A₁ ∈ skewAdjointMatricesSubmodule J ↔ J.IsSkewAdjoint A₁ 
Arguments: {R : Type u_1} {n : Type u_12} [CommRing R] [Fintype n] (J A₁ : Matrix n n R) [DecidableEq n]
Goal: A₁ ∈ skewAdjointMatricesSubmodule J ↔ J.IsSkewAdjoint A₁
-- Matrix.separatingLeft_toLinearMap₂'_iff_separatingLeft_toLinearMap₂
theorem _root_.Matrix.separatingLeft_toLinearMap₂'_iff_separatingLeft_toLinearMap₂
    {M : Matrix ι ι R₁} (b : Basis ι R₁ M₁) :
    (Matrix.toLinearMap₂' R₁ M).SeparatingLeft (R := R₁) ↔
      (Matrix.toLinearMap₂ b b M).SeparatingLeft 
Arguments: {R₁ : Type u_2} {M₁ : Type u_7} {ι : Type u_16} [CommRing R₁] [AddCommMonoid M₁] [Module R₁ M₁] [DecidableEq ι] [Fintype ι] {M : Matrix ι ι R₁} (b : Basis ι R₁ M₁)
Goal: ((Matrix.toLinearMap₂' R₁) M).SeparatingLeft ↔ ((Matrix.toLinearMap₂ b b) M).SeparatingLeft
-- Matrix.Nondegenerate.toLinearMap₂'
theorem _root_.Matrix.Nondegenerate.toLinearMap₂' {M : Matrix ι ι R₁} (h : M.Nondegenerate) :
    (Matrix.toLinearMap₂' R₁ M).SeparatingLeft (R := R₁) 
Arguments: {R₁ : Type u_2} {ι : Type u_16} [CommRing R₁] [DecidableEq ι] [Fintype ι] {M : Matrix ι ι R₁} (h : M.Nondegenerate)
Goal: ((Matrix.toLinearMap₂' R₁) M).SeparatingLeft
-- Matrix.separatingLeft_toLinearMap₂'_iff
@[simp]
theorem _root_.Matrix.separatingLeft_toLinearMap₂'_iff {M : Matrix ι ι R₁} :
    (Matrix.toLinearMap₂' R₁ M).SeparatingLeft (R := R₁) ↔ M.Nondegenerate 
Arguments: {R₁ : Type u_2} {ι : Type u_16} [CommRing R₁] [DecidableEq ι] [Fintype ι] {M : Matrix ι ι R₁}
Goal: ((Matrix.toLinearMap₂' R₁) M).SeparatingLeft ↔ M.Nondegenerate
-- Matrix.Nondegenerate.toLinearMap₂
theorem _root_.Matrix.Nondegenerate.toLinearMap₂ {M : Matrix ι ι R₁} (h : M.Nondegenerate)
    (b : Basis ι R₁ M₁) : (toLinearMap₂ b b M).SeparatingLeft 
Arguments: {R₁ : Type u_2} {M₁ : Type u_7} {ι : Type u_16} [CommRing R₁] [AddCommMonoid M₁] [Module R₁ M₁] [DecidableEq ι] [Fintype ι] {M : Matrix ι ι R₁} (h : M.Nondegenerate) (b : Basis ι R₁ M₁)
Goal: ((Matrix.toLinearMap₂ b b) M).SeparatingLeft
-- Matrix.separatingLeft_toLinearMap₂_iff
@[simp]
theorem _root_.Matrix.separatingLeft_toLinearMap₂_iff {M : Matrix ι ι R₁} (b : Basis ι R₁ M₁) :
    (toLinearMap₂ b b M).SeparatingLeft ↔ M.Nondegenerate 
Arguments: {R₁ : Type u_2} {M₁ : Type u_7} {ι : Type u_16} [CommRing R₁] [AddCommMonoid M₁] [Module R₁ M₁] [DecidableEq ι] [Fintype ι] {M : Matrix ι ι R₁} (b : Basis ι R₁ M₁)
Goal: ((Matrix.toLinearMap₂ b b) M).SeparatingLeft ↔ M.Nondegenerate
-- LinearMap.nondegenerate_toMatrix₂'_iff
@[simp]
theorem nondegenerate_toMatrix₂'_iff {B : (ι → R₁) →ₗ[R₁] (ι → R₁) →ₗ[R₁] R₁} :
    (LinearMap.toMatrix₂' R₁ B).Nondegenerate ↔ B.SeparatingLeft 
Arguments: {R₁ : Type u_2} {ι : Type u_16} [CommRing R₁] [DecidableEq ι] [Fintype ι] {B : (ι → R₁) →ₗ[R₁] (ι → R₁) →ₗ[R₁] R₁}
Goal: ((LinearMap.toMatrix₂' R₁) B).Nondegenerate ↔ B.SeparatingLeft
-- LinearMap.SeparatingLeft.toMatrix₂'
theorem SeparatingLeft.toMatrix₂' {B : (ι → R₁) →ₗ[R₁] (ι → R₁) →ₗ[R₁] R₁} (h : B.SeparatingLeft) :
    (LinearMap.toMatrix₂' R₁ B).Nondegenerate 
Arguments: {R₁ : Type u_2} {ι : Type u_16} [CommRing R₁] [DecidableEq ι] [Fintype ι] {B : (ι → R₁) →ₗ[R₁] (ι → R₁) →ₗ[R₁] R₁} (h : B.SeparatingLeft)
Goal: ((LinearMap.toMatrix₂' R₁) B).Nondegenerate
-- LinearMap.nondegenerate_toMatrix_iff
@[simp]
theorem nondegenerate_toMatrix_iff {B : M₁ →ₗ[R₁] M₁ →ₗ[R₁] R₁} (b : Basis ι R₁ M₁) :
    (toMatrix₂ b b B).Nondegenerate ↔ B.SeparatingLeft 
Arguments: {R₁ : Type u_2} {M₁ : Type u_7} {ι : Type u_16} [CommRing R₁] [AddCommMonoid M₁] [Module R₁ M₁] [DecidableEq ι] [Fintype ι] {B : M₁ →ₗ[R₁] M₁ →ₗ[R₁] R₁} (b : Basis ι R₁ M₁)
Goal: ((LinearMap.toMatrix₂ b b) B).Nondegenerate ↔ B.SeparatingLeft
-- LinearMap.SeparatingLeft.toMatrix₂
theorem SeparatingLeft.toMatrix₂ {B : M₁ →ₗ[R₁] M₁ →ₗ[R₁] R₁} (h : B.SeparatingLeft)
    (b : Basis ι R₁ M₁) : (toMatrix₂ b b B).Nondegenerate 
Arguments: {R₁ : Type u_2} {M₁ : Type u_7} {ι : Type u_16} [CommRing R₁] [AddCommMonoid M₁] [Module R₁ M₁] [DecidableEq ι] [Fintype ι] {B : M₁ →ₗ[R₁] M₁ →ₗ[R₁] R₁} (h : B.SeparatingLeft) (b : Basis ι R₁ M₁)
Goal: ((LinearMap.toMatrix₂ b b) B).Nondegenerate
-- LinearMap.separatingLeft_toLinearMap₂'_iff_det_ne_zero
theorem separatingLeft_toLinearMap₂'_iff_det_ne_zero {M : Matrix ι ι R₁} :
    (Matrix.toLinearMap₂' R₁ M).SeparatingLeft (R := R₁) ↔ M.det ≠ 0 
Arguments: {R₁ : Type u_2} {ι : Type u_16} [CommRing R₁] [DecidableEq ι] [Fintype ι] [IsDomain R₁] {M : Matrix ι ι R₁}
Goal: ((Matrix.toLinearMap₂' R₁) M).SeparatingLeft ↔ M.det ≠ 0
-- LinearMap.separatingLeft_toLinearMap₂'_of_det_ne_zero'
theorem separatingLeft_toLinearMap₂'_of_det_ne_zero' (M : Matrix ι ι R₁) (h : M.det ≠ 0) :
    (Matrix.toLinearMap₂' R₁ M).SeparatingLeft (R := R₁) 
Arguments: {R₁ : Type u_2} {ι : Type u_16} [CommRing R₁] [DecidableEq ι] [Fintype ι] [IsDomain R₁] (M : Matrix ι ι R₁) (h : M.det ≠ 0)
Goal: ((Matrix.toLinearMap₂' R₁) M).SeparatingLeft
-- LinearMap.separatingLeft_iff_det_ne_zero
theorem separatingLeft_iff_det_ne_zero {B : M₁ →ₗ[R₁] M₁ →ₗ[R₁] R₁} (b : Basis ι R₁ M₁) :
    B.SeparatingLeft ↔ (toMatrix₂ b b B).det ≠ 0 
Arguments: {R₁ : Type u_2} {M₁ : Type u_7} {ι : Type u_16} [CommRing R₁] [AddCommMonoid M₁] [Module R₁ M₁] [DecidableEq ι] [Fintype ι] [IsDomain R₁] {B : M₁ →ₗ[R₁] M₁ →ₗ[R₁] R₁} (b : Basis ι R₁ M₁)
Goal: B.SeparatingLeft ↔ ((LinearMap.toMatrix₂ b b) B).det ≠ 0
-- LinearMap.separatingLeft_of_det_ne_zero
theorem separatingLeft_of_det_ne_zero {B : M₁ →ₗ[R₁] M₁ →ₗ[R₁] R₁} (b : Basis ι R₁ M₁)
    (h : (toMatrix₂ b b B).det ≠ 0) : B.SeparatingLeft 
Arguments: {R₁ : Type u_2} {M₁ : Type u_7} {ι : Type u_16} [CommRing R₁] [AddCommMonoid M₁] [Module R₁ M₁] [DecidableEq ι] [Fintype ι] [IsDomain R₁] {B : M₁ →ₗ[R₁] M₁ →ₗ[R₁] R₁} (b : Basis ι R₁ M₁) (h : ((LinearMap.toMatrix₂ b b) B).det ≠ 0)
Goal: B.SeparatingLeft
-- Basis.extend_apply_self
theorem extend_apply_self (hs : LinearIndependent K ((↑) : s → V)) (x : hs.extend _) :
    Basis.extend hs x = x 
Arguments: {K : Type u_3} {V : Type u_4} [DivisionRing K] [AddCommGroup V] [Module K V] {s : Set V} (hs : LinearIndependent (ι := { x // x ∈ s }) K Subtype.val) (x : ↑(hs.extend ⋯))
Goal: (Basis.extend hs) x = ↑x
-- Basis.coe_extend
@[simp]
theorem coe_extend (hs : LinearIndependent K ((↑) : s → V)) : ⇑(Basis.extend hs) = ((↑) : _ → _) 
Arguments: {K : Type u_3} {V : Type u_4} [DivisionRing K] [AddCommGroup V] [Module K V] {s : Set V} (hs : LinearIndependent (ι := { x // x ∈ s }) K Subtype.val)
Goal: ⇑(Basis.extend hs) = Subtype.val
-- Basis.range_extend
theorem range_extend (hs : LinearIndependent K ((↑) : s → V)) :
    range (Basis.extend hs) = hs.extend (subset_univ _) 
Arguments: {K : Type u_3} {V : Type u_4} [DivisionRing K] [AddCommGroup V] [Module K V] {s : Set V} (hs : LinearIndependent (ι := { x // x ∈ s }) K Subtype.val)
Goal: Set.range ⇑(Basis.extend hs) = hs.extend ⋯
-- Basis.subset_extend
theorem subset_extend {s : Set V} (hs : LinearIndependent K ((↑) : s → V)) :
    s ⊆ hs.extend (Set.subset_univ _) 
Arguments: {K : Type u_3} {V : Type u_4} [DivisionRing K] [AddCommGroup V] [Module K V] {s : Set V} (hs : LinearIndependent (ι := { x // x ∈ s }) K Subtype.val)
Goal: s ⊆ hs.extend ⋯
-- Basis.ofVectorSpace_apply_self
theorem ofVectorSpace_apply_self (x : ofVectorSpaceIndex K V) : ofVectorSpace K V x = x 
Arguments: (K : Type u_3) (V : Type u_4) [DivisionRing K] [AddCommGroup V] [Module K V] (x : ↑(Basis.ofVectorSpaceIndex K V))
Goal: (Basis.ofVectorSpace K V) x = ↑x
-- Basis.coe_ofVectorSpace
@[simp]
theorem coe_ofVectorSpace : ⇑(ofVectorSpace K V) = ((↑) : _ → _ ) 
Arguments: (K : Type u_3) (V : Type u_4) [DivisionRing K] [AddCommGroup V] [Module K V]
Goal: ⇑(Basis.ofVectorSpace K V) = Subtype.val
-- Basis.ofVectorSpaceIndex.linearIndependent
theorem ofVectorSpaceIndex.linearIndependent :
    LinearIndependent K ((↑) : ofVectorSpaceIndex K V → V) 
Arguments: (K : Type u_3) (V : Type u_4) [DivisionRing K] [AddCommGroup V] [Module K V]
Goal: LinearIndependent (ι := { x // x ∈ Basis.ofVectorSpaceIndex K V }) K Subtype.val
-- Basis.range_ofVectorSpace
theorem range_ofVectorSpace : range (ofVectorSpace K V) = ofVectorSpaceIndex K V 
Arguments: (K : Type u_3) (V : Type u_4) [DivisionRing K] [AddCommGroup V] [Module K V]
Goal: Set.range ⇑(Basis.ofVectorSpace K V) = Basis.ofVectorSpaceIndex K V
-- Basis.exists_basis
theorem exists_basis : ∃ s : Set V, Nonempty (Basis s K V) 
Arguments: (K : Type u_3) (V : Type u_4) [DivisionRing K] [AddCommGroup V] [Module K V]
Goal: ∃ s, Nonempty (Basis (↑s) K V)
-- VectorSpace.card_fintype
theorem VectorSpace.card_fintype [Fintype K] [Fintype V] : ∃ n : ℕ, card V = card K ^ n 
Arguments: (K : Type u_3) (V : Type u_4) [DivisionRing K] [AddCommGroup V] [Module K V] [Fintype K] [Fintype V]
Goal: ∃ n, Fintype.card V = Fintype.card K ^ n
-- nonzero_span_atom
theorem nonzero_span_atom (v : V) (hv : v ≠ 0) : IsAtom (span K {v} : Submodule K V) 
Arguments: {K : Type u_3} {V : Type u_4} [DivisionRing K] [AddCommGroup V] [Module K V] (v : V) (hv : v ≠ 0)
Goal: IsAtom (Submodule.span K {v})
-- atom_iff_nonzero_span
theorem atom_iff_nonzero_span (W : Submodule K V) :
    IsAtom W ↔ ∃ v ≠ 0, W = span K {v} 
Arguments: {K : Type u_3} {V : Type u_4} [DivisionRing K] [AddCommGroup V] [Module K V] (W : Submodule K V)
Goal: IsAtom W ↔ ∃ v, v ≠ 0 ∧ W = Submodule.span K {v}
-- LinearMap.exists_leftInverse_of_injective
theorem LinearMap.exists_leftInverse_of_injective (f : V →ₗ[K] V') (hf_inj : LinearMap.ker f = ⊥) :
    ∃ g : V' →ₗ[K] V, g.comp f = LinearMap.id 
Arguments: {K : Type u_3} {V : Type u_4} {V' : Type u_5} [DivisionRing K] [AddCommGroup V] [AddCommGroup V'] [Module K V] [Module K V'] (f : V →ₗ[K] V') (hf_inj : LinearMap.ker f = ⊥)
Goal: ∃ g, g ∘ₗ f = LinearMap.id
-- Submodule.exists_isCompl
theorem Submodule.exists_isCompl (p : Submodule K V) : ∃ q : Submodule K V, IsCompl p q 
Arguments: {K : Type u_3} {V : Type u_4} [DivisionRing K] [AddCommGroup V] [Module K V] (p : Submodule K V)
Goal: ∃ q, IsCompl p q
-- LinearMap.exists_rightInverse_of_surjective
theorem LinearMap.exists_rightInverse_of_surjective (f : V →ₗ[K] V') (hf_surj : range f = ⊤) :
    ∃ g : V' →ₗ[K] V, f.comp g = LinearMap.id 
Arguments: {K : Type u_3} {V : Type u_4} {V' : Type u_5} [DivisionRing K] [AddCommGroup V] [AddCommGroup V'] [Module K V] [Module K V'] (f : V →ₗ[K] V') (hf_surj : LinearMap.range f = ⊤)
Goal: ∃ g, f ∘ₗ g = LinearMap.id
-- LinearMap.exists_extend
theorem LinearMap.exists_extend {p : Submodule K V} (f : p →ₗ[K] V') :
    ∃ g : V →ₗ[K] V', g.comp p.subtype = f 
Arguments: {K : Type u_3} {V : Type u_4} {V' : Type u_5} [DivisionRing K] [AddCommGroup V] [AddCommGroup V'] [Module K V] [Module K V'] {p : Submodule K V} (f : ↥p →ₗ[K] V')
Goal: ∃ g, g ∘ₗ p.subtype = f
-- Submodule.exists_le_ker_of_lt_top
theorem Submodule.exists_le_ker_of_lt_top (p : Submodule K V) (hp : p < ⊤) :
    ∃ (f : V →ₗ[K] K), f ≠ 0 ∧ p ≤ ker f 
Arguments: {K : Type u_3} {V : Type u_4} [DivisionRing K] [AddCommGroup V] [Module K V] (p : Submodule K V) (hp : p < ⊤)
Goal: ∃ f, f ≠ 0 ∧ p ≤ LinearMap.ker f
-- quotient_prod_linearEquiv
theorem quotient_prod_linearEquiv (p : Submodule K V) : Nonempty (((V ⧸ p) × p) ≃ₗ[K] V) 
Arguments: {K : Type u_3} {V : Type u_4} [DivisionRing K] [AddCommGroup V] [Module K V] (p : Submodule K V)
Goal: Nonempty (((V ⧸ p) × ↥p) ≃ₗ[K] V)
-- ax_grothendieck_of_locally_finite
theorem ax_grothendieck_of_locally_finite {ι K R : Type*} [Field K] [Finite K] [CommRing R]
    [Finite ι] [Algebra K R] [Algebra.IsAlgebraic K R] (ps : ι → MvPolynomial ι R)
    (hinj : Injective fun v i => MvPolynomial.eval v (ps i)) :
    Surjective fun v i => MvPolynomial.eval v (ps i) 
Arguments: {ι : Type u_1} {K : Type u_2} {R : Type u_3} [Field K] [Finite K] [CommRing R] [Finite ι] [Algebra K R] [Algebra.IsAlgebraic K R] (ps : ι → MvPolynomial ι R) (hinj : Function.Injective fun v i => (MvPolynomial.eval v) (ps i))
Goal: Function.Surjective fun v i => (MvPolynomial.eval v) (ps i)
-- Module.preReflection_apply
lemma preReflection_apply :
    preReflection x f y = y - (f y) • x 
Arguments: {R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] (x : M) (f : Module.Dual R M) (y : M)
Goal: (Module.preReflection x f) y = y - f y • x
-- Module.preReflection_apply_self
lemma preReflection_apply_self (h : f x = 2) :
    preReflection x f x = - x 
Arguments: {R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] {x : M} {f : Module.Dual R M} (h : f x = 2)
Goal: (Module.preReflection x f) x = -x
-- Module.involutive_preReflection
lemma involutive_preReflection (h : f x = 2) :
    Involutive (preReflection x f) 
Arguments: {R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] {x : M} {f : Module.Dual R M} (h : f x = 2)
Goal: Function.Involutive ⇑(Module.preReflection x f)
-- Module.preReflection_preReflection
lemma preReflection_preReflection (g : Dual R M) (h : f x = 2) :
    preReflection (preReflection x f y) (preReflection f (Dual.eval R M x) g) =
    (preReflection x f) ∘ₗ (preReflection y g) ∘ₗ (preReflection x f) 
Arguments: {R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] {x : M} {f : Module.Dual R M} (y : M) (g : Module.Dual R M) (h : f x = 2)
Goal: Module.preReflection ((Module.preReflection x f) y) ((Module.preReflection f ((Module.Dual.eval R M) x)) g) =
  Module.preReflection x f ∘ₗ Module.preReflection y g ∘ₗ Module.preReflection x f
-- Module.reflection_apply
lemma reflection_apply (h : f x = 2) :
    reflection h y = y - (f y) • x 
Arguments: {R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] {x : M} {f : Module.Dual R M} (y : M) (h : f x = 2)
Goal: (Module.reflection h) y = y - f y • x
-- Module.reflection_apply_self
@[simp]
lemma reflection_apply_self (h : f x = 2) :
    reflection h x = - x 
Arguments: {R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] {x : M} {f : Module.Dual R M} (h : f x = 2)
Goal: (Module.reflection h) x = -x
-- Module.involutive_reflection
lemma involutive_reflection (h : f x = 2) :
    Involutive (reflection h) 
Arguments: {R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] {x : M} {f : Module.Dual R M} (h : f x = 2)
Goal: Function.Involutive ⇑(Module.reflection h)
-- Module.reflection_symm
@[simp]
lemma reflection_symm (h : f x = 2) :
    (reflection h).symm = reflection h 
Arguments: {R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] {x : M} {f : Module.Dual R M} (h : f x = 2)
Goal: (Module.reflection h).symm = Module.reflection h
-- Module.invOn_reflection_of_mapsTo
lemma invOn_reflection_of_mapsTo {Φ : Set M} (h : f x = 2) :
    InvOn (reflection h) (reflection h) Φ Φ 
Arguments: {R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] {x : M} {f : Module.Dual R M} {Φ : Set M} (h : f x = 2)
Goal: Set.InvOn (⇑(Module.reflection h)) (⇑(Module.reflection h)) Φ Φ
-- Module.bijOn_reflection_of_mapsTo
lemma bijOn_reflection_of_mapsTo {Φ : Set M} (h : f x = 2) (h' : MapsTo (reflection h) Φ Φ) :
    BijOn (reflection h) Φ Φ 
Arguments: {R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] {x : M} {f : Module.Dual R M} {Φ : Set M} (h : f x = 2) (h' : Set.MapsTo (⇑(Module.reflection h)) Φ Φ)
Goal: Set.BijOn (⇑(Module.reflection h)) Φ Φ
-- Module.Dual.eq_of_preReflection_mapsTo
lemma Dual.eq_of_preReflection_mapsTo [CharZero R] [NoZeroSMulDivisors R M]
    {x : M} (hx : x ≠ 0) {Φ : Set M} (hΦ₁ : Φ.Finite) (hΦ₂ : span R Φ = ⊤) {f g : Dual R M}
    (hf₁ : f x = 2) (hf₂ : MapsTo (preReflection x f) Φ Φ)
    (hg₁ : g x = 2) (hg₂ : MapsTo (preReflection x g) Φ Φ) :
    f = g 
Arguments: {R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] [CharZero R] [NoZeroSMulDivisors R M] {x : M} (hx : x ≠ 0) {Φ : Set M} (hΦ₁ : Φ.Finite) (hΦ₂ : Submodule.span R Φ = ⊤) {f g : Module.Dual R M} (hf₁ : f x = 2) (hf₂ : Set.MapsTo (⇑(Module.preReflection x f)) Φ Φ) (hg₁ : g x = 2) (hg₂ : Set.MapsTo (⇑(Module.preReflection x g)) Φ Φ)
Goal: f = g
-- Module.Dual.eq_of_preReflection_mapsTo'
lemma Dual.eq_of_preReflection_mapsTo' [CharZero R] [NoZeroSMulDivisors R M]
    {x : M} (hx : x ≠ 0) {Φ : Set M} (hΦ₁ : Φ.Finite) (hx' : x ∈ span R Φ) {f g : Dual R M}
    (hf₁ : f x = 2) (hf₂ : MapsTo (preReflection x f) Φ Φ)
    (hg₁ : g x = 2) (hg₂ : MapsTo (preReflection x g) Φ Φ) :
    (span R Φ).subtype.dualMap f = (span R Φ).subtype.dualMap g 
Arguments: {R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] [CharZero R] [NoZeroSMulDivisors R M] {x : M} (hx : x ≠ 0) {Φ : Set M} (hΦ₁ : Φ.Finite) (hx' : x ∈ Submodule.span R Φ) {f g : Module.Dual R M} (hf₁ : f x = 2) (hf₂ : Set.MapsTo (⇑(Module.preReflection x f)) Φ Φ) (hg₁ : g x = 2) (hg₂ : Set.MapsTo (⇑(Module.preReflection x g)) Φ Φ)
Goal: (Submodule.span R Φ).subtype.dualMap f = (Submodule.span R Φ).subtype.dualMap g
-- Module.eq_of_mapsTo_reflection_of_mem
lemma eq_of_mapsTo_reflection_of_mem [NoZeroSMulDivisors ℤ M] {Φ : Set M} (hΦ : Φ.Finite)
    (hfx : f x = 2) (hgy : g y = 2) (hgx : g x = 2) (hfy : f y = 2)
    (hxfΦ : MapsTo (preReflection x f) Φ Φ)
    (hygΦ : MapsTo (preReflection y g) Φ Φ)
    (hyΦ : y ∈ Φ) :
    x = y 
Arguments: {R : Type u_1} {M : Type u_2} [CommRing R] [AddCommGroup M] [Module R M] {x : M} {f : Module.Dual R M} {y : M} {g : Module.Dual R M} [NoZeroSMulDivisors ℤ M] {Φ : Set M} (hΦ : Φ.Finite) (hfx : f x = 2) (hgy : g y = 2) (hgx : g x = 2) (hfy : f y = 2) (hxfΦ : Set.MapsTo (⇑(Module.preReflection x f)) Φ Φ) (hygΦ : Set.MapsTo (⇑(Module.preReflection y g)) Φ Φ) (hyΦ : y ∈ Φ)
Goal: x = y