Documentation

TauCeti.RepresentationTheory.Quiver.Kronecker.Basic

The generalized Kronecker quiver #

The generalized Kronecker quiver has two vertices, a source and a target, and one arrow from the source to the target for each element of an arrow type A. Taking A = Fin 2 gives the Kronecker quiver • ⇉ •, the smallest connected acyclic quiver that is not of Dynkin type and hence the boundary case of Gabriel's theorem; A = Fin 1 gives the A₂ quiver • → •. (Dropping acyclicity there would be wrong: the one-loop quiver of TauCeti.RepresentationTheory.Quiver.OneLoop.Basic is connected, smaller, and not of Dynkin type.)

This file constructs the quiver and classifies its paths: it is acyclic, and its only nontrivial paths are the arrows themselves. The equivalence totalPathEquivArrowSumBool identifies all indexed paths with A ⊕ Bool, supporting transport of finiteness, countability and infinitude. The same classification is carried out for the quiver reflected at its target, which is the generalized Kronecker quiver read the other way round. The dimension of its path algebra is computed in TauCeti.RepresentationTheory.Quiver.Kronecker.PathAlgebra, its Euler and Tits forms in TauCeti.RepresentationTheory.Quiver.Kronecker.EulerForm. Its representations are built in TauCeti.RepresentationTheory.Quiver.Kronecker.Representation, and its representation type -- infinite as soon as there are two arrows -- is settled in TauCeti.RepresentationTheory.Quiver.Kronecker.FiniteRepType.

Main definitions #

Main results #

References #

Derksen--Weyman, An Introduction to Quiver Representations, and Assem--Simson--Skowroński, Elements of the Representation Theory of Associative Algebras I, Ch. II.

The generalized Kronecker quiver on an arrow type A: two vertices, a source src and a target tgt, with one arrow src ⟶ tgt for each element of A and no other arrows. The classical Kronecker quiver • ⇉ • is the case A = Fin 2, and the A₂ quiver • → • is the case A = Fin 1.

  • src {A : Type v} : Kronecker A

    The source vertex, the tail of every arrow.

  • tgt {A : Type v} : Kronecker A

    The target vertex, the head of every arrow.

