Documentation

TauCeti.RepresentationTheory.Quiver.Representation.Subrepresentation

Subrepresentations of a quiver representation #

A subrepresentation of a representation M of a quiver is a submodule of Mₐ at every vertex a, stable under the action of every path. This file packages that data as TauCeti.QuiverSubrep M, orders subrepresentations vertexwise — a bounded order, with ⊥ and ⊤ the zero subrepresentation and the whole of M — builds the representation a subrepresentation carries together with its monomorphism into M, and identifies when that monomorphism is zero or invertible. The payoff is TauCeti.QuiverSubrep.eq_bot_or_eq_top: over a simple representation there are no subrepresentations other than the two trivial ones.

The file also builds the subrepresentation TauCeti.QuiverSubrep.pathSpan x n spanned by the images of a single vector x : Mᵢ under all paths out of i of length at least n. Taking n = 0 gives the subrepresentation generated by x, and n = 1 the part of it reached along the paths of positive length; the two agree away from i, so they can differ only at i, where — as soon as the closed paths at i carry x into the line through x, respectively kill x — the first is that line and the second vanishes. That comparison is what forces a simple representation to be concentrated at one vertex.

Main definitions #

Main results #

Implementation notes #

The submodules are indexed by the vertices of Q, while a representation is a functor out of CategoryTheory.Paths Q; the two index types agree only by unfolding the semireducible CategoryTheory.Paths, so several proofs below have to change a goal into its vertex-indexed form before rewriting. The same device restates a goal about LinearMap.restrict or about path composition in CategoryTheory.Paths Q as the plain statement about M that the functoriality lemmas CategoryTheory.Functor.map_id and CategoryTheory.Functor.map_comp are phrased in; each such change carries a comment saying which reduction it performs.

References #

This supports Layer 1 of TauCetiRoadmap/RepresentationTheory/QuiverRepresentations/README.md, where the category of representations is described as abelian with the pointwise structure and its subobjects are the subrepresentations.

structure TauCeti.QuiverSubrep {k : Type u} {Q : Type v} [Field k] [Quiver Q] (M : QuiverRep k Q) :
Type (max u_1 v)

A subrepresentation of a representation M of a quiver: a submodule of the vector space that M puts at each vertex, stable under the action of every path.

