ruc-ai4math/mathlib_handler_benchmark_410 huggingface dataset:
-- Basis.equivFun_symm_stdBasis
theorem equivFun_symm_stdBasis [Finite n] (b : Basis n R M) (i : n) :
    b.equivFun.symm (LinearMap.stdBasis R (fun _ => R) i 1) = b i 
Arguments: {R : Type u_1} {M : Type u_2} {n : Type u_3} [DecidableEq n] [Semiring R] [AddCommMonoid M] [Module R M] [Finite n] (b : Basis n R M) (i : n)
Goal: b.equivFun.symm ((LinearMap.stdBasis R (fun x => R) i) 1) = b i
-- LinearMap.charpoly_toMatrix
@[simp]
theorem charpoly_toMatrix {ι : Type w} [DecidableEq ι] [Fintype ι] (b : Basis ι R M) :
    (toMatrix b b f).charpoly = f.charpoly 
Arguments: {R : Type u_1} {M : Type u_2} [CommRing R] [Nontrivial R] [AddCommGroup M] [Module R M] [Module.Free R M] [Module.Finite R M] (f : M →ₗ[R] M) {ι : Type w} [DecidableEq ι] [Fintype ι] (b : Basis ι R M)
Goal: ((LinearMap.toMatrix b b) f).charpoly = f.charpoly
-- LinearMap.charpoly_prodMap
lemma charpoly_prodMap (f₁ : M₁ →ₗ[R] M₁) (f₂ : M₂ →ₗ[R] M₂) :
    (f₁.prodMap f₂).charpoly = f₁.charpoly * f₂.charpoly 
Arguments: {R : Type u_1} {M₁ : Type u_3} {M₂ : Type u_4} [CommRing R] [Nontrivial R] [AddCommGroup M₁] [Module R M₁] [Module.Finite R M₁] [Module.Free R M₁] [AddCommGroup M₂] [Module R M₂] [Module.Finite R M₂] [Module.Free R M₂] (f₁ : M₁ →ₗ[R] M₁) (f₂ : M₂ →ₗ[R] M₂)
Goal: (f₁.prodMap f₂).charpoly = f₁.charpoly * f₂.charpoly
-- LinearEquiv.charpoly_conj
@[simp]
lemma LinearEquiv.charpoly_conj (e : M₁ ≃ₗ[R] M₂) (φ : Module.End R M₁) :
    (e.conj φ).charpoly = φ.charpoly 