Instances For
    @[instance_reducible]
    Equations
    • One or more equations did not get rendered due to their size.

    The two vertices #

    The source and the target are distinct vertices.

    The vertex type is the pair {src, tgt}.

    @[simp]
    theorem TauCeti.Quiver.Kronecker.sum_univ {A : Type v} {M : Type w} [AddCommMonoid M] (f : Kronecker A → M) :
    ∑ v : Kronecker A, f v = f src + f tgt

    A sum over the two vertices is the sum of its two values.

    theorem TauCeti.Quiver.Kronecker.eq_zero_iff {A : Type v} {M : Type w} [Zero M] {f : Kronecker A → M} :
    f = 0 ↔ f src = 0 ∧ f tgt = 0

    A function on the vertices vanishes exactly when both of its values do.

    The two vertices as indices in Fin 2, the target first: tgt is 0 and src is 1.

    The order is the one that makes the path algebra upper triangular rather than lower triangular. In TauCeti.RepresentationTheory.Quiver.Kronecker.UpperTriangular a path is sent to the matrix unit in the row of its target and the column of its source, because an arrow acts on a left module from its source to its target; so the arrows, all of which run from src to tgt, occupy entries above the diagonal exactly when tgt comes first.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For

      The arrows #

      The arrow of the generalized Kronecker quiver indexed by an element of the arrow type. The arrows from the source to the target are exactly the elements of the arrow type, and the identification is definitional.

      Equations
      Instances For
        theorem TauCeti.Quiver.Kronecker.arrow_def {A : Type v} (a : A) :
        arrow a = a

        The arrows from the source to the target are the elements of the arrow type, and arrow is that identification. This is not @[simp]: rewriting arrow a to a would erase the named constructor from every goal, leaving toPath_arrow and the pathEquivArrow lemmas below unable to fire.

        No arrow ends at the source vertex.

        No arrow starts at the target vertex.

        The source vertex is a source.

        The target vertex is a sink.

        @[simp]

        There are as many arrows from the source to the target as there are elements of the arrow type.

        The paths #

        The only closed path at the source vertex is the trivial one.

        The only closed path at the target vertex is the trivial one.

        The generalized Kronecker quiver is acyclic: all of its arrows run the same way.

        The length-one path traced by an arrow of the generalized Kronecker quiver.

        Equations
        Instances For
          @[simp]

          The length-one path of an arrow is the path that arrow traces.

          Distinct arrows trace distinct paths.

          Every path from the source to the target is a single arrow.

          @[instance_reducible]

          Over the A₂ quiver there is exactly one path from the source to the target: the arrows are the paths src → tgt, and there is only one arrow.

          Equations

          The paths from the source to the target of the generalized Kronecker quiver are its arrows.

          Equations
          Instances For
            @[simp]

            The inverse of the classification sends an arrow to the path it traces; the two are the same construction, so this holds definitionally.

            @[simp]

            The classification sends the path traced by an arrow back to that arrow.

            @[simp]

            Every path from the source to the target is traced by the arrow it classifies.

            Indexed paths are the arrows together with two trivial paths. The Boolean labels follow the vertex order: false represents the target, and true represents the source.

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              @[simp]

              An arrow path is classified by the arrow it traces.

              @[simp]

              An arrow label reconstructs the path it traces.

              @[simp]

              Boolean label false reconstructs the trivial path at the target.

              @[simp]

              Boolean label true reconstructs the trivial path at the source.

              Each path of a generalized Kronecker quiver is a trivial path at one of its two vertices, or the length-one path traced by an arrow.

              @[simp]

              There are as many paths from the source to the target as there are arrows: by pathEquivArrow, each such path is a single arrow.

              @[simp]

              The generalized Kronecker quiver on n arrows has n + 2 paths: the two trivial paths and the arrows themselves.

              The reflected quiver #

              A vertex of the quiver reflected at tgt has to be written @IsSink (Reflect (Kronecker A) tgt) _ src rather than IsSink (src : Reflect (Kronecker A) tgt): TauCeti.Quiver.Reflect is a type synonym for the vertex type, so the ascription is discharged definitionally and the quiver instance elaborated from it would be the unreflected one.

              In the reflected quiver the source vertex is a sink. Reflecting at tgt reverses every arrow, so the generalized Kronecker quiver becomes the same quiver read the other way round.

              In the reflected quiver the target vertex is a source, since it was a sink.

              @[instance_reducible]

              The only closed path at the source of the reflected quiver is the trivial one.

              Equations
              @[instance_reducible]

              The only closed path at the target of the reflected quiver is the trivial one.

              Equations

              The reflected quiver has no path from the source to the target: its arrows all run the other way.

              The length-one path of the reflected quiver traced by the reversed arrow attached to an element of the arrow type.

              Equations
              Instances For

                The path attached to an element of the arrow type is the one its reversed arrow traces.

                The arrows tgt ⟶ src of the reflected quiver are the elements of the arrow type, each being the reversal TauCeti.Quiver.reflectArrow of the arrow src ⟶ tgt it names. This is the arrow-level form of the path classification reflectPathEquivArrow below, and it is what reads an arrow of the reflected quiver back as an arrow of the generalized Kronecker quiver.

                Equations
                Instances For
                  @[simp]

                  Reading the reversal of an arrow back recovers the element of the arrow type it came from.

                  @[simp]

                  Every arrow tgt ⟶ src of the reflected quiver is a reversed arrow: reversing the arrow it is read back as recovers it. This is the elimination rule that the path classification below runs on.

                  Distinct arrows trace distinct paths in the reflected quiver.

                  Every path from the target to the source of the reflected quiver is a single reversed arrow: the target is a source there and the source is a sink, so no two arrows compose.

                  The paths tgt → src of the reflected quiver are the elements of the arrow type, exactly as the paths src → tgt of the generalized Kronecker quiver are, by TauCeti.Quiver.Kronecker.pathEquivArrow.

                  Equations
                  Instances For
                    @[simp]

                    The inverse of the classification sends an element of the arrow type to the path its reversed arrow traces; the two are the same construction, so this holds definitionally.

                    @[simp]

                    The classification sends the path traced by a reversed arrow back to the element of the arrow type it came from.

                    @[simp]

                    Every path from the target to the source of the reflected quiver is traced by the reversed arrow it classifies.

                    @[simp]

                    The reflected quiver has as many paths from the target to the source as the generalized Kronecker quiver has arrows: by reflectPathEquivArrow, each such path is a single reversed arrow.