Instances For
    theorem TauCeti.QuiverSubrep.ext {k : Type u} {Q : Type v} [Field k] [Quiver Q] {M : QuiverRep k Q} {N N' : QuiverSubrep M} (h : ∀ (a : Q), N.toSubmodule a = N'.toSubmodule a) :
    N = N'
    theorem TauCeti.QuiverSubrep.ext_iff {k : Type u} {Q : Type v} [Field k] [Quiver Q] {M : QuiverRep k Q} {N N' : QuiverSubrep M} :
    N = N' ↔ ∀ (a : Q), N.toSubmodule a = N'.toSubmodule a

    The vertexwise order #

    @[instance_reducible]

    Subrepresentations are ordered vertexwise, by inclusion of the submodules they put at each vertex.

    Equations
    theorem TauCeti.QuiverSubrep.le_def {k : Type u} {Q : Type v} [Field k] [Quiver Q] {M : QuiverRep k Q} {N N' : QuiverSubrep M} :
    N ≤ N' ↔ ∀ (a : Q), N.toSubmodule a ≤ N'.toSubmodule a

    One subrepresentation is contained in another exactly when that holds at every vertex.

    @[instance_reducible]
    instance TauCeti.QuiverSubrep.instBot {k : Type u} {Q : Type v} [Field k] [Quiver Q] {M : QuiverRep k Q} :

    The zero subrepresentation: ⊥ at every vertex.

    Equations
    @[instance_reducible]
    instance TauCeti.QuiverSubrep.instTop {k : Type u} {Q : Type v} [Field k] [Quiver Q] {M : QuiverRep k Q} :

    The whole representation, viewed as a subrepresentation of itself: ⊤ at every vertex.

    Equations
    @[simp]
    theorem TauCeti.QuiverSubrep.toSubmodule_bot {k : Type u} {Q : Type v} [Field k] [Quiver Q] {M : QuiverRep k Q} (a : Q) :
    @[simp]
    theorem TauCeti.QuiverSubrep.toSubmodule_top {k : Type u} {Q : Type v} [Field k] [Quiver Q] {M : QuiverRep k Q} (a : Q) :
    @[instance_reducible]
    Equations
    def TauCeti.QuiverSubrep.toQuiverRep {k : Type u} {Q : Type v} [Field k] [Quiver Q] {M : QuiverRep k Q} (N : QuiverSubrep M) :

    The representation carried by a subrepresentation: the submodule at each vertex, with a path acting by the restriction of its action on M.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      theorem TauCeti.QuiverSubrep.toQuiverRep_obj {k : Type u} {Q : Type v} [Field k] [Quiver Q] {M : QuiverRep k Q} (N : QuiverSubrep M) (a : Q) :
      N.toQuiverRep.obj a = ↧↥(N.toSubmodule a)

      A subrepresentation puts its submodule at each vertex.

      def TauCeti.QuiverSubrep.ι {k : Type u} {Q : Type v} [Field k] [Quiver Q] {M : QuiverRep k Q} (N : QuiverSubrep M) :

      The inclusion of a subrepresentation into the ambient representation.

      Equations
      Instances For
        @[simp]
        theorem TauCeti.QuiverSubrep.ι_app_apply {k : Type u} {Q : Type v} [Field k] [Quiver Q] {M : QuiverRep k Q} (N : QuiverSubrep M) (a : Q) (x : ↥(N.toSubmodule a)) :
        @[simp]

        A path acts on a subrepresentation by its action on M: the value of the path action, read in the ambient representation, is the ambient action on the value.

        The zero subrepresentation carries the zero representation.

        theorem TauCeti.QuiverSubrep.ι_eq_zero_iff {k : Type u} {Q : Type v} [Field k] [Quiver Q] {M : QuiverRep k Q} (N : QuiverSubrep M) :
        N.ι = 0 ↔ N = ⊥

        The inclusion of a subrepresentation is the zero morphism exactly when the subrepresentation is ⊥.

        The inclusion of a subrepresentation is an isomorphism exactly when the subrepresentation is ⊤.

        A simple representation has no proper nonzero subrepresentation: a subrepresentation of a simple representation is ⊥ or ⊤.

        The subrepresentation spanned by a vector #

        def TauCeti.QuiverSubrep.pathImages {k : Type u} {Q : Type v} [Field k] [Quiver Q] {M : QuiverRep k Q} {i : Q} (x : ↑(M.obj i)) (n : ℕ) (a : Q) :
        Set ↑(M.obj a)

        The set of images of x : Mᵢ under the paths out of i of length at least n.

        Equations
        Instances For
          @[simp]
          theorem TauCeti.QuiverSubrep.mem_pathImages {k : Type u} {Q : Type v} [Field k] [Quiver Q] {M : QuiverRep k Q} {i : Q} {x : ↑(M.obj i)} {n : ℕ} {a : Q} {y : ↑(M.obj a)} :

          Membership in TauCeti.QuiverSubrep.pathImages: the elements are exactly the images of x under the paths i → a of length at least n.

          def TauCeti.QuiverSubrep.pathSpan {k : Type u} {Q : Type v} [Field k] [Quiver Q] {M : QuiverRep k Q} {i : Q} (x : ↑(M.obj i)) (n : ℕ) :

          The subrepresentation spanned by a vector along the long paths: at the vertex a it is the span of the images of x : Mᵢ under the paths i → a of length at least n. For n = 0 this is the subrepresentation generated by x, and for n = 1 the part of it reached along the paths of positive length.

          Equations
          Instances For
            @[simp]
            theorem TauCeti.QuiverSubrep.toSubmodule_pathSpan {k : Type u} {Q : Type v} [Field k] [Quiver Q] {M : QuiverRep k Q} {i : Q} (x : ↑(M.obj i)) (n : ℕ) (a : Q) :

            The submodule that TauCeti.QuiverSubrep.pathSpan puts at a vertex.

            theorem TauCeti.QuiverSubrep.pathSpan_zero_eq_pathSpan_one_of_ne {k : Type u} {Q : Type v} [Field k] [Quiver Q] {M : QuiverRep k Q} {i : Q} (x : ↑(M.obj i)) {a : Q} (h : a ≠ i) :

            Away from the base vertex, the span along all paths and the span along the paths of positive length agree: every path out of i that lands elsewhere already has positive length.

            theorem TauCeti.QuiverSubrep.mem_pathSpan_zero {k : Type u} {Q : Type v} [Field k] [Quiver Q] {M : QuiverRep k Q} {i : Q} (x : ↑(M.obj i)) :

            The vector x lies in the subrepresentation it generates.

            theorem TauCeti.QuiverSubrep.pathSpan_zero_self_of_forall_map_mem_span {k : Type u} {Q : Type v} [Field k] [Quiver Q] {M : QuiverRep k Q} {i : Q} (x : ↑(M.obj i)) (hx : ∀ (p : Quiver.Path i i), (CategoryTheory.ConcreteCategory.hom (M.map p)) x ∈ k ∙ x) :

            If every closed path at i carries x into the line through x, the span at i along all paths is that line.

            theorem TauCeti.QuiverSubrep.pathSpan_one_self_of_forall_map_eq_zero {k : Type u} {Q : Type v} [Field k] [Quiver Q] {M : QuiverRep k Q} {i : Q} (x : ↑(M.obj i)) (hx : ∀ (p : Quiver.Path i i), p.length ≠ 0 → (CategoryTheory.ConcreteCategory.hom (M.map p)) x = 0) :

            If every closed path at i of positive length kills x, the span at i along the paths of positive length vanishes.