Arguments: {R : Type u_1} {M₁ : Type u_3} {M₂ : Type u_4} [CommRing R] [Nontrivial R] [AddCommGroup M₁] [Module R M₁] [Module.Finite R M₁] [Module.Free R M₁] [AddCommGroup M₂] [Module R M₂] [Module.Finite R M₂] [Module.Free R M₂] (e : M₁ ≃ₗ[R] M₂) (φ : Module.End R M₁)
Goal: LinearMap.charpoly (e.conj φ) = LinearMap.charpoly φ
-- Matrix.det_comm
theorem det_comm [DecidableEq n] (M N : Matrix n n A) : det (M * N) = det (N * M) 
Arguments: {A : Type u_5} [CommRing A] {n : Type u_7} [Fintype n] [DecidableEq n] (M N : Matrix n n A)
Goal: (M * N).det = (N * M).det
-- Matrix.det_comm'
theorem det_comm' [DecidableEq m] [DecidableEq n] {M : Matrix n m A} {N : Matrix m n A}
    {M' : Matrix m n A} (hMM' : M * M' = 1) (hM'M : M' * M = 1) : det (M * N) = det (N * M) 
Arguments: {A : Type u_5} [CommRing A] {m : Type u_6} {n : Type u_7} [Fintype m] [Fintype n] [DecidableEq m] [DecidableEq n] {M : Matrix n m A} {N M' : Matrix m n A} (hMM' : M * M' = 1) (hM'M : M' * M = 1)
Goal: (M * N).det = (N * M).det
-- Matrix.det_conj_of_mul_eq_one
theorem det_conj_of_mul_eq_one [DecidableEq m] [DecidableEq n] {M : Matrix m n A}
    {M' : Matrix n m A} {N : Matrix n n A} (hMM' : M * M' = 1) (hM'M : M' * M = 1) :
    det (M * N * M') = det N 
Arguments: {A : Type u_5} [CommRing A] {m : Type u_6} {n : Type u_7} [Fintype m] [Fintype n] [DecidableEq m] [DecidableEq n] {M : Matrix m n A} {M' : Matrix n m A} {N : Matrix n n A} (hMM' : M * M' = 1) (hM'M : M' * M = 1)
Goal: (M * N * M').det = N.det
-- LinearMap.det_toMatrix_eq_det_toMatrix
theorem det_toMatrix_eq_det_toMatrix [DecidableEq κ] (b : Basis ι A M) (c : Basis κ A M)
    (f : M →ₗ[A] M) : det (LinearMap.toMatrix b b f) = det (LinearMap.toMatrix c c f) 
Arguments: {M : Type u_2} [AddCommGroup M] {ι : Type u_4} [DecidableEq ι] [Fintype ι] {A : Type u_5} [CommRing A] [Module A M] {κ : Type u_6} [Fintype κ] [DecidableEq κ] (b : Basis ι A M) (c : Basis κ A M) (f : M →ₗ[A] M)
Goal: ((LinearMap.toMatrix b b) f).det = ((LinearMap.toMatrix c c) f).det
-- LinearMap.detAux_def
irreducible_def detAux : Trunc (Basis ι A M) → (M →ₗ[A] M) →* A 
Arguments: {M : Type u_7} [AddCommGroup M] {ι : Type u_8} [DecidableEq ι] [Fintype ι] {A : Type u_9} [CommRing A] [Module A M]
Goal: LinearMap.detAux = Trunc.lift (fun b => Matrix.detMonoidHom.comp ↑(LinearMap.toMatrixAlgEquiv b)) ⋯
-- LinearMap.detAux_def'
theorem detAux_def' (b : Basis ι A M) (f : M →ₗ[A] M) :
    LinearMap.detAux (Trunc.mk b) f = Matrix.det (LinearMap.toMatrix b b f) 
Arguments: {M : Type u_2} [AddCommGroup M] {ι : Type u_4} [DecidableEq ι] [Fintype ι] {A : Type u_5} [CommRing A] [Module A M] (b : Basis ι A M) (f : M →ₗ[A] M)
Goal: (LinearMap.detAux (Trunc.mk b)) f = ((LinearMap.toMatrix b b) f).det
-- LinearMap.detAux_def''
theorem detAux_def'' {ι' : Type*} [Fintype ι'] [DecidableEq ι'] (tb : Trunc <| Basis ι A M)
    (b' : Basis ι' A M) (f : M →ₗ[A] M) :
    LinearMap.detAux tb f = Matrix.det (LinearMap.toMatrix b' b' f) 
Arguments: {M : Type u_2} [AddCommGroup M] {ι : Type u_4} [DecidableEq ι] [Fintype ι] {A : Type u_5} [CommRing A] [Module A M] {ι' : Type u_7} [Fintype ι'] [DecidableEq ι'] (tb : Trunc (Basis ι A M)) (b' : Basis ι' A M) (f : M →ₗ[A] M)
Goal: (LinearMap.detAux tb) f = ((LinearMap.toMatrix b' b') f).det
-- LinearMap.detAux_id
@[simp]
theorem detAux_id (b : Trunc <| Basis ι A M) : LinearMap.detAux b LinearMap.id = 1 
Arguments: {M : Type u_2} [AddCommGroup M] {ι : Type u_4} [DecidableEq ι] [Fintype ι] {A : Type u_5} [CommRing A] [Module A M] (b : Trunc (Basis ι A M))
Goal: (LinearMap.detAux b) LinearMap.id = 1
-- LinearMap.detAux_comp
@[simp]
theorem detAux_comp (b : Trunc <| Basis ι A M) (f g : M →ₗ[A] M) :
    LinearMap.detAux b (f.comp g) = LinearMap.detAux b f * LinearMap.detAux b g 
Arguments: {M : Type u_2} [AddCommGroup M] {ι : Type u_4} [DecidableEq ι] [Fintype ι] {A : Type u_5} [CommRing A] [Module A M] (b : Trunc (Basis ι A M)) (f g : M →ₗ[A] M)
Goal: (LinearMap.detAux b) (f ∘ₗ g) = (LinearMap.detAux b) f * (LinearMap.detAux b) g
-- LinearMap.det_def
protected irreducible_def det : (M →ₗ[A] M) →* A 
Arguments: {M : Type u_7} [AddCommGroup M] {A : Type u_8} [CommRing A] [Module A M]
Goal: LinearMap.det = if H : ∃ s, Nonempty (Basis { x // x ∈ s } A M) then LinearMap.detAux (Trunc.mk ⋯.some) else 1
-- LinearMap.coe_det
theorem coe_det [DecidableEq M] :
    ⇑(LinearMap.det : (M →ₗ[A] M) →* A) =
      if H : ∃ s : Finset M, Nonempty (Basis s A M) then
        LinearMap.detAux (Trunc.mk H.choose_spec.some)
      else 1 
Arguments: {M : Type u_2} [AddCommGroup M] {A : Type u_5} [CommRing A] [Module A M] [DecidableEq M]
Goal: ⇑LinearMap.det = ⇑(if H : ∃ s, Nonempty (Basis { x // x ∈ s } A M) then LinearMap.detAux (Trunc.mk ⋯.some) else 1)
-- LinearMap.det_eq_det_toMatrix_of_finset
theorem det_eq_det_toMatrix_of_finset [DecidableEq M] {s : Finset M} (b : Basis s A M)
    (f : M →ₗ[A] M) : LinearMap.det f = Matrix.det (LinearMap.toMatrix b b f) 
Arguments: {M : Type u_2} [AddCommGroup M] {A : Type u_5} [CommRing A] [Module A M] [DecidableEq M] {s : Finset M} (b : Basis { x // x ∈ s } A M) (f : M →ₗ[A] M)
Goal: LinearMap.det f = ((LinearMap.toMatrix b b) f).det
-- LinearMap.det_toMatrix
@[simp]
theorem det_toMatrix (b : Basis ι A M) (f : M →ₗ[A] M) :
    Matrix.det (toMatrix b b f) = LinearMap.det f 
Arguments: {M : Type u_2} [AddCommGroup M] {ι : Type u_4} [DecidableEq ι] [Fintype ι] {A : Type u_5} [CommRing A] [Module A M] (b : Basis ι A M) (f : M →ₗ[A] M)
Goal: ((LinearMap.toMatrix b b) f).det = LinearMap.det f
-- LinearMap.det_toMatrix'
@[simp]
theorem det_toMatrix' {ι : Type*} [Fintype ι] [DecidableEq ι] (f : (ι → A) →ₗ[A] ι → A) :
    Matrix.det (LinearMap.toMatrix' f) = LinearMap.det f 
Arguments: {A : Type u_5} [CommRing A] {ι : Type u_7} [Fintype ι] [DecidableEq ι] (f : (ι → A) →ₗ[A] ι → A)
Goal: (LinearMap.toMatrix' f).det = LinearMap.det f
-- LinearMap.det_toLin
@[simp]
theorem det_toLin (b : Basis ι R M) (f : Matrix ι ι R) :
    LinearMap.det (Matrix.toLin b b f) = f.det 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {ι : Type u_4} [DecidableEq ι] [Fintype ι] (b : Basis ι R M) (f : Matrix ι ι R)
Goal: LinearMap.det ((Matrix.toLin b b) f) = f.det
-- LinearMap.det_toLin'
@[simp]
theorem det_toLin' (f : Matrix ι ι R) : LinearMap.det (Matrix.toLin' f) = Matrix.det f 
Arguments: {R : Type u_1} [CommRing R] {ι : Type u_4} [DecidableEq ι] [Fintype ι] (f : Matrix ι ι R)
Goal: LinearMap.det (Matrix.toLin' f) = f.det
-- LinearMap.det_cases
-- @[elab_as_elim] -- Porting note: This attr can't be applied.
theorem det_cases [DecidableEq M] {P : A → Prop} (f : M →ₗ[A] M)
    (hb : ∀ (s : Finset M) (b : Basis s A M), P (Matrix.det (toMatrix b b f))) (h1 : P 1) :
    P (LinearMap.det f) 
Arguments: {M : Type u_2} [AddCommGroup M] {A : Type u_5} [CommRing A] [Module A M] [DecidableEq M] {P : A → Prop} (f : M →ₗ[A] M) (hb : ∀ (s : Finset M) (b : Basis { x // x ∈ s } A M), P ((LinearMap.toMatrix b b) f).det) (h1 : P 1)
Goal: P (LinearMap.det f)
-- LinearMap.det_comp
@[simp]
theorem det_comp (f g : M →ₗ[A] M) :
    LinearMap.det (f.comp g) = LinearMap.det f * LinearMap.det g 
Arguments: {M : Type u_2} [AddCommGroup M] {A : Type u_5} [CommRing A] [Module A M] (f g : M →ₗ[A] M)
Goal: LinearMap.det (f ∘ₗ g) = LinearMap.det f * LinearMap.det g
-- LinearMap.det_id
@[simp]
theorem det_id : LinearMap.det (LinearMap.id : M →ₗ[A] M) = 1 
Arguments: {M : Type u_2} [AddCommGroup M] {A : Type u_5} [CommRing A] [Module A M]
Goal: LinearMap.det LinearMap.id = 1
-- LinearMap.det_smul
@[simp]
theorem det_smul {𝕜 : Type*} [Field 𝕜] {M : Type*} [AddCommGroup M] [Module 𝕜 M] (c : 𝕜)
    (f : M →ₗ[𝕜] M) :
    LinearMap.det (c • f) = c ^ FiniteDimensional.finrank 𝕜 M * LinearMap.det f 
Arguments: {𝕜 : Type u_7} [Field 𝕜] {M : Type u_8} [AddCommGroup M] [Module 𝕜 M] (c : 𝕜) (f : M →ₗ[𝕜] M)
Goal: LinearMap.det (c • f) = c ^ FiniteDimensional.finrank 𝕜 M * LinearMap.det f
-- LinearMap.det_zero'
theorem det_zero' {ι : Type*} [Finite ι] [Nonempty ι] (b : Basis ι A M) :
    LinearMap.det (0 : M →ₗ[A] M) = 0 
Arguments: {M : Type u_2} [AddCommGroup M] {A : Type u_5} [CommRing A] [Module A M] {ι : Type u_7} [Finite ι] [Nonempty ι] (b : Basis ι A M)
Goal: LinearMap.det 0 = 0
-- LinearMap.det_zero
@[simp]
theorem det_zero {𝕜 : Type*} [Field 𝕜] {M : Type*} [AddCommGroup M] [Module 𝕜 M] :
    LinearMap.det (0 : M →ₗ[𝕜] M) = (0 : 𝕜) ^ FiniteDimensional.finrank 𝕜 M 
Arguments: {𝕜 : Type u_7} [Field 𝕜] {M : Type u_8} [AddCommGroup M] [Module 𝕜 M]
Goal: LinearMap.det 0 = 0 ^ FiniteDimensional.finrank 𝕜 M
-- LinearMap.det_eq_one_of_subsingleton
theorem det_eq_one_of_subsingleton [Subsingleton M] (f : M →ₗ[R] M) :
    LinearMap.det (f : M →ₗ[R] M) = 1 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] [Subsingleton M] (f : M →ₗ[R] M)
Goal: LinearMap.det f = 1
-- LinearMap.det_eq_one_of_finrank_eq_zero
theorem det_eq_one_of_finrank_eq_zero {𝕜 : Type*} [Field 𝕜] {M : Type*} [AddCommGroup M]
    [Module 𝕜 M] (h : FiniteDimensional.finrank 𝕜 M = 0) (f : M →ₗ[𝕜] M) :
    LinearMap.det (f : M →ₗ[𝕜] M) = 1 
Arguments: {𝕜 : Type u_7} [Field 𝕜] {M : Type u_8} [AddCommGroup M] [Module 𝕜 M] (h : FiniteDimensional.finrank 𝕜 M = 0) (f : M →ₗ[𝕜] M)
Goal: LinearMap.det f = 1
-- LinearMap.det_conj
@[simp]
theorem det_conj {N : Type*} [AddCommGroup N] [Module A N] (f : M →ₗ[A] M) (e : M ≃ₗ[A] N) :
    LinearMap.det ((e : M →ₗ[A] N) ∘ₗ f ∘ₗ (e.symm : N →ₗ[A] M)) = LinearMap.det f 
Arguments: {M : Type u_2} [AddCommGroup M] {A : Type u_5} [CommRing A] [Module A M] {N : Type u_7} [AddCommGroup N] [Module A N] (f : M →ₗ[A] M) (e : M ≃ₗ[A] N)
Goal: LinearMap.det (↑e ∘ₗ f ∘ₗ ↑e.symm) = LinearMap.det f
-- LinearMap.isUnit_det
theorem isUnit_det {A : Type*} [CommRing A] [Module A M] (f : M →ₗ[A] M) (hf : IsUnit f) :
    IsUnit (LinearMap.det f) 
Arguments: {M : Type u_2} [AddCommGroup M] {A : Type u_7} [CommRing A] [Module A M] (f : M →ₗ[A] M) (hf : IsUnit f)
Goal: IsUnit (LinearMap.det f)
-- LinearMap.finiteDimensional_of_det_ne_one
theorem finiteDimensional_of_det_ne_one {𝕜 : Type*} [Field 𝕜] [Module 𝕜 M] (f : M →ₗ[𝕜] M)
    (hf : LinearMap.det f ≠ 1) : FiniteDimensional 𝕜 M 
Arguments: {M : Type u_2} [AddCommGroup M] {𝕜 : Type u_7} [Field 𝕜] [Module 𝕜 M] (f : M →ₗ[𝕜] M) (hf : LinearMap.det f ≠ 1)
Goal: FiniteDimensional 𝕜 M
-- LinearMap.range_lt_top_of_det_eq_zero
theorem range_lt_top_of_det_eq_zero {𝕜 : Type*} [Field 𝕜] [Module 𝕜 M] {f : M →ₗ[𝕜] M}
    (hf : LinearMap.det f = 0) : LinearMap.range f < ⊤ 
Arguments: {M : Type u_2} [AddCommGroup M] {𝕜 : Type u_7} [Field 𝕜] [Module 𝕜 M] {f : M →ₗ[𝕜] M} (hf : LinearMap.det f = 0)
Goal: LinearMap.range f < ⊤
-- LinearMap.bot_lt_ker_of_det_eq_zero
theorem bot_lt_ker_of_det_eq_zero {𝕜 : Type*} [Field 𝕜] [Module 𝕜 M] {f : M →ₗ[𝕜] M}
    (hf : LinearMap.det f = 0) : ⊥ < LinearMap.ker f 
Arguments: {M : Type u_2} [AddCommGroup M] {𝕜 : Type u_7} [Field 𝕜] [Module 𝕜 M] {f : M →ₗ[𝕜] M} (hf : LinearMap.det f = 0)
Goal: ⊥ < LinearMap.ker f
-- LinearEquiv.coe_det
@[simp]
theorem coe_det (f : M ≃ₗ[R] M) : ↑(LinearEquiv.det f) = LinearMap.det (f : M →ₗ[R] M) 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] (f : M ≃ₗ[R] M)
Goal: ↑(LinearEquiv.det f) = LinearMap.det ↑f
-- LinearEquiv.coe_inv_det
@[simp]
theorem coe_inv_det (f : M ≃ₗ[R] M) : ↑(LinearEquiv.det f)⁻¹ = LinearMap.det (f.symm : M →ₗ[R] M) 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] (f : M ≃ₗ[R] M)
Goal: ↑(LinearEquiv.det f)⁻¹ = LinearMap.det ↑f.symm
-- LinearEquiv.det_refl
@[simp]
theorem det_refl : LinearEquiv.det (LinearEquiv.refl R M) = 1 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M]
Goal: LinearEquiv.det (LinearEquiv.refl R M) = 1
-- LinearEquiv.det_trans
@[simp]
theorem det_trans (f g : M ≃ₗ[R] M) :
    LinearEquiv.det (f.trans g) = LinearEquiv.det g * LinearEquiv.det f 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] (f g : M ≃ₗ[R] M)
Goal: LinearEquiv.det (f ≪≫ₗ g) = LinearEquiv.det g * LinearEquiv.det f
-- LinearEquiv.det_symm
@[simp]
theorem det_symm (f : M ≃ₗ[R] M) : LinearEquiv.det f.symm = LinearEquiv.det f⁻¹ 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] (f : M ≃ₗ[R] M)
Goal: LinearEquiv.det f.symm = LinearEquiv.det f⁻¹
-- LinearEquiv.det_conj
@[simp]
theorem det_conj (f : M ≃ₗ[R] M) (e : M ≃ₗ[R] M') :
    LinearEquiv.det ((e.symm.trans f).trans e) = LinearEquiv.det f 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {M' : Type u_3} [AddCommGroup M'] [Module R M'] (f : M ≃ₗ[R] M) (e : M ≃ₗ[R] M')
Goal: LinearEquiv.det (e.symm ≪≫ₗ f ≪≫ₗ e) = LinearEquiv.det f
-- LinearEquiv.det_mul_det_symm
@[simp]
theorem LinearEquiv.det_mul_det_symm {A : Type*} [CommRing A] [Module A M] (f : M ≃ₗ[A] M) :
    LinearMap.det (f : M →ₗ[A] M) * LinearMap.det (f.symm : M →ₗ[A] M) = 1 
Arguments: {M : Type u_2} [AddCommGroup M] {A : Type u_5} [CommRing A] [Module A M] (f : M ≃ₗ[A] M)
Goal: LinearMap.det ↑f * LinearMap.det ↑f.symm = 1
-- LinearEquiv.det_symm_mul_det
@[simp]
theorem LinearEquiv.det_symm_mul_det {A : Type*} [CommRing A] [Module A M] (f : M ≃ₗ[A] M) :
    LinearMap.det (f.symm : M →ₗ[A] M) * LinearMap.det (f : M →ₗ[A] M) = 1 
Arguments: {M : Type u_2} [AddCommGroup M] {A : Type u_5} [CommRing A] [Module A M] (f : M ≃ₗ[A] M)
Goal: LinearMap.det ↑f.symm * LinearMap.det ↑f = 1
-- LinearEquiv.isUnit_det
theorem LinearEquiv.isUnit_det (f : M ≃ₗ[R] M') (v : Basis ι R M) (v' : Basis ι R M') :
    IsUnit (LinearMap.toMatrix v v' f).det 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {M' : Type u_3} [AddCommGroup M'] [Module R M'] {ι : Type u_4} [DecidableEq ι] [Fintype ι] (f : M ≃ₗ[R] M') (v : Basis ι R M) (v' : Basis ι R M')
Goal: IsUnit ((LinearMap.toMatrix v v') ↑f).det
-- LinearEquiv.isUnit_det'
theorem LinearEquiv.isUnit_det' {A : Type*} [CommRing A] [Module A M] (f : M ≃ₗ[A] M) :
    IsUnit (LinearMap.det (f : M →ₗ[A] M)) 
Arguments: {M : Type u_2} [AddCommGroup M] {A : Type u_5} [CommRing A] [Module A M] (f : M ≃ₗ[A] M)
Goal: IsUnit (LinearMap.det ↑f)
-- LinearEquiv.det_coe_symm
theorem LinearEquiv.det_coe_symm {𝕜 : Type*} [Field 𝕜] [Module 𝕜 M] (f : M ≃ₗ[𝕜] M) :
    LinearMap.det (f.symm : M →ₗ[𝕜] M) = (LinearMap.det (f : M →ₗ[𝕜] M))⁻¹ 
Arguments: {M : Type u_2} [AddCommGroup M] {𝕜 : Type u_5} [Field 𝕜] [Module 𝕜 M] (f : M ≃ₗ[𝕜] M)
Goal: LinearMap.det ↑f.symm = (LinearMap.det ↑f)⁻¹
-- LinearEquiv.ofIsUnitDet_symm_apply
@[simps]
def LinearEquiv.ofIsUnitDet {f : M →ₗ[R] M'} {v : Basis ι R M} {v' : Basis ι R M'}
    (h : IsUnit (LinearMap.toMatrix v v' f).det) : M ≃ₗ[R] M' 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {M' : Type u_3} [AddCommGroup M'] [Module R M'] {ι : Type u_4} [DecidableEq ι] [Fintype ι] {f : M →ₗ[R] M'} {v : Basis ι R M} {v' : Basis ι R M'} (h : IsUnit ((LinearMap.toMatrix v v') f).det) (a : M')
Goal: (LinearEquiv.ofIsUnitDet h).symm a = ((Matrix.toLin v' v) ((LinearMap.toMatrix v v') f)⁻¹) a
-- LinearEquiv.ofIsUnitDet_apply
@[simps]
def LinearEquiv.ofIsUnitDet {f : M →ₗ[R] M'} {v : Basis ι R M} {v' : Basis ι R M'}
    (h : IsUnit (LinearMap.toMatrix v v' f).det) : M ≃ₗ[R] M' 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {M' : Type u_3} [AddCommGroup M'] [Module R M'] {ι : Type u_4} [DecidableEq ι] [Fintype ι] {f : M →ₗ[R] M'} {v : Basis ι R M} {v' : Basis ι R M'} (h : IsUnit ((LinearMap.toMatrix v v') f).det) (a : M)
Goal: (LinearEquiv.ofIsUnitDet h) a = f a
-- LinearEquiv.coe_ofIsUnitDet
@[simp]
theorem LinearEquiv.coe_ofIsUnitDet {f : M →ₗ[R] M'} {v : Basis ι R M} {v' : Basis ι R M'}
    (h : IsUnit (LinearMap.toMatrix v v' f).det) :
    (LinearEquiv.ofIsUnitDet h : M →ₗ[R] M') = f 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {M' : Type u_3} [AddCommGroup M'] [Module R M'] {ι : Type u_4} [DecidableEq ι] [Fintype ι] {f : M →ₗ[R] M'} {v : Basis ι R M} {v' : Basis ι R M'} (h : IsUnit ((LinearMap.toMatrix v v') f).det)
Goal: ↑(LinearEquiv.ofIsUnitDet h) = f
-- LinearMap.associated_det_of_eq_comp
theorem LinearMap.associated_det_of_eq_comp (e : M ≃ₗ[R] M) (f f' : M →ₗ[R] M)
    (h : ∀ x, f x = f' (e x)) : Associated (LinearMap.det f) (LinearMap.det f') 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] (e : M ≃ₗ[R] M) (f f' : M →ₗ[R] M) (h : ∀ (x : M), f x = f' (e x))
Goal: Associated (LinearMap.det f) (LinearMap.det f')
-- LinearMap.associated_det_comp_equiv
theorem LinearMap.associated_det_comp_equiv {N : Type*} [AddCommGroup N] [Module R N]
    (f : N →ₗ[R] M) (e e' : M ≃ₗ[R] N) :
    Associated (LinearMap.det (f ∘ₗ ↑e)) (LinearMap.det (f ∘ₗ ↑e')) 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {N : Type u_5} [AddCommGroup N] [Module R N] (f : N →ₗ[R] M) (e e' : M ≃ₗ[R] N)
Goal: Associated (LinearMap.det (f ∘ₗ ↑e)) (LinearMap.det (f ∘ₗ ↑e'))
-- Basis.det_apply
theorem Basis.det_apply (v : ι → M) : e.det v = Matrix.det (e.toMatrix v) 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {ι : Type u_4} [DecidableEq ι] [Fintype ι] (e : Basis ι R M) (v : ι → M)
Goal: e.det v = (e.toMatrix v).det
-- Basis.det_self
theorem Basis.det_self : e.det e = 1 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {ι : Type u_4} [DecidableEq ι] [Fintype ι] (e : Basis ι R M)
Goal: e.det ⇑e = 1
-- Basis.det_isEmpty
@[simp]
theorem Basis.det_isEmpty [IsEmpty ι] : e.det = AlternatingMap.constOfIsEmpty R M ι 1 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {ι : Type u_4} [DecidableEq ι] [Fintype ι] (e : Basis ι R M) [IsEmpty ι]
Goal: e.det = AlternatingMap.constOfIsEmpty R M ι 1
-- Basis.det_ne_zero
theorem Basis.det_ne_zero [Nontrivial R] : e.det ≠ 0 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {ι : Type u_4} [DecidableEq ι] [Fintype ι] (e : Basis ι R M) [Nontrivial R]
Goal: e.det ≠ 0
-- Basis.smul_det
theorem Basis.smul_det {G} [Group G] [DistribMulAction G M] [SMulCommClass G R M]
    (g : G) (v : ι → M) :
    (g • e).det v = e.det (g⁻¹ • v) 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {ι : Type u_4} [DecidableEq ι] [Fintype ι] (e : Basis ι R M) {G : Type u_5} [Group G] [DistribMulAction G M] [SMulCommClass G R M] (g : G) (v : ι → M)
Goal: (g • e).det v = e.det (g⁻¹ • v)
-- is_basis_iff_det
theorem is_basis_iff_det {v : ι → M} :
    LinearIndependent R v ∧ span R (Set.range v) = ⊤ ↔ IsUnit (e.det v) 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {ι : Type u_4} [DecidableEq ι] [Fintype ι] (e : Basis ι R M) {v : ι → M}
Goal: LinearIndependent R v ∧ Submodule.span R (Set.range v) = ⊤ ↔ IsUnit (e.det v)
-- Basis.isUnit_det
theorem Basis.isUnit_det (e' : Basis ι R M) : IsUnit (e.det e') 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {ι : Type u_4} [DecidableEq ι] [Fintype ι] (e e' : Basis ι R M)
Goal: IsUnit (e.det ⇑e')
-- AlternatingMap.eq_smul_basis_det
theorem AlternatingMap.eq_smul_basis_det (f : M [⋀^ι]→ₗ[R] R) : f = f e • e.det 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {ι : Type u_4} [DecidableEq ι] [Fintype ι] (e : Basis ι R M) (f : M [⋀^ι]→ₗ[R] R)
Goal: f = f ⇑e • e.det
-- AlternatingMap.map_basis_eq_zero_iff
@[simp]
theorem AlternatingMap.map_basis_eq_zero_iff {ι : Type*} [Finite ι] (e : Basis ι R M)
    (f : M [⋀^ι]→ₗ[R] R) : f e = 0 ↔ f = 0 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {ι : Type u_5} [Finite ι] (e : Basis ι R M) (f : M [⋀^ι]→ₗ[R] R)
Goal: f ⇑e = 0 ↔ f = 0
-- AlternatingMap.map_basis_ne_zero_iff
theorem AlternatingMap.map_basis_ne_zero_iff {ι : Type*} [Finite ι] (e : Basis ι R M)
    (f : M [⋀^ι]→ₗ[R] R) : f e ≠ 0 ↔ f ≠ 0 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {ι : Type u_5} [Finite ι] (e : Basis ι R M) (f : M [⋀^ι]→ₗ[R] R)
Goal: f ⇑e ≠ 0 ↔ f ≠ 0
-- Basis.det_comp
@[simp]
theorem Basis.det_comp (e : Basis ι A M) (f : M →ₗ[A] M) (v : ι → M) :
    e.det (f ∘ v) = (LinearMap.det f) * e.det v 
Arguments: {M : Type u_2} [AddCommGroup M] {ι : Type u_4} [DecidableEq ι] [Fintype ι] {A : Type u_5} [CommRing A] [Module A M] (e : Basis ι A M) (f : M →ₗ[A] M) (v : ι → M)
Goal: e.det (⇑f ∘ v) = LinearMap.det f * e.det v
-- Basis.det_comp_basis
@[simp]
theorem Basis.det_comp_basis [Module A M'] (b : Basis ι A M) (b' : Basis ι A M') (f : M →ₗ[A] M') :
    b'.det (f ∘ b) = LinearMap.det (f ∘ₗ (b'.equiv b (Equiv.refl ι) : M' →ₗ[A] M)) 
Arguments: {M : Type u_2} [AddCommGroup M] {M' : Type u_3} [AddCommGroup M'] {ι : Type u_4} [DecidableEq ι] [Fintype ι] {A : Type u_5} [CommRing A] [Module A M] [Module A M'] (b : Basis ι A M) (b' : Basis ι A M') (f : M →ₗ[A] M')
Goal: b'.det (⇑f ∘ ⇑b) = LinearMap.det (f ∘ₗ ↑(b'.equiv b (Equiv.refl ι)))
-- Basis.det_reindex
theorem Basis.det_reindex {ι' : Type*} [Fintype ι'] [DecidableEq ι'] (b : Basis ι R M) (v : ι' → M)
    (e : ι ≃ ι') : (b.reindex e).det v = b.det (v ∘ e) 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {ι : Type u_4} [DecidableEq ι] [Fintype ι] {ι' : Type u_6} [Fintype ι'] [DecidableEq ι'] (b : Basis ι R M) (v : ι' → M) (e : ι ≃ ι')
Goal: (b.reindex e).det v = b.det (v ∘ ⇑e)
-- Basis.det_reindex'
theorem Basis.det_reindex' {ι' : Type*} [Fintype ι'] [DecidableEq ι'] (b : Basis ι R M)
    (e : ι ≃ ι') : (b.reindex e).det = b.det.domDomCongr e 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {ι : Type u_4} [DecidableEq ι] [Fintype ι] {ι' : Type u_6} [Fintype ι'] [DecidableEq ι'] (b : Basis ι R M) (e : ι ≃ ι')
Goal: (b.reindex e).det = AlternatingMap.domDomCongr e b.det
-- Basis.det_reindex_symm
theorem Basis.det_reindex_symm {ι' : Type*} [Fintype ι'] [DecidableEq ι'] (b : Basis ι R M)
    (v : ι → M) (e : ι' ≃ ι) : (b.reindex e.symm).det (v ∘ e) = b.det v 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {ι : Type u_4} [DecidableEq ι] [Fintype ι] {ι' : Type u_6} [Fintype ι'] [DecidableEq ι'] (b : Basis ι R M) (v : ι → M) (e : ι' ≃ ι)
Goal: (b.reindex e.symm).det (v ∘ ⇑e) = b.det v
-- Basis.det_map
@[simp]
theorem Basis.det_map (b : Basis ι R M) (f : M ≃ₗ[R] M') (v : ι → M') :
    (b.map f).det v = b.det (f.symm ∘ v) 
Arguments: {R : Type u_1} [CommRing R] {M : Type u_2} [AddCommGroup M] [Module R M] {M' : Type u_3} [AddCommGroup M'] [Module R M'] {ι : Type u_4} [DecidableEq ι] [Fintype ι] (b : Basis ι R M) (f : M ≃ₗ[R] M') (v : ι → M')
Goal: (b.map f).det v = b.det (⇑f.symm ∘ v)