Documentation

Mathlib.LinearAlgebra.ExteriorPower.Basic

Exterior powers #

We study the exterior powers of a module M over a commutative ring R.

Definitions #

Theorems #

The canonical alternating map from Fin n → M to ⋀[R]^n M.

def exteriorPower.ιMulti (R : Type u) [CommRing R] (n : ) {M : Type u_1} [AddCommGroup M] [Module R M] :

exteriorAlgebra.ιMulti is the alternating map from Fin n → M to ⋀[r]^n M induced by exteriorAlgebra.ιMulti, i.e. sending a family of vectors m : Fin n → M to the product of its entries.

Equations
Instances For
    @[simp]
    theorem exteriorPower.ιMulti_apply_coe (R : Type u) [CommRing R] (n : ) {M : Type u_1} [AddCommGroup M] [Module R M] (a : Fin nM) :
    ((ιMulti R n) a) = (ExteriorAlgebra.ιMulti R n) a

    The image of ExteriorAlgebra.ιMulti R n spans the nth exterior power. Variant of ExteriorAlgebra.ιMulti_span_fixedDegree, useful in rewrites.

    theorem exteriorPower.ιMulti_span (R : Type u) [CommRing R] (n : ) (M : Type u_1) [AddCommGroup M] [Module R M] :

    The image of exteriorPower.ιMulti spans ⋀[R]^n M.

    inductive exteriorPower.presentation.Rels (R : Type u) (ι : Type u_4) (M : Type u_5) :
    Type (max (max u u_4) u_5)

    The index type for the relations in the standard presentation of ⋀[R]^n M, in the particular case ι is Fin n.

    • add {R : Type u} {ι : Type u_4} {M : Type u_5} (m : ιM) (i : ι) (x y : M) : Rels R ι M
    • smul {R : Type u} {ι : Type u_4} {M : Type u_5} (m : ιM) (i : ι) (r : R) (x : M) : Rels R ι M
    • alt {R : Type u} {ι : Type u_4} {M : Type u_5} (m : ιM) (i j : ι) (hm : m i = m j) (hij : i j) : Rels R ι M
    Instances For
      noncomputable def exteriorPower.presentation.relations (R : Type u) [CommRing R] (ι : Type u_4) [DecidableEq ι] (M : Type u_5) [AddCommGroup M] [Module R M] :

      The relations in the standard presentation of ⋀[R]^n M with generators and relations.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        @[simp]
        theorem exteriorPower.presentation.relations_G (R : Type u) [CommRing R] (ι : Type u_4) [DecidableEq ι] (M : Type u_5) [AddCommGroup M] [Module R M] :
        (relations R ι M).G = (ιM)
        @[simp]
        theorem exteriorPower.presentation.relations_R (R : Type u) [CommRing R] (ι : Type u_4) [DecidableEq ι] (M : Type u_5) [AddCommGroup M] [Module R M] :
        (relations R ι M).R = Rels R ι M
        @[simp]
        theorem exteriorPower.presentation.relations_relation (R : Type u) [CommRing R] (ι : Type u_4) [DecidableEq ι] (M : Type u_5) [AddCommGroup M] [Module R M] (x✝ : Rels R ι M) :
        (relations R ι M).relation x✝ = match x✝ with | Rels.add m i x y => Finsupp.single (Function.update m i x) 1 + Finsupp.single (Function.update m i y) 1 - Finsupp.single (Function.update m i (x + y)) 1 | Rels.smul m i r x => Finsupp.single (Function.update m i (r x)) 1 - r Finsupp.single (Function.update m i x) 1 | Rels.alt m i j hm hij => Finsupp.single m 1
        def exteriorPower.presentation.relationsSolutionEquiv {R : Type u} [CommRing R] {N : Type u_2} [AddCommGroup N] [Module R N] {ι : Type u_4} [DecidableEq ι] {M : Type u_5} [AddCommGroup M] [Module R M] :
        (relations R ι M).Solution N M [⋀^ι]→ₗ[R] N

        The solutions in a module N to the linear equations given by exteriorPower.relations R ι M identify to alternating maps to N.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          @[simp]
          theorem exteriorPower.presentation.relationsSolutionEquiv_apply_apply {R : Type u} [CommRing R] {N : Type u_2} [AddCommGroup N] [Module R N] {ι : Type u_4} [DecidableEq ι] {M : Type u_5} [AddCommGroup M] [Module R M] (s : (relations R ι M).Solution N) (m : ιM) :
          (relationsSolutionEquiv s) m = s.var m
          @[simp]
          theorem exteriorPower.presentation.relationsSolutionEquiv_symm_apply_var {R : Type u} [CommRing R] {N : Type u_2} [AddCommGroup N] [Module R N] {ι : Type u_4} [DecidableEq ι] {M : Type u_5} [AddCommGroup M] [Module R M] (f : M [⋀^ι]→ₗ[R] N) (m : (relations R ι M).G) :
          (relationsSolutionEquiv.symm f).var m = f m
          def exteriorPower.presentation.isPresentationCore (R : Type u) [CommRing R] (n : ) (M : Type u_1) [AddCommGroup M] [Module R M] :
          (relationsSolutionEquiv.symm (ιMulti R n)).IsPresentationCore

          The universal property of the exterior power.

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            noncomputable def exteriorPower.presentation (R : Type u) [CommRing R] (n : ) (M : Type u_1) [AddCommGroup M] [Module R M] :

            The standard presentation of the R-module ⋀[R]^n M.

            Equations
            Instances For
              @[simp]
              theorem exteriorPower.presentation_G (R : Type u) [CommRing R] (n : ) (M : Type u_1) [AddCommGroup M] [Module R M] :
              (presentation R n M).G = (Fin nM)
              @[simp]
              theorem exteriorPower.presentation_relation (R : Type u) [CommRing R] (n : ) (M : Type u_1) [AddCommGroup M] [Module R M] (r : (presentation.relations R (Fin n) M).R) :
              @[simp]
              theorem exteriorPower.presentation_R (R : Type u) [CommRing R] (n : ) (M : Type u_1) [AddCommGroup M] [Module R M] :
              @[simp]
              theorem exteriorPower.presentation_var (R : Type u) [CommRing R] (n : ) (M : Type u_1) [AddCommGroup M] [Module R M] (m : (presentation.relations R (Fin n) M).G) :
              (presentation R n M).var m = (ιMulti R n) m
              theorem exteriorPower.linearMap_ext {R : Type u} [CommRing R] {n : } {M : Type u_1} {N : Type u_2} [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] {f g : (⋀[R]^n M) →ₗ[R] N} (heq : f.compAlternatingMap (ιMulti R n) = g.compAlternatingMap (ιMulti R n)) :
              f = g

              Two linear maps on ⋀[R]^n M that agree on the image of exteriorPower.ιMulti are equal.

              noncomputable def exteriorPower.alternatingMapLinearEquiv {R : Type u} [CommRing R] {n : } {M : Type u_1} {N : Type u_2} [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] :

              The linear equivalence between n-fold alternating maps from M to N and linear maps from ⋀[R]^n M to N: this is the universal property of the nth exterior power of M.

              Equations
              Instances For
                @[simp]
                theorem exteriorPower.alternatingMapLinearEquiv_comp_ιMulti {R : Type u} [CommRing R] {n : } {M : Type u_1} {N : Type u_2} [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] (f : M [⋀^Fin n]→ₗ[R] N) :
                (alternatingMapLinearEquiv f).compAlternatingMap (ιMulti R n) = f
                @[simp]
                theorem exteriorPower.alternatingMapLinearEquiv_apply_ιMulti {R : Type u} [CommRing R] {n : } {M : Type u_1} {N : Type u_2} [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] (f : M [⋀^Fin n]→ₗ[R] N) (a : Fin nM) :
                (alternatingMapLinearEquiv f) ((ιMulti R n) a) = f a
                @[simp]
                theorem exteriorPower.alternatingMapLinearEquiv_symm_apply {R : Type u} [CommRing R] {n : } {M : Type u_1} {N : Type u_2} [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] (F : (⋀[R]^n M) →ₗ[R] N) (m : Fin nM) :
                (alternatingMapLinearEquiv.symm F) m = (F.compAlternatingMap (ιMulti R n)) m
                @[simp]
                theorem exteriorPower.alternatingMapLinearEquiv_ιMulti {R : Type u} [CommRing R] {n : } {M : Type u_1} [AddCommGroup M] [Module R M] :
                alternatingMapLinearEquiv (ιMulti R n) = LinearMap.id
                theorem exteriorPower.alternatingMapLinearEquiv_comp {R : Type u} [CommRing R] {n : } {M : Type u_1} {N : Type u_2} {N' : Type u_3} [AddCommGroup M] [Module R M] [AddCommGroup N] [Module R N] [AddCommGroup N'] [Module R N'] (g : N →ₗ[R] N') (f : M [⋀^Fin n]→ₗ[R] N) :
                alternatingMapLinearEquiv (g.compAlternatingMap f) = g ∘ₗ alternatingMapLinearEquiv f

                If f is an alternating map from M to N, alternatingMapLinearEquiv f is the corresponding linear map from ⋀[R]^n M to N, and if g is a linear map from N to N', then the alternating map g.compAlternatingMap f from M to N' corresponds to the linear map g.comp (alternatingMapLinearEquiv f) on ⋀[R]^n M.