\( \gdef\badDispatch#1{\textbf{\textcolor{e1432d}{#1}}} \gdef\noKatexForm#1{\badDispatch{#1}} \gdef\largeDot{\raisebox{0.06em}{\tiny∙}} \gdef\rarrbar{ {\raisebox{-0.05em}{→}\mkern{-0.13em}{\large\shortmid}}} \gdef\larrbar{ { {\large\shortmid}\mkern{-0.13em}{\raisebox{-0.05em}{←}}}} \gdef\suptrans{^\mathsf{T}} \gdef\supdagger{^\dagger} \gdef\rawsymbol#1{\operatorname{#1}} \gdef\colorsymbol#1#2{\textcolor{#1}{\rawsymbol{#2}}} \gdef\lsymbol#1{\colorsymbol{262626}{#1}} \gdef\msymbol#1{\colorsymbol{b50800}{#1}} \gdef\osymbol#1{\colorsymbol{00427f}{#1}} \gdef\lstring#1{\textcolor{666666}{\textrm{\textquotedblleft{#1}\textquotedblright}}} \gdef\boldForm#1{\textbf{#1}} \gdef\lrform#1{ {\textcolor{e1432d}{#1}}} \gdef\lgform#1{ {\textcolor{4ea82a}{#1}}} \gdef\lbform#1{ {\textcolor{3e81c3}{#1}}} \gdef\rform#1{ {\textcolor{e1432d}{#1}}} \gdef\gform#1{ {\textcolor{4ea82a}{#1}}} \gdef\bform#1{ {\textcolor{3e81c3}{#1}}} \gdef\rgform#1{ {\textcolor{dc841a}{#1}}} \gdef\gbform#1{ {\textcolor{47a5a7}{#1}}} \gdef\rbform#1{ {\textcolor{c74883}{#1}}} \gdef\waform#1{ {\textcolor{6b6b6b}{#1}}} \gdef\wbform#1{ {\textcolor{929292}{#1}}} \gdef\wcform#1{ {\textcolor{c5c5c5}{#1}}} \gdef\barToken{\mathbf{|}} \gdef\filledRectangleToken{▮} \gdef\emptyRectangleToken{▯} \gdef\filledSquareToken{■} \gdef\emptySquareToken{□} \gdef\filledToken{∙} \gdef\emptyToken{∘} \gdef\cardinalRewrite#1#2{\rewrite{#1}{#2}} \gdef\primed#1{ {#1}^{\prime}} \gdef\tinybullet{ {\tiny●}} \gdef\forwardFactor{\uparrow} \gdef\backwardFactor{\downarrow} \gdef\neutralFactor{\mid} \gdef\arrowhead{⏵} \gdef\deSymbol{ { { {\raisebox{1.1pt}{\tinybullet}\mkern{-1pt}{→}}}\,}} \gdef\ueSymbol{ {\raisebox{1pt}{\tinybullet\raisebox{-0.03em}{\mkern{-0.3pt}{\tiny──}\mkern{-0.3pt}}\tinybullet}\,}} \gdef\ldeSymbol{ { { {\raisebox{1.1pt}{\tinybullet}\mkern{-1pt}{\longrightarrow}}}\,}} \gdef\lueSymbol{ {\raisebox{1pt}{\tinybullet\raisebox{-0.03em}{\mkern{-0.3pt}{\tiny────}\mkern{-0.3pt}}\tinybullet}\,}} \gdef\de#1#2{ { {#1} \deSymbol {#2}}} \gdef\ue#1#2{ { {#1} \ueSymbol {#2}}} \gdef\tde#1#2#3{ { {#1} \overset{#3}{\deSymbol} {#2}}} \gdef\tue#1#2#3{ { {#1} \overset{#3}{\ueSymbol} {#2}}} \gdef\ltde#1#2#3{ { {#1} \overset{#3}{\ldeSymbol} {#2}}} \gdef\ltue#1#2#3{ { {#1} \overset{#3}{\lueSymbol} {#2}}} \gdef\mapsfrom{\htmlClass{hreflect}{\mapsto}} \gdef\longmapsfrom{\htmlClass{hreflect}{\longmapsto}} \gdef\diffd{𝕕} \gdef\partialdof#1{\partial {#1}} \gdef\emptySet{\empty} \gdef\unknown{\wbform{\text{?}}} \gdef\notApplicable{\wbform{\text{---}}} \gdef\textAnd{\text{\,and\,}} \gdef\identicallyEqualSymbol{\equiv} \gdef\congruentSymbol{\equiv} \gdef\isomorphicSymbol{\cong} \gdef\homotopicSymbol{\simeq} \gdef\approxEqualSymbol{\approx} \gdef\bijectiveSymbol{\cong} \gdef\defeq{\;≝\;} \gdef\defEqualSymbol{\;≝\;} \gdef\tailEqualSymbol{\underdot{=}} \gdef\headEqualSymbol{\dot{=}} \gdef\ruledelayed{:\to} \gdef\mathdollar{\text{\textdollar}} \gdef\hyphen{\text{-}} \gdef\endash{\text{--}} \gdef\emdash{\text{---}} \gdef\updownarrows{\uparrow\!\downarrow} \gdef\vthinspace{\mkern{1pt}} \gdef\dlq{\text{\textquotedblleft}} \gdef\drq{\text{\textquotedblright}} \gdef\dprime{ {\prime\prime}} \gdef\inverse#1{ { {#1}^{-1}}} \gdef\inverseSymbol{\inverse{□}} \gdef\groupDirectProduct#1{#1} \gdef\groupDirectProductSymbol{\times} \gdef\groupInverse{\inverse} \gdef\groupPower#1#2{ {#1}^{#2}} \gdef\groupCommutator#1#2{\left[{#1},{#2}\right]} \gdef\groupoidInverse{\inverse} \gdef\latticeBFS#1{\textrm{bfs}({#1})} \gdef\pathHomomorphism#1{#1} \gdef\groupoidFunction#1{#1} \gdef\groupoidHomomorphism#1{#1} \gdef\affineModifier#1{\overrightharpoon{#1}} \gdef\supercirc#1{#1^{\circ}} \gdef\supercircb#1{#1\!\degree} \gdef\toroidalModifier#1{\supercirc{#1}} \gdef\modulo#1{\supercirc{#1}} \gdef\dividesSymbol{\,|\,} \gdef\groupFunction#1{#1} \gdef\groupHomomorphism#1{#1} \gdef\automorphisms{\operatorname{Aut}} \gdef\endomorphisms{\operatorname{End}} \gdef\transportMap#1{\transportMapSymbol_{#1}} \gdef\transportMapSymbol{\tau} \gdef\action#1{#1} \gdef\selfAction#1{\hat{#1}} \gdef\actionGroupoid#1{\utilde{#1}} \gdef\cardinalGroup#1{G^*({#1})} \gdef\signed#1{ {#1}^*} \gdef\transportAtlas#1{T_{#1}} \gdef\inverted#1{\underline{#1}} \gdef\mirror#1{\overline{#1}} \gdef\pathComposeSymbol{ {\,∷\,}} \gdef\pathCompose#1#2{ {#1}\pathComposeSymbol{#2}} \gdef\translateSymbol{\uparrow} \gdef\backwardTranslateSymbol{\downarrow} \gdef\pathTranslate#1#2{ {#1}\,\translateSymbol\,{#2}} \gdef\pathLeftTranslate#1{ {#1}{\,\translateSymbol}} \gdef\pathBackwardTranslate#1#2{ {#1}{\,\backwardTranslateSymbol\,}{#2}} \gdef\pathLeftBackwardTranslate#1{ {#1}{\,\backwardTranslateSymbol}} \gdef\compactCovariantDifference#1#2{\Delta_{#1}\,{#2}} \gdef\covariantDifference{ {#1}\,\Delta\,{#2}} \gdef\forwardDifference{\Delta^{+}} \gdef\backwardDifference{\Delta^{-}} \gdef\centralDifference{\Delta} \gdef\pathForwardDifference#1{\forwardDifference_{#1}} \gdef\pathBackwardDifference#1{\backwardDifference_{#1}} \gdef\pathCentralDifference#1{\centralDifference_{#1}} \gdef\pathHead#1{\pathHeadVector{#1}} \gdef\pathTail#1{\pathTailVector{#1}} \gdef\pathHeadVector#1{ {#1}^{\bullet}} \gdef\pathTailVector#1{ {#1}_{\bullet}} \gdef\pathReverse#1{ {#1}^{\dagger}} \gdef\pathIntegral#1#2{ {#1} \int {#2}} \gdef\pathIntegralSymbol{ {\int}} \gdef\pathDot#1#2{ {#1} \cdot {#2}} \gdef\pathDotSymbol{ {\cdot}} \gdef\compactBasis#1{\mathscr{B}} \gdef\length{\operatorname{len}} \gdef\signedLength{\operatorname{len^*}} \gdef\andFn{\operatorname{and}} \gdef\orFn{\operatorname{or}} \gdef\notFn{\operatorname{not}} \gdef\vertexList{\operatorname{vertices}} \gdef\vertexList{\operatorname{vertices}} \gdef\edgeList{\operatorname{edges}} \gdef\pathList{\operatorname{paths}} \gdef\cardinalList{\operatorname{cards}} \gdef\signedCardinalList{\operatorname{cards^*}} \gdef\wordOf{\operatorname{word}} \gdef\headVertex{\operatorname{head}} \gdef\tailVertex{\operatorname{tail}} \gdef\basis{\operatorname{basis}} \gdef\split{\operatorname{split}} \gdef\lcm{\operatorname{lcm}} \gdef\minimalContractionSets{\operatorname{MCSets}} \gdef\minimalContractions{\operatorname{MC}} \gdef\grade{\operatorname{grade}} \gdef\support{\operatorname{support}} \gdef\coefficient{\operatorname{coeff}} \gdef\domain{\operatorname{domain}} \gdef\codomain{\operatorname{codomain}} \gdef\modFunction{\operatorname{mod}} \gdef\isPrime#1{#1\textrm{ prime}} \gdef\blank{\_} \gdef\emptyWord{} \gdef\multiwordSymbol#1{\mathbf{#1}} \gdef\wordSymbol#1{\mathtt{#1}} \gdef\word#1{#1} \gdef\pathMap#1{#1} \gdef\function#1{#1} \gdef\imageModifier#1{ {#1}^{\rightarrow}} \gdef\preimageModifier#1{ {#1}^{\leftarrow}} \gdef\multiImageModifier#1{ {#1}^{\Rightarrow}} \gdef\multiPreimageModifier#1{ {#1}^{\Leftarrow}} \gdef\functionComposition#1{#1} \gdef\functionCompositionSymbol{∘} \gdef\route#1#2#3{[{#1}\!:\!{#2}\!:\!{#3}]} \gdef\multiroute#1#2#3{[{#1}\!:\!{#2}\!:\!{#3}]} \gdef\pathWord#1#2#3{ {#1}\!:\!{#2}\!:\!{#3}} \gdef\nullPath{\bot} \gdef\nullElement{\bot} \gdef\path#1{#1} \gdef\vert#1{#1} \gdef\underdot#1{\underset{\raisebox{0.3em}{.}}{#1}} \gdef\tvert#1{\underdot{#1}} \gdef\hvert#1{\dot{#1}} \gdef\edge#1{#1} \gdef\card#1{\mathtt{#1}} \gdef\path#1{#1} \gdef\quiver#1{#1} \gdef\bindingRuleSymbol{\to} \gdef\compactBindingRuleSymbol{:} \gdef\cayleyQuiverSymbol#1{\selfAction{#1}} \gdef\bindCayleyQuiver#1#2{\selfAction{#1}[#2]} \gdef\bindActionQuiver#1#2{#1[#2]} \gdef\bindSize#1#2{#1(#2)} \gdef\bindCardSize#1#2{#1[#2]} \gdef\bindCards#1#2{#1[#2]} \gdef\subSize#1#2{#1_{#2}} \gdef\gridQuiver#1{\textrm{Grid}^{#1}} \gdef\treeQuiver#1{\textrm{Tree}^{#1}} \gdef\bouquetQuiver#1{\textrm{Bq}^{#1}} \gdef\lineQuiver{\textrm{L}} \gdef\cycleQuiver{\textrm{C}} \gdef\squareQuiver{\textrm{Sq}} \gdef\cubicQuiver{\textrm{Cbc}} \gdef\triangularQuiver{\textrm{Tri}} \gdef\hexagonalQuiver{\textrm{Hex}} \gdef\rhombilleQuiver{\textrm{Rmb}} \gdef\limit#1#2{\lim_{#2}\,#1} \gdef\realVectorSpace#1{\mathbb{R}^{#1}} \gdef\realVectorSpace#1{\mathbb{C}^{#1}} \gdef\matrixRing#1#2{M_{#2}(#1)} \gdef\groupoid#1{#1} \gdef\group#1{#1} \gdef\field#1{#1} \gdef\ring#1{#1} \gdef\indeterminate#1{#1} \gdef\semiring#1{#1} \gdef\sym#1{#1} \gdef\matrix#1{#1} \gdef\polynomial#1{#1} \gdef\polynomialRing#1#2{#1[{#2}]} \gdef\routeSymbol#1{#1} \gdef\multirouteSymbol#1{\mathbf{#1}} \gdef\planSymbol#1{\mathbf{#1}} \gdef\ringElement#1{#1} \gdef\matrixPart#1#2#3{#1\llbracket{#2,#3}\rrbracket} \gdef\matrixRowPart#1{#1} \gdef\matrixColumnPart#1{#1} \gdef\subMatrixPart#1#2#3{#1_{#2,#3}} \gdef\matrixDotSymbol{\cdot} \gdef\matrixPlusSymbol{+} \gdef\wordGroup#1{\wordGroupSymbol_{#1}} \gdef\wordGroupSymbol{\Omega} \gdef\wordRing#1{\wordRingSymbol_{#1}} \gdef\wordRingSymbol{\Omega\!\degree} \gdef\linearCombinationCoefficient#1{ {\textcolor{888888}{#1}}} \gdef\plan#1{#1} \gdef\planRing#1{\planRingSymbol_{#1}} \gdef\planRingSymbol{\Phi} \gdef\basisPath#1#2{\mathbf{#1}_{#2}} \gdef\basisPathWeight#1#2{ {#1}_{#2}} \gdef\unitSymbol{\mathbf{e}} \gdef\unitVertexField{\unitSymbol_1} \gdef\forwardSymbol{f} \gdef\backwardSymbol{b} \gdef\symmetricSymbol{s} \gdef\antisymmetricSymbol{a} \gdef\wordVector#1#2{\unitSymbol_{#1}^{#2}} \gdef\gradOf#1{\grad\,{#1}} \gdef\grad{\nabla} \gdef\divOf#1{\div\,{#1}} \gdef\div{\dot{\nabla}} \gdef\laplacianOf#1{\laplacian\,{#1}} \gdef\laplacian{\ddot{\nabla}} \gdef\suchThat#1#2{ {#1}|{#2}} \gdef\chart#1{\chartSymbol_{#1}} \gdef\chartSymbol{C} \gdef\graphRegionIntersectionSymbol{\cap} \gdef\graphRegionUnionSymbol{\cup} \gdef\pathIso{\simeq} \gdef\factorial#1{#1!} \gdef\power#1#2{ {#1}^{#2}} \gdef\repeatedPower#1#2{ {#1}^{#2}} \gdef\contractionLattice#1{\operatorname{Con}(#1)} \gdef\contractedRelation#1{\sim_{#1}} \gdef\isContracted#1#2{ {#1} \sim {#2}} \gdef\isContractedIn#1#2#3{ {#1} \sim_{#3} {#2}} \gdef\isNotContracted#1#2{ {#1} \not \sim {#2}} \gdef\isNotContractedIn#1#2#3{ {#1} \not \sim_{#3} {#2}} \gdef\contractionSum#1{#1} \gdef\contractionSumSymbol{\sqcup} \gdef\contractionProduct#1{#1} \gdef\contractionProductSymbol{ {\cdot}} \gdef\graph#1{#1} \gdef\graphHomomorphism#1{#1} \gdef\coversSymbol{\sqsupseteq} \gdef\coveredBySymbol{\sqsubseteq} \gdef\strictlyCoversSymbol{\sqsupset} \gdef\strictlyCoveredBySymbol{\sqsubset} \gdef\covering#1#2#3{ {#2} \sqsupseteq_{#1} {#3}} \gdef\powerSet#1{\powerSetSymbol({#1})} \gdef\powerSetSymbol{\mathscr{P}} \gdef\existsForm#1#2{\exists\,{#1}\,:\,{#2}} \gdef\forAllForm#1#2{\forall\,{#1}\,:\,{#2}} \gdef\notted#1{\notSymbol {#1}} \gdef\andSymbol{\land} \gdef\orSymbol{\lor} \gdef\notSymbol{\lnot} \gdef\latticeElement#1{#1} \gdef\latticeMeetSymbol{\wedge} \gdef\latticeJoinSymbol{\vee} \gdef\latticeTop{\top} \gdef\latticeBottom{\bot} \gdef\latticeGreaterSymbol{>} \gdef\latticeGreaterEqualSymbol{\ge} \gdef\latticeLessSymbol{<} \gdef\latticeLessEqualSymbol{\le} \gdef\grpname#1{\operatorname{\mathsf{#1}}} \gdef\mkg#1#2#3{\grpname{#1}({#2},{#3})} \gdef\mka#1#2#3{\mathfrak{#1}({#2},{#3})} \gdef\generalLinearAlgebra#1#2{\mka{gl}{#1}{#2}} \gdef\generalLinearGroup#1#2{\mkg{GL}{#1}{#2}} \gdef\specialLinearAlgebra#1#2{\mka{sl}{#1}{#2}} \gdef\specialLinearGroup#1#2{\mkg{SL}{#1}{#2}} \gdef\projectiveGeneralLinearAlgebra#1#2{\mka{pgl}{#1}{#2}} \gdef\projectiveGeneralLinearGroup#1#2{\mkg{PGL}{#1}{#2}} \gdef\projectiveSpecialLinearAlgebra#1#2{\mka{psl}{#1}{#2}} \gdef\projectiveSpecialLinearGroup#1#2{\mkg{PSL}{#1}{#2}} \gdef\orthogonalAlgebra#1#2{\mka{o}{#1}{#2}} \gdef\orthogonalGroup#1#2{\mkg{O}{#1}{#2}} \gdef\specialOrthogonalAlgebra#1#2{\mka{so}{#1}{#2}} \gdef\specialOrthogonalGroup#1#2{\mkg{SO}{#1}{#2}} \gdef\unitaryAlgebra#1{\mka{u}{#1}{#2}} \gdef\unitaryGroup#1{\mkg{U}{#1}{#2}} \gdef\specialUnitaryAlgebra#1#2{\mka{su}{#1}{#2}} \gdef\specialUnitaryGroup#1#2{\mkg{su}{#1}{#2}} \gdef\spinAlgebra#1#2{\mka{spin}{#1}{#2}} \gdef\spinGroup#1#2{\mkg{Spin}{#1}{#2}} \gdef\pinAlgebra#1#2{\mka{pin}{#1}{#2}} \gdef\pinGroup#1#2{\mkg{Pin}{#1}{#2}} \gdef\symmetricGroup#1{\grpname{Sym}({#1})} \gdef\presentation#1{#1} \gdef\groupPresentation#1#2{\left\langle\,{#1}\,\,\middle|\mathstrut\,\,{#2}\,\right\rangle} \gdef\groupRelationIso{=} \gdef\groupGenerator#1{#1} \gdef\groupRelator#1{#1} \gdef\groupElement#1{#1} \gdef\groupoidElement#1{#1} \gdef\iconstruct#1#2{ {#1}\,\,\middle|{\large\mathstrut}\,\,{#2}} \gdef\setConstructor#1#2{\left\{\,\iconstruct{#1}{#2}\,\right\}} \gdef\multisetConstructor#1#2{\left\{\mkern{-2.3pt}\left|\,\,\iconstruct{#1}{#2}\,\right|\mkern{-2.3pt}\right\}} \gdef\multisets#1{\mathscr{M}({#1})} \gdef\signedMultisets#1{\mathscr{M^*}({#1})} \gdef\setSymbol#1{#1} \gdef\multisetSymbol#1{#1} \gdef\setElementSymbol#1{#1} \gdef\multisetElementSymbol#1{#1} \gdef\multisetMultiplicitySymbol{\raisebox{.1em}{\small\#}\mkern{.1em}} \gdef\boundMultiplicityFunction#1{\operatorname{ {#1}^{\sharp}}} \gdef\constructor#1#2{\left.{#1}\,\,\middle|\mathstrut\,\,{#2}\right.} \gdef\elemOf#1#2{ { {#1} \in {#2} }} \gdef\notElemOf#1#2{ { {#1} \notin {#2} }} \gdef\edgeOf#1#2{ { {#1} {\in}_E {#2} }} \gdef\vertOf#1#2{ { {#1} {\in}_V {#2} }} \gdef\pathOf#1#2{ { {#1} {\in}_P {#2} }} \gdef\pathType#1{\operatorName{path}{#1}} \gdef\vertexType#1{\operatorName{vertex}{#1}} \gdef\edgeType#1{\operatorName{edge}{#1}} \gdef\multisetType#1{\operatorName{mset}{#1}} \gdef\signedMultisetType#1{\operatorName{mset^*}{#1}} \gdef\fromTo#1{#1} \gdef\fromToSymbol{\mapsto} \gdef\vertexCountOf#1{|{#1}|} \gdef\vertices#1{ V_{#1} } \gdef\edges#1{ E_{#1} } \gdef\vertexField#1{#1} \gdef\edgeField#1{#1} \gdef\pathVector#1{\mathbf{#1}} \gdef\pathVectorSpace#1{\mathscr{#1}} \gdef\baseField#1{#1} \gdef\finiteField#1{\mathbb{F}_{#1}} \gdef\functionSpace#1#2{#2^{#1}} \gdef\pathGroupoid#1{ { \Gamma_{#1} }} \gdef\forwardPathQuiver#1#2{ {\overrightharpoon{#1}_{#2}}} \gdef\backwardPathQuiver#1#2{ {\overrightharpoon{#1}^{#2}}} \gdef\pathQuiver#1{ {\overrightharpoon{#1}}} \gdef\mto#1#2{ {#1}\mapsto{#2}} \gdef\mtoSymbol{\mapsto} \gdef\groupWordRewriting#1{\langle{#1}\rangle} \gdef\rewrite#1#2{ {#1}\mapsto{#2}} \gdef\rewritingRule#1#2{ {#1}\mapsto{#2}} \gdef\rewritingSystem#1{\mathcal{#1}} \gdef\multiwayBFS#1{\textrm{bfs}({#1})} \gdef\rewritingStateBinding#1#2{ {\left.{#1}\!\mid\!{#2}\right.}} \gdef\rewritingRuleBinding#1#2{#1{\left[\,{#2}\,\right]}} \gdef\namedSystem#1{\mathsf{#1}} \gdef\genericRewritingSystem{\namedSystem{System}} \gdef\stringRewritingSystem{\namedSystem{Str}} \gdef\turingMachineRewritingSystem{\namedSystem{TM}} \gdef\cellularAutomatonRewritingSystem{\namedSystem{CA}} \gdef\graphRewritingSystem{\namedSystem{Gr}} \gdef\hypergraphRewritingSystem{\namedSystem{HGr}} \gdef\petriNetRewritingSystem{\namedSystem{Petri}} \gdef\ncard#1{\card{\inverted{#1}}} \gdef\mcard#1{\card{\mirror{#1}}} \gdef\nmcard#1{\card{\inverted{\mirror{#1}}}} \gdef\assocArray#1{\left\langle {#1} \right\rangle} \gdef\set#1{\{ {#1} \}} \gdef\list#1{\{ {#1} \}} \gdef\multiset#1{\lBrace {#1} \rBrace} \gdef\permutationCycle#1{#1} \gdef\permutationCycleSymbol{\to} \gdef\permutationSet#1{#1} \gdef\permutationSetSymbol{;} \gdef\transposition#1#2{ {#1} \leftrightarrow {#2}} \gdef\tuple#1{( {#1} )} \gdef\concat#1{ {#1} } \gdef\paren#1{\left( {#1} \right)} \gdef\ceiling#1{\lceil{#1}\rceil} \gdef\floor#1{\lfloor{#1}\rfloor} \gdef\translationVector#1{\left[{#1}\right]_{\textrm{T}}} \gdef\quotient#1#2{ {#1} / {#2}} \gdef\compactQuotient#1#2#3{ {#1}\;{\upharpoonright_{#2}}\;{#3}} \gdef\multilineQuotient#1#2{\frac{#1}{#2}} \gdef\idElem#1{e_{#1}} \gdef\minus#1{-{#1}} \gdef\elem{\ \in\ } \gdef\vsp{\mkern{0.4pt}} \gdef\iGmult{\vsp} \gdef\gmult{\vsp\ast\vsp} \gdef\Gmult{\vsp\ast\vsp} \gdef\gdot{\vsp\cdot\vsp} \gdef\gDot{\vsp{\,\largeDot\,}\vsp} \gdef\ellipsis{\dots} \gdef\verticalEllipsis{\vdots} \gdef\appliedRelation#1{#1} \gdef\setUnionSymbol{\cup} \gdef\setIntersectionSymbol{\cap} \gdef\setRelativeComplementSymbol{\backslash} \gdef\multisetUnionSymbol{\cup} \gdef\multisetIntersectionSymbol{\cap} \gdef\multisetRelativeComplementSymbol{\backslash} \gdef\multisetSumSymbol{+} \gdef\cartesianProductSymbol{\times} \gdef\functionSignature#1#2#3{ { {#1} : {#2} \to {#3}}} \gdef\poly#1{#1} \gdef\quiverProdPoly#1{#1} \gdef\quiverProdPower#1#2{#1^{#2}} \gdef\quiverProdTimes#1{#1} \gdef\parenLabeled#1#2{#1\ ({#2})} \gdef\parenRepeated#1#2{\parenLabeled{#1}{ {#2}\text{ times}}} \gdef\underLabeled#1#2{\underbrace{#1}_{#2}} \gdef\underRepeated#1#2{\underbrace{#1}_{#2\text{ times}}} \gdef\overLabeled#1#2{\overbrace{#1}^{#2}} \gdef\overRepeated#1#2{\overbrace{#1}^{#2\text{ times}}} \gdef\modLabeled#1#2{ {#1 }\textrm{ mod }{#2}} \gdef\freeGroup#1{F_{#1}} \gdef\cyclicGroup#1{\mathbb{Z}_{#1}} \gdef\componentSuperQuiverOfSymbol{\succ} \gdef\setCardinality#1{|{#1}|} \gdef\dependentQuiverProductSymbol{\,\times\,} \gdef\independentQuiverProductSymbol{\,⨝\,} \gdef\graphUnionSymbol{\sqcup} \gdef\graphProductSymbol{\times} \gdef\inlineProdSymbol{\mid} \gdef\serialCardSymbol{ {:}} \gdef\parallelCardSymbol{ {\mid}} \gdef\cardinalSequenceSymbol{ {:}} \gdef\cardinalProductSymbol{\inlineProdSymbol} \gdef\vertexProductSymbol{\!\inlineProdSymbol\!} \gdef\edgeProductSymbol{\inlineProdSymbol} \gdef\indexSum#1#2#3{ {\sum_{#2}^{#3} #1}} \gdef\indexProd#1#2#3{ {\prod_{#2}^{#3} #1}} \gdef\indexMax#1#2#3{ {\max_{#2}^{#3} #1}} \gdef\indexMin#1#2#3{ {\min_{#2}^{#3} #1}} \gdef\oneTo#1{1..{#1}} \gdef\zeroTo#1{0..{#1}} \gdef\qstring#1{\mathtt{"}{#1}\mathtt{"}} \gdef\qchar#1{\mathtt{'}{#1}\mathtt{'}} \gdef\lstr#1{\mathtt{#1}} \gdef\lchar#1{\mathtt{#1}} \gdef\string#1{ {#1}} \gdef\character#1{ {#1}} \gdef\homomorphismMapping#1{\assocArray{#1}} \gdef\translationPresentation#1{\textrm{Z}_{#1}} \gdef\starTranslationPresentation#1{\textrm{Z}^*_{#1}} \gdef\translationPathValuation#1{\mathcal{\overrightharpoon Z}_{#1}} \gdef\starTranslationPathValuation#1{\overrightharpoon{\mathcal{Z}^*_{#1}}} \gdef\translationWordHomomorphism#1{\mathcal{Z}_{#1}} \gdef\starTranslationWordHomomorphism#1{\mathcal{Z}^*_{#1}} \gdef\translationCardinalValuation#1{\textrm{T}_{#1}} \gdef\starTranslationCardinalValuation#1{\textrm{T}^*_{#1}} \)
Introduction

Introduction

This site describes an incomplete and ongoing project to build a discrete, computational framework for geometry, using "off the shelf" components from a range of mathematical fields, including graph theory, group theory, abstract algebra, representation theory, theoretical computer science, differential geometry, calculus, and others.

It asks the questions: how are we to think about geometries that have a "smallest scale"? And how do we represent geometries that are produced by computational processes?

Motivation

For thousands of years we have encoded our intuitions of physical space into our mathematical and mental models for geometry. These continuous geometries – which assume infinite subdivisibility of space – are the foundation for much of modern mathematics and its applied branches. The resulting abstractions are now highly refined and immensely successful in their applications.

Nevertheless, much of our internal and external world is of a discrete and distributed nature, whether we consider the structures of our computer networks, our social networks, our economies, our software, our languages, our genetic lineages, even the symbolic operations of our thoughts. I strongly I believe there is a "missing theory" to express and model these "discrete worlds": a theory of geometry that rebases our intuitions on a computational footing and that can unlock new perspectives on all these phenomena.

Creating this theory will be slow work, since it must metabolize the ideas of continuous goemetry piecemeal – creating new intuition, notation, and software as it goes. Rather than working privately for years, I am inspired by the spirit of open source to maintain this site as a kind of "continuous beta", updated as ideas are clarified and elaborated.

What is geometry?

From an abstract point of view, we may ask what geometry is fundamentally about.

One appealing answer is that it is the logic of movement: the rules by which an object or agent may be moved from place to place, or a more abstract system may transition from state to state, and the rules used to reason about these transitions. There are only two fundamental ingredients: the states / places that an agent or system can be in, and the movements / transitions available at each such state or place.

Both of these ingredients are discrete, taking only a finite number of values in any given instantiation: an agent may move from state \(\vert{x}\) to \(\vert{y}\) to \(\vert{z}\), but it does so in discrete jumps, and describes these with discrete labels: \(\tde{\vert{x}}{\vert{y}}{\card{a}}\), \(\tde{\vert{y}}{\vert{z}}{\card{b}}\). Time, if it is involved in such descriptions, is also discrete, passing like the ticking of a CPU clock.

Novelty

None of the conceptual tools developed in this work are on their own very novel, although their assembly and emphasis into a unifying whole might prove to be for some readers. A theory is as much a way of seeing as it is a body of theorems, and so the approach I am pursuing hopes to offer a way of recasting and re-interpreting existing structures to emphasize a more computational and geometric perspective.

Visualization

One of my aims is to render intuitive this approach to discrete geometry through careful visualization. Visualization is fundamental to the theory and practice of geometry, and many arguments or explanations are simpler, or indeed redundant, in a visual medium.

Prerequisites

The perspective I advocate is cross-disciplinary, and this makes an "ideal reader" hard to gauge. Instead, I have assumed my reader to be myself at age 17: a curious undergraduate interested in various computer science and pure mathematics fields, but not deeply versed in any, and willing to read other references where necessary.

I use an informal style that attempts to be more engaging, rather than maximizing the information density of the text as is typical of academic writing. Eventually there will be a more terse, academic-style summaries of relevant "chunks" of work as they are completed and worthy of publication outside of this medium.

Format

This site represents a "living document" of a work in progress, detailing the topics within quiver geometry that I am confident enough to explain and illustrate.

Some pages contain missing subsections marked "under construction" – these are conceptually complete but require writeup that I haven't got around to yet. Gray sections on the navigation menu on the left represent ideas that are, at best, partially developed, and require future work.

Prior work and references

Unfortunately, this document doesn't currently have inline references. A full index and bibliography is forthcoming.

The closest existing body of ideas lies in geometric group theory, which roughly speaking uses Cayley graphs of groups as way to view groups as geometric objects. In a different direction, discrete differential geometry aims to discrete continuous manifolds for use in computational geometry. Lastly, topological crystallography studies graphs associated with crystallographic lattices.

Physics

While quiver geometry doesn’t make immediate connections to physics, it does aim to populate the toolbox of ideas and methods we might use to build and analyze models of fundamental physics that are discrete, finite, and computable, such as that proposed by e.g. the Wolfram Physics Project, Gerard t'Hooft, and others.

If the universe does turn out to be operating on fundamentally discrete, computational principles, we will in retrospect see continuous geometry as an enticing and useful illusion, but one that never had the physical basis that was its historical justification and inspiration.

The continuum

From a philosophical point of view, I believe we should attempt to construct continuous geometries as the limiting cases of particular discrete geometries. I'm not yet certain how to accomplish this. But I believe it will yield more insight than trying to construct discrete geometries by "discretizing" continuous geometries, by forcing us to embrace combinatorial and computational approaches from the very beginning.


Summary and roadmap

Overall summary

Here is a brief summary of what I've achieved so far.

The main object we consider is the [[[cardinal quiver:Graphs and quivers]]], a locally finite directed multigraph with shared oriented edge labels called cardinals. (We abbreviate cardinal quiver as quiver.)

Important [[[examples:Transitive quivers]]] of quivers are given by the [[[Cayley quivers]]] of Abelian groups, which can also be constructed as [[[quotients:Lattice quivers]]]. We can generalize these constructions by considering [[[group actions:Action groupoids]]], more complex [[[quotients:Intransitive lattices]]], [[[cyclic groups:Toroidal lattices]]], and [[[non-Abelian groups:Noncommutativity]]]. We can also form [[[products:Quiver products]]] of quivers – these products form an operad.

Notice that the connection with groups via action quivers is especially important, because it provides a kind of [[[Rosetta stone:Action groupoids#Introduction]]] to port intuition back and forth between quivers and groups. The general idea will be that quivers provide a way of handling partial symmetries of structures that elude modelling by groups.

Additional examples of quivers come directly from the causal structure of a non-deterministic computation, as expressed by a [[[rewriting system:Rewriting systems]]].

The paths on a quiver form a groupoid called the [[[path groupoid:Path groupoids]]]. Maps between path groupoids yield [[[path homomorphisms:Path homomorphisms]]]. Surjective path homomorphisms yield a notion of [[[covering:Coverings]]], coverings form a [[[lattice:Contraction lattices]]] and are associated with transitive [[[vertex colorings:Vertex colorings]]] in certain cases.

More complex quivers can be partitioned into [[[charts:Cardinal transport#Charts]]] in which particular path relations hold, the connectivity of these charts is described by [[[another quiver:Cardinal transport#Transport atlas]]]. A notion of [[[parallel transport:Cardinal transport#Cardinal transport]]] analogous to the Ehresmann connection can be defined that relates cardinals on different charts. Curvature is described by holonomy on this derived quiver. We can compute the curvature of a quiver for the [[[Möbius strip:Cardinal transport#Curvature quiver]]] and the [[[cube:The cube]]].

A non-commutative, associative algebra can be [[[defined:Path algebra]]] on paths in a quiver. Doing this provides a substrate for a [[[calculus:Path calculus]]] of finite differences.

Roadmap

This project continues to evolve and certain sections are either out of date or underdeveloped. Here I list some limitations and planned improvements for certain existing sections, and new sections that are on the roadmap.

Path homomorphisms

The section [[[Path homomorphisms]]] gives a good introduction to homomorphisms between quivers, but fails to explain the notion of topology that they induce. There is also low-hanging fruit to pick, like explaining the role of exact sequences.

Topology

As mentioned above, interpreting path homomorphisms between quivers as continuous maps implies a natural topological structure on the associated quivers. A section is needed to unpack this fully.

Symmetry

I am missing the obvious section on symmetry that would build on [[[affine path homomorphisms:Path homomorphisms#Affine path homomorphisms]]] to recover the isometry and isotropy groups of the associated crystallographic lattices in the case of lattice quivers. This will be straightforward, but the connection with hypergroups, especially for non-transitive lattices, is much more interesting, and unexplored.

Noncommutativity

The section [[[Noncommutativity]]] is currently just a stub. Careful study needs to be made of action quivers associated to the non-Abelian groups, and a link forgoed with a forthcoming section on Lie algebras.

Quiver products

The section [[[Quiver products]]] is somewhat ad-hoc and mostly devoted to examples. I've recognized the operad structure, but I'm too intimidated by the prospect of creating tools for diagramatic notation to write anything up. Also, the obvious projection path homomorphisms, and notions of lifting, are totally absent.

Rewriting systems

The section [[[Rewriting systems]]] is currently just a stub, giving the basic idea for how rewriting systems generate a cardinal structure. But this idea is probably the most important and underdeveloped one in this work.

The rough program is as follows: a rewriting system generates a rewrite quiver that describes its transitions, with the cardinal structure identifying rewrites of unique substates of the global state. Forward paths through this quiver correspond to possible evolutions of the system. Re-ordering of causally distinct rewrites (“rewrites that commute”) defines a homotopy relation between such paths, taking us between evolutions that differ in the time foliation of something called the rewrite hypergraph – which factors local states.

The generators of these reorderings form the cardinals of a quiver analogous to the Lorentz group. In this sense we can construct a computational analogue of Special Relativity, but with the appropriate quiver-theoretic tools to model the partial symmetry that discrete systems manifest.

Contraction lattices

The section [[[Contraction lattices]]] describes how contractions of a quiver form an order-theoretic lattice, but doesn't probe any of the interesting properties of this lattice in general or for particular quivers. Crucially it doesn't answer when the lattices are distributive or modular, when they satisfy the descending or ascending chain conditions, and make links between these properties and the associated algebraic properties of the path ring.

Path algebra and calculus

The sections [[[Path algebra]]] and [[[Path calculus]]] are missing the ambient algebra in which path algebra is to be embedded as a subalgebra. This turns out to be the [[[plan ring:Adjacency#Plan ring]]], but as that section is developed it will retread the same ground as path algebra. I'll have to restructure these sections.

Curvature

The section [[[Cardinal transport]]] proposes a definition of discrete curvature that is not as precise as it should be. It suffers from the lack of a quiver-theoretic notion of a (principle) fiber bundle and tangent bundle. Doing this would allow definition of curvature in terms of cohomology. The fiber we require is the Cayley quiver of a signed permutation group that represents possible rewrites.

Defects

Curvature in the quiver-theoretic picture is fully determined by the the presence of "defects". I haven't touched on these defects in any meaningful way, enumerated them, created a language to describe them computationally, demonstrated how certain computations produce them, perform calculus in the presence of them, and so on.

Lie algebras

The section [[[The cube]]] measures the curvature of a particular cardinal structure on the cube. But we can also measure the curvature a different way: by measuring the [[[covariant difference:Path algebra#Covariant differences]]] of a well-chosen set of path vectors. The structure constants of these vectors give us the Lie algebra \(\specialOrthogonalAlgebra{3}{\ring{\mathbb{Z}}}\). I still need to write this up.

Fibre bundles and tangent bundles

As mentioned [[[above:#Curvature]]], the definition of curvature on a quiver is unsatisfactory. Currently, the transport atlas is defined as a quiver whose edges describe transitions between charts, where these edges are labeled with cardinal rewrites that capture cardinal transport. A more flexible construction would be to define the curvature quiver as a subquiver that corresponds to a section of a fibre bundle, where the fibre quiver is the Cayley quiver of a signed permutation group. This would allow us to define curvature via cohomology.

To do this, we need only extend the ideas in [[[Quiver products]]] slightly to define a fibre bundle via projection maps (which would be [[[Path homomorphisms]]]). This will be quite similar to the approach used by Manton.

Metrics

The familiar graph distance metric, which for [[[Cayley quivers]]] corresponds to the word metric in the associated group presentation, has many undesirable properties. For example, it is not isotropic. Intriguingly, the theory of random walks on graphs can recover the Euclidean metric defined by the obvious embedding of the associated quivers into \(\realVectorSpace{\sym{n}}\). Developing this idea, particularly in connection with information theory and quiver contractions, is a high priority.

Geometric algebra

Geometric algebra provides a novel way to model many familiar constructs in geometry and physics by way of bivectors, multivectors, etc. I'm not sure what form geometric algebra would naturally take in quiver geometry, but I'm highly motivated to pursue this.

Abstract algebra

There is reason to believe that abstract algebra will have a lot to say about the path ring, but I haven't devoted enough time to thinking about this.

Presentation

I plan to improve the overall presentation of these ideas in the following ways:

Video

I'd like to make some short videos that introduce the main ideas in an easy-going way, with plenty of illustrative examples.

Symbols

I use KaTeX in such a way that the roles of individual symbols are known: whether a given symbol represents a group, ring, quiver, path homomorphism, etc. I'd like to surface this information using some kind of interactive mechanism or legend, to make it easier for readers to parse complicated expressions when they are in doubt.

Material

This website is generated from a series of Mathematica notebooks using custom tooling. While all the underlying software tools I use are available on Github. Unfortunately, the storage format of notebooks is ill-suited to version control, so the notebooks themselves are not public. I'd like to fix this by moving to a purely markdown-based storage format.

References

I don't have any references anywhere! Most urgently I need to root into the literature on crystallographic groups, geometric group theory, and differential geometry.

Category theory

I do not meaningfully engage with category theory yet. Using category theory widely would bring simpifications to the overall conceptual structure, but make the material more alienating to those without the requisite background. I'd like to experiment with gated content, in which you can flip between versions of the site that are tailored for different audiences.


Table of contents

In [[[Graphs and quivers]]] we introduce the notion of a cardinal quiver and describe the local uniqueness property. We also enumerate some small quivers.

[[[Graphs and quivers#Hero@SmallFrame]]]

In [[[Transitive quivers]]] we introduce families of simple transitive quivers: the line, square, triangular, cubic, grid, bouquet, and tree quivers.

[[[Transitive quivers#Hero@SmallFrame]]]

In [[[Path groupoids]]] we define paths on a quiver, consider their path words, and show the paths form a path groupoid.

[[[Path groupoids#Hero@SmallFrame]]]

In [[[Word groups]]] we define the word group, which describes how we can build path words out of individual cardinals.

In [[[Path homomorphisms]]] we define path homomorphisms between quivers, list some properties, and examine some examples of path homomorphisms to build intuition. We also consider affine path homomorphisms and automorphisms of quivers.

[[[Path homomorphisms#Hero@SmallFrame]]]

In [[[Multisets]]] we set the stage for later developments by defining the useful datastructure known as the multiset. We explain how to form sums, unions, and intersections of multisets, and explain the behavior of images of functions on multisets. We generalize the multiset to the signed multiset.

In [[[Word rings]]] we define the word ring, which is the group ring of the word group. The word ring models linear combinations of words. We show how to interpret elements of the word ring as modelling multiwords: signed multisets of words.

In [[[Adjacency]]] we contemplate how to extend the concept of an adjacency matrix to model the cardinal structure of a quiver. We do this by defining the plan ring: a matrix ring over the word ring. Under multiset duality, matrices in this ring are dual to plans, which are multisets of (hypothetical) paths.

In [[[Cayley quivers]]] we define how groups and their presentations give rise to Cayley quivers and show how the simple quivers we examined in [[[Transitive quivers]]] are thus generated as presentations of \(\group{\power{\group{\mathbb{Z}}}{\sym{n}}}\).

[[[Cayley quivers#Hero@SmallFrame]]]

In [[[Action groupoids]]] we recall group actions and understand Cayley quivers as instances of action quivers associated with actions of groups on themselves.

[[[Action groupoids#Hero@SmallFrame]]]

In [[[Path quivers]]] we define the forward, backward, and affine path quiver, which describe the possible paths of a quiver using another quiver.

[[[Path quivers#Hero@SmallFrame]]]

In [[[Path quotients]]] we define path valuations, and use these to construct quotients of path quivers.

[[[Path quotients#Hero@SmallFrame]]]

In [[[Lattice quivers]]] we generate some of the familiar transitive quivers as the quotients of one-vertex fundamental quivers by affine path valuations associated with group presentations of \(\group{\power{\group{\mathbb{Z}}}{\sym{n}}}\). We explain how such a quotient can be seen both as a breadth-first-search and as a Cayley quiver.

[[[Lattice quivers#Hero@SmallFrame]]]

In [[[Intransitive lattices]]], we use quotients of fundamental quivers with two or more vertices to generate intransitive quivers such as the hexagonal and rhombille quivers.

[[[Intransitive lattices#Hero@SmallFrame]]]

In [[[Toroidal lattices]]], we generate square, triangular, and hexagonal toroidal quivers as the Cayley quivers of presentations of finite Abelian groups, and plot these in three dimensions and on the "modular plane".

[[[Toroidal lattices#Hero@SmallFrame]]]

In [[[Noncommutativity]]], we consider quivers obtained as the Cayley quivers of non-Abelian groups.

[[[Noncommutativity#Hero@SmallFrame]]]

In [[[Rewriting systems]]], we define rewriting systems and the quivers they generate.

[[[Rewriting systems#Hero@SmallFrame]]]

In [[[Coverings]]], we define graph and quiver coverings, and explain their connection to path homomorphisms.

[[[Coverings#Hero@SmallFrame]]]

In [[[Contraction lattices]]], we examine coverings derived from contractions of vertices, and show possess the structure of an order-theoretic lattice.

[[[Contraction lattices#Hero@SmallFrame]]]

In [[[Vertex colorings]]], we enumerate some regular vertex colorings of transitive quivers, and explain their connection to contraction lattices.

[[[Vertex colorings#Hero@SmallFrame]]]

In [[[Quiver products]]], we generalize from the depedendent, independent, and Cartesian products of quivers to obtain a general method for multiplying quivers together using arrow polynomials.

[[[Quiver products#Hero@SmallFrame]]]

In [[[Path calculus]]], we define vertex and edge fields and use them to set up the machinery of finite differences on quivers.

[[[Path calculus#Hero@SmallFrame]]]

In [[[Path algebra]]], we unify vertex and edge fields into path vectors, and define the operations of translation, composition, and covariant difference.

[[[Path algebra#Hero@SmallFrame]]]

In [[[Cardinal transport]]], we create a Möbius quiver, equip it with charts, and use it to define a transport atlas that tracks transitions between parallel cardinals, giving us a method for cardinal transport. A suitable quotient yields the curvature quiver.

[[[Cardinal transport#Hero@SmallFrame]]]

In [[[The cube]]], we set up an atlas on a quiver representing the Platonic cube, and calculate the transport atlas and curvature quiver, obtaining the Cayley quiver of the binary tetrahedral group.

[[[The cube#Hero@SmallFrame]]]


Graphs and quivers

Graphs

We started with the intuition that geometry should be about states/places: \(\vert{x},\vert{y},\vert{z}\) and their transitions: \(\tde{\vert{x}}{\vert{y}}{\card{a}}\), \(\tde{\vert{y}}{\vert{z}}{\card{b}}\), etc. Evidently we have the main ingredients of a graph, specifically a directed graph:

The objects \(\vert{x},\vert{y},\vert{z}\) are called vertices. \(\tde{\vert{x}}{\vert{y}}{\card{a}}\) is a labeled edge, where \(\card{a}\) is the label, which we call a cardinal. The unlabelled form is written \(\de{\vert{x}}{\vert{y}}\). \(\vert{x}\) is called the tail vertex and \(\vert{y}\) is called the head vertex of the edge. When vertices represent states and edges represent transitions between states, we’ll use the terms vertex/state and edge/transition synonymously.

It turns out that we will have to consider specific kinds of directed graphs if we wish to build a notion of geometry. These graphs are quivers, also known as directed multigraphs, which are directed graphs that allow multiple edges as well as cycles between any pair of vertices:

Cardinal quivers

A seemingly fundamental geometrical idea is that of a direction.

For discrete geometry, a direction will take the form of a label for an entire set of transitions: these are the transitions that, although they are between different pairs of vertices, are all in the same direction (in whatever sense). We’ll call this label a cardinal, by analogy with the cardinals of a compass \(\list{\card{N},\card{E},\card{S},\card{W}}\). We'll write cardinals in a typewriter font to distinguish them from symbols representing vertices, etc.

A cardinal quiver is a quiver whose edges are labeled with symbols called cardinals, with some additional properties. First, while we will allow the number of vertices and edges of the quiver to be countably infinite, we will restrict the number of cardinals to be finite. Additionally, the labeling of edges by cardinals must satisfy the property of local uniqueness:

  • the list of cardinals on edges {entering, leaving} a given vertex cannot contain duplicates

For example, the situation \(\tde{\vert{y}}{\vert{x}}{\card{c}},\tde{\vert{y}}{\vert{z}}{\card{c}}\) is forbidden, as the cardinal \(\card{c}\) occurs twice when leaving \(\vert{y}\). In contrast, the situation \(\tde{\vert{x}}{\vert{y}}{\card{c}},\tde{\vert{y}}{\vert{z}}{\card{c}}\) is permitted, as \(\card{c}\) occurs entering \(\vert{y}\) once and leaving \(\vert{y}\) once. Some more examples of forbidden and permitted situations are shown below:

This uniqueness property has a very important purpose: it ensures that a pair of a vertex and a cardinal \(\tuple{\vert{v},\card{c}}\) will unambiguously identify an edge (if one exists), since there can only be one edge starting at \(\vert{v}\) that is labeled by \(\card{c}\). This corresponds to the basic requirements of the notion of a direction: it unambiguously identifies the navigational choices an agent should make. As a motivation: for "north" to be a direction, there cannot be two ways to go north from one location that lead to different locations.

Cardinal quivers will be our focus, so I’ll refer to them as quivers to avoid cumbersome language. If we need to refer to the classical notion of a quiver as a directed multigraph, we’ll use the term unlabelled quiver.

Since cardinals will almost always label multiple edges in a quiver, we will use color to represent the edges labeled by each cardinal, and choose cardinal letters e.g. \(\rform{\card{r}}\), \(\gform{\card{g}}\), \(\bform{\card{b}}\) to reflect these colors:

Here are more examples – since the arrowhead color indicates the name of the cardinal, we'll drop the legends. The cardinals label multiple edges, but still obey local uniqueness:

Note that the right-most example has some of the intuitive aspects of an actual discrete geometry: the cardinal \(\rform{\card{r}}\) can be taken (meaning a move in the direction \(\rform{\card{r}}\) can be made) for any of the states \(\vert{x},\vert{y},\vert{z}\). Taking \(\rform{\card{r}}\) repeatedly simply cycles through these states: a discrete analog of a circle.

For simplicity, we can depict quivers that contains multiple edges between the same vertices by combining the edges, using multiple arrowheads instead. Using this convention the first two quivers above look as follows:

Enumeration

Since finite, connected quivers will play a major role in this series, it is interesting to enumerate all the finite connected quivers of a given size.

One way to organize this enumeration is in terms of what we’ll call quiver skeletons, which are undirected simple graphs (graphs without multiple edges between vertices) that serve as templates for quivers. We can enumerate these skeletons by fixing the number of vertices, then taking all possible sets of undirected edges between these vertices that include each vertex at least once and still produce a connected graph. We count these quiver skeletons up to graph isomorphism, in other words, the labeling of the vertices of these graphs is not significant.

Here is a gallery that shows the quiver skeletons for each vertex count:

The number of skeletons for \(n\) vertices is the sequence \(\{1,3,10,50,354,3883,...\}\), which is not yet in the Online Encyclopedia of Integer Sequences (OEIS), though I have submitted it.

Once we have chosen a particular skeleton, we can then go about attaching cardinal structure to it to turn it into a quiver (which recall means a cardinal quiver). Typically there are multiple possible choices, although there is an obvious symmetry we must take into account: we can perform any global renaming of cardinals and we’ll still have the same essential cardinal quiver. More generally, the action of the relevant symmetry group is the simultaneous relabeling of vertices, edges, and cardinals:

Here, the vertices have been rewritten \(\list{\rewrite{1}{2},\rewrite{2}{3},\rewrite{3}{1}}\) and the cardinals have been rewritten \(\list{\rewrite{\rform{\card{r}}}{\bform{\card{b}}},\rewrite{\bform{\card{b}}}{\rform{\inverted{\card{r}}}}}\) – note the underbar on \(\rform{\inverted{\card{r}}}\), which indicates we flip the cardinal direction when rewriting \(\bform{\card{b}}\) to \(\rform{\card{r}}\). We call two such quivers to be strongly isomorphic, or just isomorphic. We distinguish this from weakly isomorphic quivers, which are isomorphic as directed graphs but whose cardinal structure is not necessarily preserved – in other words, there is no rewriting of cardinals that can relate the cardinal structure of the first and second quivers.

Let’s look at some examples of the quivers associated with skeletons. We’ll only visualize the cases involving 3 or fewer cardinals, since the number of quivers rapidly increases as a function of the number of cardinals.

Taking the skeleton on the first row, which is a one-vertex graph with a self-loop, there is exactly one possible quiver for a given number of cardinals:

These quivers are called bouquet quivers.

Taking the 2nd skeleton on the 2nd row as another example, there are 0 quivers with 1 cardinal, 3 quivers with 2 cardinals, and 9 quivers with 3 cardinals. (The ‘flat’ arrowheads below indicate that a cardinal is present in both orientations on that edge).

The numbers of quivers for this skeleton as a function of the number of cardinals is \(\{0,3,9,19,34,55,83,119,164,219,...\}\), with closed form \(6^{-1}n^3+2^{-1}n^2+3^{-1}n-1\).

For the 1st skeleton on the 2nd row, there are 2 quivers with 1 cardinal, 4 quivers with 2 cardinals, and 6 quivers with 3 cardinals:

The numbers of quivers for this skeleton as a function of the number of cardinals is \(\{2,4,6,9,12,16,20,25,30,36,42,49,...\}\), with closed form \(4^{-1}n^2+n+8^{-1}(7+(-1)^n)\).

For the 1st skeleton on the 3rd row, there is only 1 quiver with 1 cardinal, 16 quivers with 2 cardinals, and 64 quivers with 3 cardinals:

The numbers of quivers for this skeleton as a function of the number of cardinals is \(\{1,16,64,211,551,1276,2672,...\}\). No simple closed form is apparent, though one probably exists.

The following table summarizes the number of quivers that can be obtained from the skeletons with fewer than 4 vertices. The columns indicate skeletons, and the rows numbers of cardinals, and the entries indicate the number of quivers:

Only the first 3 columns of this table are in the OEIS.

The number of 5-cardinal quivers for the final 3 skeletons are too expensive to compute in a straightforward way, these are marked with a ? in the table.

Moving on to skeletons with 4 vertices, of which there are 50, we have this table:

Finally, by summing over the tables above, we can obtain a bird’s eye view that captures how many quivers there are as a function of number of vertices \(n\) and cardinals \(c\):

Clearly, beyond \(\sym{n} = 1\), even for modest values of \(\sym{c}\), we find our armory overflowing with quivers!


Transitive quivers

In this short section we introduce some common families of quiver that are simple and ubiquitious in quiver geometry. Their most important property is that they obey a property called vertex transitivity, though some fine print applies to this statement that we'll get into. We will name these families, visualize them, and give some simple properties. In later sections we will see that someof them are the simplest examples of lattice quivers, generated in a particular way by smaller quivers via linear representations. We'll also see how some of them can be formed from the quiver products of others.

These families are parameterized by positive integers (and infinity).

Lattice quiver families

The first set of families, the lattice quiver families, are parameterized by a single positive integer \(0 \le \sym{n} \le \infty\), which in some sense measure their "linear size", which refers to the number of vertices visited by the longest possible path that consists of a single repeated cardinal. For \(\sym{n} = \infty\) we pass to the limit of an infinitely large quiver, and these are the quivers that obey vertex transitivity in the proper sense.

namesymbolcardinalsdimension
line quiver\(\subSize{\lineQuiver }{\sym{n}}\)11
cycle quiver\(\subSize{\cycleQuiver }{\sym{n}}\)11
square quiver\(\subSize{\squareQuiver }{\sym{n}}\)22
triangular quiver\(\subSize{\triangularQuiver }{\sym{n}}\)32
cubic quiver\(\subSize{\cubicQuiver }{\sym{n}}\)33

We will elaborate on the meaning of "dimension" shortly.

Below we show an example quiver from each family corresponding to \(\sym{n} = 5\), except for the cubic quiver, where we show \(\sym{n} = 3\) for size reasons:

Terminology

We'll use the line quiver to illustrate these conventions, but the same conventions apply to the other quivers:

  • When \(\sym{n}\) is fixed at a particular finite value, e.g. \(\sym{n} = 5\), we’ll write \(\subSize{\lineQuiver }{5}\), and refer to this in words as the 5-line quiver.

  • When \(\sym{n}\) is fixed to be merely finite, we’ll refer to e.g. a finite line quiver.

  • When \(\sym{n}\) is fixed at infinity, we’ll write \(\subSize{\lineQuiver }{ \infty }\) and refer to this in words as the infinite line quiver or just the line quiver.

As a special case, we define \(\subSize{\cycleQuiver }{ \infty } = \subSize{\lineQuiver }{ \infty }\), since we cannot form a non-empty closed finite path in \(\subSize{\cycleQuiver }{ \infty }\).

Size

The smallest meaningful sizes of the lattice families are shown below.

At size 1, the line, square, and triangle collapse to a single vertex with no edges, the cycle is known as 1-bouquet quiver.

Here we show a sequence of increasing size for each family:

Special quiver families

The special families parameterize the number of cardinals with a parameter \(\sym{k}\). The three special families are:

namesymbolcardinalsdimension
bouquet quiver\(\bouquetQuiver{\sym{k}}\)\(\sym{k}\)\(0\)
grid quiver\(\subSize{\gridQuiver{\sym{k}}}{\sym{n}}\)\(\sym{k}\)\(\sym{k}\)
tree quiver\(\subSize{\treeQuiver{\sym{k}}}{\sym{n}}\)\(\sym{k}\)\(\infty\)

The tree quiver is only defined for odd \(\sym{n}\).

Bouquet quiver

We visualize the bouquet quiver \(\bouquetQuiver{\sym{k}}\) for \(\elemOf{\sym{k}}{\oneTo{4}}\):

Grid quiver

The grid quiver \(\subSize{\gridQuiver{\sym{k}}}{\sym{n}}\) generalizes the sequence \(\subSize{\lineQuiver }{\sym{n}},\subSize{\squareQuiver }{\sym{n}},\subSize{\cubicQuiver }{\sym{n}},\ellipsis\) to an arbitrary number of cardinals \(\sym{k}\).

We visualize the grid quiver \(\subSize{\gridQuiver{\sym{k}}}{\sym{n}}\) for \(\elemOf{\sym{k}}{\oneTo{3}}\), fixing \(\sym{n} = 2\):

Tree quiver

The tree quiver \(\subSize{\treeQuiver{\sym{k}}}{\sym{n}}\) is the "freest possible quiver" on \(\sym{k}\) cardinals, in the sense that every possible path one can form from these cardinals will reach a distinct vertex.

We fix \(\sym{n} = 5\), visualizing the tree quiver \(\subSize{\treeQuiver{\sym{k}}}{5}\) for \(\elemOf{\sym{k}}{\oneTo{4}}\):

We now fix \(\sym{k} = 2\), visualizing \(\subSize{\treeQuiver{2}}{\sym{n}}\) for \(\elemOf{\sym{n}}{\list{1,3,5,7,9}}\):

Lastly, we fix \(\sym{k} = 3\), visualizing \(\subSize{\treeQuiver{3}}{\sym{n}}\) for \(\elemOf{\sym{n}}{\list{1,3,5,7}}\):

Cardinals

When we wish to be explict about the cardinals present in these quivers, we will use square bracket notation, e.g. \(\bindCards{\subSize{\triangularQuiver }{\sym{n}}}{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}\), to indicate the names of the cardinals present in the quiver. We'll refer to this in English as "the triangle quiver on \(\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}\)".

The one-dimensional quivers, the line and cycle quiver, both have only one cardinal:

The square quiver has two cardinals:

The triangular and cubic quivers have three cardinals:

Per-cardinal dimensions

We can form a "rectangular" square quiver by specifying different dimensions for the different cardinals. We'll use the notation \(\bindCardSize{\squareQuiver }{\rform{\card{r}}\compactBindingRuleSymbol \sym{w},\bform{\card{b}}\compactBindingRuleSymbol \sym{h}}\) in this case. Here is a rectangular square quiver \(\bindCardSize{\squareQuiver }{\rform{\card{r}}\compactBindingRuleSymbol 5,\bform{\card{b}}\compactBindingRuleSymbol 3}\):

When the symbols of the cardinals are not relevant, we will just refer to this quiver as \(\bindCardSize{\squareQuiver }{\sym{w},\sym{h}}\).

Transitivity

A quiver is transitive if its vertices all look the same, or equivalently, that no vertex is special. We will have to develop the path groupoid to define this more precisely, but for now we can understand this property as implying the condition that vertices have the same degree (number of incident edges), and the same cardinals available to them.

This condition is not sufficient to ensure a quiver is transitive, but it is necessary. Again, we'll have to wait for a more precise definition.

The quivers we consider here are all transitive in this sense, but typically only when we consider their infinite versions. \(\subSize{\lineQuiver }{3}\) for example, has a "middle" vertex and two "end vertices": all have different cardinals available to them. \(\subSize{\lineQuiver }{ \infty }\), in contrast, has no special vertices at all. The only exception to this pattern is \(\subSize{\cycleQuiver }{\sym{n}}\), which is transitive for any \(\sym{n}\).

As an example of an intransitive lattice, consider the hexagonal quiver, a fragment shown below:

Although all vertices have degree 3, the vertices consist of two types: the "inward" vertices with incident cardinals \(\list{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}\), and the "outward" vertices with incident cardinals \(\list{\rform{\inverted{\card{r}}},\gform{\inverted{\card{g}}},\bform{\inverted{\card{b}}}}\). We will examine these more general quivers in the section [[[Intransitive lattices]]].

Vertex and edge counts

The number of vertices and edges as a function of the size is shown in a table below:

quiver# vertices# edges
\(\bouquetQuiver{\sym{k}}\)\(1\)\(\sym{k}\)
\(\subSize{\lineQuiver }{\sym{n}}\)\(\sym{n}\)\(\sym{n} - 1\)
\(\subSize{\cycleQuiver }{\sym{n}}\)\(\sym{n}\)\(\sym{n}\)
\(\subSize{\squareQuiver }{\sym{n}}\)\(\power{\sym{n}}{2}\)\(2 \, \sym{n} \, \paren{\sym{n} - 1}\)
\(\subSize{\triangularQuiver }{\sym{n}}\)\(\frac{1}{2} \, \sym{n} \, \paren{\sym{n} + 1}\)\(\frac{3}{2} \, \sym{n} \, \paren{\sym{n} - 1}\)
\(\subSize{\cubicQuiver }{\sym{n}}\)\(\power{\sym{n}}{3}\)\(3 \, \power{\sym{n}}{2} \, \paren{\sym{n} - 1}\)
\(\subSize{\gridQuiver{\sym{k}}}{\sym{n}}\)\(\power{\sym{n}}{\sym{k}}\)\(\sym{k} \, \power{\sym{n}}{\sym{k} - 1} \, \paren{\sym{n} - 1}\)
\(\subSize{\treeQuiver{\sym{k}}}{2 \, \sym{n} + 1}\)\(\frac{\paren{\sym{k} \, \power{\paren{2 \, \sym{k} - 1}}{\sym{n}} - 1}}{\paren{\sym{k} - 1}}\)\(\frac{\sym{k} \, \paren{\power{\paren{2 \, \sym{k} - 1}}{\sym{n}} - 1}}{\paren{\sym{k} - 1}}\)

We now see the justificiation for the dimensions we listed before: a transitive quiver has dimension \(\sym{d}\) if its number of vertices scales as \(\power{\sym{n}}{\sym{d}}\). The tree quiver \(\subSize{\treeQuiver{\sym{k}}}{2 \, \sym{n} + 1}\) involves a term \(\power{\paren{2 \, \sym{k} - 1}}{\sym{n}}\): its Taylor expansion has non-zero terms of all degrees in \(\sym{n}\), and hence we say it has infinite dimension.

Enriched cardinal structure

We will at times wish to "enrich" the cardinal structure of the line and cycle quivers.

Serial cardinals

The first kind of enrichment is serial: instead of employing a single cardinal \(\card{c}\), we employ a series of cardinals \(\card{c}_1,\card{c}_2,\ellipsis ,\card{c}_{\sym{m}}\) that is taken in alternation. We'll write this as \(\card{\card{c}_1}\serialCardSymbol \card{\card{c}_2}\serialCardSymbol \ellipsis \serialCardSymbol \card{\card{c}_{\sym{m}}}\).

Let's take for example \(\bindCards{\subSize{\lineQuiver }{\sym{n}}}{\rform{\card{r}}\serialCardSymbol \bform{\card{b}}}\), which we'll refer to in English as "the 2-line quiver on \(\rform{\card{r}}\,\)then \(\bform{\card{b}}\)".

Here we have a series of 3 cardinals:

The same construction works as you would expect for the cycle quiver:

For a series of 3 cardinals:

Parallel cardinals

The second kind of enrichment is parallel: in place of a single cardinal \(\card{c}\) we use a set of cardinals \(\card{c}_1,\card{c}_2,\ellipsis ,\card{c}_{\sym{m}}\), all present on the same edge. We write this as \(\card{\card{c}_1}\parallelCardSymbol \card{\card{c}_2}\parallelCardSymbol \ellipsis \parallelCardSymbol \card{\card{c}_{\sym{m}}}\).

Here we show \(\bindCards{\subSize{\lineQuiver }{\sym{n}}}{\rform{\card{r}}\parallelCardSymbol \bform{\card{b}}}\), which we'll refer to in English as "the 2-line quiver on \(\rform{\card{r}}\parallelCardSymbol \bform{\card{b}}\)".

We can also use the multi-arrowhead convention, in which case e.g. \(\bindCards{\subSize{\lineQuiver }{3}}{\rform{\card{r}}\parallelCardSymbol \bform{\card{b}}}\) looks like:

Again, an important application is to put a cardinal in parallel with its inverse:

However, this violates the local uniqueness property for \(\sym{n}>2\):

We can however combine the parallel and serial enrichments to sidestep this limitation. There are two obvious ways to do this:

The situation with the cycle quiver is similar. However, we cannot form \(\bindCards{\subSize{\cycleQuiver }{\sym{n}}}{\rform{\card{r}}\parallelCardSymbol \rform{\inverted{\card{r}}}}\) for any \(\sym{n}\).

We can however form \(\bindCards{\subSize{\cycleQuiver }{1}}{\rform{\card{r}}},\bindCards{\subSize{\cycleQuiver }{1}}{\rform{\card{r}}\parallelCardSymbol \gform{\card{g}}},\bindCards{\subSize{\cycleQuiver }{1}}{\rform{\card{r}}\parallelCardSymbol \gform{\card{g}}\parallelCardSymbol \bform{\card{b}}},\ellipsis\) etc., obtaining the bouquet quivers:


Path groupoids

Path words

The fundamental object of study in quiver geometry is the path, which is what it sounds like: a journey in the quiver, starting at some particular initial vertex, called the tail vertex, and ending at some final vertex, called the head vertex.

For concrete examples, we'll use the following quiver:

We'll write paths using the notation \(\paren{\pathWord{\vert{tail}}{\word{\card{c}}{\card{a}}{\card{r}}{\card{d}}{\card{i}}{\card{n}}{\card{a}}{\card{l}}{\card{s}}}{\vert{head}}}\), where \(\vert{tail}\) and \(\vert{head}\) are vertices and \(\word{\card{c}}{\card{a}}{\card{r}}{\card{d}}{\card{i}}{\card{n}}{\card{a}}{\card{l}}{\card{s}}\) is a path word: a sequence of cardinals. The parentheses are optional and are added for clarity. Here are some examples to make the idea clear:

Notice in the second and fourth examples: when we traverse an edge in the opposite direction to its associated cardinal e.g. \(\rform{\card{r}}\), we record this cardinal in the path word inverted, written with an underbar \(\rform{\inverted{\card{r}}}\).

Our priority will be to describe how to compose paths, and how this behavior yields a path groupoid.

Path operations

Path composition

There is a natural operation we can perform to combine two paths \(\path{P}\) and \(\path{R}\): we can compose them "head-to-tail".

We'll call this path composition, which we'll write \(\pathCompose{\path{P}}{\path{R}}\) and pronounce "\(\path{P}\) composed with \(\path{R}\)". It behaves word-algebraically as:

\[ \pathCompose{\paren{\pathWord{\vert{x}}{\wordSymbol{P}}{\vert{y}}}}{\paren{\pathWord{\vert{y}}{\wordSymbol{R}}{\vert{z}}}} = \paren{\pathWord{\vert{x}}{\concat{\wordSymbol{P} \wordSymbol{R}}}{\vert{z}}} \]

We'll now perform the composition \(\pathCompose{\paren{\pathWord{\vert{x}}{\word{\rform{\card{r}}}}{\vert{y}}}}{\paren{\pathWord{\vert{y}}{\word{\gform{\card{g}}}}{\vert{z}}}}\) to give \(\paren{\pathWord{\vert{x}}{\word{\rform{\card{r}}}{\gform{\card{g}}}}{\vert{z}}}\):

As an example of a multiplication that is not defined, consider \(\pathCompose{\paren{\pathWord{\vert{x}}{\word{\rform{\card{r}}}}{\vert{y}}}}{\paren{\pathWord{\vert{z}}{\word{\bform{\card{b}}}}{\vert{x}}}}\). The first path ends at a different vertex from where the second path starts (\(\vert{y} \neq \vert{z}\)), so we cannot form a composite path.

We indicate this with the null result, written \(\nullPath\).

We can however compose these paths in the reverse order:

This should make it clear, if it wasn’t already, that path composition is not a commutative operation.

Inversion

We define the inverse of a path \(\path{P}\), written \(\inverted{\path{P}}\) or \(\inverse{\path{P}}\), to be the path followed in the opposite direction.

Notice that the cardinals of the path word are simultaneously reversed and invered.

Empty paths

It is important to emphasize that empty paths serve a crucial role, since they behave like identities the leave paths unchanged under composition.

For example, we can left-multiply any path having tail vertex \(\vert{x}\) with the empty path \(\idElem{x} = \paren{\pathWord{\vert{x}}{\emptyWord{}}{\vert{x}}}\).

Similarly we can right-multiply any path with head vertex \(\vert{y}\) with the empty path \(\idElem{y}\):

Loosely speaking, the inverse of an element is something that multiplies with it to produce the (or an) identity. It should be clear that inverse of a path, when composed with it on the left or right, yields the empty path on its tail or head respectively.

Algebraically, \(\pathCompose{\path{P}}{\inverse{\path{P}}} = \idElem{\vert{t}}\), \(\pathCompose{\inverse{\path{P}}}{\path{P}} = \idElem{\vert{h}}\), where \(\idElem{\vert{h}}\) and \(\idElem{\vert{t}}\) are the empty paths at the tail vertex \(\vert{t}\) and head vertex \(\vert{h}\) of \(\path{P}\):

Cancellation

We’ve seen above that we cancel backtracking paths when composing:

Here's a more complex example:

When operating at the level of path words, we performed the word simplification \(\concat{\rform{\card{r}} \rform{\inverted{\card{r}}}} = 1\) in the first case and \(\concat{\rform{\card{r}} \rform{\card{r}} \rform{\inverted{\card{r}}}} = \rform{\card{r}}\) in the second case. The symbol \("1"\) here refers to the empty word, which is otherwise hard to indicate.

There is in fact only one kind of simplification we can do, which is to cancel neighboring inverted cardinals: \(\rewrite{\concat{\wordSymbol{L} \inverted{\card{c}} \card{c} \wordSymbol{R}}}{\concat{\wordSymbol{L} \wordSymbol{R}}}\) and \(\rewrite{\concat{\wordSymbol{L} \card{c} \inverted{\card{c}} \wordSymbol{R}}}{\concat{\wordSymbol{L} \wordSymbol{R}}}\), where \(\wordSymbol{L}\) and \(\wordSymbol{R}\) stand for any sub-words consisting of zero or more cardinals.

But while the path word \(\concat{\card{c} \inverted{\card{c}}}\) represents a trivial loop in some sense, it is crucial we do not cancel sub words corresponding to non-trivial loops that involve more than one cardinal:

Path groupoid

Groups and groupoids

Let's recall the elementary notions of a group and a groupoid.

A group is a structure \(\tuple{\group{G},\Gmult }\) consisting of a set of elements \(\group{G}\) and a multiplication \(\functionSignature{\function{\Gmult }}{\tuple{\group{G},\group{G}}}{\group{G}}\). The multiplication is associative, so \(\groupElement{f}\Gmult \paren{\groupElement{g}\Gmult \groupElement{h}} = \paren{\groupElement{f}\Gmult \groupElement{g}}\Gmult \groupElement{h}\) for all \(\elemOf{\groupElement{f},\groupElement{g},\groupElement{h}}{\group{G}}\). Each element \(\groupElement{g}\) also has an inverse \(\groupInverse{\groupElement{g}}\) satisfying \(\groupInverse{\groupElement{g}}\Gmult \groupElement{g} = \groupElement{g}\Gmult \groupInverse{\groupElement{g}} = \groupElement{e}\), where \(\groupElement{e}\Gmult \groupElement{g} = \groupElement{g}\Gmult \groupElement{e} = \groupElement{g}\) defines the identity or unit element \(\elemOf{\groupElement{e}}{\group{G}}\).

A groupoid is, roughly speaking, a group in which the multiplication \(\Gmult\) becomes a partial function, and so need not be defined for all pairs \(\elemOf{\groupoidElement{g},\groupoidElement{h}}{\groupoid{G}}\). Importantly, a groupoid does not need to have a unique identity: in general, there can be multiple identity elements that satisfy the required properties for different subsets of \(G\). We'll call these the units of the groupoid.

Path groupoid

It is easy to check that the set of finite paths \(\pathList(\quiver{Q})\) of a cardinal quiver \(\quiver{Q}\) and the operations \(\pathComposeSymbol{}\) and \(\inverseSymbol\), together define a path groupoid, written \(\pathGroupoid{\quiver{Q}}\), that describes how paths compose. The identities of the path groupoid are the empty words on the vertices of the quiver, and the inverse of a path is the reversal of that path. As you'd expect, when two paths are not head-to-tail and so cannot be composed, the groupoid multiplication \(\pathComposeSymbol{}\) between them is undefined.


Word groups

In this short section we introduce objects that nevertheless plays a vital role in understanding paths on quivers. These are word groups that describe possible path words, but divorced from any particular path in a quiver.

Notation

We write the word group on a set of cardinals as \(\bindCards{\wordGroupSymbol }{\card{\card{c}_1},\card{\card{c}_2},\ellipsis ,\card{\card{c}_{\sym{n}}}}\).

The word group of a quiver \(\quiver{Q}\), written \(\wordGroup{\quiver{Q}}\), is just the word group on the cardinals of that quiver.

If we wish only to specify how many cardinals are present, we will write this as \(\wordGroup{\quiver{\sym{n}}}\).

If it is clear from context what cardinals we are talking about, we'll just write \(\wordGroupSymbol\).

Elements

A group elements \(\elemOf{\groupElement{ \omega }}{\wordGroupSymbol }\) is a word, which is a finite sequence of (possibly inverted) cardinals. For example:

\[ \bindCards{\wordGroupSymbol }{\rform{\card{r}},\bform{\card{b}}} = \list{\word{1},\word{\rform{\card{r}}},\word{\rform{\ncard{r}}},\word{\bform{\card{b}}},\word{\bform{\ncard{b}}},\word{\rform{\card{r}}}{\rform{\card{r}}},\word{\rform{\ncard{r}}}{\rform{\ncard{r}}},\word{\rform{\card{r}}}{\bform{\card{b}}},\word{\rform{\card{r}}}{\bform{\ncard{b}}},\word{\rform{\ncard{r}}}{\bform{\card{b}}},\word{\rform{\ncard{r}}}{\bform{\ncard{b}}},\word{\bform{\card{b}}}{\rform{\card{r}}},\word{\bform{\card{b}}}{\rform{\ncard{r}}},\word{\bform{\ncard{b}}}{\rform{\card{r}}},\word{\bform{\ncard{b}}}{\rform{\ncard{r}}},\word{\bform{\card{b}}}{\bform{\card{b}}},\word{\bform{\ncard{b}}}{\bform{\ncard{b}}},\word{\rform{\card{r}}}{\rform{\card{r}}}{\rform{\card{r}}},\word{\rform{\card{r}}}{\rform{\card{r}}}{\bform{\card{b}}},\ellipsis } \]

We reserve the symbol \(\card{1}\) to refer to the group identity, the empty word consisting of zero cardinals, which would otherwise be hard to indicate textually, since it naturally be written as a blank space.

The number of words is obviously infinite if there is at least one cardinal.

Reduced form

The words are subject to the identity that we can rewrite any subword (any contiguous subseqence of cardinals) according to \(\concat{\card{c} \inverted{\card{c}}} = \concat{\inverted{\card{c}} \card{c}} = \card{1}\). Removing such adjacent inverses is called reduction.

We typically prefer to write these words in reduced form, so that the word \(\word{\gform{\card{g}}}{\rform{\card{r}}}{\rform{\inverted{\card{r}}}}{\bform{\card{b}}}\) is reduced to \(\word{\gform{\card{g}}}{\bform{\card{b}}}\).

Concatenation

The group multiplication of two words \(\elemOf{\groupElement{ \upsilon },\groupElement{ \omega }}{\wordGroupSymbol }\) is simply their concatenation, which we will write by putting words next to each other with a small gap: \(\concat{\groupElement{ \upsilon }\,\groupElement{ \omega }}\).

For the the case \(\groupElement{ \upsilon } = \word{\gform{\card{g}}}{\bform{\card{b}}}{\rform{\ncard{r}}},\groupElement{ \omega } = \word{\rform{\card{r}}}\), this looks like \(\concat{\groupElement{ \upsilon }\,\groupElement{ \omega }} = \concat{\word{\gform{\card{g}}}{\bform{\card{b}}}{\rform{\ncard{r}}}\,\word{\rform{\card{r}}}}\), which reduces to \(\word{\gform{\card{g}}}{\bform{\card{b}}}\).

Notice that if there is more than one cardinal, the group is not Abelian, since \(\concat{\groupElement{ \upsilon }\,\groupElement{ \omega }} \neq \concat{\groupElement{ \omega }\,\groupElement{ \upsilon }}\) in general. The order of cardinals in a word matters!

Here we list some concatenations of words in \(\bindCards{\wordGroupSymbol }{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}\):

\[ \begin{csarray}{rlcl}{abeeb} \word{\card{1}} & \word{\card{1}} & = & \word{\card{1}}\\ \word{\card{1}} & \word{\rform{\card{r}}} & = & \word{\rform{\card{r}}}\\ \word{\rform{\card{r}}} & \word{\rform{\ncard{r}}} & = & \word{\card{1}}\\ \word{\rform{\card{r}}}{\bform{\card{b}}} & \word{\gform{\card{g}}} & = & \word{\rform{\card{r}}}{\bform{\card{b}}}{\gform{\card{g}}}\\ \word{\rform{\card{r}}}{\rform{\card{r}}}{\bform{\card{b}}} & \word{\bform{\ncard{b}}}{\gform{\card{g}}}{\gform{\card{g}}} & = & \word{\rform{\card{r}}}{\rform{\card{r}}}{\gform{\card{g}}}{\gform{\card{g}}} \end{csarray} \]

Inverses

To invert a word we reverse its individual letters and invert them.

Here we list a small number of examples of words from \(\wordGroup{\quiver{Q}}\) for \(\cardinalList(\quiver{Q}) = \{\rform{\card{r}},\bform{\card{b}}\}\), side-by-side with their inverses:

\[ \begin{csarray}{rlrlrlrl}{aeieieiei} \groupElement{ \omega } & \groupInverse{\groupElement{ \omega }} & \groupElement{ \omega } & \groupInverse{\groupElement{ \omega }} & \groupElement{ \omega } & \groupInverse{\groupElement{ \omega }} & \groupElement{ \omega } & \groupInverse{\groupElement{ \omega }}\\ \word{\card{1}} & \word{\card{1}} & \word{\rform{\card{r}}} & \word{\rform{\ncard{r}}} & \word{\rform{\card{r}}}{\rform{\card{r}}} & \word{\rform{\ncard{r}}}{\rform{\ncard{r}}} & \word{\rform{\card{r}}}{\gform{\card{g}}}{\bform{\card{b}}} & \word{\bform{\ncard{b}}}{\gform{\ncard{g}}}{\rform{\ncard{r}}}\\ & & \word{\gform{\card{g}}} & \word{\gform{\ncard{g}}} & \word{\rform{\card{r}}}{\gform{\card{g}}} & \word{\gform{\ncard{g}}}{\rform{\ncard{r}}} & & \\ & & \word{\bform{\card{b}}} & \word{\bform{\ncard{b}}} & \word{\gform{\card{g}}}{\bform{\ncard{b}}} & \word{\bform{\card{b}}}{\gform{\ncard{g}}} & & \end{csarray} \]

Being free

Beyond the identity \(\concat{\card{c} \inverted{\card{c}}} = \concat{\inverted{\card{c}} \card{c}} = \card{1}\), which reflects in some sense the most generic property of a group, we do not impose any further relations (hence the term "free"). This implies that if two elements of \(\wordGroupSymbol\) "look different" in reduced form – that is, they contain a difference sequence of cardinals – they are different elements of the group.

Relationship to paths

As the name suggests, the path word of a path in \(\quiver{Q}\) is an element of the word group \(\wordGroup{\quiver{Q}}\), and path composition (when defined) will yield a path whose word is the concatenation (the group operation of \(\wordGroupSymbol\)) of the path words:

\[ \wordOf(\pathCompose{\path{P_1}}{\path{P_2}}) = \concat{\wordOf(\path{P_1})\,\wordOf(\path{P_2})} \]

A choice of vertex and a word will uniquely identify a path in a quiver, if one exists. Due to the local uniqueness property, there cannot be more than one path starting at a given vertex that posses a given word. However, there may be zero paths starting at a vertex with a given word.


Path homomorphisms

Introduction

In this section, we define a path homomorphism between two quivers \(\quiver{Q}\), \(\quiver{R}\). Path homomorphisms are the natural candidate for a notion of a "continuous map" between two quivers, although we will not concentrate on defining notions of continuity or topology just yet.

Maps between paths

First, consider a map \(\function{ \gamma }\) sending paths in a quiver \(\quiver{Q}\) to paths in a quiver \(\quiver{R}\). We can see such a map as being between the path groupoids of \(\quiver{Q}\) and \(\quiver{R}\):

\[ \functionSignature{\function{ \gamma }}{\pathGroupoid{\quiver{Q}}}{\pathGroupoid{\quiver{R}}} \]

A path homomorphism is such a map that also possesses the property of compatibility:

\[ \function{ \gamma }(\pathCompose{\path{P_1}}{\path{P_2}}) = \pathCompose{\function{ \gamma }(\path{P_1})}{\function{ \gamma }(\path{P_2})} \]

This states that we can compose paths in \(\quiver{Q}\) and then apply \(\function{ \gamma }\), or we can apply \(\function{ \gamma }\) and then compose the resulting paths in \(\quiver{R}\), and we will obtain the same result. This is in fact equivalent to the statement that \(\function{ \gamma }\) is a groupoid homomorphism.

Properties

Before seeing any examples, we can deduce some simple propeties of a path homomorphism. Firstly, let us consider a path \(\path{P}\), and the empty path starting at its tail vertex, written \(\pathTail{\path{P}}\), and head vertex, written \(\pathHead{\path{P}}\):

\[ \begin{aligned} \path{P}&= \paren{\pathWord{\vert{x}}{\wordSymbol{W}}{\vert{y}}}\\ \pathTail{\path{P}}&= \paren{\pathWord{\vert{x}}{\emptyWord{}}{\vert{x}}}\\ \pathHead{\path{P}}&= \paren{\pathWord{\vert{y}}{\emptyWord{}}{\vert{y}}}\end{aligned} \]

By definition, we have that \(\pathTail{\path{P}}\) and \(\pathHead{\path{P}}\) are the left and right identities for \(\path{P}\) under path composition:

\[ \pathCompose{\pathTail{\path{P}}}{\path{P}} = \path{P} = \pathCompose{\path{P}}{\pathHead{\path{P}}} \]

Applying a path homomorphism \(\function{ \gamma }\) to these equations, and using compatibility, we obtain:

\[ \begin{aligned} \function{ \gamma }(\pathCompose{\pathTail{\path{P}}}{\path{P}})&= \function{ \gamma }(\path{P})= \function{ \gamma }(\pathCompose{\path{P}}{\pathHead{\path{P}}})\\ \pathCompose{\function{ \gamma }(\pathTail{\path{P}})}{\function{ \gamma }(\path{P})}&= \function{ \gamma }(\path{P})= \pathCompose{\function{ \gamma }(\path{P})}{\function{ \gamma }(\pathHead{\path{P}})}\end{aligned} \]

Therefore we have that \(\function{ \gamma }(\pathTail{\path{P}})\) and \(\function{ \gamma }(\pathHead{\path{P}})\) act like the left and right identities for \(\function{ \gamma }(\path{P})\). Since the only identities are the empty paths, we can conclude that \(\graphHomomorphism{ \gamma }\) maps empty paths to empty paths, and we can write:

\[ \begin{aligned} \function{ \gamma }(\pathTail{\path{P}})&= \pathTail{\function{ \gamma }(\path{P})}\\ \function{ \gamma }(\pathHead{\path{P}})&= \pathHead{\function{ \gamma }(\path{P})}\end{aligned} \]

We can leverage this fact to understand how \(\graphHomomorphism{ \gamma }\) interacts with path reversal (the inverse of the path groupoid), since \(\pathCompose{\path{P}}{\pathReverse{\path{P}}} = \pathTail{\path{P}}\).

\[ \begin{aligned} \pathCompose{\path{P}}{\pathReverse{\path{P}}}&= \pathTail{\path{P}}\\ \function{ \gamma }(\pathCompose{\path{P}}{\pathReverse{\path{P}}})&= \function{ \gamma }(\pathTail{\path{P}})\\ \pathCompose{\function{ \gamma }(\path{P})}{\function{ \gamma }(\pathReverse{\path{P}})}&= \pathTail{\function{ \gamma }(\path{P})}\end{aligned} \]

Therefore \(\function{ \gamma }(\pathReverse{\path{P}})\) behaves as the inverse of \(\function{ \gamma }(\path{P})\), since it right-multiplies with it to produce the left identity \(\pathTail{\function{ \gamma }(\path{P})}\). Therefore we can conclude that \(\function{ \gamma }\) preserves path reversal:

\[ \function{ \gamma }(\pathReverse{\path{P}}) = \pathReverse{\function{ \gamma }(\path{P})} \]

Summary

We can summarize the properties of a path homomorphism (strictly speaking the first property is merely the definition):

\[ \begin{aligned} \function{ \gamma }(\pathCompose{\path{P_1}}{\path{P_2}})&= \pathCompose{\function{ \gamma }(\path{P_1})}{\function{ \gamma }(\path{P_2})}&\quad \textrm{preserves composition}\\ \function{ \gamma }(\pathTail{\path{P}})&= \pathTail{\function{ \gamma }(\path{P})}&\quad \textrm{preserves left units}\\ \function{ \gamma }(\pathHead{\path{P}})&= \pathHead{\function{ \gamma }(\path{P})}&\quad \textrm{preserves right units}\\ \function{ \gamma }(\pathReverse{\path{P}})&= \pathReverse{\function{ \gamma }(\path{P})}&\quad \textrm{preserves reversal}\end{aligned} \]

Examples

To keep things simple, we'll start out by considering the special case take \(\quiver{R} = \quiver{Q}\), in other words, we will consider maps that sends path in \(\quiver{Q}\) to paths in \(\quiver{Q}\). We'll take \(\quiver{Q}\) to be the 2-line quiver \(\bindCards{\subSize{\lineQuiver }{2}}{\card{c}}\):

Non-example

Imagine we try to define a path homomorphism \(\functionSignature{\function{ \gamma }}{\pathGroupoid{\quiver{Q}}}{\pathGroupoid{\quiver{R}}}\), where we initially define its behavior on two particular paths \(\gbform{\path{P_1}},\rbform{\path{P_2}}\) in \(\quiver{Q}\):

There is no path homomorphism that behaves like this, because while we can form the composition \(\pathCompose{\gbform{\path{P_1}}}{\rbform{\path{P_2}}} = \rgform{\path{P_3}}\), we cannot compose their images under \(\function{ \gamma }\): \(\pathCompose{\function{ \gamma }(\gbform{\path{P_1}})}{\function{ \gamma }(\rbform{\path{P_2}})} = \nullElement\), as the head of \(\function{ \gamma }(\gbform{\path{P_1}})\) is not equal to the tail of \(\function{ \gamma }(\rbform{\path{P_2}})\).

Example

Now let us consider the map \(\functionSignature{\pathHomomorphism{ \rho }}{\pathGroupoid{\quiver{Q}}}{\pathGroupoid{\quiver{R}}}\), illustrated below for paths \(\gbform{\path{P_1}},\rbform{\path{P_2}},\rgform{\path{P_3}}\) as well as the empty paths \(\idElem{\vert{x}} = \paren{\pathWord{\vert{x}}{\emptyWord{}}{\vert{x}}},\idElem{\vert{y}} = \paren{\pathWord{\vert{y}}{\emptyWord{}}{\vert{y}}},\idElem{\vert{z}} = \paren{\pathWord{\vert{z}}{\emptyWord{}}{\vert{z}}}\).

This map does satisfy compatibility, making it a path homomorphism. Intuitively, \(\graphHomomorphism{ \gamma }\) "reflects paths in the left-right axis" of the line quiver.

Path tables

We can also visualize the behavior of above map as a path table showing the pairing of \(\path{P}\) and \(\function{ \gamma }(\path{P})\) for several paths \(\elemOf{\path{P}}{\pathList(\quiver{Q})}\):

To avoid having to illustrate \(\graphHomomorphism{ \gamma }\) on every possible path, we can exploit the fact that \(\graphHomomorphism{ \gamma }\) must preserve path reversal. The (undepicted) value of \(\function{ \gamma }(\pathWord{\vert{z}}{\word{\ncard{c}}{\ncard{c}}}{\vert{z}})\) is implied by the (depicted) value \(\function{ \gamma }(\pathWord{\vert{x}}{\word{\card{c}}{\card{c}}}{\vert{z}})\):

\[ \begin{aligned} \function{ \gamma }(\pathReverse{\path{P}})&= \pathReverse{\function{ \gamma }(\path{P})}\\ \function{ \gamma }(\pathWord{\vert{z}}{\word{\ncard{c}}{\ncard{c}}}{\vert{x}})&= \pathReverse{\paren{\function{ \gamma }(\pathWord{\vert{x}}{\word{\card{c}}{\card{c}}}{\vert{z}})}}\\ &= \pathReverse{\paren{\pathWord{\vert{z}}{\word{\ncard{c}}{\ncard{c}}}{\vert{x}}}}\\ &= \pathWord{\vert{x}}{\word{\card{c}}{\card{c}}}{\vert{z}}\end{aligned} \]

This symmetry implies the remaining paths:

Since these pairs are implied, we need not show these mappings in path tables.

Example: zero homomorphisms

Here we provide another example of a homomorphism, a zero homomorphism that sends every path to an empty path:

There are three such possible zero homorphisms, because we can choose to send paths to the empty path on any of the three vertices in \(\quiver{Q}\).

Example: partial zero homomorphisms

We can also construct path homomorphisms that "zero" some paths but not all paths. For example, we can zero the portion of any path that is "left" of the central vertex, \(\vert{y}\):

Example: maps between two different quivers

So far, we've considered path represents from a single quiver to itself. Now let's consider a path homomorphism \(\functionSignature{\function{ \gamma }}{\pathGroupoid{\quiver{Q}}}{\pathGroupoid{\quiver{R}}}\) between a line quiver \(\quiver{Q} = \bindCards{\subSize{\lineQuiver }{2}}{\rform{\card{r}}}\), and a different quiver \(\quiver{R}\) on cardinals \(\gform{\card{g}},\bform{\card{b}}\):

Here we show the path table for \(\function{ \gamma }\):

Images of edges

Let us consider the full path table for the homomorphism we just defined:

This path table is obviously highly redundant, since many of the rows are implied by others:

  • Rows 7, 8, and 9 are implied by 4, 5, and 6 via path reversal: \(\function{ \gamma }(\pathReverse{\path{P}}) = \pathReverse{\function{ \gamma }(\path{P})}\).

  • Rows 1, 2, and 3, which describe where to send empty paths on vertices \(\vert{x},\vert{y},\vert{z}\), can be extracted from the heads (or tails) of the images of any paths that start (or end) at these vertices, e.g. rows 4 and 5.

  • Row 6 depicts the image of path \(\paren{\pathWord{\vert{x}}{\word{\rform{\card{r}}}{\rform{\card{r}}}}{\vert{z}}}\), but this path can be represented as the composition \(\pathCompose{\paren{\pathWord{\vert{x}}{\word{\rform{\card{r}}}}{\vert{y}}}}{\paren{\pathWord{\vert{y}}{\word{\rform{\card{r}}}}{\vert{z}}}}\), and hence is determined by rows 4 and 5 (and compatibity).

All in all, only rows 4 and 5 are necessary to fully describe the behavior of \(\function{ \gamma }\):

But these are just the images of the edges of \(\quiver{Q}\)!

Summary

We can see that the behavior of a path homomorphism \(\functionSignature{\function{ \gamma }}{\pathGroupoid{\quiver{Q}}}{\pathGroupoid{\quiver{R}}}\) is uniquely determined by a choice of path \(\elemOf{\function{ \gamma }(\pathWord{\vert{x}}{\word{\card{c}}}{\vert{y}})}{\pathList(\quiver{Q})}\) for every edge \(\elemOf{\tde{\vert{x}}{\vert{y}}{\card{c}}}{\edgeList(\quiver{Q})}\). The behavior of \(\function{ \gamma }\) on longer paths in \(\quiver{Q}\) is then determined by composing the images of the sequence of edges in the path:

\[ \function{ \gamma }(\pathWord{\vert{x}}{\word{\card{\card{c}_1}}{\card{\card{c}_2}}{\card{\ellipsis }}{\card{\card{c}_{\sym{n}}}}}{\vert{z}}) = \pathCompose{\function{ \gamma }(\pathWord{\vert{x}}{\word{\card{\card{c}_1}}}{\blank})}{\function{ \gamma }(\pathWord{\blank}{\word{\card{\card{c}_2}}}{\blank})}{\ellipsis }{\function{ \gamma }(\pathWord{\blank}{\word{\card{\card{c}_{\sym{n}}}}}{\vert{z}})} \]

The only requirement we must impose on these choices for individual edges is that the images of the edges can be composed in \(\quiver{R}\) when two edges are head-to-tail in \(\quiver{Q}\):

\[ \pathCompose{\function{ \gamma }(\pathWord{\vert{x}}{\word{\card{c}}}{\vert{y}})}{\function{ \gamma }(\pathWord{\vert{y}}{\word{\card{d}}}{\vert{z}})} \neq \nullElement \]

Lengthening and shortening

To get a further feeling for what kind of homomorphisms are possible, consider the following two graphs \(\quiver{Q} = \bindCards{\subSize{\lineQuiver }{3}}{\rform{\card{r}}}\) and \(\path{R} = \bindCards{\subSize{\lineQuiver }{4}}{\rform{\card{r}}}\):

Lengthening

Our path homomorphism \(\functionSignature{\function{ \gamma }}{\pathGroupoid{\quiver{Q}}}{\pathGroupoid{\quiver{R}}}\) is defined by the following path table:

Our homomorphism \(\function{ \gamma }\) does a "jump" when traversing the middle edge in \(\quiver{Q}\). We say it is a path lengthening, because there is at least one path whose image under \(\function{ \gamma }\) is longer than the path:

\[ \existsForm{\path{P}}{\length(\graphHomomorphism{ \gamma }(\path{P}))>\length(\path{P})} \]

This is equivalent to there being at least one edge that is sent to a path longer than 1:

\[ \existsForm{\elemOf{\edge{e}}{\edgeList(\quiver{Q})}}{\length(\graphHomomorphism{ \gamma }(\edge{e}))>1} \]

We say a path homomorphism \(\function{ \gamma }\) is \(\sym{k}\)-Lipschitz if the lengths of images of edges under \(\function{ \gamma }\) are bounded above by \(\sym{k}\):

\[ \forAllForm{\elemOf{\edge{e}}{\edgeList(\quiver{Q})}}{\length(\graphHomomorphism{ \gamma }(\edge{e})) \le \sym{k}} \]

Shortening

Let us now consider a path homomorphism \(\functionSignature{\function{ \gamma }}{\pathGroupoid{\quiver{R}}}{\pathGroupoid{\quiver{Q}}}\) with the opposite feature:

Our homomorphism \(\pathHomomorphism{ \rho }\) now "shortens" a particular edge, namely \(\paren{\pathWord{\vert{w}}{\word{\rform{\card{r}}}}{\vert{x}}}\), sending it to \(\pathHomomorphism{ \rho }(\pathWord{\vert{w}}{\word{\rform{\card{r}}}}{\vert{x}}) = \paren{\pathWord{\vert{b}}{\emptyWord{}}{\vert{b}}}\). Any longer paths that pass through this edge will similarly be shortened.

We say \(\pathHomomorphism{ \rho }\) is a path shortening, because there is at least one path whose image under \(\function{ \gamma }\) is shorter than the path:

\[ \existsForm{\path{P}}{\length(\graphHomomorphism{ \gamma }(\path{P}))<\length(\path{P})} \]

This is equivalent to there being at least one edge that is sent to the empty path:

\[ \existsForm{\elemOf{\edge{e}}{\edgeList(\quiver{Q})}}{\length(\graphHomomorphism{ \gamma }(\edge{e})) = 0} \]

Composition

We can of course compose these path homomorphisms, in either order.

First, let's examine \(\functionSignature{\function{\paren{\functionComposition{\pathHomomorphism{ \rho }\functionCompositionSymbol \function{ \gamma }}}}}{\quiver{Q}}{\quiver{Q}}\), which is \(\functionSignature{\pathHomomorphism{ \rho }}{\quiver{R}}{\quiver{Q}}\) applied to the result of \(\functionSignature{\function{ \gamma }}{\quiver{Q}}{\quiver{R}}\).

This is the identity path homomorphism on \(\quiver{Q}\).

Now let's examine \(\functionSignature{\function{\paren{\functionComposition{\function{ \gamma }\functionCompositionSymbol \pathHomomorphism{ \rho }}}}}{\quiver{R}}{\quiver{R}}\), which is \(\functionSignature{\function{ \gamma }}{\quiver{Q}}{\quiver{R}}\) applied to the result of \(\functionSignature{\pathHomomorphism{ \rho }}{\quiver{R}}{\quiver{Q}}\):

This is certainly not the identity path homomorphism, and is both a shortening and a lengthing.

Length preserving

We say a path homomorphism \(\function{ \gamma }\) is length preserving if it is neither a shortening or a lengthening. This is equivalent to saying that the length of the image of every edge edge is exactly 1:

\[ \forAllForm{\elemOf{\edge{e}}{\edgeList(\quiver{Q})}}{\length(\graphHomomorphism{ \gamma }(\edge{e})) = 1} \]

A length preserving homomorphism \(\functionSignature{\function{ \gamma }}{\pathGroupoid{\quiver{Q}}}{\pathGroupoid{\quiver{R}}}\) map edges of \(\quiver{Q}\) to oriented edges of \(\quiver{R}\): a directed edge of \(\quiver{Q}\) can be sent to a directed edge of \(\quiver{R}\), but in a sense opposite to its ordinary orientation. The "horizontal reflection" homomorphism on \(\bindCards{\subSize{\lineQuiver }{2}}{\rform{\card{r}}}\) we considered previously was of such a type.

Path homomorphisms into the line quiver

For any quiver \(\quiver{Q}\) there is a particular family of path homomorphisms that is particularly easy to characterize: the path homomorphisms onto the line quiver \(\subSize{\lineQuiver }{ \infty }\).

To construct these, let us first define an integer vertex field to be a function \(\functionSignature{\function{f}}{\vertexList(\quiver{Q})}{\mathbb{Z}}\) that assigns to each vertex of \(\quiver{Q}\) an integer.

Below we show an example integer vertex field on the quiver \(\quiver{Q} = \subSize{\squareQuiver }{2}\), where the values of \(\function{f}\) are displayed beside each vertex:

We will now interpret the value \(\function{f}(\vert{v})\) as determining a vertex of the line quiver \(\bindCards{\subSize{\lineQuiver }{ \infty }}{\gform{\card{g}}}\):

Therefore, \(\function{f}\) induces part of the behavior of a path homomorphism \(\pathHomomorphism{ \rho }\), specifically, the behavior of the empty paths of \(\quiver{Q}\):

\[ \pathHomomorphism{ \rho }(\pathWord{\vert{v}}{\emptyWord{}}{\vert{v}})\defEqualSymbol \pathWord{\function{f}(\vert{v})}{\emptyWord{}}{\function{f}(\vert{v})} \]

We now need only define \(\pathHomomorphism{ \rho }\) on the edges of \(\quiver{Q}\). To do this, we note that for any edge \(\elemOf{\tde{\vert{u}}{\vert{v}}{\card{c}}}{\edgeList(\quiver{Q})}\), we are forced by compatibility to send the corresponding path \(\paren{\pathWord{\vert{u}}{\word{\card{c}}}{\vert{v}}}\) to some path in \(\subSize{\lineQuiver }{ \infty }\) with tail vertex \(\function{f}(\vert{u})\) and head vertex \(\function{f}(\vert{v})\). However, there is only one path in \(\subSize{\lineQuiver }{ \infty }\)between any two given vertices, and hence we have no choice in defining the remaining behavior of \(\pathHomomorphism{ \rho }\).

The formal definition of \(\pathHomomorphism{ \rho }\) then is as follows:

\[ \pathHomomorphism{ \rho }(\pathWord{\vert{u}}{\word{\card{c}}}{\vert{v}})\defEqualSymbol \paren{\pathWord{\function{f}(\vert{u})}{\repeatedPower{\word{\gform{\card{g}}}}{\function{f}(\vert{v}) - \function{f}(\vert{u})}}{\function{f}(\vert{v})}} \]

We show part of the path table to make the idea clear:

Notice how the image of each edge under \(\pathHomomorphism{ \rho }\) encodes the value of \(\function{f}\) at the head and tail of the edge, and the cardinal content of the path encodes the difference between these values. In [[[Path calculus]]] we’ll develop a more formal approach to this kind of gradient-like operation.

The converse direction is trivally true: any path homomorphism into the line quiver gives us an integer vertex field, by simply numbering the vertices of the line quiver and taking pre-images of empty paths.

Therefore, we have that there is a bijection between integer vertex fields and path homomorphisms into the line quiver.

Connected quivers

We have just seen that a function \(\functionSignature{\function{f}}{\vertexList(\quiver{Q})}{\vertexList(\subSize{\lineQuiver }{ \infty })}\) induces a unique path homomorphism \(\functionSignature{\pathHomomorphism{ \rho }}{\quiver{Q}}{\subSize{\lineQuiver }{ \infty }}\), defining \(\pathHomomorphism{ \rho }(\de{\vert{u}}{\vert{v}})\) to be the unique path in \(\subSize{\lineQuiver }{ \infty }\) between vertices \(\function{f}(\vert{u})\) and \(\function{f}(\vert{v})\).

We can quite easily generalize this construction, replacing the \(\subSize{\lineQuiver }{ \infty }\) with an arbitrary connected quiver \(\quiver{R}\). However, for a given function \(\functionSignature{\function{f}}{\vertexList(\quiver{Q})}{\vertexList(\quiver{R})}\) there may be more than one path between \(\function{f}(\vert{u})\) and \(\function{f}(\vert{v})\); we may in fact pick any path in \(\pathList(\path{R},\function{f}(\vert{u}),\function{f}(\vert{v}))\) to define the behavior of the path homomorphism on an edge \(\pathHomomorphism{ \rho }(\de{\vert{u}}{\vert{v}})\). Hence, we no longer have a bijection – typically there will be an infinite number of homomorphisms corresponding to a choice of function \(\function{f}\).

Endomorphisms and automorphisms

Endomorphisms

A special role is played by the set of path homomorphisms \(\functionSignature{\pathHomomorphism{ \alpha }}{\pathGroupoid{\quiver{Q}}}{\pathGroupoid{\quiver{Q}}}\) from a quiver \(\quiver{Q}\) to itself. We'll write this set as \(\endomorphisms(\quiver{Q})\). We will now attach the structure of a semigroup to this set. That is to say, we will define an associative binary operation that corresponds to the composition of homomorphisms.

Like all function compositions, path homomorphism composition is associative. But is the composition of two homomorphisms \(\functionComposition{\pathHomomorphism{ \alpha }\functionCompositionSymbol \pathHomomorphism{ \beta }}\) itself a homomorphism? This is easily seen to be true:

\[ \begin{aligned} \function{\paren{\functionComposition{\pathHomomorphism{ \alpha }\functionCompositionSymbol \pathHomomorphism{ \beta }}}}(\pathCompose{\path{P_1}}{\path{P_2}})&= \pathHomomorphism{ \alpha }(\pathHomomorphism{ \beta }(\pathCompose{\path{P_1}}{\path{P_2}}))\\ &= \pathHomomorphism{ \alpha }(\pathCompose{\pathHomomorphism{ \beta }(\path{P_1})}{\pathHomomorphism{ \beta }(\path{P_2})})\\ &= \pathCompose{\pathHomomorphism{ \alpha }(\pathHomomorphism{ \beta }(\path{P_1}))}{\pathHomomorphism{ \alpha }(\pathHomomorphism{ \beta }(\path{P_2}))}\\ &= \pathCompose{\function{\paren{\functionComposition{\pathHomomorphism{ \alpha }\functionCompositionSymbol \pathHomomorphism{ \beta }}}}(\path{P_1})}{\function{\paren{\functionComposition{\pathHomomorphism{ \alpha }\functionCompositionSymbol \pathHomomorphism{ \beta }}}}(\path{P_2})}\end{aligned} \]

Therefore, the set \(\endomorphisms(\quiver{Q})\) is a semigroup. It would further be a group if path homomorphisms were invertible, but we have seen examples of path homomorphisms that, for example, send all paths to the empty path on a particular vertex.

Automorphisms

So how can we constrain path homomorphisms to be invertible? It will turn out to be enough to ask that they are merely surjective, so that every possible path is the image of at least one other path:

\[ \forAllForm{\path{P}}{\existsForm{\path{R}}{\pathHomomorphism{ \alpha }(\path{R}) = \path{P}}} \]

Why does surjectivity imply injectivity? We prove this by contradiction. Assume that a surjective path homomorphism \(\pathHomomorphism{ \alpha }\) is not injective, so that:

\[ \existsForm{\path{P},\primed{\path{P}},\path{P} \neq \primed{\path{P}}}{\pathHomomorphism{ \alpha }(\path{P}) = \pathHomomorphism{ \alpha }(\primed{\path{P}})} \]

If we decompose \(\path{P}\) and \(\primed{\path{P}}\) into sequences of individual 1-paths, we must obtain at least one pair \(\paren{\pathWord{\vert{u}}{\word{\card{c}}}{\vert{v}}},\paren{\pathWord{\vert{u}}{\word{\card{\primed{c}}}}{\primed{\vert{v}}}}\) such that \(\pathHomomorphism{ \alpha }(\pathWord{\vert{u}}{\word{\card{c}}}{\vert{v}}) = \pathHomomorphism{ \alpha }(\pathWord{\vert{u}}{\word{\card{\primed{c}}}}{\primed{\vert{v}}})\) but \(\vert{v} \neq \primed{\vert{v}}\).

Affine path homomorphisms

You may have noticed that the discussion of path homomorphisms of quivers has not relied in any way on the cardinal structure of the quivers. In fact, everything we have said is applicable also to ordinary directed graphs and their path groupoids.

Word automorphisms

Recall that [[[word group:Word groups]]] \(\wordGroup{\quiver{Q}}\) is the free group on the cardinals of \(\quiver{Q}\).

We now consider a group homomorphism \(\functionSignature{\groupHomomorphism{ \phi }}{\wordGroupSymbol }{\wordGroupSymbol }\), or automorphism as such homomorphisms are called. We can think of such a homomorphism \(\groupHomomorphism{ \phi }\) as a way of "rewriting" words as other words, letter-by-letter.

Let's consider an example homomorphism on a quiver with cardinals \(\cardinalList(\quiver{Q}) = \list{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}\). We define \(\groupHomomorphism{ \phi }\) as:

\[ \groupHomomorphism{ \phi } = \groupWordRewriting{\rewritingRule{\word{\rform{\card{r}}}}{\word{\gform{\card{g}}}{\rform{\card{r}}}},\rewritingRule{\word{\gform{\card{g}}}}{\word{1}},\rewritingRule{\word{\bform{\card{b}}}}{\word{\rform{\ncard{r}}}}} \]

The empty word has no letters to rewrite, so it remains the empty word:

\[ \groupHomomorphism{ \phi }(\card{1}) = \card{1} \]

The words with one letter are rewritten as given in the definition of \(\groupHomomorphism{ \phi }\). Because \(\groupHomomorphism{ \phi }\) is a group homomorphism, it must replace the inverses of these cardinals with the inverses of the corresponding right-hand-sides:

\[ \begin{csarray}{rclrcl}{accicci} \groupHomomorphism{ \phi }(\rform{\card{r}}) & = & \word{\gform{\card{g}}}{\rform{\card{r}}} & \groupHomomorphism{ \phi }(\rform{\inverted{\card{r}}}) & = & \word{\rform{\ncard{r}}}{\gform{\ncard{g}}}\\ \groupHomomorphism{ \phi }(\gform{\card{g}}) & = & \card{1} & \groupHomomorphism{ \phi }(\gform{\inverted{\card{g}}}) & = & \card{1}\\ \groupHomomorphism{ \phi }(\bform{\card{b}}) & = & \rform{\inverted{\card{r}}} & \groupHomomorphism{ \phi }(\bform{\inverted{\card{b}}}) & = & \rform{\card{r}} \end{csarray} \]

Longer words are rewritten left-to-right, since this is how a group homomorphism to \(\wordGroupSymbol\) must work. Here we show a few examples of rewriting of longer words:

\[ \begin{array}{rclcl} \groupHomomorphism{ \phi }(\word{\rform{\card{r}}}{\rform{\card{r}}}) & = & \groupHomomorphism{ \phi }(\rform{\card{r}})\iGmult \groupHomomorphism{ \phi }(\rform{\card{r}}) & = & \word{\gform{\card{g}}}{\rform{\card{r}}}{\gform{\card{g}}}{\rform{\card{r}}}\\ \groupHomomorphism{ \phi }(\word{\rform{\ncard{r}}}{\rform{\ncard{r}}}) & = & \groupHomomorphism{ \phi }(\rform{\inverted{\card{r}}})\iGmult \groupHomomorphism{ \phi }(\rform{\inverted{\card{r}}}) & = & \word{\rform{\ncard{r}}}{\gform{\ncard{g}}}{\rform{\ncard{r}}}{\gform{\ncard{g}}}\\ \groupHomomorphism{ \phi }(\word{\gform{\card{g}}}{\gform{\card{g}}}) & = & \groupHomomorphism{ \phi }(\gform{\card{g}})\iGmult \groupHomomorphism{ \phi }(\gform{\card{g}}) = \concat{\card{1}\,\card{1}} & = & \card{1}\\ \groupHomomorphism{ \phi }(\word{\bform{\card{b}}}{\bform{\card{b}}}) & = & \groupHomomorphism{ \phi }(\bform{\card{b}})\iGmult \groupHomomorphism{ \phi }(\bform{\card{b}}) & = & \word{\rform{\ncard{r}}}{\rform{\ncard{r}}}\\ \groupHomomorphism{ \phi }(\word{\rform{\card{r}}}{\bform{\card{b}}}) & = & \groupHomomorphism{ \phi }(\rform{\card{r}})\iGmult \groupHomomorphism{ \phi }(\bform{\card{b}}) = \concat{\word{\gform{\card{g}}}{\rform{\card{r}}}\,\rform{\inverted{\card{r}}}} & = & \gform{\card{g}}\\ \groupHomomorphism{ \phi }(\word{\rform{\card{r}}}{\gform{\card{g}}}{\bform{\card{b}}}) & = & \groupHomomorphism{ \phi }(\rform{\card{r}})\iGmult \groupHomomorphism{ \phi }(\gform{\card{g}})\iGmult \groupHomomorphism{ \phi }(\bform{\card{b}}) = \concat{\word{\gform{\card{g}}}{\rform{\card{r}}}\,\card{1}\,\rform{\inverted{\card{r}}}} & = & \gform{\card{g}}\\ \groupHomomorphism{ \phi }(\word{\rform{\card{r}}}{\gform{\card{g}}}{\bform{\ncard{b}}}) & = & \groupHomomorphism{ \phi }(\rform{\card{r}})\iGmult \groupHomomorphism{ \phi }(\gform{\card{g}})\iGmult \groupHomomorphism{ \phi }(\bform{\inverted{\card{b}}}) = \concat{\word{\gform{\card{g}}}{\rform{\card{r}}}\,\card{1}\,\rform{\card{r}}} & = & \word{\gform{\card{g}}}{\rform{\card{r}}}{\rform{\card{r}}} \end{array} \]

Repeating the story of the composition of path homomorphisms, we can now form the endomorphism semigroup \(\endomorphisms(\wordGroupSymbol )\) of word homomorphisms.

Automorphism group

If we want the group \(\automorphisms(\wordGroupSymbol )\) rather than the semigroup \(\endomorphisms(\wordGroupSymbol )\), we need to limit ourselves to invertible word homomoprhisms.

As a first step to characterizing these, observe that any signed permutation of the set of cardinals gives an invertible homomorphism. Signed permutations are permutations that can additionally invert each element. Since the number of permutations of \(\sym{n}\) elements is \(\factorial{\sym{n}}\), and the number of inverse patterns is \(\power{2}{\sym{n}}\), there are \(\factorial{\sym{n}} \, \power{2}{\sym{n}}\) signed permutations.

For example, the 8 possible signed permutations on \(\list{\rform{\card{r}},\bform{\card{b}}}\) are \(\list{\tuple{\rform{\card{r}},\bform{\card{b}}},\tuple{\inverted{\rform{\card{r}}},\bform{\card{b}}},\tuple{\rform{\card{r}},\inverted{\bform{\card{b}}}},\tuple{\inverted{\rform{\card{r}}},\inverted{\bform{\card{b}}}},\tuple{\bform{\card{b}},\rform{\card{r}}},\tuple{\inverted{\bform{\card{b}}},\rform{\card{r}}},\tuple{\bform{\card{b}},\inverted{\rform{\card{r}}}},\tuple{\inverted{\bform{\card{b}}},\inverted{\rform{\card{r}}}}}\), yielding the following word automorphisms:

\[ \begin{array}{c} \groupWordRewriting{\rewritingRule{\rform{\card{r}}}{\rform{\card{r}}},\rewritingRule{\bform{\card{b}}}{\bform{\card{b}}}}\\ \groupWordRewriting{\rewritingRule{\rform{\card{r}}}{\rform{\inverted{\card{r}}}},\rewritingRule{\bform{\card{b}}}{\bform{\card{b}}}}\\ \groupWordRewriting{\rewritingRule{\rform{\card{r}}}{\rform{\card{r}}},\rewritingRule{\bform{\card{b}}}{\bform{\inverted{\card{b}}}}}\\ \groupWordRewriting{\rewritingRule{\rform{\card{r}}}{\rform{\inverted{\card{r}}}},\rewritingRule{\bform{\card{b}}}{\bform{\inverted{\card{b}}}}}\\ \groupWordRewriting{\rewritingRule{\rform{\card{r}}}{\bform{\card{b}}},\rewritingRule{\bform{\card{b}}}{\rform{\card{r}}}}\\ \groupWordRewriting{\rewritingRule{\rform{\card{r}}}{\bform{\inverted{\card{b}}}},\rewritingRule{\bform{\card{b}}}{\rform{\card{r}}}}\\ \groupWordRewriting{\rewritingRule{\rform{\card{r}}}{\bform{\card{b}}},\rewritingRule{\bform{\card{b}}}{\rform{\inverted{\card{r}}}}}\\ \groupWordRewriting{\rewritingRule{\rform{\card{r}}}{\bform{\inverted{\card{b}}}},\rewritingRule{\bform{\card{b}}}{\rform{\inverted{\card{r}}}}} \end{array} \]

Moving to the set \(\list{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}\) yields 48 signed permutations: \(\tuple{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}},\tuple{\inverted{\rform{\card{r}}},\gform{\card{g}},\bform{\card{b}}},\tuple{\rform{\card{r}},\inverted{\gform{\card{g}}},\bform{\card{b}}},\tuple{\rform{\card{r}},\gform{\card{g}},\inverted{\bform{\card{b}}}}\), \(\ellipsis\), \(\tuple{\inverted{\bform{\card{b}}},\inverted{\gform{\card{g}}},\rform{\card{r}}},\tuple{\inverted{\bform{\card{b}}},\gform{\card{g}},\inverted{\rform{\card{r}}}},\tuple{\bform{\card{b}},\inverted{\gform{\card{g}}},\inverted{\rform{\card{r}}}},\tuple{\inverted{\bform{\card{b}}},\inverted{\gform{\card{g}}},\inverted{\rform{\card{r}}}}\), yielding 48 word automorphisms:

\[ \begin{array}{c} \groupWordRewriting{\rewritingRule{\rform{\card{r}}}{\rform{\card{r}}},\rewritingRule{\gform{\card{g}}}{\gform{\card{g}}},\rewritingRule{\bform{\card{b}}}{\bform{\card{b}}}}\\ \groupWordRewriting{\rewritingRule{\rform{\card{r}}}{\rform{\inverted{\card{r}}}},\rewritingRule{\gform{\card{g}}}{\gform{\card{g}}},\rewritingRule{\bform{\card{b}}}{\bform{\card{b}}}}\\ \groupWordRewriting{\rewritingRule{\rform{\card{r}}}{\rform{\card{r}}},\rewritingRule{\gform{\card{g}}}{\gform{\inverted{\card{g}}}},\rewritingRule{\bform{\card{b}}}{\bform{\card{b}}}}\\ \groupWordRewriting{\rewritingRule{\rform{\card{r}}}{\rform{\card{r}}},\rewritingRule{\gform{\card{g}}}{\gform{\card{g}}},\rewritingRule{\bform{\card{b}}}{\bform{\inverted{\card{b}}}}}\\ \verticalEllipsis \\ \groupWordRewriting{\rewritingRule{\rform{\card{r}}}{\bform{\inverted{\card{b}}}},\rewritingRule{\gform{\card{g}}}{\gform{\inverted{\card{g}}}},\rewritingRule{\bform{\card{b}}}{\rform{\card{r}}}}\\ \groupWordRewriting{\rewritingRule{\rform{\card{r}}}{\bform{\inverted{\card{b}}}},\rewritingRule{\gform{\card{g}}}{\gform{\card{g}}},\rewritingRule{\bform{\card{b}}}{\rform{\inverted{\card{r}}}}}\\ \groupWordRewriting{\rewritingRule{\rform{\card{r}}}{\bform{\card{b}}},\rewritingRule{\gform{\card{g}}}{\gform{\inverted{\card{g}}}},\rewritingRule{\bform{\card{b}}}{\rform{\inverted{\card{r}}}}}\\ \groupWordRewriting{\rewritingRule{\rform{\card{r}}}{\bform{\inverted{\card{b}}}},\rewritingRule{\gform{\card{g}}}{\gform{\inverted{\card{g}}}},\rewritingRule{\bform{\card{b}}}{\rform{\inverted{\card{r}}}}} \end{array} \]

Being obviously invertible, the signed permutations on \(\sym{n}\) cardinals form a group. This group is known as the Coxeter group \(\group{B_{\sym{n}}}\).

Lengthening automorphisms

This exhausts the word automorphisms that do not lengthen words. But it is not immediately obvious that they can lengthen word while still remaining invertible. Here we demonstrate one particular example and explain why it is invertible:

\[ \groupHomomorphism{ \phi } = \groupWordRewriting{\rewritingRule{\word{\rform{\card{r}}}}{\word{\rform{\card{r}}}{\gform{\ncard{g}}}},\rewritingRule{\word{\gform{\card{g}}}}{\word{\gform{\card{g}}}{\bform{\ncard{b}}}},\rewritingRule{\word{\bform{\card{b}}}}{\word{\bform{\card{b}}}}} \]

To show invertibility, we need to explicitly construct words (of any length) that map to the single-cardinal words \(\list{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}\). Inverses of longer words can then be formed by composing these primitive inverses. To find these primitive inverses, we observe that:

\[ \begin{array}{rcccccl} \rform{\card{r}} & = & \concat{\word{\rform{\card{r}}}{\gform{\ncard{g}}}\,\word{\gform{\card{g}}}{\bform{\ncard{b}}}\,\bform{\card{b}}} & = & \concat{\groupHomomorphism{ \phi }(\rform{\card{r}})\,\groupHomomorphism{ \phi }(\gform{\card{g}})\,\groupHomomorphism{ \phi }(\bform{\card{b}})} & = & \groupHomomorphism{ \phi }(\word{\rform{\card{r}}}{\gform{\card{g}}}{\bform{\card{b}}})\\ \gform{\card{g}} & = & \concat{\word{\gform{\card{g}}}{\bform{\ncard{b}}}\,\bform{\card{b}}} & = & \concat{\groupHomomorphism{ \phi }(\gform{\card{g}})\,\groupHomomorphism{ \phi }(\bform{\card{b}})} & = & \groupHomomorphism{ \phi }(\word{\gform{\card{g}}}{\bform{\card{b}}})\\ \bform{\card{b}} & = & & & & = & \groupHomomorphism{ \phi }(\bform{\card{b}}) \end{array} \]

Hence we have that \(\inverse{\groupHomomorphism{ \phi }} = \groupWordRewriting{\rewritingRule{\word{\rform{\card{r}}}}{\word{\rform{\card{r}}}{\gform{\card{g}}}{\bform{\card{b}}}},\rewritingRule{\word{\gform{\card{g}}}}{\word{\gform{\card{g}}}{\bform{\card{b}}}},\rewritingRule{\word{\bform{\card{b}}}}{\word{\bform{\card{b}}}}}\).

More generally, characterizing the group structure of the automorphism group of the free group is tricky, with the most famous result being a presentation in terms of so-called Nielsen transformations, which we will not go into here.

Abelian word group

If we temporarily imagine the word group to be Abelian, in other words, if \(\word{\rform{\card{r}}}{\gform{\card{g}}} = \word{\gform{\card{g}}}{\rform{\card{r}}},\word{\gform{\card{g}}}{\bform{\card{b}}} = \word{\bform{\card{b}}}{\gform{\card{g}}}\), etc., things become much easier. In this setting, we can represent a word homomorphism \(\groupHomomorphism{ \phi }\) on \(\sym{n}\) cardinals as an \(\sym{n}\times \sym{n}\) integral matrix \(\matrix{M_{\groupHomomorphism{ \phi }}}\) by choosing an ordering of the cardinals to serve as the basis . Here we depict four examples:

\[ \begin{csarray}{cccc}{aamam} \groupHomomorphism{ \phi } & \matrix{M_{\groupHomomorphism{ \phi }}} & \groupHomomorphism{ \phi } & \matrix{M_{\groupHomomorphism{ \phi }}}\\ & & & \\ \begin{array}{l} \langle \kern{2pt}\rewritingRule{\word{\rform{\card{r}}}}{\word{\rform{\card{r}}}},\\ \phantom{ \langle \kern{2pt}}\rewritingRule{\word{\gform{\card{g}}}}{\word{\gform{\card{g}}}},\\ \phantom{ \langle \kern{2pt}}\rewritingRule{\word{\bform{\card{b}}}}{\word{\bform{\card{b}}}}\kern{2pt} \rangle \end{array} & {\begin{pmatrix}1&0&0\\0&1&0\\0&0&1\end{pmatrix}} & \begin{array}{l} \langle \kern{2pt}\rewritingRule{\word{\rform{\card{r}}}}{\word{\rform{\card{r}}}{\gform{\card{g}}}{\bform{\card{b}}}},\\ \phantom{ \langle \kern{2pt}}\rewritingRule{\word{\gform{\card{g}}}}{\word{\gform{\card{g}}}{\bform{\card{b}}}},\\ \phantom{ \langle \kern{2pt}}\rewritingRule{\word{\bform{\card{b}}}}{\word{\bform{\card{b}}}}\kern{2pt} \rangle \end{array} & {\begin{pmatrix}1&1&1\\0&1&1\\0&0&1\end{pmatrix}}\\ & & & \\ \begin{array}{l} \langle \kern{2pt}\rewritingRule{\word{\rform{\card{r}}}}{\word{\card{1}}},\\ \phantom{ \langle \kern{2pt}}\rewritingRule{\word{\gform{\card{g}}}}{\word{\gform{\card{g}}}},\\ \phantom{ \langle \kern{2pt}}\rewritingRule{\word{\bform{\card{b}}}}{\word{\bform{\card{b}}}}\kern{2pt} \rangle \end{array} & {\begin{pmatrix}0&0&0\\0&1&0\\0&0&1\end{pmatrix}} & \begin{array}{l} \langle \kern{2pt}\rewritingRule{\word{\rform{\card{r}}}}{\word{\rform{\ncard{r}}}},\\ \phantom{ \langle \kern{2pt}}\rewritingRule{\word{\gform{\card{g}}}}{\word{\bform{\card{b}}}},\\ \phantom{ \langle \kern{2pt}}\rewritingRule{\word{\bform{\card{b}}}}{\word{\gform{\card{g}}}}\kern{2pt} \rangle \end{array} & {\begin{pmatrix}-1&0&0\\0&0&1\\0&1&0\end{pmatrix}} \end{csarray} \]

Finding the inverse homomorphism is equivalent to inverting its integral matrix:

\[ \matrix{M_{\inverse{\groupHomomorphism{ \phi }}}} = \inverse{\matrix{M_{\groupHomomorphism{ \phi }}}} \]

Even better, it is easily checked that an integral matrix is only invertible if its determinant is \(\pm 1\), allowing us to characterize the automorphism group of Abelian word homomorphisms as the integral orthogonal group \(\orthogonalGroup{\sym{n}}{\ring{\mathbb{Z}}}\).

Visualization

We can visualize the action of various word homomorphisms on some familiar transitive quivers to gain intuition for their behavior.


Multisets

Introduction

History

The multiset is a simple and natural piece of mathematical technology that has been strangely underused in the last hundred years. That the multiset has failed to live up to its potential is due probably to historical accident. One possible explanation is that as the need for foundational rigor became urgent, modern mathematics quickly standardized on the set as a kind of universal building block, starving out other datastructures, like the multiset. Such is the unfortunate role of fashion in mathematics. Luckily, multisets have seen renewed interest with the work of more computation-oriented mathematicians like Donald Knuth.

Motivation

We are taking the time to explain multisets because they play an important interpretational role, giving us an alternative way of understanding algebraic structures. This role will only become clear in the next two sections: [[[Word rings]]], where we'll elements of the word ring as multisets of words ("multiwords"), and [[[Adjacency]]], where we'll interpret matrices as multisets of paths ("multipaths"). Interleaving the explanation of multisets with those topics would be confusing, so we'll frontload the work in understanding multisets here, in one place.

Sets and multisets

Sets vs multisets

To contrast sets with multisets, we first repeat some basic facts about sets.

Sets are the building blocks of modern mathematics. They consist of a collection of elements: \(\sym{X} = \set{\sym{x_1},\sym{x_2},\ellipsis ,\sym{x_{\sym{n}}}}\). We can express that an element is a member of a set with the notation \(\elemOf{\setElementSymbol{x}}{\setSymbol{X}}\).

Among the fundamental properties of a sets is that the elements have no defined order. Hence, the expressions \(\set{\rform{\card{r}},\bform{\card{b}}}\textAnd \set{\bform{\card{b}},\rform{\card{r}}}\) describe the same set. Furthermore, an object is either an element of a set or it is not. It is meaningless to say that it occurs twice, for example. Hence, the expressions \(\set{\rform{\card{r}},\rform{\card{r}},\bform{\card{b}}}\textAnd \set{\rform{\card{r}},\bform{\card{b}}}\) describe the same set – especially when constructing sets we rely on this redundancy being irrelevant.

If we instead specify that repetition does matter, we arrive at the idea of a multiset. A multiset can contain an object more than once. The number of times a multiset contains an object will be called the multiplicity of that object.

We'll write multisets with double-struck braces: \(\sym{X} = \multiset{\sym{x_1},\sym{x_2},\ellipsis ,\sym{x_{\sym{n}}}}\). Hence, \(\multiset{\rform{\card{r}},\rform{\card{r}},\bform{\card{b}}}\textAnd \multiset{\rform{\card{r}},\bform{\card{b}}}\) describe different multisets: the multiplicity of \(\rform{\card{r}}\) is \(1\) in the first and \(2\) in the second.

We’ll denote the multiplicity of an object \(\multisetElementSymbol{x}\) in a multiset \(\multisetSymbol{M}\) by \(\multisetSymbol{M}\multisetMultiplicitySymbol \multisetElementSymbol{x}\). For example, in the multiset \(\multisetSymbol{M} = \multiset{\rform{\card{r}},\rform{\card{r}},\bform{\card{b}}}\), we have that \(\multisetSymbol{M}\multisetMultiplicitySymbol \rform{\card{r}} = 2\), \(\multisetSymbol{M}\multisetMultiplicitySymbol \bform{\card{b}} = 1\), and \(\multisetSymbol{M}\multisetMultiplicitySymbol \gform{\card{g}} = 0\).

The set of multisets

The powerset \(\powerSet{\multisetSymbol{B}}\) of a set \(\multisetSymbol{B}\) is the set of subsets of \(\multisetSymbol{B}\). We'll call these the sets on \(\multisetSymbol{B}\), and \(\multisetSymbol{B}\) the base set.

We can similarly form the set of multisets whose objects are taken from \(\multisetSymbol{B}\), written \(\multisets{\multisetSymbol{B}}\). We'll call these the multisets on \(\multisetSymbol{B}\).

Any particular object from the base set can occur an unrestricted number of times in one such multiset, so \(\multisets{\multisetSymbol{B}}\) is generally an infinite set (unless \(\multisetSymbol{B}\) is empty). Let's look at some examples of this simple and natural idea.

If \(\multisetSymbol{B}\) is a singleton, that is, contains only one element, then the multisets in \(\multisets{\multisetSymbol{B}}\) can contain this element any finite number of times. Here we list some multisets in \(\multisets{\multisetSymbol{B}}\) for \(\multisetSymbol{B} = \set{\rform{\card{r}}}\):

\[ \multisets{\set{\rform{\card{r}}}} = \set{\multiset{},\multiset{\rform{\card{r}}},\multiset{\rform{\card{r}},\rform{\card{r}}},\multiset{\rform{\card{r}},\rform{\card{r}},\rform{\card{r}}},\ellipsis } \]

Clearly, we can identify these multisets with the positive integers, since they count the number of times that \(\rform{\card{r}}\) is present.

If \(\multisetSymbol{B}\) contains two elements, then the multisets in \(\multisets{\multisetSymbol{B}}\) can be identified with pairs of positive integers, counting how many times the two elements are present. Here we list some elements of the set \(\multisets{\multisetSymbol{B}}\) for \(\multisetSymbol{B} = \set{\rform{\card{r}},\bform{\card{b}}}\):

\[ \multisets{\set{\rform{\card{r}},\bform{\card{b}}}} = \set{\multiset{},\multiset{\rform{\card{r}}},\multiset{\bform{\card{b}}},\multiset{\rform{\card{r}},\rform{\card{r}}},\multiset{\rform{\card{r}},\bform{\card{b}}},\multiset{\bform{\card{b}},\bform{\card{b}}},\multiset{\rform{\card{r}},\rform{\card{r}},\rform{\card{r}}},\multiset{\rform{\card{r}},\rform{\card{r}},\bform{\card{b}}},\ellipsis } \]

More generally, we can identify any multiset \(\elemOf{\multisetSymbol{M}}{\multisets{\multisetSymbol{B}}}\) with the function \(\functionSignature{\function{\boundMultiplicityFunction{\multisetSymbol{M}}}}{\multisetSymbol{B}}{\mathbb{N}}\) that takes an element of \(\multisetSymbol{B}\) and returns its multiplicity in \(\multisetSymbol{M}\).

For example, we can identify the multiset \(\multisetSymbol{M} = \multiset{\rform{\card{r}},\rform{\card{r}},\bform{\card{b}}}\) with the function \(\boundMultiplicityFunction{\multisetSymbol{M}} = \assocArray{\mto{\rform{\card{r}}}{2},\mto{\bform{\card{b}}}{1}}\).

Formally, then, we have a bijection between multisets on \(\multisetSymbol{B}\) on one side and functions from \(\multisetSymbol{B}\) to the natural numbers on the other:

\[ \multisets{\multisetSymbol{B}}\bijectiveSymbol \functionSpace{\multisetSymbol{B}}{\baseField{\mathbb{N}}} \]

We'll shortly see how we can encode the natural operations on a multiset in terms of operations on such multiplicity functions.

Sets as multisets

We can identify a set \(\multisetSymbol{X}\) with a multiset in which each element \(\elemOf{\setElementSymbol{x}}{\multisetSymbol{X}}\) appears exactly once. For example:

\[ \set{\rform{\card{r}},\bform{\card{b}}}\isomorphicSymbol \multiset{\rform{\card{r}},\bform{\card{b}}} \]

In other words, we have a bijection between on one hand \(\powerSet{\multisetSymbol{B}}\), the sets on \(\multisetSymbol{B}\), and on the other hand \(\multisets{\multisetSymbol{B}}\), multisets on \(\multisetSymbol{B}\) with maximum multiplicity 1:

\[ \powerSet{\multisetSymbol{B}}\bijectiveSymbol \setConstructor{\multisetSymbol{M}}{\elemOf{\multisetSymbol{M}}{\multisets{\multisetSymbol{B}}},\max(\boundMultiplicityFunction{\multisetSymbol{M}}) = 1} \]

To a given set \(\multisetSymbol{X}\) in terms we define the corresponding multiset via its multiplicity function \(\boundMultiplicityFunction{\multisetSymbol{X}}\):

\[ \boundMultiplicityFunction{\multisetSymbol{X}}\defEqualSymbol \mto{\setElementSymbol{b}}{\begin{cases} 1 &\text{if } \elemOf{\setElementSymbol{b}}{\multisetSymbol{X}}\\ 0 &\text{otherwise} \end{cases} } \]

Conversely, given a multiset \(\boundMultiplicityFunction{\multisetSymbol{X}}\) with \(\max(\boundMultiplicityFunction{\multisetSymbol{X}}) = 1\), we define the corresponding set \(\multisetSymbol{X}\) as follows:

\[ \multisetSymbol{X}\defEqualSymbol \setConstructor{\setElementSymbol{b}}{\elemOf{\setElementSymbol{b}}{\multisetSymbol{B}},\function{\boundMultiplicityFunction{\multisetSymbol{X}}}(\setElementSymbol{b}) = 1} \]

Operations on multisets

How can we combine multisets? We'll look to sets for inspiration.

For sets \(\multisetSymbol{X},\multisetSymbol{Y}\), we can form the union \(\multisetSymbol{X}\setUnionSymbol \multisetSymbol{Y}\) – the set of elements that are in \(\multisetSymbol{X}\) and/or \(\multisetSymbol{Y}\), the intersection \(\multisetSymbol{X}\setIntersectionSymbol \multisetSymbol{Y}\) – the set of elements in both \(\multisetSymbol{X}\textAnd \multisetSymbol{Y}\), and the relative complement \(\multisetSymbol{X}\setRelativeComplementSymbol \multisetSymbol{Y}\) – the set of elements in \(\multisetSymbol{X}\) but not in \(\multisetSymbol{Y}\).

\[ \begin{aligned} \multisetSymbol{X}\setUnionSymbol \multisetSymbol{Y}&\defEqualSymbol \setConstructor{\setElementSymbol{x}}{\paren{\elemOf{\setElementSymbol{x}}{\multisetSymbol{X}}}\orSymbol \paren{\elemOf{\setElementSymbol{x}}{\multisetSymbol{Y}}}}\\ \multisetSymbol{X}\setIntersectionSymbol \multisetSymbol{Y}&\defEqualSymbol \setConstructor{\setElementSymbol{x}}{\paren{\elemOf{\setElementSymbol{x}}{\multisetSymbol{X}}}\andSymbol \paren{\elemOf{\setElementSymbol{x}}{\multisetSymbol{Y}}}}\\ \multisetSymbol{X}\setRelativeComplementSymbol \multisetSymbol{Y}&\defEqualSymbol \setConstructor{\setElementSymbol{x}}{\paren{\elemOf{\setElementSymbol{x}}{\multisetSymbol{X}}}\andSymbol \paren{\notElemOf{\setElementSymbol{x}}{\multisetSymbol{Y}}}}\end{aligned} \]

For multisets \(\multisetSymbol{M}\textAnd \multisetSymbol{N}\), we now define the equivalent operations in terms of the multiplicity functions \(\boundMultiplicityFunction{\multisetSymbol{M}}\textAnd \boundMultiplicityFunction{\multisetSymbol{N}}\):

\[ \begin{aligned} \boundMultiplicityFunction{\paren{\multisetSymbol{M}\multisetUnionSymbol \multisetSymbol{N}}}&\defEqualSymbol \max(\boundMultiplicityFunction{\multisetSymbol{M}},\boundMultiplicityFunction{\multisetSymbol{N}})\\ \boundMultiplicityFunction{\paren{\multisetSymbol{M}\multisetIntersectionSymbol \multisetSymbol{N}}}&\defEqualSymbol \min(\boundMultiplicityFunction{\multisetSymbol{M}},\boundMultiplicityFunction{\multisetSymbol{N}})\\ \boundMultiplicityFunction{\paren{\multisetSymbol{M}\multisetRelativeComplementSymbol \multisetSymbol{N}}}&\defEqualSymbol \max(\boundMultiplicityFunction{\multisetSymbol{M}} - \boundMultiplicityFunction{\multisetSymbol{N}},0)\end{aligned} \]

Here, when we apply \(\max\textAnd \min\) to functions, we are creating a new function that applies that operation to their outputs e.g. \(\function{\max(\function{f},\function{g})}(\multisetElementSymbol{x})\defEqualSymbol \max(\function{f}(\multisetElementSymbol{x}),\function{g}(\multisetElementSymbol{x}))\).

Examples

Here is an example of a multiset union and the corresponding operation on multiplicity functions, where the base set is \(\multisetSymbol{B} = \set{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}\):

\[ \begin{array}{cccccc} \multiset{\rform{\card{r}},\rform{\card{r}},\gform{\card{g}}} & \multisetUnionSymbol & \multiset{\rform{\card{r}},\bform{\card{b}},\bform{\card{b}}} & = & \multiset{\rform{\card{r}},\rform{\card{r}},\gform{\card{g}},\bform{\card{b}},\bform{\card{b}}} & \\ & & & & & \\ \begin{nsarray}{l} \langle \kern{2pt}\mto{\rform{\card{r}}}{2},\\ \phantom{ \langle \kern{2pt}}\mto{\gform{\card{g}}}{1},\\ \phantom{ \langle \kern{2pt}}\mto{\bform{\card{b}}}{2}\kern{2pt} \rangle \end{nsarray} & \multisetUnionSymbol & \begin{nsarray}{l} \langle \kern{2pt}\mto{\rform{\card{r}}}{1},\\ \phantom{ \langle \kern{2pt}}\mto{\gform{\card{g}}}{0},\\ \phantom{ \langle \kern{2pt}}\mto{\bform{\card{b}}}{2}\kern{2pt} \rangle \end{nsarray} & = & \begin{nsarray}{l} \langle \kern{2pt}\mto{\rform{\card{r}}}{2},\\ \phantom{ \langle \kern{2pt}}\mto{\gform{\card{g}}}{1},\\ \phantom{ \langle \kern{2pt}}\mto{\bform{\card{b}}}{2}\kern{2pt} \rangle \end{nsarray} & \end{array} \]

Here's an example of an intersection:

\[ \begin{array}{cccccc} \multiset{\rform{\card{r}},\rform{\card{r}},\gform{\card{g}},\bform{\card{b}},\bform{\card{b}}} & \multisetIntersectionSymbol & \multiset{\rform{\card{r}},\bform{\card{b}},\bform{\card{b}}} & = & \multiset{\rform{\card{r}},\bform{\card{b}},\bform{\card{b}}} & \\ & & & & & \\ \begin{nsarray}{l} \langle \kern{2pt}\mto{\rform{\card{r}}}{2},\\ \phantom{ \langle \kern{2pt}}\mto{\gform{\card{g}}}{1},\\ \phantom{ \langle \kern{2pt}}\mto{\bform{\card{b}}}{0}\kern{2pt} \rangle \end{nsarray} & \multisetIntersectionSymbol & \begin{nsarray}{l} \langle \kern{2pt}\mto{\rform{\card{r}}}{1},\\ \phantom{ \langle \kern{2pt}}\mto{\gform{\card{g}}}{0},\\ \phantom{ \langle \kern{2pt}}\mto{\bform{\card{b}}}{2}\kern{2pt} \rangle \end{nsarray} & = & \begin{nsarray}{l} \langle \kern{2pt}\mto{\rform{\card{r}}}{1},\\ \phantom{ \langle \kern{2pt}}\mto{\gform{\card{g}}}{0},\\ \phantom{ \langle \kern{2pt}}\mto{\bform{\card{b}}}{2}\kern{2pt} \rangle \end{nsarray} & \end{array} \]

Here's an example of a relative complement:

\[ \begin{array}{cccccc} \multiset{\rform{\card{r}},\rform{\card{r}},\gform{\card{g}},\bform{\card{b}},\bform{\card{b}}} & \multisetRelativeComplementSymbol & \multiset{\rform{\card{r}},\bform{\card{b}},\bform{\card{b}}} & = & \multiset{\rform{\card{r}},\gform{\card{g}}} & \\ & & & & & \\ \begin{nsarray}{l} \langle \kern{2pt}\mto{\rform{\card{r}}}{2},\\ \phantom{ \langle \kern{2pt}}\mto{\gform{\card{g}}}{1},\\ \phantom{ \langle \kern{2pt}}\mto{\bform{\card{b}}}{0}\kern{2pt} \rangle \end{nsarray} & \multisetRelativeComplementSymbol & \begin{nsarray}{l} \langle \kern{2pt}\mto{\rform{\card{r}}}{1},\\ \phantom{ \langle \kern{2pt}}\mto{\gform{\card{g}}}{0},\\ \phantom{ \langle \kern{2pt}}\mto{\bform{\card{b}}}{2}\kern{2pt} \rangle \end{nsarray} & = & \begin{nsarray}{l} \langle \kern{2pt}\mto{\rform{\card{r}}}{1},\\ \phantom{ \langle \kern{2pt}}\mto{\gform{\card{g}}}{1},\\ \phantom{ \langle \kern{2pt}}\mto{\bform{\card{b}}}{0}\kern{2pt} \rangle \end{nsarray} & \end{array} \]

Note that in the special case of multisets that represent sets, the \(\max\textAnd \min\) functions operate on multiplicites in \(\set{0,1}\), and in this limited range max and min behave like logical \(\orSymbol\) and \(\andSymbol\), recovering the original definitions we had for sets. It's in this sense that our multiset operations generalize the set operations.

Multiset sums

An additional operation is now available to us, which is simply to sum two multisets together:

\[ \boundMultiplicityFunction{\paren{\multisetSymbol{M}\multisetSumSymbol \multisetSymbol{N}}}\defEqualSymbol \boundMultiplicityFunction{\multisetSymbol{M}} + \boundMultiplicityFunction{\multisetSymbol{N}} \]

As with \(\max\textAnd \min\), we are adding functions together in the sense that \(\function{\paren{\function{f} + \function{g}}}(\multisetElementSymbol{x})\defEqualSymbol \function{f}(\multisetElementSymbol{x}) + \function{g}(\multisetElementSymbol{x})\).

Here's an example of a multiset sum:

\[ \begin{array}{cccccc} \multiset{\rform{\card{r}},\rform{\card{r}},\gform{\card{g}}} & \multisetSumSymbol & \multiset{\rform{\card{r}},\bform{\card{b}},\bform{\card{b}}} & = & \multiset{\rform{\card{r}},\rform{\card{r}},\rform{\card{r}},\gform{\card{g}},\bform{\card{b}},\bform{\card{b}}} & \\ & & & & & \\ \begin{nsarray}{l} \langle \kern{2pt}\mto{\rform{\card{r}}}{2},\\ \phantom{ \langle \kern{2pt}}\mto{\gform{\card{g}}}{1},\\ \phantom{ \langle \kern{2pt}}\mto{\bform{\card{b}}}{0}\kern{2pt} \rangle \end{nsarray} & \multisetSumSymbol & \begin{nsarray}{l} \langle \kern{2pt}\mto{\rform{\card{r}}}{1},\\ \phantom{ \langle \kern{2pt}}\mto{\gform{\card{g}}}{0},\\ \phantom{ \langle \kern{2pt}}\mto{\bform{\card{b}}}{2}\kern{2pt} \rangle \end{nsarray} & = & \begin{nsarray}{l} \langle \kern{2pt}\mto{\rform{\card{r}}}{3},\\ \phantom{ \langle \kern{2pt}}\mto{\gform{\card{g}}}{1},\\ \phantom{ \langle \kern{2pt}}\mto{\bform{\card{b}}}{2}\kern{2pt} \rangle \end{nsarray} & \end{array} \]

Multiset constructors

Let's consider a general multiset constructor:

\[ \multisetConstructor{\function{F}(\multisetElementSymbol{x}_1,\multisetElementSymbol{x}_2,\ellipsis ,\multisetElementSymbol{x}_{\sym{n}})}{\elemOf{\multisetElementSymbol{x}_1}{\multisetSymbol{M}_1},\elemOf{\multisetElementSymbol{x}_2}{\multisetSymbol{M}_2},\ellipsis ,\elemOf{\multisetElementSymbol{x}_{\sym{n}}}{\multisetSymbol{M}_{\sym{n}}}} \]

Here, \(\function{F}\) is some function that computes an output value from inputs \(\multisetElementSymbol{x}_1,\multisetElementSymbol{x}_2,\ellipsis ,\multisetElementSymbol{x}_{\sym{n}}\). Where do these inputs come from? The values of \(\multisetElementSymbol{x}_1,\multisetElementSymbol{x}_2,\ellipsis ,\multisetElementSymbol{x}_{\sym{n}}\) are drawn from multisets (or sets) \(\multisetSymbol{M}_1,\multisetSymbol{M}_2,\ellipsis ,\multisetSymbol{M}_{\sym{n}}\) via the bindings \(\elemOf{\multisetElementSymbol{x}_{\sym{i}}}{\multisetSymbol{M}_{\sym{i}}}\). Bindings are indications that the multiset constructor should "draw an element from \(\multisetSymbol{M}_{\sym{i}}\) and store it in \(\multisetElementSymbol{x}_{\sym{i}}\)". The multiset constructor performs bindings in all possible ways in order to build a multiset of results.

This is very similar to how ordinary set constuctor notation works, except for one important distinction. In set constructor notation, a particular value can only be drawn from a set once – or more precisely, if we draw a particular value more than once, we would correspondingly collect a particular result \(\function{F}(\multisetElementSymbol{x}_1,\multisetElementSymbol{x}_2,\ellipsis ,\multisetElementSymbol{x}_{\sym{n}})\) more than once, but this would still result in the same constructed set! In contrast, multisets care about multiplicity. Therefore we draw an element from each \(\multisetSymbol{M}_{\sym{i}}\) exactly as many times as it appears. Here we show this difference for a simple example:

\[ \begin{aligned} \setConstructor{\power{\setElementSymbol{x}}{2}}{\elemOf{\setElementSymbol{x}}{\set{0,1,2,3,4}}}&= \set{0,1,4,9,16}\\[1em] \multisetConstructor{\power{\setElementSymbol{x}}{2}}{\elemOf{\setElementSymbol{x}}{\multiset{0,0,0,1,2,2,3,4}}}&= \multiset{0,0,0,1,4,4,9,16}\end{aligned} \]

Similarly, when \(\function{F}\) produces a particular result multiple times, it will appear in the constructed multiset with the corresponding multiplicity. In the following example, \(\modFunction(\setElementSymbol{x},2)\) outputs the value \(0\) three times as \(\setElementSymbol{x}\) is bound the integers \(\zeroTo{4}\), because \(\modFunction(0,2) = \modFunction(2,2) = \modFunction(4,2) = 0\):

\[ \multisetConstructor{\modFunction(\setElementSymbol{x},2)}{\elemOf{\setElementSymbol{x}}{\set{0,1,2,3,4}}} = \multiset{0,0,0,1,1} \]

The set version of this construction doesn't capture this multiplicity:

\[ \setConstructor{\modFunction(\setElementSymbol{x},2)}{\elemOf{\setElementSymbol{x}}{\set{0,1,2,3,4}}} = \set{0,1} \]

Images and preimages of sets

We now review some basic facts about images and preimages of functions, to set the stage for analogous definitions for multisets. These ideas can be found in any undergraduate text on set theory.

Definition

Consider a function \(\functionSignature{\function{f}}{\setSymbol{X}}{\setSymbol{Y}}\). We wish to apply it "setwise", asking how it acts on a set of inputs (\(\setSymbol{A} \subseteq \setSymbol{X}\)) to give a set of outputs (\(\setSymbol{B} \subseteq \setSymbol{Y}\)). We similarly might wish to know what set of inputs corresponds to a given set of outputs.

To formalize these ideas, we define the image and preimage functions of \(\function{f}\), written \(\imageModifier{\function{f}}\) and \(\preimageModifier{\function{f}}\) respectively. They have the following signatures:

\[ \begin{csarray}{ccccc}{accccc} \function{f} & : & \setSymbol{X} & \rarr & \setSymbol{Y}\\ \imageModifier{\function{f}} & : & \powerSet{\setSymbol{X}} & \rarr & \powerSet{\setSymbol{Y}}\\ \preimageModifier{\function{f}} & : & \powerSet{\setSymbol{Y}} & \rarr & \powerSet{\setSymbol{X}} \end{csarray} \]

We define them to using set constructor notation, where the image \(\imageModifier{\function{f}}\) function collects the outputs corresponding to the provided set of inputs, and the preimage \(\preimageModifier{\function{f}}\) collects the inputs corresponding to the provided set of outputs:

\[ \begin{aligned} \function{\imageModifier{\function{f}}}(\setSymbol{A})&\defEqualSymbol \setConstructor{\function{f}(\setElementSymbol{x})}{\elemOf{\setElementSymbol{x}}{\setSymbol{A}}}\\ \function{\imageModifier{\function{f}}}(\setSymbol{B})&\defEqualSymbol \setConstructor{\setElementSymbol{x}}{\elemOf{\setElementSymbol{x}}{\setSymbol{X}},\elemOf{\function{f}(\setElementSymbol{x})}{\setSymbol{B}}}\end{aligned} \]

Example

Consider the function \(\functionSignature{\function{f}}{\set{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}}{\set{\rgform{\card{x}},\gbform{\card{y}}}}\) defined by \(\function{f} = \assocArray{\mto{\rform{\card{r}}}{\rgform{\card{x}}},\mto{\gform{\card{g}}}{\rgform{\card{x}}},\mto{\bform{\card{b}}}{\gbform{\card{y}}}}\).

We’ll say that e.g. \(\set{\rgform{\card{x}}}\) is the image of \(\set{\rform{\card{r}}}\) under \(\function{f}\), meaning that \(\function{\imageModifier{\function{f}}}(\set{\rform{\card{r}}}) = \set{\rgform{\card{x}}}\) (for singletons, people sometimes elide the braces). For \(\function{f}\), we have the following images:

\[ \begin{csarray}{rclrclrclrcl}{accicciccicci} & & & \function{\imageModifier{\function{f}}}(\set{\rform{\card{r}}}) & = & \set{\rgform{\card{x}}} & \function{\imageModifier{\function{f}}}(\set{\rform{\card{r}},\gform{\card{g}}}) & = & \set{\rgform{\card{x}}} & & & \\[0.5em] \function{\imageModifier{\function{f}}}(\set{}) & = & \set{} & \function{\imageModifier{\function{f}}}(\set{\gform{\card{g}}}) & = & \set{\rgform{\card{x}}} & \function{\imageModifier{\function{f}}}(\set{\rform{\card{r}},\bform{\card{b}}}) & = & \set{\rgform{\card{x}},\gbform{\card{y}}} & \function{\imageModifier{\function{f}}}(\set{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}) & = & \set{\rgform{\card{x}},\gbform{\card{y}}}\\[0.5em] & & & \function{\imageModifier{\function{f}}}(\set{\bform{\card{b}}}) & = & \set{\gbform{\card{y}}} & \function{\imageModifier{\function{f}}}(\set{\gform{\card{g}},\bform{\card{b}}}) & = & \set{\rgform{\card{x}},\gbform{\card{y}}} & & & \end{csarray} \]

Since we've listed the images of all subsets of \(\set{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}\), we can collect these together to define \(\imageModifier{\function{f}}\) as an explicit mapping:

\[ \imageModifier{\function{f}} = \begin{csarray}{rrclrclrclrcll}{abbbcbbcbbcbbaa} \langle & \set{} & \mtoSymbol & \set{}, & \set{\rform{\card{r}}} & \mtoSymbol & \set{\rgform{\card{x}}}, & \set{\gform{\card{g}}} & \mtoSymbol & \set{\rgform{\card{x}}}, & \set{\bform{\card{b}}} & \mtoSymbol & \set{\gbform{\card{y}}}, & \\ & \set{\rform{\card{r}},\gform{\card{g}}} & \mtoSymbol & \set{\rgform{\card{x}}}, & \set{\rform{\card{r}},\bform{\card{b}}} & \mtoSymbol & \set{\rgform{\card{x}},\gbform{\card{y}}}, & \set{\gform{\card{g}},\bform{\card{b}}} & \mtoSymbol & \set{\rgform{\card{x}},\gbform{\card{y}}}, & \set{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}} & \mtoSymbol & \set{\rgform{\card{x}},\gbform{\card{y}}} & \rangle \end{csarray} \]

Note the important but elementary fact that the image function \(\imageModifier{\function{f}}\) preserves unions for any function \(\function{f}\):

\[ \function{\imageModifier{\function{f}}}(\setSymbol{A}\setUnionSymbol \setSymbol{B}) = \function{\imageModifier{\function{f}}}(\setSymbol{A})\setUnionSymbol \function{\imageModifier{\function{f}}}(\setSymbol{B}) \]

We show one example of this identity in action :

\[ \begin{csarray}{rclccccc}{accccccc} \imageModifier{\function{f}}(\set{\rform{\card{r}}} & \cup & \set{\bform{\card{b}}}) & = & \function{\imageModifier{\function{f}}}(\set{\rform{\card{r}},\bform{\card{b}}}) & = & \set{\rgform{\card{x}},\gbform{\card{y}}}\\[0.5em] \function{\imageModifier{\function{f}}}(\set{\rform{\card{r}}}) & \cup & \function{\imageModifier{\function{f}}}(\set{\bform{\card{b}}}) & = & \set{\rgform{\card{x}}}\setUnionSymbol \set{\gbform{\card{y}}} & = & \set{\rgform{\card{x}},\gbform{\card{y}}} \end{csarray} \]

However, the image function does not preserve intersections or relative complements. Here are counterexamples for each case:

\[ \begin{csarray}{rclccccc}{accccccc} \imageModifier{\function{f}}(\set{\rform{\card{r}}} & \cap & \set{\gform{\card{g}}}) & = & \function{\imageModifier{\function{f}}}(\set{}) & = & \set{}\\[0.5em] \function{\imageModifier{\function{f}}}(\set{\rform{\card{r}}}) & \cap & \function{\imageModifier{\function{f}}}(\set{\gform{\card{g}}}) & = & \set{\rgform{\card{x}}}\setIntersectionSymbol \set{\rgform{\card{x}}} & = & \set{\rgform{\card{x}}}\\[1em] \imageModifier{\function{f}}(\set{\rform{\card{r}}} & \setminus & \set{\gform{\card{g}}}) & = & \function{\imageModifier{\function{f}}}(\set{\rform{\card{r}}}) & = & \set{\rgform{\card{x}}}\\[0.5em] \function{\imageModifier{\function{f}}}(\set{\rform{\card{r}}}) & \setminus & \function{\imageModifier{\function{f}}}(\set{\gform{\card{g}}}) & = & \set{\rgform{\card{x}}}\setRelativeComplementSymbol \set{\rgform{\card{x}}} & = & \set{} \end{csarray} \]

In general, however, we do have that have the following inequalities for intersections and complements:

\[ \begin{csarray}{rclcrcr}{accccccc} \imageModifier{\function{f}}(\setSymbol{X} & \cap & \setSymbol{Y}) & \subseteq & \function{\imageModifier{\function{f}}}(\setSymbol{X}) & \cap & \function{\imageModifier{\function{f}}}(\setSymbol{Y})\\[1em] \imageModifier{\function{f}}(\setSymbol{X} & \setminus & \setSymbol{Y}) & \supseteq & \function{\imageModifier{\function{f}}}(\setSymbol{X}) & \setminus & \function{\imageModifier{\function{f}}}(\setSymbol{Y}) \end{csarray} \]

Let's examine the preimage function \(\preimageModifier{\function{f}}\), which again we can write as a literal mapping for our example:

\[ \preimageModifier{\function{f}} = \assocArray{\mto{\set{}}{\set{}},\mto{\set{\rgform{\card{x}}}}{\set{\rform{\card{r}},\gform{\card{g}}}},\mto{\set{\gbform{\card{y}}}}{\set{\bform{\card{b}}}},\mto{\set{\rgform{\card{x}},\gbform{\card{y}}}}{\set{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}}} \]

The preimage function is quite nice, since preserves intersections, unions, and relative complements for any function:

\[ \begin{csarray}{rclccccc}{accccccc} \preimageModifier{\function{f}}(\setSymbol{A} & \cup & \setSymbol{B}) & = & \function{\preimageModifier{\function{f}}}(\setSymbol{A}) & \cup & \function{\preimageModifier{\function{f}}}(\setSymbol{B})\\[0.5em] \preimageModifier{\function{f}}(\setSymbol{A} & \cap & \setSymbol{B}) & = & \function{\preimageModifier{\function{f}}}(\setSymbol{A}) & \cap & \function{\preimageModifier{\function{f}}}(\setSymbol{B})\\[0.5em] \preimageModifier{\function{f}}(\setSymbol{A} & \setminus & \setSymbol{B}) & = & \function{\preimageModifier{\function{f}}}(\setSymbol{A}) & \setminus & \function{\preimageModifier{\function{f}}}(\setSymbol{B}) \end{csarray} \]

Here we show some examples for these identities for our specific function, but leave the general proofs as exercises:

\[ \begin{csarray}{rclccccc}{accccccc} \preimageModifier{\function{f}}(\set{\rgform{\card{x}}} & \cup & \set{\gbform{\card{y}}}) & = & \function{\preimageModifier{\function{f}}}(\set{\rgform{\card{x}},\gbform{\card{y}}}) & = & \set{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}\\[0.5em] \function{\preimageModifier{\function{f}}}(\set{\rgform{\card{x}}}) & \cup & \function{\preimageModifier{\function{f}}}(\set{\gbform{\card{y}}}) & = & \set{\rform{\card{r}},\gform{\card{g}}}\setUnionSymbol \set{\bform{\card{b}}} & = & \set{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}\\[1em] \preimageModifier{\function{f}}(\set{\rgform{\card{x}}} & \cap & \set{\rgform{\card{x}},\gbform{\card{y}}}) & = & \function{\preimageModifier{\function{f}}}(\set{\rgform{\card{x}}}) & = & \set{\rform{\card{r}},\gform{\card{g}}}\\[0.5em] \function{\preimageModifier{\function{f}}}(\set{\rgform{\card{x}}}) & \cap & \function{\preimageModifier{\function{f}}}(\set{\rgform{\card{x}},\gbform{\card{y}}}) & = & \set{\rform{\card{r}},\gform{\card{g}}}\setIntersectionSymbol \set{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}} & = & \set{\rform{\card{r}},\gform{\card{g}}}\\[1em] \preimageModifier{\function{f}}(\set{\rgform{\card{x}},\gbform{\card{y}}} & \setminus & \set{\gbform{\card{y}}}) & = & \function{\preimageModifier{\function{f}}}(\set{\rgform{\card{x}}}) & = & \set{\rform{\card{r}},\gform{\card{g}}}\\[0.5em] \function{\preimageModifier{\function{f}}}(\set{\rgform{\card{x}},\gbform{\card{y}}}) & \setminus & \function{\preimageModifier{\function{f}}}(\set{\gbform{\card{y}}}) & = & \set{\rform{\card{r}},\gform{\card{g}}}\setRelativeComplementSymbol \set{\bform{\card{b}}} & = & \set{\rform{\card{r}},\gform{\card{g}}} \end{csarray} \]

We now extend the image and preimage functions to the setting of multisets.

Images and preimages of multisets

The muli-image function \(\multiImageModifier{\function{f}}\) and multi-preimage function \(\multiPreimageModifier{\function{f}}\)are functions that play the same role as the image function \(\imageModifier{\function{f}}\) and preimage function \(\preimageModifier{\function{f}}\), but operate on multisets on the domain and codomain:

\[ \begin{csarray}{ccccc}{acccc} \function{f} & : & \setSymbol{X} & \rarr & \setSymbol{Y}\\ \multiImageModifier{\function{f}} & : & \multisets{\setSymbol{X}} & \rarr & \multisets{\setSymbol{Y}}\\ \multiPreimageModifier{\function{f}} & : & \multisets{\setSymbol{Y}} & \rarr & \multisets{\setSymbol{X}} \end{csarray} \]

They are defined as follows, where \(\elemOf{\multisetSymbol{A}}{\multisets{\setSymbol{X}}}\textAnd \elemOf{\multisetSymbol{B}}{\multisets{\setSymbol{Y}}}\):

\[ \begin{aligned} \function{\multiImageModifier{\function{f}}}(\setSymbol{A})&\defEqualSymbol \multisetConstructor{\function{f}(\setElementSymbol{x})}{\elemOf{\setElementSymbol{x}}{\setSymbol{A}}}\\ \function{\multiPreimageModifier{\function{f}}}(\setSymbol{B})&\defEqualSymbol \multisetConstructor{\setElementSymbol{x}}{\elemOf{\setElementSymbol{x}}{\setSymbol{X}},\elemOf{\function{f}(\setElementSymbol{x})}{\setSymbol{B}}}\end{aligned} \]

The only difference from the definitions of the image and preimage functions are that we are now using multiset constructor notation, rather than set constructor notation.

Monoids

Advanced topics

Lattice structure

Convexity

Galois connection

Signed multisets


Word rings

Definition

The word ring, written \(\wordRingSymbol\), is the so-called group ring of the word group \(\wordGroupSymbol\): the ring of formal \(\ring{\mathbb{Z}}\)-linear combinations of elements of the group \(\wordGroupSymbol\). We will explain this idea with examples.

Examples

Example: one cardinal

For the word group \(\bindCards{\wordGroupSymbol }{\rform{\card{r}}}\), we can only form words from the single cardinal \(\rform{\card{r}}\). All of these words \(\elemOf{\groupElement{w}}{\bindCards{\wordGroupSymbol }{\rform{\card{r}}}}\) can be described by simply counting how many times the cardinal \(\rform{\card{r}}\) is repeated in \(\groupElement{w}\) (negative counts indicate that we are repeating \(\rform{\inverted{\card{r}}}\) instead):

\[ \groupElement{w} = \overRepeated{\concat{\rform{\card{r}} \rform{\card{r}} \ellipsis \rform{\card{r}}}}{\sym{p}} = \groupPower{\rform{\card{r}}}{\sym{p}} \]

Therefore we can write the set of elements compactly as :

\[ \bindCards{\wordGroupSymbol }{\rform{\card{r}}} = \setConstructor{\groupPower{\rform{\card{r}}}{\sym{p}}}{\elemOf{\sym{p}}{\group{\mathbb{Z}}}} \]

Word concatenation simply adds these exponents:

\[ \groupPower{\rform{\card{r}}}{\sym{p}}\gdot \groupPower{\rform{\card{r}}}{\sym{q}} = \overRepeated{\concat{\rform{\card{r}} \ellipsis \rform{\card{r}}}}{\sym{p}}\gdot \overRepeated{\concat{\rform{\card{r}} \ellipsis \rform{\card{r}}}}{\sym{q}} = \overRepeated{\concat{\concat{\rform{\card{r}} \ellipsis \rform{\card{r}}}\,\concat{\rform{\card{r}} \ellipsis \rform{\card{r}}}}}{\sym{p} + \sym{q}} = \groupPower{\rform{\card{r}}}{\sym{p} + \sym{q}} \]

Therefore \(\bindCards{\wordGroupSymbol }{\rform{\card{r}}}\) is isomorphic to the group \(\group{\mathbb{Z}}\), the integers under addition.

The word ring \(\bindCards{\wordRingSymbol }{\rform{\card{r}}}\) consists of integer-weighted sums of elements of \(\bindCards{\wordRingSymbol }{\rform{\card{r}}}\). It is the simplest answer to the question: "how do we define addition and subtraction of group elements?". Once we allow these new operations, we can add a given group element \(\groupElement{w}\) to itself any number of times. We can keep track of the number of times we have added (or subtracted) a group element from the zero element with an integer coefficient:

\[ \overRepeated{\groupElement{w} + \groupElement{w} + \ellipsis + \groupElement{w}}{\sym{n}} = \linearCombinationCoefficient{n} \, \groupElement{w} \]

Similarly, we can add two differing group elements to each other; since they are different, these two terms of a sum remain separate:

\[ \overRepeated{\groupElement{w} + \ellipsis + \groupElement{w}}{\sym{m}} + \overRepeated{\groupElement{v} + \ellipsis + \groupElement{v}}{\sym{n}} = \linearCombinationCoefficient{m} \, \groupElement{w} + \linearCombinationCoefficient{n} \, \groupElement{v} \]

Therefore, a general element of \(\bindCards{\wordRingSymbol }{\rform{\card{r}}}\) can be written as an integral linear combination of words. We'll write the coefficients with the same symbol as the ring element to make keeping track of these easier, but we'll gray the coefficient symbol to distinguish it:

\[ \groupElement{w} = \indexSum{\linearCombinationCoefficient{w_p} \, \groupPower{\rform{\card{r}}}{\sym{p}}}{\elemOf{\sym{p}}{\group{\mathbb{Z}}}}{} \]

Sum

To add two elements \(\groupElement{w},\groupElement{v}\) of the word ring, we take formally add the two sums. Since addition is commutative, we can re-arrange the terms to group like powers of \(\rform{\card{r}}\), and we obtain a sum whose coefficients are the sums of the coefficients of \(\groupElement{w}\textAnd \groupElement{v}\):

\[ \groupElement{w} + \groupElement{v} = \indexSum{\paren{\linearCombinationCoefficient{w_{\gbform{\sym{p}}}} + \linearCombinationCoefficient{v_{\gbform{\sym{p}}}}} \, \groupPower{\rform{\card{r}}}{\gbform{\sym{p}}}}{\elemOf{\gbform{\sym{p}}}{\group{\mathbb{Z}}}}{} \]

Product

To multiply two elements \(\groupElement{w},\groupElement{v}\) of the word ring, we multiply them as sums in the normal way:

\[ \begin{aligned} \groupElement{w}\gDot \groupElement{v}&= \paren{\indexSum{\linearCombinationCoefficient{w_{\gbform{\sym{p}}}} \, \groupPower{\rform{\card{r}}}{\gbform{\sym{p}}}}{\gbform{\sym{p}}}{}}\gDot \paren{\indexSum{\linearCombinationCoefficient{v_{\rbform{\sym{q}}}} \, \groupPower{\rform{\card{r}}}{\rbform{\sym{q}}}}{\rbform{\sym{q}}}{}}\\ &= \indexSum{\paren{\linearCombinationCoefficient{w_{\gbform{\sym{p}}}} \, \groupPower{\rform{\card{r}}}{\gbform{\sym{p}}}}\gDot \paren{\linearCombinationCoefficient{v_{\rbform{\sym{q}}}} \, \groupPower{\rform{\card{r}}}{\rbform{\sym{q}}}}}{\substack{\gbform{\sym{p}},\;\rbform{\sym{q}}}}{}\\ &= \indexSum{\linearCombinationCoefficient{w_{\gbform{\sym{p}}}} \, \linearCombinationCoefficient{v_{\rbform{\sym{q}}}} \, \paren{\groupPower{\rform{\card{r}}}{\gbform{\sym{p}}}\gdot \groupPower{\rform{\card{r}}}{\rbform{\sym{q}}}}}{\substack{\gbform{\sym{p}},\;\rbform{\sym{q}}}}{}\\ &= \indexSum{\linearCombinationCoefficient{w_{\gbform{\sym{p}}}} \, \linearCombinationCoefficient{v_{\rbform{\sym{q}}}} \, \groupPower{\rform{\card{r}}}{\gbform{\sym{p}} + \rbform{\sym{q}}}}{\substack{\gbform{\sym{p}},\;\rbform{\sym{q}}}}{}\end{aligned} \]

If we "gather like powers of \(\rform{\card{r}}\)" we obtain:

\[ \begin{aligned} \groupElement{w}\gDot \groupElement{v}&= \indexSum{\linearCombinationCoefficient{w_{\gbform{\sym{p}}}} \, \linearCombinationCoefficient{v_{\rbform{\sym{q}}}} \, \groupPower{\rform{\card{r}}}{\gbform{\sym{p}} + \rbform{\sym{q}}}}{\substack{\gbform{\sym{p}},\;\rbform{\sym{q}}}}{}\\ &= \indexSum{\paren{\indexSum{\linearCombinationCoefficient{w_{\gbform{\sym{p}}}} \, \linearCombinationCoefficient{v_{\rbform{\sym{q}}}}}{\substack{\gbform{\sym{p}},\;\rbform{\sym{q}}}}{\gbform{\sym{p}} + \rbform{\sym{q}} = \rgform{\sym{n}}}} \, \groupPower{\rform{\card{r}}}{\rgform{\sym{n}}}}{\rgform{\sym{n}}}{}\\ &= \indexSum{\paren{\indexSum{\linearCombinationCoefficient{w_{\gbform{\sym{p}}}} \, \linearCombinationCoefficient{v_{\rgform{\sym{n}} - \gbform{\sym{p}}}}}{\gbform{\sym{p}}}{}} \, \groupPower{\rform{\card{r}}}{\rgform{\sym{n}}}}{\rgform{\sym{n}}}{}\end{aligned} \]

Sums (or integrals) of this form are generally known as convolutions.

An alternate way of presenting this result is to write \(\groupElement{w}\gDot \groupElement{v}\) "coefficientwise", that is, to define the coefficient of \(\groupPower{\rform{\card{r}}}{\rgform{\sym{n}}}\) in the product \(\groupElement{w}\gDot \groupElement{v}\) in terms of \(\groupElement{w}\textAnd \groupElement{v}\):b

\[ \coefficient(\groupElement{w}\gDot \groupElement{v},\groupPower{\rform{\card{r}}}{\rgform{\sym{n}}}) = \indexSum{\linearCombinationCoefficient{w_{\gbform{\sym{p}}}} \, \linearCombinationCoefficient{v_{\rgform{\sym{n}} - \gbform{\sym{p}}}}}{\gbform{\sym{p}}}{} \]

Example: two cardinals

Like before, we'll start with the word group \(\wordGroupSymbol [\rform{\card{r}},\bform{\card{b}}]\), whose elements look like this:

\[ \bindCards{\wordGroupSymbol }{\rform{\card{r}},\bform{\card{b}}} = \list{\word{1},\word{\rform{\card{r}}},\word{\rform{\ncard{r}}},\word{\bform{\card{b}}},\word{\bform{\ncard{b}}},\word{\rform{\card{r}}}{\rform{\card{r}}},\word{\rform{\ncard{r}}}{\rform{\ncard{r}}},\word{\rform{\card{r}}}{\bform{\card{b}}},\word{\rform{\card{r}}}{\bform{\ncard{b}}},\word{\rform{\ncard{r}}}{\bform{\card{b}}},\word{\rform{\ncard{r}}}{\bform{\ncard{b}}},\word{\bform{\card{b}}}{\rform{\card{r}}},\word{\bform{\card{b}}}{\rform{\ncard{r}}},\word{\bform{\ncard{b}}}{\rform{\card{r}}},\word{\bform{\ncard{b}}}{\rform{\ncard{r}}},\word{\bform{\card{b}}}{\bform{\card{b}}},\word{\bform{\ncard{b}}}{\bform{\ncard{b}}},\word{\rform{\card{r}}}{\rform{\card{r}}}{\rform{\card{r}}},\word{\rform{\card{r}}}{\rform{\card{r}}}{\bform{\card{b}}},\ellipsis } \]

Therefore, the word ring \(\wordRingSymbol [\rform{\card{r}},\bform{\card{b}}]\) consists of any \(\mathbb{Z}\)-linear combination of elements from \(\wordGroupSymbol [\rform{\card{r}},\bform{\card{b}}]\). An element of \(\elemOf{\groupElement{w}}{\wordRing{\quiver{2}}}\) can be written as:

\[ \groupElement{w} = \indexSum{\linearCombinationCoefficient{w_i} \, \wordSymbol{e}_{\sym{i}}}{\sym{i}}{} \]

Here, \(\wordSymbol{e} = \list{\word{1},\word{\rform{\card{r}}},\word{\rform{\ncard{r}}},\word{\bform{\card{b}}},\word{\bform{\ncard{b}}},\word{\rform{\card{r}}}{\rform{\card{r}}},\word{\rform{\ncard{r}}}{\rform{\ncard{r}}},\word{\rform{\card{r}}}{\bform{\card{b}}},\ellipsis }\) is a sequence that enumerates the elements of \(\wordRingSymbol [\rform{\card{r}},\bform{\card{b}}]\) in some order. This serves as an (infinite) basis for the word ring, and effectively allows us to model elements of the ring as infinite-dimensional integer-valued "vectors" with respect to this basis.

Sum

The sum is defined by adding the coefficients elementwise, as before:

\[ \groupElement{w} + \groupElement{v} = \indexSum{\paren{\linearCombinationCoefficient{w_{\gbform{\sym{i}}}} + \linearCombinationCoefficient{v_{\gbform{\sym{i}}}}} \, \wordSymbol{e}_{\gbform{\sym{i}}}}{\gbform{\sym{i}}}{} \]

Product

The product in the group ring is defined by expanding the product-of-sums into a sum-of-products. Each individual product is then an ordinary group multiplication, which we know how to do. We "gather the like terms" here: the coefficient of each word in the product \(\groupElement{w}\gDot \groupElement{v}\) is, by definition, the sum of the ways it can be formed as products of terms in the sums for \(\groupElement{w}\textAnd \groupElement{v}\):

\[ \begin{aligned} \groupElement{w}\gDot \groupElement{v}&= \paren{\indexSum{\linearCombinationCoefficient{w_{\gbform{\sym{p}}}} \, \wordSymbol{e}_{\gbform{\sym{p}}}}{\gbform{\sym{p}}}{}}\gDot \paren{\indexSum{\linearCombinationCoefficient{v_{\rbform{\sym{q}}}} \, \wordSymbol{e}_{\rbform{\sym{q}}}}{\rbform{\sym{q}}}{}}\\ &= \indexSum{\paren{\linearCombinationCoefficient{w_{\gbform{\sym{p}}}} \, \wordSymbol{e}_{\gbform{\sym{p}}}}\gDot \paren{\linearCombinationCoefficient{v_{\rbform{\sym{q}}}} \, \wordSymbol{e}_{\rbform{\sym{q}}}}}{\substack{\gbform{\sym{p}},\;\rbform{\sym{q}}}}{}\\ &= \indexSum{\linearCombinationCoefficient{w_{\gbform{\sym{p}}}} \, \linearCombinationCoefficient{v_{\rbform{\sym{q}}}} \, \paren{\groupElement{\wordSymbol{e}_{\gbform{\sym{p}}}}\gdot \groupElement{\wordSymbol{e}_{\rbform{\sym{q}}}}}}{\substack{\gbform{\sym{p}},\;\rbform{\sym{q}}}}{}\end{aligned} \]

Again, we can gather like terms, in other words, those group elements \(\wordSymbol{e}_{\rgform{\sym{k}}}\) for which \(\groupElement{\wordSymbol{e}_{\gbform{\sym{p}}}}\gdot \groupElement{\wordSymbol{e}_{\rbform{\sym{q}}}} = \wordSymbol{e}_{\rgform{\sym{k}}}\):

\[ \begin{aligned} \groupElement{w}\gDot \groupElement{v}&= \indexSum{\linearCombinationCoefficient{w_{\gbform{\sym{p}}}} \, \linearCombinationCoefficient{v_{\rbform{\sym{q}}}} \, \paren{\groupElement{\wordSymbol{e}_{\gbform{\sym{p}}}}\gdot \groupElement{\wordSymbol{e}_{\rbform{\sym{q}}}}}}{\substack{\gbform{\sym{p}},\;\rbform{\sym{q}}}}{}\\ &= \indexSum{\paren{\indexSum{\linearCombinationCoefficient{w_{\gbform{\sym{p}}}} \, \linearCombinationCoefficient{v_{\rbform{\sym{q}}}}}{\substack{\gbform{\sym{p}},\;\rbform{\sym{q}}}}{\groupElement{\wordSymbol{e}_{\gbform{\sym{p}}}}\gdot \groupElement{\wordSymbol{e}_{\rbform{\sym{q}}}} = \wordSymbol{e}_{\rgform{\sym{k}}}}} \, \wordSymbol{e}_{\rgform{\sym{n}}}}{\rgform{\sym{n}}}{}\end{aligned} \]

Enumeration of basis elements

To define the 2-cardinal word ring \(\wordRing{\quiver{2}}\), we made use of the set of possible words \(\wordSymbol{e}_{\sym{i}}\) as a basis. It was enough that it was defined in some linear order so that we could index over it in the sum.

In the case of the 1-cardinal ring \(\wordRingSymbol [\rform{\card{r}}]\) we could use as basis the bi-infinite sequence \(\list{\ellipsis ,\repeatedPower{\rform{\card{r}}}{-2},\repeatedPower{\rform{\card{r}}}{-1},\repeatedPower{\rform{\card{r}}}{0},\repeatedPower{\rform{\card{r}}}{1},\repeatedPower{\rform{\card{r}}}{2},\ellipsis }\), indexed by \(\mathbb{Z}\). This order allowed us to rewrite the conditional inner sum \(\indexSum{\paren{\indexSum{\linearCombinationCoefficient{w_p} \, \linearCombinationCoefficient{v_q}}{\sym{p} + \sym{q} = \sym{n}}{}} \, \groupPower{\rform{\card{r}}}{\sym{n}}}{\sym{n}}{}\) as \(\indexSum{\paren{\indexSum{\linearCombinationCoefficient{w_p} \, \linearCombinationCoefficient{v_{n - p}}}{\sym{p}}{}} \, \groupPower{\rform{\card{r}}}{\sym{n}}}{\sym{n}}{}\) since it amounted to the requirement that \(\sym{p} + \sym{q} = \sym{n}\), allowing us to solve for \(\sym{q}\) explicitly.

But for 2 or more cardinals, a linear enumeration of the basis elements is both complicated to define, and doesn't allow for such a neat arithmetic form for the inner sum. The larger point is that this linear enumeration of basis elements is a kind of holdover from traditional mathematics, where questions of computation and notation aren't usually primary, and it is useful to think about ring elements as being infinite-dimensional integer "vectors".

Luckily, it turns out there is a more combinatorial and computational way of thinking about group rings that builds them on a different interpretation. To introduce this idea, we first have to define and build intution for an underutilized structure in mathematics, the multiset.

Connection to polynomials

The elements of the word ring \(\wordRingSymbol [\rform{\card{r}}]\) look awfully similar to how one adds and multiply polynomials (where \(\rform{\card{r}}\) plays the role of the indeterminate), except in this case we allow negative powers. Indeed \(\wordRingSymbol [\rform{\card{r}}]\) is a so-called polynomial ring:

\[ \wordRingSymbol [\rform{\card{r}}]\isomorphicSymbol \polynomialRing{\ring{\mathbb{Z}}}{\rform{\card{r}},\inverse{\rform{\card{r}}}} \]

This recalls the Laurent polynomials, although the coefficients appearing in the elements of the word ring are valued in \(\mathbb{Z}\) rather than \(\mathbb{C}\).

The word ring \(\wordRing{\quiver{\sym{k}}}\) for \(\sym{k}>1\) can be thought of as consisting of multivariate, non-commutative polynomials, with negative powers allowed.

Word rings as multisets

A concrete interpretation of an element \(\elemOf{\ringElement{ \omega }}{\wordRingSymbol }\) can be given when the integer coefficients are all positive. In this case, we can see \(\ringElement{ \omega }\) as representing a multiset of words, where the number of times a given word \(\elemOf{\groupElement{w}}{\wordGroupSymbol }\) is present in the multiset is represented by the coefficient of \(\groupElement{w}\) in the sum \(\ringElement{ \omega }\). The zero element of the ring is then just the empty multiset. But since coefficients can be negative, it is natural to extend our interpretation to see a general element \(\ringElement{ \omega }\) as representing a signed multiset, in which paths may appear in their ordinary form, or in a "negated" form, with the total multiplicity being described by the coefficient.

From now on, whenever we use the term multiset, it should be interpreted as signed multiset. This elision makes for less clunky language, but more importantly it sets up a simple and useful combinatorial interpretation of the constructions we'll consider. In each case we can still extend this intepretation to the setting of signed multisets, but doing this explicity would bog us down for no real reward.

Operations

Addition of two elements corresponds to merging of the two corresponding multisets.

But how do we multiply two multisets of words? Group rings define multiplication by linearity, where we multiply the formal combinations by distributing the two formal sums through one-another, yielding a sum of pairwise group multipliations – where the group operation in \(\wordGroupSymbol\) is the familiar the concatenation of words. Under the multiset intepretation, this corresponds to forming a multiset of all possible concatenations of a word from the first multiset and a word from the second multiset.


Adjacency

Introduction

In this section we review the adjacency matrix of a graph and consider some of its basic properties. We ask how a similar structure might be devised to represent the cardinal structure of a quiver. Motivated by this question, we'll use the word ring to define routes and plans, which model subjective states of knowledge about potential paths in a quiver. Multisets allow us to obtain an isomorphism between plans and plan matrices. We then construct a particular plan matrix that plays the role of an adjacency matrix: the adjacency plan matrix (which has a corresponding adjacency plan).

Adjacency matrices of graphs

The adjacency matrix \(\matrix{A}\) of a finite directed graph \(\graph{G}\) with vertices \(\sym{V} = \list{\vert{v_1},\vert{v_2},\ellipsis ,\vert{v_{\sym{n}}}} = \vertexList(\graph{G})\) is an \(\sym{n}\times \sym{n}\) matrix with entries:

\[ \matrixPart{\matrix{A}}{\matrixRowPart{\sym{i}}}{\matrixColumnPart{\sym{j}}}\defEqualSymbol \begin{cases} 1 &\text{if } \elemOf{\de{\vert{v_{\sym{i}}}}{\vert{v_{\sym{j}}}}}{\graph{G}}\\ 0 &\text{otherwise} \end{cases} \]

For a finite directed multigraph, the entries can be arbitrary non-negative integers that simply count the number of edges \(\de{\vert{v_{\sym{i}}}}{\vert{v_{\sym{j}}}}\).

Examples

Here we illustrate some example graphs and their corresponding adjacency matrices:

Properties

Matrix powers and walks

Quivers

How do we model the cardinal structure that a quiver imposes on a digraph? A famous quip in computer science goes that "all problems can be solved by an additional level of indirection". Our additional level of indirection is via the cardinals: we now consider a mapping from cardinals to adjacency matrices:

\[ \matrix{A}\defEqualSymbol \assocArray{\mto{\card{c}_1}{\matrix{A}_1},\mto{\card{c}_2}{\matrix{A}_2},\ellipsis ,\mto{\card{c}_{\sym{k}}}{\matrix{A}_{\sym{k}}}} \]

Each \(\matrix{A}_{\sym{i}}\) gives the ordinary digraph adjacency matrix for the subgraph of the quiver \(\quiver{Q}\) consisting only of edges labeled with the cardinal \(\card{c}_{\sym{i}}\).

Here we show these mappings for some simple quivers:

Back to single matrices

An idea that might have occured to the reader is to combine the per-cardinal adjacency matrices into a single adjacency matrix:

But if this idea is to work, what are these matrices? More specifically, what is the meaning of sums of the form \(\gform{\card{g}} + \rform{\card{r}}\) that can appear in their entries? To give formal meaning to this idea, we will first have to consider the word ring, which allows us to form such sums.

Routes, multiroutes, and plans

Motivation

We will now construct a family of structures that represents subjective states of knowledge of an agent about how they might navigate a quiver \(\quiver{Q}\).

The subjective states will describe how an agent believes it can move between ordered pairs of vertices \(\vertOf{\vert{v_{\sym{i}}},\vert{v_{\sym{j}}}}{\quiver{Q}}\), which we'll call endpoints. We'll organize the various forms of knowledge as follows:

  • a route \(\routeSymbol{R}\) for \(\fromTo{\vert{v}\fromToSymbol \vert{w}}\) is an imagined path from origin vertex \(\vert{v}\) to destination vertex \(\vert{w}\) (this need not correspond to an actual path)

  • a multiroute \(\multirouteSymbol{R}\) for \(\fromTo{\vert{v}\fromToSymbol \vert{w}}\) is a multiset of routes that all share the same endpoints \(\fromTo{\vert{v}\fromToSymbol \vert{w}}\)

  • a plan \(\planSymbol{P}\) is a multiset of routes, not necessarily for the same endpoints

A plan and a multiroute are said to be empty if they are empty as multisets.

Being a multiset of routes, a multiroute is necessarily also a plan. Conversely, a plan might contain routes with differing endpoints, and hence is not in general a multiroute. We can however refer to the multiroute for \(\fromTo{\vert{v}\fromToSymbol \vert{w}}\,\)within a plan, whch is the multiset of all those routes with those particular endpoints.

A route is fictitious if it does not describe a path in the quiver. Likewise, a multiroute or plan is fictitious if it contains a single fictitious route.

A plan does not have to be consistent: a plan might contain a route for \(\fromTo{\vert{u}\fromToSymbol \vert{v}}\) and a route for \(\fromTo{\vert{v}\fromToSymbol \vert{w}}\), but no route for \(\fromTo{\vert{u}\fromToSymbol \vert{w}}\). This doesn't match our intuition about navigation, which is that if we know how to get from \(\vert{u}\) to \(\vert{v}\) and from \(\vert{v}\) to \(\vert{w}\) then we implicitly know how to get from \(\vert{u}\) to \(\vert{w}\). We will create an exact definition of consistency later.

The route word for a route for \(\fromTo{\vert{v}\fromToSymbol \vert{w}}\) is a path word that describes the imagined path from vertex \(\vert{v}\) to vertex \(\vert{w}\) as a sequence of cardinals.

The multiroute word for a multiroute for \(\fromTo{\vert{v}\fromToSymbol \vert{w}}\) is a path multiword that describes the multiset of imagined paths from vertex \(\vert{v}\) to vertex \(\vert{w}\) in terms of their cardinals.

Interpretation

As we said, plans are constructs that describe what an agent believes about how it is possible to navigate a quiver. These beliefs do not have to true, or even consistent, but we will of course define the logic of how to build true and consistent beliefs.

Notation

In [[[Path groupoids]]] we introduced the notation \(\paren{\pathWord{\vert{u}}{\wordSymbol{W}}{\vert{v}}}\) to refer to a path in a quiver. (Multi)routes are distinct from paths, since while paths must exist in the quiver, (multi)routes can be fictitious. Therefore we introduce distinct notation \(\route{\vert{u}}{\wordSymbol{W}}{\vert{v}}\) for a route for \(\fromTo{\vert{v}\fromToSymbol \vert{w}}\) with path word \(\wordSymbol{W}\) and \(\multiroute{\vert{u}}{\multiwordSymbol{W}}{\vert{v}}\) to represent a multiroute for \(\fromTo{\vert{v}\fromToSymbol \vert{w}}\) with path multiword \(\elemOf{\multiwordSymbol{W}}{\wordRingSymbol }\).

Recall that a multiword \(\multiwordSymbol{W}\) is a formal sum of words \(\elemOf{\wordSymbol{W_{\sym{i}}}}{\wordGroupSymbol }\) with coefficients \(\elemOf{\sym{n_{\sym{i}}}}{\ring{\mathbb{Z}}}\):

\[ \multiwordSymbol{W} = \sym{n_1} \, \wordSymbol{W_1} + \sym{n_2} \, \wordSymbol{W_2} + \ellipsis \]

The multiroute with multiword \(\multiroute{\vert{u}}{\multiwordSymbol{W}}{\vert{v}}\) with path multiword \(\multiwordSymbol{W}\) is by definition the formal sum of routes with corresponding path words from \(\multiwordSymbol{W}\):

\[ \multiroute{\vert{u}}{\multiwordSymbol{W}}{\vert{v}}\identicallyEqualSymbol \sym{n_1} \, \route{\vert{u}}{\wordSymbol{W_1}}{\vert{v}} + \sym{n_2} \, \route{\vert{u}}{\wordSymbol{W_2}}{\vert{v}} + \ellipsis \]

Recall that when all \(n_{\sym{i}} \ge 0\), we can interpret a multiword as a multiset, where \(\sym{n_{\sym{i}}}\) are the multiplicities for each distinct word (if some \(\sym{n_{\sym{i}}}<0\), we have a signed multiset). Then the above formal sum is equivalent to building a multiroute as a multiset of routes, one for each word in the multiword:

\[ \multiroute{\vert{u}}{\multiwordSymbol{W}}{\vert{v}}\identicallyEqualSymbol \multisetConstructor{\route{\vert{u}}{\wordSymbol{W}}{\vert{v}}}{\elemOf{\wordSymbol{W}}{\multiwordSymbol{W}}} \]

Representation

We've introduced the high-level concepts of routes, multiroutes, and plans. We'll now show how a plan can be represented by a matrix of a particular type.

Consider an \(\sym{n}\times \sym{n}\) matrix \(\matrix{M}\), where \(\sym{n} = \vertexCountOf{\quiver{Q}}\) is the number of vertices, and whose entries are multiwords, namely elements of the word ring \(\wordRingSymbol\).

A matrix \(\matrix{M}\,\)represents a plan \(\planSymbol{P}\) as follows:

\[ \planSymbol{P} = \indexSum{\multiroute{\vert{v_{\sym{i}}}}{\matrixPart{\matrix{M}}{\sym{i}}{\sym{j}}}{\vert{v_{\sym{j}}}}}{\sym{i},\sym{j}}{} \]

The \(\tuple{\sym{i},\sym{j}}\) entry of \(\matrix{M}\), written \(\matrixPart{\matrix{M}}{\sym{i}}{\sym{j}}\), gives the multiroute word for \(\fromTo{\vert{v_{\sym{i}}}\fromToSymbol \vert{v_{\sym{j}}}}\).

Let's rephrase this in terms of individual routes, using the multiset interpretation of the group ring \(\wordRingSymbol\). Since each entry \(\matrixPart{\matrix{M}}{\sym{i}}{\sym{j}}\) is an element of the \(\wordRingSymbol\), we can interpret the entry as a multiset of path words. These path words will be the route words for individual routes for \(\fromTo{\vert{v_{\sym{i}}}\fromToSymbol \vert{v_{\sym{j}}}}\).

\[ \planSymbol{P} = \multisetConstructor{\route{\vert{v_{\sym{i}}}}{\wordSymbol{W}}{\vert{v_{\sym{j}}}}}{\begin{array}{c} 1 \le \sym{i},\sym{j} \le \sym{n}\\ \elemOf{\wordSymbol{W}}{\matrixPart{\matrix{M}}{\sym{i}}{\sym{j}}} \end{array} } \]

We can see now more clearly the utility of the word ring: multiwords in the word ring represent multisets of path words. Fixing an origin and destination \(\fromTo{\vert{v_{\sym{i}}}\fromToSymbol \vert{v_{\sym{j}}}}\), each path word describes a route, and hence a multiset of path words describes a multiroute. Organizing these multiwords into a matrix, we can represent an entire plan. Next, we'll consider the significance of the ring addition and multiplication of such plan matrices.

Ring structure of plans

Matrix ring

The set of \(\sym{n}\times \sym{n}\) matrices (whose entries are taken from a ring \(\ring{R}\)) forms a ring in its own right, called a matrix ring and written \(\matrixRing{\ring{R}}{\sym{n}}\), with addition and multiplication given by normal algorithms for matrices:

\[ \begin{aligned} \matrixPart{\paren{\matrix{X}\matrixPlusSymbol \matrix{Y}}}{\sym{i}}{\sym{j}}&\defEqualSymbol \matrixPart{\matrix{X}}{\sym{i}}{\sym{j}} + \matrixPart{\matrix{Y}}{\sym{i}}{\sym{j}}\\ \matrixPart{\paren{\matrix{X}\matrixDotSymbol \matrix{Y}}}{\sym{i}}{\sym{j}}&\defEqualSymbol \indexSum{\matrixPart{\matrix{X}}{\sym{i}}{\sym{k}} \, \matrixPart{\matrix{Y}}{\sym{k}}{\sym{j}}}{\sym{k} \le \sym{n}}{}\end{aligned} \]

(The addition and multiplication of matrix entries on the RHS of these definitions takes place in the ring \(\ring{R}\) of matrix entries.)

Plan ring

The matrices we used to represent plans for a quiver \(\quiver{Q}\) form a matrix ring, which we will call the plan matrix ring, written \(\planRing{\quiver{Q}}\):

\[ \planRing{\quiver{Q}}\defEqualSymbol \matrixRing{\wordRing{\quiver{Q}}}{\vertexCountOf{\quiver{Q}}} \]

This is the \(\sym{n}\times \sym{n}\) matrix ring (where \(\sym{n} = \vertexCountOf{\quiver{Q}}\) is the number of vertices), whose entries are elements of the word ring \(\wordRingSymbol\) over the cardinals of the quiver. We'll call a matrix from the plan ring a plan matrix.

Plan interpretation

We'll now propose an obvious interpretation for a matrix \(\elemOf{\matrix{M}}{\planRing{\quiver{Q}}}\): it is a collection of plans. A plan is simply a multiset of paths that take us from a "source" vertex \(\vert{v_{\sym{i}}}\) to a "destination" vertex \(\vert{v_{\sym{j}}}\). Each path in the plan represents a route we could attempt to use to go from the source to the destination. These plans are indexed by the pair of source and destination vertex, so that \(\matrixPart{\matrix{M}}{\sym{i}}{\sym{j}}\) is the multiset of the path words for the plan to go from \(\vert{v_{\sym{i}}}\) to \(\vert{v_{\sym{j}}}\). A particular plan can be the empty multiset, meaning that there is "no plan" to go from vertex \(\vert{v_{\sym{i}}}\) to \(\vert{v_{\sym{j}}}\), or it can contain several paths, representing a choice of ways to go from vertex \(\vert{v_{\sym{i}}}\) to \(\vert{v_{\sym{j}}}\). Moreover, a plan can contain invalid paths, meaning that \(\matrixPart{\matrix{M}}{\sym{i}}{\sym{j}}\) contains path words that do not describe any path in the actual quiver – this will happen when the path word references a cardinal that does not label any edge between the relevant vertices. Such a plan is called in invalid plan.

In this sense, elements of the free path ring are "subjective", representing not actual paths but potential paths that an agent might or might not be able to follow. This freedom to form invalid plans is the motivation for the term free in the name “free path ring”. We will shortly force "the rubber to meet the road" and form the (non-free) path ring, but understanding the free path ring is a useful first step.

Sums of matrices

The sum \(\matrix{X} + \matrix{Y}\) of two plan matrices \(\elemOf{\matrix{X},\matrix{Y}}{\planRing{\quiver{Q}}}\) is given by merging \(\matrix{X}\) and \(\matrix{Y}\) seen as multisets of routes.

Products of matrices

What about multiplication \(\matrix{X}\matrixDotSymbol \matrix{Y}\) of two plan matrices \(\matrix{X},\matrix{Y}\)? By the ordinary definition of matrix multiplication in a matrix ring, we have:

\[ \matrixPart{\paren{\matrix{X}\matrixDotSymbol \matrix{Y}}}{\sym{i}}{\sym{j}} = \indexSum{\matrixPart{\matrix{X}}{\sym{i}}{\sym{k}} \, \matrixPart{\matrix{Y}}{\sym{k}}{\sym{j}}}{\sym{k} \le \sym{n}}{} \]

For fixed \(\sym{i},\sym{j},\sym{k}\), the product \(\matrixPart{\matrix{X}}{\sym{i}}{\sym{k}} \, \matrixPart{\matrix{Y}}{\sym{k}}{\sym{j}}\) is the product of two multiwords. Under the multiset interpretation, this product is the multiset formed from all possible concatenations of a word from \(\matrixPart{\matrix{X}}{\sym{i}}{\sym{k}}\) and a word from \(\matrixPart{\matrix{Y}}{\sym{k}}{\sym{j}}\) respectively. Each such pair of words represents a route from \(\matrix{X}\) for \(\fromTo{\vert{v_{\sym{i}}}\fromToSymbol \vert{v_{\sym{k}}}}\) and a route from \(\matrix{Y}\) for \(\fromTo{\vert{v_{\sym{k}}}\fromToSymbol \vert{v_{\sym{j}}}}\). Therefore each concatenated word in the result can be interpreted as the path word for a route for \(\fromTo{\vert{v_{\sym{i}}}\fromToSymbol \vert{v_{\sym{j}}}}\). The entire result is the multiset of such composite path words: a multiword.

For a fixed \(\sym{i}\) and \(\sym{j}\), the sum \(\indexSum{\matrixPart{\matrix{X}}{\sym{i}}{\sym{k}} \, \matrixPart{\matrix{Y}}{\sym{k}}{\sym{j}}}{\sym{k} \le \sym{n}}{}\) over all \(\sym{k}\) is therefore a multiset that consists of the path words of composite routes that start at \(\vert{v_{\sym{i}}}\) and end at \(\vert{v_{\sym{j}}}\), having passed through any \(\vert{v_{\sym{k}}}\): the first part of each composite route comes from \(\matrix{X}\), the second from \(\matrix{Y}\).

Therefore, the product \(\matrix{X}\matrixDotSymbol \matrix{Y}\) represents the plan that consists of the all composite routes formed from any route in \(\matrix{X}\) followed by any route in \(\matrix{Y}\), whereever these can be composed. The matrix product is therefore the natural way to combine two plans in an ordered way to form another plan.

Plan matrices vs plans

Plan matrices are distinct from plans themselves, although we have shown how they are related under the multiset interpretation of rings. Specifically, a plan matrix represents a (possibly signed) multiset of routes. Is there a natural equivalence between plans and plan matrices?

The answer is yes, but in a similar sense to how matrices correspond to linear operators for a finite-dimensional vector space. Once we have chosen an ordered basis for a vector space, we can represent a linear operator as a matrix. Similarly, once we choose a labeling of vertices of a quiver, we can form plan matrices to represent plans, since the entries of the plan matrix are relative to a particular ordering of vertices. In the setting of a (countably) infinite quiver, nothing much changes, though our matrices become infinite. Questions of "convergence" are appropriate to worry about: we might require than any particular sum that occurs in the definition of plan matrix multiplication involves only a finite number of non-zero terms, but we will see how this can be achieved later.

Abstract operations on plans

We have already see how to define plan matrix multiplication and addition, and have attached multiset interpretations to these. It is worth now defining the same operations abstractly on plans themselves, since they are arguably simpler when we do not insist on representing plans as plan matrices:

The sum of two plans \(\planSymbol{X} + \planSymbol{Y}\) is the union of the \(\planSymbol{X}\) and \(\planSymbol{Y}\) as multisets of routes:

\[ \planSymbol{X} + \planSymbol{Y}\defEqualSymbol \planSymbol{X}\setUnionSymbol \planSymbol{Y} \]

The product of two plans \(\planSymbol{X} \, \planSymbol{Y}\) is the multiset of compositions of routes from \(\planSymbol{X}\) and routes from \(\planSymbol{Y}\):

\[ \planSymbol{X} \, \planSymbol{Y}\defEqualSymbol \multisetConstructor{\pathCompose{\routeSymbol{X}}{\routeSymbol{Y}}}{\begin{array}{c} \elemOf{\routeSymbol{X}}{\planSymbol{X}}\\ \elemOf{\routeSymbol{Y}}{\planSymbol{Y}} \end{array} } \]

Implicitly, if two routes cannot be composed, in other words if \(\pathCompose{\routeSymbol{X}}{\routeSymbol{Y}} = \nullPath\), that term is ignored in the construction.

In fact, plans form a ring, the plan ring, just like plan matrices do. These rings are isomorphic, as one might imagine.

Consistency

We mentioned earlier that plans need not be consistent, although we didn't define precisely what consistency is. Roughly speaking, a plan is consistent if it is closed under composition with itself, meaning that any two routes in the plan that can be composed to form another route will form a composite route that is already in the plan. We naturally expect this of intelligent agents, since if such an agent knows how to get from A to B and from B to C, it necessarily must know how to get from A to C – if it does not already have a route from A to C, it can simply compose a route from A to B with a route from B to C.

What is the mathematical condition that corresponds to this notion of consistency? Quite simply, if a plan \(\planSymbol{P}\) is consistent, then \(\planSymbol{P} \, \planSymbol{P} = \planSymbol{P}\) – or in ring-theory terminology, \(\planSymbol{P}\) is idempotent. We will show how to construct such consistent plans shortly.

Cardinal and adjacency plans

We are now ready to engage with the original goal, which was to represent the cardinal structure of a quiver with a suitable generalization of an adjacency matrix.

Now that we have plan matrices, we can form the adjacency plan matrix \(\matrix{P}\) for a quiver. Here we show one example:

Notice the presence of inverted cardinals below the diagonal. Why is this necessary? The reason is that we can form paths out of cardinals or their inverses. In other words, we can traverse an edge \(\tde{1}{2}{\rform{\card{r}}}\) in the forward direction, yielding the path \(\pathWord{1}{\word{\rform{\card{r}}}}{2}\), or we can traverse it in the backward direction, yielding the path \(\pathWord{2}{\word{\rform{\ncard{r}}}}{1}\). If we wish for all paths of length \(\sym{n}\) to be present in the iterated adjacency plan matrix \(\power{\matrix{P}}{\sym{n}}\), we must encode a given edge in the adjacency plan matrix in both the forward and backward orientations, corresponding to a normal and inverted cardinal present in entries mirrored around the diagonal.

Powers of the adjacency plan

Eigenvectors of adjacency

Plan Laplacian


Cayley quivers

Introduction

In [[[Transitive quivers]]] we defined families of transitive quivers like the line, square, and triangular quivers. We now define how to obtain a Cayley quiver from a group by choosing a set of generators, or equivalently by choosing a presentation for a group. We explain how the simple transitive quivers are generated this way from \(\group{\power{\group{\mathbb{Z}}}{\sym{n}}}\).

Groups

We briefly recall the definition of a group and some related ideas for readers who need a very short refresher:

Definition

A group is a structure \(\tuple{\group{G},\Gmult }\) consisting of a set of elements \(\group{G}\) and a group multiplication (or group operation) \(\functionSignature{\function{\Gmult }}{\tuple{\group{G},\group{G}}}{\group{G}}\).

The multiplication is associative, so \(\groupElement{f}\Gmult \paren{\groupElement{g}\Gmult \groupElement{h}} = \paren{\groupElement{f}\Gmult \groupElement{g}}\Gmult \groupElement{h}\) for all \(\elemOf{\groupElement{f},\groupElement{g},\groupElement{h}}{\group{G}}\).

Each element \(\groupElement{g}\) also has an inverse \(\groupInverse{\groupElement{g}}\) satisfying \(\groupInverse{\groupElement{g}}\Gmult \groupElement{g} = \groupElement{g}\Gmult \groupInverse{\groupElement{g}} = \groupElement{e}\), where \(\groupElement{e}\Gmult \groupElement{g} = \groupElement{g}\Gmult \groupElement{e} = \groupElement{g}\) defines the identity or unit element \(\elemOf{\groupElement{e}}{\group{G}}\).

We will sometimes drop the symbol \(\Gmult\) and write \(\groupElement{a}\Gmult \groupElement{b}\) as simply \(\groupElement{a}\iGmult \groupElement{b}\).

Commutators

The commutator of two group elements is defined as follows:

\[ \groupCommutator{\groupElement{a}}{\groupElement{b}}\defEqualSymbol \groupElement{a}\iGmult \groupElement{b}\iGmult \groupInverse{\groupElement{a}}\iGmult \groupInverse{\groupElement{b}} \]

Generators

A set of generators of a group \(\list{\groupGenerator{g_1},\groupGenerator{g_2},\ellipsis ,\groupGenerator{g_{\sym{n}}}}\) is a set of elements such that every other element of a group can be expressed as a product of the generators or their inverses.

Group words

A group word over a set of generators is a product of generators or their inverses: an expression of the form \(\groupElement{\groupElement{h}_1}\iGmult \groupElement{\groupElement{h}_2}\iGmult \ellipsis \iGmult \groupElement{\groupElement{h}_{\sym{m}}}\), where each \(\elemOf{\groupElement{h}_{\sym{i}}}{\list{\groupGenerator{g_1},\groupInverse{\groupGenerator{g_1}},\ellipsis ,\groupGenerator{g_{\sym{n}}},\groupInverse{\groupGenerator{g_{\sym{n}}}}}}\). We can combine neighboring generators when they are the same, expressing the word as a sequence (of some length smaller length \(\sym{m}\)) of integer powers \(\sym{p}_{\sym{j}}\) of generators \(\groupGenerator{g_{\sym{i}_{\sym{j}}}}\).

\[ \groupPower{\groupGenerator{g_{\sym{i}_1}}}{\sym{p}_1}\iGmult \groupPower{\groupGenerator{g_{\sym{i}_2}}}{\sym{p}_2}\iGmult \ellipsis \iGmult \groupPower{\groupGenerator{g_{\sym{i}_{\sym{m}}}}}{\sym{p}_{\sym{m}}}\quad \elemOf{\sym{i}_{\sym{j}}}{\oneTo{\sym{n}}},\;\elemOf{\sym{p}_{\sym{j}}}{\mathbb{Z}},\;\elemOf{\sym{j}}{\oneTo{\sym{q}}} \]

Then we can restate the earlier definition: a set of generators is a set of elements such that every other element of the group can be written as group word over the set.

Presentations

A presentation of a group \(\group{G}\) is the data:

\[ \groupPresentation{\groupGenerator{g_1},\groupGenerator{g_2},\groupGenerator{\ellipsis },\groupGenerator{g_{\sym{n}}}}{\groupRelator{R_1},\groupRelator{R_2},\groupElement{\ellipsis },\groupRelator{R_{\sym{m}}}} \]

where the \(\groupElement{g}_{\sym{i}}\) are generators of \(\group{G}\) and the \(\groupRelator{R_{\sym{j}}}\) are group words over the \(\groupElement{g}_{\sym{i}}\) called relators.

The relators are, by definition, equal to \(\groupElement{e}\), the identity element of the group. One can think of each relator as a consise way to encode an "identity" or "equation".

For example, consider the infinite Abelian group \(\group{\power{\group{\mathbb{Z}}}{2}}\), whose elements are the set \(\setConstructor{\tuple{\sym{a},\sym{b}}}{\elemOf{\sym{a},\sym{b}}{\mathbb{Z}}}\), identity \(\groupElement{e} = \tuple{0,0}\), with the group operation being elementwise addition.

Choosing generators \(\groupGenerator{x} = \tuple{1,0}\) and \(\groupGenerator{y} = \tuple{0,1}\), our presentation must now capture the fact that group is Abelian, in other words, that the generators commute: \(\groupGenerator{x}\iGmult \groupGenerator{y} = \groupGenerator{y}\iGmult \groupGenerator{x}\). We can rewrite this identity as \(\groupCommutator{\groupGenerator{x}}{\groupGenerator{y}} = \groupGenerator{y}\iGmult \groupGenerator{x}\iGmult \groupInverse{\groupGenerator{y}}\iGmult \groupInverse{\groupGenerator{x}} = \groupElement{e}\), making the only relator of this group \(\groupCommutator{\groupGenerator{x}}{\groupGenerator{y}}\).

Therefore we have the following presentation for \(\group{\power{\group{\mathbb{Z}}}{2}}\) (which we will name \(\translationPresentation{2}\)):

\[ \translationPresentation{2}\defEqualSymbol \groupPresentation{\groupGenerator{x},\groupGenerator{y}}{\groupCommutator{\groupGenerator{x}}{\groupGenerator{y}}} \]

There are many presentations of a given group, since we can rewrite relations in terms of each other, and similarly with generators.

Note: when naming presentations, there is ambiguity about whether the term \(\translationPresentation{2}\) refers to the presentation itself or the group it generates. We'll resolve this ambiguity using English, saying "the group presented by \(\translationPresentation{2}\)".

Free groups

The free group on \(\sym{n}\) generators, written \(\freeGroup{\sym{n}}\), is a group with presentation \(\groupPresentation{\groupGenerator{g_1},\groupGenerator{g_2},\groupGenerator{\ellipsis },\groupGenerator{g_{\sym{n}}}}{\emptySet }\), in other words, the group with no relations. The elements of such a group are uniquely described by a group word: two group element are identical if and only if their words are also identical. Normally, relations prevent us from easily telling when two group words describe the same group element, since applying the relations to rewrite one group word may or may not produce the other word, and it can be arbitrarily hard to determine when this is the case (this is known as the word problem for the group). Free groups on more than 0 generators have infinitely many elements, since we can form group words of arbitrary length by combining any number of \(\groupGenerator{g_{\sym{i}}}\) as we please.

The free Abelian group on \(\sym{n}\) generators is a group with presentation \(\groupPresentation{\groupGenerator{g_1},\groupGenerator{g_2},\groupGenerator{\ellipsis },\groupGenerator{g_{\sym{n}}}}{\groupCommutator{\groupGenerator{g_{\sym{i}}}}{\groupGenerator{g_{\sym{j}}}}}\). It is like the free group, but we also have that the generators all commute, and hence a group element is uniquely determine by the counts of the possible \(\groupGenerator{g_{\sym{i}}}\) in the word (with these counts being negative to indicate the inverses of \(\groupGenerator{g_{\sym{i}}}\)'s).

Cayley quivers

We now give a simple way to generate a cardinal quiver from a group, which we'll call a Cayley quiver. This construction was originally developed by Arthur Cayley, who showed how to produce the so-called Cayley graph – but we call these Cayley quivers to emphasize that they do in fact have a natural cardinal structure on them.

Let \(\group{G}\) be a group, with generators \(\sym{J} = \list{\groupGenerator{j}_1,\groupGenerator{j}_2,\ellipsis }\). Then \(\bindCayleyQuiver{\group{G}}{\card{\card{c}_1}\bindingRuleSymbol \groupGenerator{\groupGenerator{j}_1},\card{\card{c}_2}\bindingRuleSymbol \groupGenerator{\groupGenerator{j}_2},\ellipsis }\) is the Cayley quiver on these generators, where cardinal \(\card{c}_{\sym{i}}\) represents generator \(\groupGenerator{j}_{\sym{i}}\). If, for convenience, we use the same symbols for the generators and the cardinals, we will write simply \(\bindCayleyQuiver{\group{G}}{\groupGenerator{\groupGenerator{j}_1},\groupGenerator{\groupGenerator{j}_2},\ellipsis }\) or \(\bindCayleyQuiver{\group{G}}{\sym{J}}\), and use the typeface \(\card{j}\) when a generator \(\groupGenerator{j}\) is being used as a cardinal.

The vertices and edges of the Cayley quiver \(\bindCayleyQuiver{\group{G}}{\sym{J}}\) are defined as follows:

\[ \begin{aligned} \vertexList(\bindCayleyQuiver{\group{G}}{\sym{J}})&\defEqualSymbol \group{G}\\ \edgeList(\bindCayleyQuiver{\group{G}}{\sym{J}})&\defEqualSymbol \setConstructor{\tde{\groupElement{g}}{\groupElement{g}\Gmult \groupGenerator{j}}{\card{j}}}{\elemOf{\groupElement{g}}{\group{G}},\;\elemOf{\groupGenerator{j}}{\sym{J}}}\end{aligned} \]

In other words, the vertices of \(\bindCayleyQuiver{\group{G}}{\sym{J}}\) are elements of the group, and the edges are the transitions between elements that occur when right-multiplying by a generator \(\groupGenerator{j}\). Each edge is labeled by that same generator \(\card{j}\).

Cayley quivers from presentations

A Cayley quiver \(\bindCayleyQuiver{\group{G}}{\groupGenerator{\groupGenerator{j}_1},\groupGenerator{\groupGenerator{j}_2},\ellipsis }\) is defined by a group \(\group{G}\,\)and a choice of generators \(\sym{J} = \list{\groupGenerator{j}_1,\groupGenerator{j}_2,\ellipsis }\) of \(\group{G}\). But a group presentation \(\presentation{Z} = \groupPresentation{\groupGenerator{\groupGenerator{j}_1},\groupGenerator{\groupGenerator{j}_2},\groupGenerator{\ellipsis }}{\groupElement{\ellipsis }}\) of \(\group{G}\) encapsulates this same data, since it specifices a choice of the generators of \(\group{G}\) by definition. Therefore we can equally well talk about the Cayley quiver associated with such a group presentation \(\presentation{Z}\). We'll use a similar notation, writing just \(\cayleyQuiverSymbol{\presentation{Z}}\), or \(\bindCayleyQuiver{\presentation{Z}}{\groupGenerator{\card{c}_1},\groupGenerator{\card{c}_2},\ellipsis }\) if we wish to specify the cardinals corresponding to the \(\groupGenerator{j}_1,\groupGenerator{j}_2,\ellipsis\).

Example: Cyclic group

Let's explore a very simple example: the cyclic group \(\cyclicGroup{\sym{n}}\) for \(\sym{n} = 3\). We can write the elements of this group in terms of a generator \(\groupGenerator{g}\), and since 3 is prime, we can use any non-identity element to do this:

\[ \cyclicGroup{3} = \list{\groupElement{e},\groupGenerator{g},\groupPower{\groupGenerator{g}}{2}} \]

We obtain the Cayley quiver \(\bindCayleyQuiver{\cyclicGroup{3}}{\groupGenerator{g}}\), shown below:

This is isomorphic to the 3-cycle quiver \(\subSize{\cycleQuiver }{3}\).

We now construct and name the obvious presentation of the cyclic group \(\cyclicGroup{\sym{n}}\) for arbitrary \(\sym{n}\). The name we'll use will look a little strange at first, but will make more sense from the perspective of [[[Toroidal lattices]]]:

\[ \bindCardSize{\translationPresentation{1}}{\rform{\card{r}}\compactBindingRuleSymbol \modulo{\sym{n}}}\defEqualSymbol \groupPresentation{\rform{\groupGenerator{r}}}{\groupPower{\rform{\groupElement{r}}}{\sym{n}}} \]

We can now state the general fact that Cayley quivers of these presentations are isomorphic to cyclic quivers:

\[ \bindCardSize{\cayleyQuiverSymbol{\translationPresentation{1}}}{\rform{\card{r}}\compactBindingRuleSymbol \modulo{\sym{n}}}\isomorphicSymbol \bindCardSize{\subSize{\cycleQuiver }{\sym{n}}}{\rform{\card{r}}} \]

Example: integers

Consider \(\group{\mathbb{Z}}\), the group of the integers under addition. Then it's not hard to see that \(\bindCayleyQuiver{\group{\mathbb{Z}}}{\groupGenerator{1}}\), the Cayley quiver using the integer 1 as the generator, is the following infinite quiver:

Let us name the obvious presentation \(\translationPresentation{1}\) of \(\group{\mathbb{Z}}\):

\[ \bindCardSize{\translationPresentation{1}}{\groupGenerator{\rform{r}}}\defEqualSymbol \groupPresentation{\groupGenerator{\rform{r}}}{\emptySet } \]

The Cayley quiver of this presentation is isomorphic to the line quiver:

\[ \cayleyQuiverSymbol{\translationPresentation{1}}\isomorphicSymbol \subSize{\lineQuiver }{ \infty } \]

Example: integer plane

Consider \(\group{\power{\group{\mathbb{Z}}}{2}}\), the group of pairs of integers under addition. Then \(\bindCayleyQuiver{\group{\power{\group{\mathbb{Z}}}{2}}}{\tuple{1,0},\tuple{0,1}}\) is the square quiver, a fragment shown below:

Let's construct a presentation of \(\groupPower{\group{\mathbb{Z}}}{2}\) and name it \(\translationPresentation{2}\). It’s easy to check that this is a presentation of the group \(\groupPower{\group{\mathbb{Z}}}{2}\) via \(\groupGenerator{\rform{r}} \leftrightarrow \tuple{1,0},\groupGenerator{\bform{b}} \leftrightarrow \tuple{0,1}\).

\[ \bindCardSize{\translationPresentation{2}}{\groupGenerator{\rform{r}},\groupGenerator{\bform{b}}}\defEqualSymbol \groupPresentation{\groupGenerator{\rform{r}},\groupGenerator{\bform{b}}}{\groupCommutator{\groupGenerator{\rform{r}}}{\groupGenerator{\bform{b}}}} \]

Then Cayley quiver of this presentation is isomorphic to the square quiver:

\[ \cayleyQuiverSymbol{\translationPresentation{2}}\isomorphicSymbol \subSize{\squareQuiver }{ \infty } \]

Example: triangular plane

Staying with \(\group{\power{\group{\mathbb{Z}}}{2}}\), we now examine the Cayley quiver \(\bindCayleyQuiver{\group{\power{\group{\mathbb{Z}}}{2}}}{\tuple{1,-1,0},\tuple{0,1,-1},\tuple{-1,0,1}}\), a fragment shown below:

We name a presentation \(\starTranslationPresentation{3}\) of \(\group{\power{\group{\mathbb{Z}}}{2}}\) below.

\[ \bindCardSize{\starTranslationPresentation{3}}{\groupGenerator{\rform{r}},\groupGenerator{\gform{g}},\groupGenerator{\bform{b}}}\defEqualSymbol \groupPresentation{\groupGenerator{\rform{r}},\groupGenerator{\gform{g}},\groupGenerator{\bform{b}}}{\groupCommutator{\groupGenerator{\rform{r}}}{\groupGenerator{\gform{g}}},\groupCommutator{\groupGenerator{\gform{g}}}{\groupGenerator{\bform{b}}},\groupGenerator{\rform{r}}\iGmult \groupGenerator{\gform{g}}\iGmult \groupInverse{\groupGenerator{\bform{b}}}} \]

Again, it’s easy to verify that this is a presentation of \(\group{\power{\group{\mathbb{Z}}}{2}}\) via generators \(\groupGenerator{\rform{r}} \leftrightarrow \tuple{1,-1,0},\groupGenerator{\gform{g}} \leftrightarrow \tuple{0,1,-1},\groupGenerator{\bform{b}} \leftrightarrow \tuple{-1,0,1}\), which satisfy the relators, since e.g. \(\tuple{1,-1,0} + \tuple{0,1,-1} = \minus{\tuple{-1,0,1}}\).

The Cayley quiver of this presentation is isomorphic to the triangular quiver:

\[ \cayleyQuiverSymbol{\starTranslationPresentation{3}}\isomorphicSymbol \subSize{\triangularQuiver }{ \infty } \]

Example: free group

Consider \(\freeGroup{\sym{J}}\), the free group on two generators \(\sym{J} = \list{\groupGenerator{j}_1,\groupGenerator{j}_2}\). The (infinite) Cayley quiver \(\bindCayleyQuiver{\freeGroup{\sym{J}}}{\sym{J}}\) is:

Generalizing to \(\sym{J}\) of arbitrary size, we have that:

\[ \bindCayleyQuiver{\freeGroup{\sym{J}}}{\sym{J}}\isomorphicSymbol \subSize{\treeQuiver{\setCardinality{\sym{J}}}}{ \infty } \]

Transitive quivers as Cayley quivers

The above examples hopefully give the impression that the quivers we introduced in [[[Transitive quivers]]] appear to arise naturally as the Cayley quivers of simple groups. Notice that we cannot do this for finite quiver in each family (e.g. \(\subSize{\lineQuiver }{\sym{n}}\) for finite \(\sym{n}\)), since these are not actually transitive. Only for the infinite quivers such as \(\subSize{\lineQuiver }{ \infty }\) do we have Cayley quivers – the exception being \(\subSize{\cycleQuiver }{\sym{n}}\) which is transitive for any \(\sym{n}\).

We can list these relationships in the form of a table, showing the quiver and corresponding group and group presentation that generates it as a Cayley quiver. We attach names to some of these presentations, as they will be generally useful:

quivergroupgroup presentation
\(\bindCards{\subSize{\lineQuiver }{ \infty }}{\rform{\card{r}}}\)\(\group{\mathbb{Z}}\)\(\bindCardSize{\translationPresentation{1}}{\groupGenerator{\rform{r}}}\defEqualSymbol \groupPresentation{\groupGenerator{\rform{r}}}{\emptySet }\)
\(\bindCards{\subSize{\cycleQuiver }{\sym{n}}}{\rform{\card{r}}}\)\(\cyclicGroup{\sym{n}}\)\(\bindCardSize{\translationPresentation{1}}{\groupGenerator{\rform{r}}\compactBindingRuleSymbol \modulo{\sym{n}}}\defEqualSymbol \groupPresentation{\groupGenerator{\rform{r}}}{\groupPower{\groupGenerator{\rform{r}}}{\sym{n}}}\)
\(\bindCards{\subSize{\squareQuiver }{ \infty }}{\rform{\card{r}},\bform{\card{b}}}\)\(\groupPower{\group{\mathbb{Z}}}{2}\)\(\bindCardSize{\translationPresentation{2}}{\groupGenerator{\rform{r}},\groupGenerator{\bform{b}}}\defEqualSymbol \groupPresentation{\groupGenerator{\rform{r}},\groupGenerator{\bform{b}}}{\groupCommutator{\groupGenerator{\rform{r}}}{\groupGenerator{\bform{b}}}}\)
\(\bindCards{\subSize{\triangularQuiver }{ \infty }}{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}\)\(\groupPower{\group{\mathbb{Z}}}{2}\)\(\bindCardSize{\starTranslationPresentation{3}}{\groupGenerator{\rform{r}},\groupGenerator{\gform{g}},\groupGenerator{\bform{b}}}\defEqualSymbol \groupPresentation{\groupGenerator{\rform{r}},\groupGenerator{\gform{g}},\groupGenerator{\bform{b}}}{\groupCommutator{\groupGenerator{\rform{r}}}{\groupGenerator{\gform{g}}},\groupCommutator{\groupGenerator{\gform{g}}}{\groupGenerator{\bform{b}}},\groupGenerator{\rform{r}}\iGmult \groupGenerator{\gform{g}}\iGmult \groupInverse{\groupGenerator{\bform{b}}}}\)
\(\bindCards{\subSize{\cubicQuiver }{ \infty }}{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}\)\(\groupPower{\group{\mathbb{Z}}}{3}\)\(\bindCardSize{\translationPresentation{3}}{\groupGenerator{\rform{r}},\groupGenerator{\gform{g}},\groupGenerator{\bform{b}}}\defEqualSymbol \groupPresentation{\groupGenerator{\rform{r}},\groupGenerator{\gform{g}},\groupGenerator{\bform{b}}}{\groupCommutator{\groupGenerator{\rform{r}}}{\groupGenerator{\gform{g}}},\groupCommutator{\groupGenerator{\gform{g}}}{\groupGenerator{\bform{b}}}}\)
\(\subSize{\gridQuiver{\sym{k}}}{ \infty }\)\(\groupPower{\group{\mathbb{Z}}}{\sym{k}}\)\(\bindCardSize{\translationPresentation{\sym{k}}}{\card{\card{c}_1},\ellipsis ,\card{\card{c}_{\sym{k}}}}\defEqualSymbol \groupPresentation{\groupGenerator{\card{c}_{\sym{i}}}}{\groupCommutator{\groupElement{\card{c}_{\sym{i}}}}{\groupElement{\card{c}_{\sym{j}}}}}\)
\(\subSize{\treeQuiver{\sym{k}}}{ \infty }\)\(\freeGroup{\sym{C}}\)\(\groupPresentation{\groupGenerator{\card{c}_{\sym{i}}}}{\emptySet }\)
\(\bouquetQuiver{\sym{k}}\)\(\list{\groupElement{e}}\)\(\groupPresentation{\groupGenerator{\card{c}_{\sym{i}}}}{\groupElement{\card{c}_{\sym{i}}}}\)

Some notes: for the final three rows, we write \(\card{c}_{\sym{i}}\) to denote the sequence \(\card{c}_1,\ellipsis ,\card{c}_{\sym{k}}\), etc. Lastly, the presentation \(\groupPresentation{\groupGenerator{\card{c}_{\sym{i}}}}{\groupElement{\card{c}_{\sym{i}}}}\) is "degenerate": the \(\card{c}_{\sym{i}}\) here are actually all the identity element \(\groupElement{e}\) of the trivial group \(\list{\groupElement{e}}\).


Action groupoids

Introduction

In this section, we'll further explore the connection between [[[Transitive quivers]]] and groups that we started in [[[Cayley quivers]]]. We'll see that a transitive quiver that is the Cayley quiver of a group has an important property: its path groupoid is a so-called action groupoid of that group corresponding to the regular action. We can then consider actions beyond the regular action, yielding the notion of an action quiver.

There are two important consequences of the ideas in this section: firstly, we obtain a dictionary to translate between the language of quiver geometry and group theory when dealing with Cayley quivers, and secondly, we can see in what exact sense quiver geometry can take us beyond group theory, and the spaces that group theory can describe.

Group actions

A right group action \(\action{A}\) is the binding of a group \(\group{G}\) to an object \(\sym{X}\) on which it acts, expressed as a two-argument map \(\functionSignature{\function{\action{A}}}{\tuple{\sym{X},\group{G}}}{\sym{X}}\) that encodes how elements of \(\group{G}\) effect elements of \(\sym{X}\). By fixing the second argument of the map \(\action{A}\) we obtain a family of maps \(\setConstructor{\functionSignature{\function{\action{A}_{\groupElement{g}}}}{\sym{X}}{\sym{X}}}{\elemOf{\groupElement{g}}{\group{G}}}\), called Cayley functions. It is these maps that encode the behavior of the group \(\group{G}\), with function composition playing the role of group multiplication.

An action must have the property that we can compose two elements of the group and then act with the result, and this is the same as acting with the individual elements in sequence:

\[ \function{\action{A}_{\groupElement{g}\iGmult \groupElement{h}}}(\sym{x}) = \function{\action{A}_{\groupElement{h}}}(\function{\action{A}_{\groupElement{g}}}(\sym{x})) \]

Note that we will work only with right actions, as defined above, as these will look more natural for our applications, although left actions are more common in other literature. The condition for a left action is similar but the functions \(\action{A}_{\groupElement{h}}\) and \(\action{A}_{\groupElement{g}}\) in the above condition are applied in the opposite order.

A final and obvious requirement is that the identity element of the group should leave \(\sym{X}\) unchanged:

\[ \function{\action{A}_{\groupElement{e}}}(\sym{x}) = \sym{x} \]

Self actions

Perhaps the most natural group action of \(\group{G}\) is given by the self action, in which we allow a group to act on itself, so that the \(\group{G}\)-set is \(\group{G}\) itself: \(\sym{X} = \group{G}\). The action is defined by \(\mto{\tuple{\groupoidElement{x},\groupElement{g}}}{\groupElement{x}\Gmult \groupElement{g}}\). The representative of a particular group element \(\groupElement{g}\) is the function that right-multiplies by \(\groupElement{g}\):

\[ \function{\action{A}_{\groupElement{g}}}\defEqualSymbol \mto{\groupElement{x}}{\groupElement{x}\Gmult \groupElement{g}} \]

This action is faithful, meaning that it fully captures the behavior of the original group. We can state this formally in terms of the curried form of \(\function{A}\), which is then an injective group homorphism \(\functionSignature{\function{\action{A}}}{\group{G}}{\symmetricGroup{\group{G}}}\). The famous Cayley's theorem states that \(\group{G}\) is isomorphic to its image under \(\function{A}\): we have "embedded" \(\group{G}\) into the group of permutations of its elements. Any action that is equivalent to the self-action (under relabelling of elements of the \(\group{G}\)-set) is known as a regular action.

For brevity we'll sometimes write the self action of \(\group{G}\) as \(\selfAction{\group{G}}\).

Action groupoids

With these terms defined, we can now define the action groupoid of a particular group action \(\action{A}\). We'll write this groupoid as \(\actionGroupoid{\action{A}}\). The elements of \(\actionGroupoid{\action{A}}\) are given below:

\[ \actionGroupoid{\action{A}}\defEqualSymbol \setConstructor{\tuple{\sym{x},\groupElement{g},\sym{y}}}{\sym{y} = \function{\action{A}_{\groupElement{g}}}(\sym{x}),\;\elemOf{\sym{x},\sym{y}}{\sym{X}},\;\elemOf{\groupElement{g}}{\group{G}}} \]

In other words, the elements of \(\actionGroupoid{\action{A}}\) are "acts": an element \(\elemOf{\sym{x}}{\sym{X}}\), a choice of \(\elemOf{\groupElement{g}}{\group{G}}\), and its image under \(\action{A}_{\groupElement{g}}\).

We can see \(\actionGroupoid{\action{A}}\) as encoding a family of relations \(\actionGroupoid{\action{A}}_{\groupElement{g}}\) indexed by \(\group{G}\):

\[ \actionGroupoid{\action{A}}_{\groupElement{g}}\defEqualSymbol \setConstructor{\tuple{\sym{x},\sym{y}}}{\sym{y} = \function{\action{A}_{\groupElement{g}}}(\sym{x}),\;\elemOf{\sym{x},\sym{y}}{\sym{X}}} \]

To use a database analogy, we have “grouped by” the 2’nd element of each 3-tuple to obtain this indexed family, and this retains the same information:

\[ \actionGroupoid{\action{A}}\isomorphicSymbol \paren{\mto{\groupElement{g}}{\actionGroupoid{\action{A}}_{\groupElement{g}}}} \]

These relations \(\actionGroupoid{\action{A}}_{\groupElement{g}}\) are literally just the set-theoretic relations for the functions \(\action{A}_{\groupElement{g}}\), so we have done nothing very sophisticated here.

Groupoid multiplication of elements of \(\actionGroupoid{\action{A}}\) is defined as:

\[ \tuple{\sym{x},\groupElement{g},\vert{y}}\gmult \tuple{\sym{y},\groupElement{h},\sym{z}}\defEqualSymbol \tuple{\sym{x},\groupElement{g}\iGmult \groupElement{h},\sym{z}} \]

The multiplication is not defined when the first "act" ends at a different element of \(\sym{X}\) from where the second "act" begins (\(\sym{y} \neq \primed{\sym{y}}\)):

\[ \tuple{\sym{x},\groupElement{g},\sym{y}}\gmult \tuple{\primed{\sym{y}},\groupElement{h},\sym{z}}\defEqualSymbol \nullElement \]

Action quiver

Examples

Consider the symmetric group \(\symmetricGroup{3}\) acting on the list \(\list{\rform{\filledSquareToken },\gform{\filledSquareToken },\bform{\filledSquareToken }}\). Let's visualize the action quiver, where we choose as generators of the group the transpositions \(\transposition{1}{2}\) and \(\transposition{2}{3}\) to be our cardinals:

This is isomorphic to the Cayley quiver of \(\symmetricGroup{3}\).

But we can also act on a list that contains two indistinguishable elements, for example, \(\list{\rform{\filledSquareToken },\rform{\filledSquareToken },\bform{\filledSquareToken }}\):

Effectively we have "glued" together the vertices of the Cayley quiver in which the green and red elements occur in the same pattern of positions. This is no longer then a Cayley quiver for any group. This can easily be deduced because it is not transitive: the end vertices have degree 1, and the central vertex degree 2.

Let us repeat this idea for \(\symmetricGroup{4}\), first acting on the set \(\list{\rform{\filledSquareToken },\gform{\filledSquareToken },\bform{\filledSquareToken },\waform{\filledSquareToken }}\) via generators \(\transposition{1}{2},\transposition{2}{3},\transposition{3}{4}\):

You might notice that we have obtained the edge graph of the truncated octahedron:

This kind of object is known as a permutahedron.

We will now allow \(\symmetricGroup{4}\) to act on a list with only three distinct elements \(\list{\rform{\filledSquareToken },\rform{\filledSquareToken },\gform{\filledSquareToken },\bform{\filledSquareToken }}\):

Again we obtain a quiver that is not a Cayley quiver.

Lastly, we can act on a set with only two distinct elements \(\list{\rform{\filledSquareToken },\rform{\filledSquareToken },\bform{\filledSquareToken },\bform{\filledSquareToken }}\):

Action quiver

In all of these examples, we have constructed particular actions of the symmetric group \(\symmetricGroup{\sym{n}}\) with the choice of generators given by the transpositions \(\transposition{1}{2},\transposition{2}{3},\ellipsis ,\transposition{\paren{\sym{n} - 1}}{\sym{n}}\). We now formalize this construction.

Recall from [[[Cayley quivers]]] that the Cayley quiver \(\bindCayleyQuiver{\group{G}}{\sym{J}}\) for group \(\group{G}\) and set of generators \(\sym{J} = \list{\groupGenerator{j}_1,\groupGenerator{j}_2,\ellipsis }\) is defined as follows:

\[ \begin{aligned} \vertexList(\bindCayleyQuiver{\group{G}}{\sym{J}})&\defEqualSymbol \group{G}\\ \edgeList(\bindCayleyQuiver{\group{G}}{\sym{J}})&\defEqualSymbol \setConstructor{\tde{\groupElement{g}}{\groupElement{g}\Gmult \groupGenerator{j}}{\card{j}}}{\elemOf{\groupElement{g}}{\group{G}},\;\elemOf{\groupGenerator{j}}{\sym{J}}}\end{aligned} \]

We now extend this idea to arbitrary action \(\action{A}\) on the group \(\group{G}\) over \(\group{G}\)-set \(\sym{X}\), again defined in terms of a set of generators \(\sym{J} = \list{\groupGenerator{j}_1,\groupGenerator{j}_2,\ellipsis }\). Associated to each \(\elemOf{\groupGenerator{j}}{\sym{J}}\) is a Cayley function \(\functionSignature{\function{\action{A}_{\groupGenerator{j}}}}{\sym{X}}{\sym{X}}\). We define the action quiver \(\bindActionQuiver{\action{A}}{\sym{J}}\) as follows:

\[ \begin{aligned} \vertexList(\bindActionQuiver{\action{A}}{\sym{J}})&\defEqualSymbol \sym{X}\\ \edgeList(\bindActionQuiver{\action{A}}{\sym{J}})&\defEqualSymbol \setConstructor{\tde{\sym{x}}{\function{\action{A}_{\groupGenerator{j}}}(\sym{x})}{\card{j}}}{\elemOf{\sym{x}}{\sym{X}},\;\elemOf{\groupGenerator{j}}{\sym{J}}}\end{aligned} \]

In other words, the edges of \(\bindActionQuiver{\action{A}}{\sym{J}}\) depict "primitive acts" of \(\group{G}\) on the elements of \(\sym{X}\): those acts associated with generators \(\elemOf{\groupGenerator{j}}{\sym{J}}\).

The Cayley quiver \(\bindCayleyQuiver{\group{G}}{\sym{J}}\) is obviously an example of an action quiver \(\bindActionQuiver{\action{A}}{\sym{J}}\), specifically in which the action is the self-action \(\selfAction{\group{G}}\) of \(\group{G}\), which is now revealed to be the motivation for the notation \(\bindCayleyQuiver{\group{G}}{\sym{J}}\) in the first place!

Path vs. action groupoid

You might notice that the groupoid multiplication in the action groupoid \(\actionGroupoid{\action{A}}\) of a group action \(\action{A}\) is very similar to the group multiplication in the path groupoid \(\pathGroupoid{\quiver{Q}}\) of a quiver \(\quiver{Q}\) that we saw in [[[Path groupoids]]].

For action groupoids, we can only compose two acts when the first "ends" at a state where the second "begins":

\[ \tuple{\sym{x},\groupElement{g},\vert{y}}\gmult \tuple{\sym{y},\groupElement{h},\sym{z}} = \tuple{\sym{x},\groupElement{g}\iGmult \groupElement{h},\sym{z}} \]

For path groupoids, we can only compose two paths when the first ends at a vertex where the second begins:

\[ \pathCompose{\paren{\pathWord{\vert{x}}{\wordSymbol{V}}{\vert{y}}}}{\paren{\pathWord{\vert{y}}{\wordSymbol{W}}{\vert{z}}}} = \paren{\pathWord{\vert{y}}{\concat{\wordSymbol{V} \wordSymbol{W}}}{\vert{z}}} \]

Indeed, it is a simple but useful exercise to check that this is similarity is an groupoid isomorphism in the case where the quiver is an action quiver:

\[ \pathGroupoid{\bindActionQuiver{\action{A}}{\sym{J}}}\isomorphicSymbol \actionGroupoid{\action{A}} \]

In words, acts are paths, with all acts being formed from primitive acts, which are edges (or their inverses).

Summary

We can now state the relationship between group actions and action quivers in the following "commutative diagram" (whose formal status will have to wait until we introduce category theory at a later stage):

In words: when a quiver is an action quiver of group \(\group{G}\), its path groupoid co-incides with action groupoid of \(\group{G}\), summarized in the motto "acts are paths".

The relationship can be specialized for the case of a Cayley quiver:

The benefit of keeping this diagram in mind is that it will allow us to interpret various constructions on quivers in terms of groups. When the quivers are transitive quivers, we will end up describing familiar mathematical constructions on groups. But crucially, for non-transitive quivers, we will find ourselves outside the domain of group theory, but with intuitions to guide us from the transitive case.


Path quivers

Recap

To recap what we accomplished in the previous section: we defined the path groupoid \(\pathGroupoid{\quiver{Q}}\) of a (cardinal) quiver \(\quiver{Q}\), where a path \(\elemOf{\path{P}}{\pathGroupoid{\quiver{Q}}}\) is uniquely determined by its path word \(\paren{\pathWord{\vert{t}}{\wordSymbol{W}}{\vert{h}}}\).

Path quivers

We’ll now give a way to attach a cardinal structure to the path groupoid \(\pathGroupoid{\quiver{Q}}\), turning it from a groupoid into a quiver, called the path quiver, written \(\pathQuiver{\quiver{Q}}\). We’ll refer to \(\quiver{Q}\) itself as the base quiver.

There will in fact be three kinds of path quiver associated to a base quiver \(\quiver{Q}\):

zz
\(\pathQuiver{\quiver{Q}}\)affine path quiver
\(\forwardPathQuiver{\quiver{Q}}{\vert{v}}\)forward path quiver based at vertex \(\vert{v}\)
\(\backwardPathQuiver{\quiver{Q}}{\vert{v}}\)backward path quiver based at vertex \(\vert{v}\)

For the forward and backward path quivers, \(\vert{v}\) is an arbitrary vertex in \(\quiver{Q}\) which we will call the origin or base point. Therefore there is a family of quivers \(\forwardPathQuiver{\quiver{Q}}{\vert{v}}\), \(\backwardPathQuiver{\quiver{Q}}{\vert{v}}\) given by choices of \(\elemOf{\vert{v}}{\vertexList(\quiver{Q})}\). In contrast, there is only one affine path quiver \(\pathQuiver{\quiver{Q}}\).

Forward path quiver

We'll start with the forward path quiver. It is defined as follows:

\[ \begin{aligned} \vertexList(\forwardPathQuiver{\quiver{Q}}{\vert{x}})&\defEqualSymbol \pathList(\quiver{Q},\vert{x},\blank)\\ \\ \edgeList(\forwardPathQuiver{\quiver{Q}}{\vert{x}})&\defEqualSymbol \setConstructor{\tde{\path{P}}{\path{R}}{\card{c}}}{\pathCompose{\path{P}}{\card{c}} = \path{R}}\end{aligned} \]

Expressing this in words, we say that a vertex of \(\forwardPathQuiver{\quiver{Q}}{\vert{x}}\) is a path \(\path{P}\) in \(\quiver{Q}\) starting at the base vertex \(\vert{x}\), and an edge of \(\forwardPathQuiver{\quiver{Q}}{\vert{x}}\) is \(\tde{\path{P}}{\path{R}}{\card{c}}\), where \(\path{P}\) is a path that can be extended by the cardinal \(\elemOf{\card{c}}{\cardinalList(\quiver{Q})}\) to give the path \(\path{R}\).

Essentially, the forward path quiver \(\forwardPathQuiver{\quiver{Q}}{\vert{x}}\) "trees out" all paths in \(\quiver{Q}\) that can be constructed starting at vertex \(\vert{x}\).

Example: 2-bouquet quiver

The idea is most intuitive when presented visually. We’ll show the path quiver for a base quiver \(\quiver{Q} = \bindCards{\bouquetQuiver{2}}{\rform{\card{r}},\bform{\card{b}}}\), namely a 2-bouquet quiver on cardinals \(\rform{\card{r}}\) then \(\bform{\card{b}}\). We'll refer to the single vertex of \(\quiver{Q}\) as \(\vert{x}\).

Here we show a fragment of the infinite forward path quiver \(\forwardPathQuiver{\quiver{Q}}{\vert{x}}\). Each vertex will be illustrated with the path that it represents.

This is already a complex example, so studying this visualization carefully is instructive.

Notice that the "origin vertex" in \(\forwardPathQuiver{\quiver{Q}}{\vert{x}}\) is the empty path, shown in the center as a copy of \(\quiver{Q}\) with a teal dot, having path word \(\paren{\pathWord{\vert{x}}{\emptyWord{}}{\vert{x}}}\). This empty path is the unit \(\idElem{x}\) in the path groupoid.

To understand the nature of the path quiver, we’ll focus on the origin, representing the empty path \(\paren{\pathWord{\vert{x}}{\emptyWord{}}{\vert{x}}}\):

We can extend the empty path \(\paren{\pathWord{\vert{x}}{\emptyWord{}}{\vert{x}}}\) in four ways: taking \(\rform{\card{r}}\) gives us the "east" vertex \(\paren{\pathWord{\vert{x}}{\word{\rform{\card{r}}}}{\vert{x}}}\), taking \(\bform{\card{b}}\) gives us the "north" vertex \(\paren{\pathWord{\vert{x}}{\word{\bform{\card{b}}}}{\vert{x}}}\). If we instead take the inverted cardinals \(\rform{\inverted{\card{r}}}\) or \(\bform{\inverted{\card{b}}}\) we obtain paths that traverse the underlying edges in the anticlockwise direction: taking \(\rform{\inverted{\card{r}}}\) gives us the "west" vertex \(\paren{\pathWord{\vert{x}}{\word{\rform{\ncard{r}}}}{\vert{x}}}\), taking \(\bform{\inverted{\card{b}}}\) gives us the "south vertex" \(\paren{\pathWord{\vert{x}}{\word{\bform{\ncard{b}}}}{\vert{x}}}\).

Let's now examine another section of \(\forwardPathQuiver{\quiver{Q}}{\vert{x}}\) centered on the east vertex:

Taking \(\rform{\card{r}}\) again from \(\paren{\pathWord{\vert{x}}{\word{\rform{\card{r}}}}{\vert{x}}}\) gives the "east east" vertex \(\paren{\pathWord{\vert{x}}{\word{\rform{\card{r}}}{\rform{\card{r}}}}{\vert{x}}}\), illustrated as a loop with a double arrowhead. Taking \(\bform{\card{b}}\) gives the "north east" vertex \(\paren{\pathWord{\vert{x}}{\word{\rform{\card{r}}}{\bform{\card{b}}}}{\vert{x}}}\), in which we first loop clockwise around the \(\rform{\card{r}}\) cycle and then clockwise around the \(\bform{\card{b}}\) cycle. Taking \(\bform{\inverted{\card{b}}}\) gives the "south east" vertex \(\paren{\pathWord{\vert{x}}{\word{\rform{\card{r}}}{\bform{\ncard{b}}}}{\vert{x}}}\), which loops anticlockwise around the \(\bform{\card{b}}\) cycle instead. Taking \(\rform{\inverted{\card{r}}}\,\)backtracks to the empty path we've already seen.

Extension and retraction

Notice that we can and should interpret "extend path by \(\rform{\card{r}}\)" as the inverse operation to "extend path by \(\rform{\inverted{\card{r}}}\)", since the sub-word \(\word{\rform{\card{r}}}{\rform{\ncard{r}}}\) is formally equal to the empty sub-word, and can be removed from any word. Hence when a path word ends in an \(\rform{\card{r}}\), "extend path by \(\rform{\inverted{\card{r}}}\)" is equivalent to "retract path by \(\rform{\card{r}}\)".

Tree structure

You may have noticed that \(\forwardPathQuiver{\quiver{Q}}{\vert{x}}\) is in fact a tree, rooted at the empty path. This is because a vertex in \(\forwardPathQuiver{\quiver{Q}}{\vert{x}}\), which is a path in \(\quiver{Q}\), is uniquely determined by its path word, and there is only one way of extending the empty path word \(\paren{\pathWord{\vert{x}}{\emptyWord{}}{\vert{x}}}\) by individual cardinals to obtain this path word. Seen as a graph, this quiver is sometimes known as a Bethe lattice or regular tree.

We can generalize this observation with the following theorem:

\[ \forwardPathQuiver{\bouquetQuiver{\sym{k}}}{\vert{}}\isomorphicSymbol \treeQuiver{\sym{k}}{ \infty } \]

In English, this is the statement that forward path quiver of a \(\sym{k}\)-bouquet quiver is an infinite \(\sym{k}\)-tree quiver on the same cardinals.

Example: 2-line quiver

The path quiver need not be infinite. Let's consider the quiver \(\quiver{Q} = \bindCards{\subSize{\lineQuiver }{2}}{\rform{\card{r}}\serialCardSymbol \bform{\card{b}}}\). We'll label the vertices \(\vert{x}\), \(\vert{y}\), \(\vert{z}\).

Here is the path quiver \(\forwardPathQuiver{\quiver{Q}}{\vert{x}}\):

This path quiver is not only finite, it is isomorphic to the original quiver! In general, this will occur whenever the quiver is a tree, since there is then only one path from the origin (wherever we choose it) to every other vertex.

We’ve seen \(\forwardPathQuiver{\quiver{Q}}{\vert{x}}\), but let’s examine how it compares to \(\forwardPathQuiver{\quiver{Q}}{\vert{y}}\) and \(\forwardPathQuiver{\quiver{Q}}{\vert{z}}\):

As you can see, these are all isomorphic, and the choice of origin is in some sense irrelevant. We can summarize this observation with the following theorem (the base vertex is not shown here, as it is irrelevant):

\[ \forwardPathQuiver{\subSize{\lineQuiver }{\sym{n}}}{\vert{}}\isomorphicSymbol \subSize{\lineQuiver }{\sym{n}} \]

Example: finite tree

The fact that a tree quiver is isomorphic to its forward path quivers can be surprising at first. Let's illustrate this isomorphism for a more elaborate tree, with root vertex \(\vert{0}\):

Again, notice that the cardinal structure of the base quiver \(\quiver{Q}\) is mirrored exactly by the structure of the path quiver \(\forwardPathQuiver{\quiver{Q}}{\vert{0}}\).

This fact is also true of the transitive trees we defined in the [[Transitive quivers]]:

\[ \forwardPathQuiver{\subSize{\treeQuiver{\sym{k}}}{\sym{n}}}{\vert{}}\isomorphicSymbol \subSize{\treeQuiver{\sym{k}}}{\sym{n}} \]

Example: 2-cycle quiver

For now, we’ll conclude this section by looking at the quiver \(\quiver{Q} = \bindCards{\subSize{\cycleQuiver }{2}}{\rform{\card{r}}\serialCardSymbol \bform{\card{b}}}\) with vertices \(\vert{x}\), \(\vert{y}\):

The path quiver structure is much simpler than for the 2-bouquet quiver, because the once a path is non-empty, it can only be extended in one possible way.

This path quiver is a bi-infinite linear chain, starting at the empty path in the middle. Here, a path must take the cardinals \(\rform{\card{r}}\), \(\bform{\card{b}}\) in alternating fashion, but it can wind clockwise, giving the (infinite) left side of the chain, or anticlockwise, giving to the (infinite) right side.

For a general \(\sym{n}\)-cycle quiver, we have the following theorem (modulo base vertex):

\[ \forwardPathQuiver{\subSize{\cycleQuiver }{\sym{n}}}{\vert{}}\isomorphicSymbol \subSize{\lineQuiver }{ \infty } \]

Fundamental cycles

When a cycle is present in a finite quiver, then it is easy to see that the corresponding path quiver will be infinite: the presence of cycles guarantees the path quiver will be infinite, because we can make arbitrarily long paths by traversing the cycle repeatedly. One way to understand this is to consider only the fundamental cycles of the quiver: these are cycles that form a sub-path of any larger cycle. Any infinite path must contain these fundamental cycles as sub-paths infinitely many times (traversed in an appropriate order). So far we haven’t been too precise about what defines such a fundamental cycle, and in fact there is some freedom in how they are defined that is analogous to the choice of a basis in a vector space, so we will return to this topic when we have the requisite mathematical machinery.

Grid quiver

For now, we can observe that for the infinite grid quiver \(\subSize{\gridQuiver{\sym{k}}}{ \infty }\), we can extend the empty path in exactly \(2 \, \sym{k}\) ways (the cardinals and their inverses), and we can extend a non-empty path in exactly \(2 \, \sym{k} - 1\) distinct ways to avoid backtracking. Since we cannot extend two distinct paths to yield the same path, the path quiver is necessarily a tree. Therefore, we have the following theorem:

\[ \forwardPathQuiver{\subSize{\gridQuiver{\sym{k}}}{ \infty }}{\vert{}}\isomorphicSymbol \subSize{\treeQuiver{\sym{k}}}{ \infty } \]

The situation for a finite grid quiver is more complex, as the number of ways we can extend a path depends on which vertex we are on the base quiver: there could be between \(\sym{k} - 1\) and \(2 \, \sym{k} - 1\) possible extensions. For example, on a finite line quiver, there is 1 possible extension for an interior vertex, and 0 possible extensions on the two edge vertices. On a square quiver, there are 3 possible extensions for an interior vertex, 2 possible extensions for an edge vertex, and only 1 possible extension for the 4 corner vertices.

Backward path quiver

Intuition

We constructed the forward path quiver \(\forwardPathQuiver{\quiver{Q}}{\vert{x}}\) by successively extending the empty path \(\paren{\pathWord{x}{\emptyWord{}}{x}}\,\)on the right, yielding edges of the form:

\[ \tde{\paren{\pathWord{\vert{x}}{\wordSymbol{W}}{\vert{y}}}}{\paren{\pathWord{\vert{x}}{\concat{\wordSymbol{W} \word{\card{c}}}}{\vert{z}}}}{\card{c}} \]

We can perform a mirror construction to this, where we instead extending the empty path \(\paren{\pathWord{x}{\emptyWord{}}{x}}\,\)on the left, yielding edges of the form:

\[ \tde{\paren{\pathWord{\vert{y}}{\wordSymbol{W}}{\vert{x}}}}{\paren{\pathWord{\vert{y}}{\concat{\word{\card{c}} \wordSymbol{W}}}{\vert{x}}}}{\mcard{c}} \]

Notice that the cardinal labeling this edge is \(\mcard{c}\), which we call a mirror cardinal. It is distinct from \(\card{c}\) itself.

The resulting path quiver is called the backward path quiver \(\backwardPathQuiver{\quiver{Q}}{\vert{x}}\), and shares the same vertices as \(\forwardPathQuiver{\quiver{Q}}{\vert{x}}\), since extending the empty path on the left by \(\mcard{c}\) yields the same path as extending it on the right by \(\inverted{\card{c}}\).

Definition

More formally, we can write \(\backwardPathQuiver{\quiver{Q}}{\vert{x}}\) as:

\[ \begin{aligned} \vertexList(\pathQuiver{\quiver{Q}})&\defEqualSymbol \pathList(\quiver{Q},\blank,\vert{x})\\ \\ \edgeList(\pathQuiver{\quiver{Q}})&\defEqualSymbol \setConstructor{\tde{\path{P}}{\path{R}}{\mcard{c}}}{\pathCompose{\card{c}}{\path{P}} = \path{R}}\end{aligned} \]

Affine path quiver

The utility of considering both the forward and backward path quivers is that they allow us to construct the affine path quiver \(\pathQuiver{\quiver{Q}}\).

While the forward and backward path quivers depend on a choice of base vertex, the affine path quiver does not. It is constructed as follows:

\[ \begin{aligned} \vertexList(\pathQuiver{\quiver{Q}})&\defEqualSymbol \pathList(\quiver{Q},\blank,\blank)\\ \\ \edgeList(\pathQuiver{\quiver{Q}})&\defEqualSymbol \begin{array}{c} \setConstructor{\tde{\path{P}}{\path{R}}{\card{c}}}{\pathCompose{\path{P}}{\card{c}} = \path{R}}\\ \cup \\ \setConstructor{\tde{\path{P}}{\path{R}}{\mcard{c}}}{\pathCompose{\card{c}}{\path{P}} = \path{R}} \end{array} \end{aligned} \]

Expressing this in words, we say a vertex of \(\pathQuiver{\quiver{Q}}\) is a path \(\path{P}\) in \(\quiver{Q}\), and an edge of \(\pathQuiver{\quiver{Q}}\) is either:

  • \(\tde{\path{P}}{\path{R}}{\card{c}}\), where \(\path{P}\) is a path that can be extended on the right by the cardinal \(\elemOf{\card{c}}{\cardinalList(\quiver{Q})}\) to give the path \(\path{R}\)

  • \(\tde{\path{P}}{\path{R}}{\mcard{c}}\), where \(\path{P}\) is a path that can be extended on the left by the cardinal \(\elemOf{\card{c}}{\cardinalList(\quiver{Q})}\) to give the path \(\path{R}\)

Connectedness

An important fact about the affine path quiver \(\pathQuiver{\quiver{Q}}\) is that it is connected iff the quiver \(\quiver{Q}\) is connected. Why is this?

Consider two vertices \(\path{P},\path{R}\) of \(\pathQuiver{\quiver{Q}}\), corresponding to paths in \(\quiver{Q}\) as follows:

\[ \path{P} = \paren{\pathWord{\tvert{p}}{\wordSymbol{P}}{\hvert{p}}}\quad \path{R} = \paren{\pathWord{\tvert{r}}{\wordSymbol{R}}{\hvert{r}}} \]

Clearly there is a path in \(\pathQuiver{\quiver{Q}}\) connecting \(\path{P}\) to \(\paren{\pathWord{\hvert{p}}{\emptyWord{}}{\hvert{p}}}\), given by retractions on the left according to the cardinals of \(\wordSymbol{P}\). Similarly there is a path connecting \(\path{R}\) to \(\paren{\pathWord{\tvert{r}}{\emptyWord{}}{\tvert{r}}}\), given by retractions on the right according to the cardinals of \(\wordSymbol{R}\). Lastly, since \(\quiver{Q}\) is connected there is at least one path \(\paren{\pathWord{\hvert{p}}{\wordSymbol{S}}{\tvert{r}}}\) in \(\quiver{Q}\), which implies a path in \(\pathQuiver{\quiver{Q}}\) connecting \(\paren{\pathWord{\hvert{p}}{\emptyWord{}}{\hvert{p}}}\) to \(\paren{\pathWord{\hvert{p}}{\wordSymbol{S}}{\tvert{r}}}\) by extension on the right, or if we prefer a path connecting \(\paren{\pathWord{\tvert{r}}{\emptyWord{}}{\tvert{r}}}\) to \(\paren{\pathWord{\hvert{p}}{\wordSymbol{S}}{\tvert{r}}}\) by extension on the left. Therefore we have a path connecting \(\path{P}\) to \(\path{R}\), specifically:

\[ \paren{\pathWord{\paren{\pathWord{\tvert{p}}{\wordSymbol{P}}{\hvert{p}}}}{\concat{\inverted{\mirror{\wordSymbol{P}}} \wordSymbol{S} \wordSymbol{R}}}{\paren{\pathWord{\tvert{r}}{\wordSymbol{R}}{\hvert{r}}}}} \]

Visualization

We'll focus on the following base quiver:

Here we show the forward path quivers and backward path quivers side-by-side:

Summary

We've defined the forward, backward, and affine path quivers. The forward path quiver will be most useful in the sections that follow.

We also saw examples, and inferred the following general relationships:

base quiverforward path quiver
\(\bouquetQuiver{\sym{k}}\)\(\subSize{\treeQuiver{\sym{k}}}{ \infty }\)
\(\subSize{\lineQuiver }{\sym{n}}\)\(\subSize{\lineQuiver }{\sym{n}}\)
\(\subSize{\treeQuiver{\sym{k}}}{\sym{n}}\)\(\subSize{\treeQuiver{\sym{k}}}{\sym{n}}\)
\(\subSize{\cycleQuiver }{\sym{n}}\)\(\subSize{\lineQuiver }{ \infty }\)
\(\subSize{\gridQuiver{\sym{k}}}{ \infty }\)\(\subSize{\treeQuiver{\sym{k}}}{ \infty }\)

Path quotients

Motivation

In this section, we're going to set up a construction that we'll use in the next section to build infinite but highly regular quivers from simpler finite quivers. The construction uses a path valuation (a function on paths) to define when two paths on a finite quiver \(\quiver{Q}\) are equivalent. By identifying equivalent paths, we will effectively "glue together" sets of vertices of the infinite forward path quiver \(\forwardPathQuiver{\quiver{Q}}{\vert{v}}\), turning it from an infinite tree into a so-called lattice quiver.

This gluing procedure is a very common idea in abstract algebra, where it generally goes by the name of a quotient. Hence we are defining a path quotient.

Note: if this section is too abstract for your taste, you can safely skip ahead to the next section.

Recap

There are by now several moving pieces, so let's do a quick recap:

From [[[Path groupoids]]], we saw that a path \(\path{P} = \paren{\pathWord{\vert{h}}{\wordSymbol{W}}{\vert{t}}}\) is uniquely determined by its initial (or final) vertex and its path word \(\wordSymbol{W}\). We can define the function \(\wordOf(\path{P})\defEqualSymbol \wordSymbol{W}\) that sends a path to its path word. Two different paths can have the same path word. The path groupoid \(\pathGroupoid{\quiver{Q}}\) is the groupoid whose elements are paths in \(\quiver{Q}\), and whose multiplication is path composition.

From [[[Path quivers]]], we defined vertices of the forward path quiver \(\forwardPathQuiver{\quiver{Q}}{\vert{v}}\) to correspond to the paths of \(\quiver{Q}\) that start at \(\vert{v}\):

\[ \vertexList(\forwardPathQuiver{\quiver{Q}}{\vert{v}})\defEqualSymbol \pathList(\quiver{Q},\vert{v},\blank) \]

The vertices of the more general affine path quiver \(\pathQuiver{\quiver{Q}}\) correspond to all paths of \(\quiver{Q}\), regardless of where they start:

\[ \vertexList(\pathQuiver{\quiver{Q}})\defEqualSymbol \pathList(\quiver{Q},\blank,\blank) \]

By moving to the more general setting of the affine path quiver, we gain an important property: the affine path quiver \(\pathQuiver{\quiver{Q}}\) is closed under path reversal. In comparison, reversing a path \(\elemOf{\path{P}}{\forwardPathQuiver{\quiver{Q}}{\vert{v}}}\), only yields another path in \(\forwardPathQuiver{\quiver{Q}}{\vert{v}}\) when \(\headVertex(\path{P}) = \tailVertex(\path{P}) = \vert{v}\), in other words, when the path is a cycle.

In either cases, the edges of a path quiver correspond to retractions or extensions of paths by following a cardinal available at the head of the path, giving us the cardinal structure of the path quiver.

We see then that \(\pathGroupoid{\quiver{Q}}\) and \(\pathQuiver{\quiver{Q}}\) are closely related: the elements of the path groupoid \(\pathGroupoid{\quiver{Q}}\) are vertices of the path quiver \(\pathQuiver{\quiver{Q}}\).

Path valuations

We now define a path valuation \(\functionSignature{\pathMap{ \mu }}{\pathGroupoid{\quiver{Q}}}{\groupoid{V}}\) to be a groupoid homomorphism from the path groupoid \(\pathGroupoid{\quiver{Q}}\) to an arbitrary group \(\group{V}\), which we call the value group. We say it assigns a path value \(\pathMap{ \mu }(\path{P})\) to each path \(\elemOf{\path{P}}{\pathGroupoid{\quiver{Q}}}\).

A groupoid homomorphism simply means that \(\pathCompose{\path{P_1}}{\path{P_2}} = \pathMap{ \mu }(\path{P_1})\gmult \pathMap{ \mu }(\path{P_2})\); this amounts to saying that the values of paths are “compatible” with composition: taking values of two paths \(\path{P_1},\path{P_2}\) and multiplying them in the value group gives the same result as taking the value of the composition of the two paths. This situation is depicted in the following diagram (the vertical arrows actually refer to binary functions, but you get the idea):

Example: word

Perhaps the simplest path valuation of all is given by \(\wordOf\), the function that takes a path to its path word, where that path word is seen as an element of the word group, written \(\wordGroup{\quiver{Q}}\), which we defined in [[[Path homomorphisms]]]:

\[ \functionSignature{\wordOf}{\pathGroupoid{\quiver{Q}}}{\wordGroup{\quiver{Q}}} \]

We saw earlier that the function \(\wordOf\) is a groupoid homomorphism. But it is not in general surjective: we can form words \(\elemOf{\wordSymbol{W}}{\wordGroup{\quiver{Q}}}\) that might not correspond to the path word of any path in \(\quiver{Q}\).

Example: signed length

As a less trivial example, we can take \(\groupoid{V}\) to be the group(oid) of the integers numbers \((\mathbb{Z},+ )\) under addition, and the valuation \(\pathMap{ \mu }\) to be the signed length of a path, written \(\signedLength\), in which cardinals count as +1 and inverses of cardinals count as \(-1\).

Then \(\functionSignature{\signedLength}{\pathGroupoid{\quiver{Q}}}{\group{\mathbb{Z}}}\) is indeed a homomorphism, since the signed length of the composition of two paths is the sum of their signed lengths: \(\signedLength(\pathCompose{\path{P_1}}{\path{P_2}}) = \signedLength(\path{P_1}) + \signedLength(\path{P_2})\). Empty paths are sent to \(0\), which is of course the identity element of \(\group{\mathbb{Z}}\).

As this example shows, the homomorphism can forget information about the original path, but whatever information it retains must be "composable".

Affine path valuations

A family of path valuations, called affine path valuations, can be constructed from group homomorphisms of the form \(\functionSignature{\groupHomomorphism{ \phi }}{\wordGroup{\quiver{Q}}}{\group{V}}\).

The group homomorphism \(\groupHomomorphism{ \phi }\) induces a path valuation \(\functionSignature{\pathMap{\affineModifier{\groupHomomorphism{ \phi }}}}{\pathQuiver{\quiver{Q}}}{\group{V}}\) in the following way:

\[ \pathMap{\affineModifier{\groupHomomorphism{ \phi }}}(\pathWord{\vert{x}}{\word{\card{c_1}}{\card{\ellipsis }}{\card{c_{\sym{n}}}}}{\vert{y}})\defEqualSymbol \indexProd{\groupHomomorphism{ \phi }(\card{c_i})}{i = 1}{\sym{n}} = \groupHomomorphism{ \phi }(\card{c_1})\gmult \ellipsis \gmult \groupHomomorphism{ \phi }(\card{c_{\sym{n}}}) \]

In English: an affine path valuation \(\affineModifier{\groupoidFunction{ \phi }}\) calculates the value \(\pathMap{\affineModifier{\groupHomomorphism{ \phi }}}(\path{P})\) of a path \(\path{P} = \pathWord{\vert{x}}{\word{\card{c_1}}{\card{\ellipsis }}{\card{c_{\sym{n}}}}}{\vert{y}}\) as the group product of the values \(\groupoidFunction{ \phi }(\card{c_{\sym{i}}})\) in its path word \(\word{\card{c_1}}{\card{\ellipsis }}{\card{c_{\sym{n}}}}\).

What is natural about constructing value functions in this way is that they are automatically groupoid homomorphisms due to the associativity of the underlying groupoid multiplication in the group \(\group{V}\). We use the word affine because this construction forces the valuation to ignore the head or tail of a path: it only depends on the "cardinal content" of the path.

We've already seen two examples of affine path valuations: it is easy to verify that the signed length \(\signedLength\) is an affine path valuation given by \(\groupHomomorphism{ \phi }(\card{c}) = 1\) for \(\elemOf{\card{c}}{\cardinalList(\quiver{Q})}\), which of course implies that \(\groupHomomorphism{ \phi }(\inverted{\card{c}}) = -1\). It’s also easy to see that the function \(\functionSignature{\wordOf}{\pathGroupoid{\quiver{Q}}}{\wordGroup{\quiver{Q}}}\) is an affine path valuation, induced by the identity group homomorphism on \(\wordGroup{\quiver{Q}}\).

Semivaluations

We can obtain a wider range of path valuations if we relax our requirement that a valuation be a groupoid homomorphism. Forgetting the inverse operation of our groupoids (path and value), and considering them as so-called semigroupoids with identity, it becomes easier to construct path valuations, since semigroupoid homomorphism is a weaker requirement. We'll call these path semivaluations.

An example of a path semivaluation is the intuitive function \(\functionSignature{\length}{\pathGroupoid{\quiver{Q}}}{\semiring{\mathbb{N}}}\) that measures the ordinary length of a path, which is the length of its path word:

\[ \length(\pathWord{\vert{x}}{\word{\card{c_1}}{\card{\ellipsis }}{\card{c_n}}}{\vert{y}})\defEqualSymbol \sym{n} \]

And similar to the affine path valuation case, we can use a semigroup homomorphism \(\functionSignature{\groupHomomorphism{ \phi }}{\wordGroup{\quiver{Q}}}{\quiver{S}}\) to induce a path semivaluation \(\functionSignature{\function{\affineModifier{\groupoidFunction{ \phi }}}}{\pathGroupoid{\quiver{Q}}}{\quiver{S}}\).

Repeating the earlier story with \(\signedLength\), \(\length\) can be seen as being induced by the semigroup homomorphism \(\function{ \phi }(\card{c}) = \function{ \phi }(\inverted{\card{c}}) = 1\). Unsurprisingly, we can also construct "cardinal-sensitive" variants of \(\length\), which assign \(\function{ \phi _{\sym{j}}}(\card{c_{\sym{i}}}) = \delta _{i,j}\).

Notation

To ease the notation, we will often write quotients involving affine path valuations in the following more compact notation:

\[ \compactQuotient{\quiver{F}}{\vert{v}}{\groupHomomorphism{ \phi }}\defEqualSymbol \quotient{\forwardPathQuiver{\quiver{Q}}{\vert{v}}}{\affineModifier{\groupHomomorphism{ \phi }}} \]

Path quotients

Path valuations will allow us to construct path quotients.

Path quotients are a simple but powerful way of deriving quivers from other quivers, whenever we have a path valuation \(\pathMap{ \mu }\). We’ll shortly use this to begin constructing discrete geometries.

Let \(\quiver{F}\) be a quiver and \(\functionSignature{\pathMap{ \mu }}{\pathQuiver{\quiver{F}}}{\groupoid{V}}\) be a path valuation on \(\quiver{F}\). The forward quotient \(\groupoid{G} = \quotient{\forwardPathQuiver{\quiver{F}}{\vert{x}}}{\pathMap{ \mu }}\) is the quiver defined as follows:

  • a vertex \(\vert{v}\) of \(\groupoid{G}\) is the equivalence class of paths beginning at \(\vert{x}\) that have the value \(\groupoidElement{v}\) under \(\pathMap{ \mu }\), in other words the set \(\function{\inverse{\pathMap{ \mu }}}(\vert{v}) \subseteq \pathQuiver{\quiver{F}}\)

  • an edge \(\tde{\vert{u}}{\vert{v}}{\card{c}}\) exists in \(G\) iff one of the paths in \(\function{\inverse{\pathMap{ \mu }}}(\vert{v})\) is an extension of one of the paths in \(\function{\inverse{\pathMap{ \mu }}}(\vert{u})\) by the cardinal \(\elemOf{\card{c}}{\cardinalList(\quiver{F})}\).

Example: signed length

To illustrate a path quotient, we’ll use the following tree quiver with root vertex shown at the top:

We’ll construct the quotient \(\quotient{\forwardPathQuiver{\quiver{F}}{\vert{0}}}{\signedLength}\) using the signed length \(\signedLength\) path valuation we introduced earlier:

We’ve drawn the equivalence classes of paths by just superimposing those paths on each diagram.

By definition, there is one class for each value in \(\signedLength(\pathGroupoid{\quiver{F}})\), namely for each length of path. These values are shown in a label above each class, starting with 0 on the left and ending with 3 on the right.

A technicality worth mentioning: the cardinal \(\gform{\card{g}}\) should occur twice between the length 1 and length 2 classes, since there are two paths that can be extended by \(\gform{\card{g}}\), being \(\de{\word{\rform{\card{r}}}}{\word{\rform{\card{r}}}{\gform{\card{g}}}}\) and \(\de{\word{\gform{\card{g}}}}{\word{\gform{\card{g}}}{\gform{\card{g}}}}\). But we ignore this multiplicity, for the reason that this results in no violation of the local uniqueness property we require of quivers.

Example: cardinal-sensitive length

Let’s perform a similar quotient, except using the cardinal-sensitive signed length \(\signedLength_{\gform{\card{g}}}\) we defined earlier. This will measure a path length in which only the cardinal \(\gform{\card{g}}\) counts towards the total.

As an exercise, I suggest checking the existence of every cardinal in the path quiver above, and make sure the equivalence classes are as you suspect.

Example: modulo signed length

In the last example, we will look at the signed length modulo an integer. We'll apply this path valuation to the path quiver of a 1-bouquet \(\quiver{B} = \bindCards{\bouquetQuiver{1}}{\rform{\card{r}}}\):

As we saw before, \(\forwardPathQuiver{\quiver{B}}{\vert{0}} = \bindCards{\subSize{\lineQuiver }{ \infty }}{\rform{\card{r}}}\). Here we show a fragment of \(\forwardPathQuiver{\quiver{B}}{\vert{0}}\), with the particular paths illustrated:

We'll now form the quotient \(\quotient{\forwardPathQuiver{\quiver{B}}{\vert{0}}}{\paren{\modLabeled{\signedLength}{3}}}\):

As with any infinite path quiver, the equivalence classes shown above, namely \(\list{\word{\card{1}},\word{\rform{\card{r}}}{\rform{\card{r}}}{\rform{\card{r}}}}\), \(\list{\word{\rform{\card{r}}},\word{\rform{\ncard{r}}}{\rform{\ncard{r}}}}\), \(\list{\word{\rform{\card{r}}}{\rform{\card{r}}},\word{\rform{\ncard{r}}}}\) are just fragments of infinite sets, of the form:

\[ \setConstructor{\repeatedPower{\rform{\card{r}}}{3 \, \sym{n} + \sym{m}}}{\elemOf{\sym{n}}{\mathbb{Z}}} \]

where \(\elemOf{\sym{m}}{\list{0,1,2}}\) is the value: the signed cardinal length modulo 3.


Lattice quivers

Recap

In [[[Path quivers]]] we saw how to construct the forward path quiver \(\forwardPathQuiver{\quiver{F}}{\vert{x}}\) from a quiver \(\quiver{F}\), and in [[[Path quotients]]] we saw how to define the path quotient quiver \(\quotient{\forwardPathQuiver{\quiver{F}}{\vert{x}}}{\pathMap{ \mu }}\) with respect some path valuation \(\functionSignature{\groupoidHomomorphism{ \mu }}{\pathGroupoid{\quiver{F}}}{\group{V}}\), which maps paths to "path values" in some group \(\group{V}\). We examined the particularly simple case of affine path valuations \(\affineModifier{\groupoidHomomorphism{ \phi }}\) that are induced by a group homomorphism \(\functionSignature{\groupoidHomomorphism{ \phi }}{\wordGroup{\quiver{F}}}{\group{V}}\), yielding quotients written \(\compactQuotient{\quiver{F}}{\vert{x}}{\groupoidFunction{ \phi }}\). The affine path valuations are path valuations that depend only on the word of a path: \(\function{\affineModifier{\groupoidHomomorphism{ \phi }}}(\path{P}) = \groupoidHomomorphism{ \phi }(\wordOf(\path{P}))\).

We'll now put this construction to work to build lattice quivers, which are quotients of simple fundamental quivers \(\quiver{F}\) by affine path valuations induced by homomorphisms into Abelian groups that capture the translational symmetries of crystallographic lattices. These will give us an alternative way to view the quivers we constructed in [[[Transitive quivers]]] and [[[Cayley quivers]]].

Representations

Group representations

Recall from [[[Cayley quivers]]] that a right group action \(\function{A}\) is a "binding" of a group \(\group{G}\) to an object \(\sym{X}\) on which it acts, expressed as a structure-preserving map \(\functionSignature{\function{\action{A}}}{\tuple{\sym{X},\group{G}}}{\sym{X}}\). By fixing the second argument of the two-argument map \(\function{A}\) we obtain a family of functions \(\setConstructor{\functionSignature{\function{\action{A}_{\groupElement{g}}}}{\sym{X}}{\sym{X}}}{\elemOf{\groupElement{g}}{\group{G}}}\), it is these Cayley functions that encode the behavior of the group \(\group{G}\), with function composition playing the role of group multiplication.

Group actions are usually obtained by associating each element of \(\group{G}\) with some form of isomorphism of the object \(\sym{X}\). This can be formalized using a group homomorphism \(\functionSignature{\groupoidFunction{ \pi }}{\group{G}}{\automorphisms(\sym{X})}\), where \(\automorphisms(\sym{X})\) represents the group of relevant symmetries of the object \(\sym{X}\).

When \(\sym{X}\) is a set, the isomorphisms are permutations of \(\sym{X}\), so that \(\automorphisms(\sym{X}) = \symmetricGroup{\sym{X}}\), and the group actions are known as permutation representations.

When \(\sym{X}\) is a vector space, these group actions are known as linear representations. In that case, \(\automorphisms(\sym{X})\) is just the space of linear transformations of \(\sym{X}\), and if this space is also finite dimensional, we can represent these linear transformations as square matrices living in a subgroup of \(\generalLinearGroup{n}{\field{K}}\), for some field \(\field{K}\), typically \(\field{\mathbb{R}}\) or \(\field{\mathbb{C}}\). A vast body of theory has been built around studying and classifying such representations with many applications in physics and elsewhere.

To summarize, group representations are models of groups: concrete instantiations of the behavior of the group in the form of transformations of a set or vector space. These instantiations can capture all the behavior, meaning that different group elements are sent to unique transformations, in which case they are called faithful. Or they might lose information; in the case of the trivial representation, every group element is represented as the identity transformation, and we've lost all the information about the original group.

Path representations

Linear path representations

Having introduced linear representations of groups, it is obvious to ask how we might build linear representations of the path groupoid of a quiver: we might call these linear path representations.

Clearly a linear path representation would involve a groupoid homomorphism \(\functionSignature{\groupoidHomomorphism{ \mu }}{\pathGroupoid{\quiver{F}}}{\generalLinearGroup{\sym{n}}{\field{K}}}\). But we’ve already encountered a class of such homomorphisms in the form of affine path valuations \(\functionSignature{\function{\affineModifier{\groupHomomorphism{ \phi }}}}{\pathGroupoid{\quiver{F}}}{\group{V}}\) induced by group homomorphisms \(\functionSignature{\groupHomomorphism{ \phi }}{\wordGroup{\quiver{F}}}{\group{V}}\). If we now choose a linear representation \(\functionSignature{\groupHomomorphism{ \pi }}{\group{V}}{\generalLinearGroup{\sym{n}}{\field{K}}}\) of the group \(\group{V}\), we can compose these \(\pathMap{ \mu }\defEqualSymbol \functionComposition{\groupHomomorphism{ \pi }\functionCompositionSymbol \affineModifier{\groupHomomorphism{ \phi }}}\) to obtain a linear path representation \(\functionSignature{\groupoidHomomorphism{ \mu }}{\pathGroupoid{\quiver{F}}}{\generalLinearGroup{\sym{n}}{\field{K}}}\).

Describing linear path representations

Recall an important property of group homomorphisms \(\functionSignature{\groupHomomorphism{ \phi }}{\wordGroup{\quiver{F}}}{\group{V}}\): they are uniquely and freely determined by their behavior on the cardinals of \(\quiver{Q}\), since these are the generators of \(\wordGroup{\quiver{F}}\). This allows us to describe \(\groupHomomorphism{ \phi }\) as an association between cardinals and \(\sym{n}\times \sym{n}\) matrices:

\[ \groupHomomorphism{ \phi } = \homomorphismMapping{\mto{\card{c}_1}{\matrix{M_1}},\ellipsis ,\mto{\card{c}_{\sym{k}}}{\matrix{M_{\sym{k}}}}} \]

Quotients vs path representations

As before, a path representation models paths as elements of \(\generalLinearGroup{n}{\field{K}}\), but by taking quotients we will be deliberately discarding information in order to conflate precisely those paths sharing a tail vertex that we wish to lead to the same head vertex. For suitable representations, this conflation will "fold" the tree \(\subSize{\treeQuiver{\sym{k}}}{ \infty }\) produced by the forward path quiver into a finite-dimensional quiver. (In abstract algebra, this kind of construction is ubiquitous, generically referred to as taking a quotient of a freely generated object in order to impose some desired relations).

While we will be focused on simply using path quotients to construct lattice quivers, we will keep the path representation interpretation in mind for the remainder of this section, and the matrix machinery that goes along with group representations will be an useful "universal format" for doing computations.

Computation

We wish to actually compute the quotient \(\compactQuotient{\quiver{F}}{\vert{x}}{\groupoidFunction{ \phi }}\), where \(\groupoidFunction{ \phi }\) is a map assigning a matrix \(\groupoidFunction{ \phi }(\card{c})\) to each cardinal \(\elemOf{\card{c}}{\cardinalList(\quiver{F})}\). Of course, this quiver is usually infinite, so we can only generate a finite part of it, which we'll generally call a fragment.

The following describes how we can use an fundamental algorithm from computer science to compute the lattice quiver, known as a breadth-first graph traversal.

First, define a state as representing an equivalence class of paths starting at the base vertex \(\vert{v}\). We'll represent these states with pairs \(\tuple{\vert{x},\matrix{M}}\), where \(\vert{x}\) is a vertex of the fundamental quiver representing the head of the path, and \(\matrix{M}\) is the value of the path as represented by a matrix.

We start with a single state \(\tuple{\vert{x},\matrix{M}} = \tuple{\vert{v},\matrix{I}}\) representing the empty path at the the base vertex \(\vert{v}\), with path matrix \(\matrix{M}\) equal to the identity matrix \(\matrix{I}\). We then extend this empty path by all cardinals \(\card{c}_{\sym{i}}\) corresponding to edges \(\tde{\vert{v}}{\vert{w_i}}{\card{\card{c}_{\sym{i}}}}\) in the fundamental quiver, right-multiplying our current value of \(\matrix{M}\) by the corresponding cardinal matrices \(\groupoidFunction{ \phi }(\card{c})\) to obtain new states \(\tuple{\vert{w_i},\matrix{M}\matrixDotSymbol \groupoidHomomorphism{ \phi }(\card{c}_{\sym{i}})}\).

We then go on to explore these new states in a first-in last-out fashion, stopping when we reach some depth. Sometimes we will encounter a state that we have created before – this is to say, we will find two different paths in the fundamental quiver that produce the same state – but we can avoid re-exploring these old states by caching them in a suitable data structure.

By storing only states and their adjacency, and not entire paths, we avoid performing an exponential amount of computation as the number of visited states increases (this is a form of so-called dynamic programming).

The graph that we produce in this exploration has vertices given by states \(\tuple{\vert{v},\matrix{M}}\) and edges given by transitions \(\ltde{\tuple{\vert{v},\matrix{M}}}{\tuple{\primed{\vert{v}},\primed{\matrix{M}}}}{\card{\card{c}_{\sym{i}}}}\), where \(\primed{\matrix{M}} = \matrix{M}\matrixDotSymbol \groupoidHomomorphism{ \phi }(\card{c}_{\sym{i}})\) and \(\elemOf{\ltde{\vert{v}}{\primed{\vert{v}}}{\card{\card{c}_{\sym{i}}}}}{\edgeList(\quiver{F})}\).

In other contexts, a graph so produced is variously known as a state-transition graph, multiway graph, or in the group-theory context, a Cayley graph. In our context, these graphs are quivers, since the have an additional cardinal structure in which each edge is labeled with the cardinal we took to generate that particular state. Moreover, these quivers represent particular quotients of path quivers. When the quotient is in terms of a homomorphism into a translation group, we'll simply use the term lattice quivers.

Notation

We will denote the quiver generated by exploring fundamental quiver \(\quiver{F}\), starting at vertex \(\vert{x}\), using the affine path valuation induced by \(\functionSignature{\groupHomomorphism{ \phi }}{\wordGroup{\quiver{F}}}{\generalLinearGroup{\sym{n}}{\field{K}}}\), to depth \(\sym{d}\), with the expression:

\[ \latticeBFS{\quiver{F},\vert{x},\groupoidFunction{ \phi },\sym{d}} \]

By setting \(\sym{d} = \infty\) we represent the "ongoing breadth-first search" that typically does not ever terminate, which we interpret as computing the full forward path quiver quotient to arbitrary depth:

\[ \compactQuotient{\quiver{F}}{\vert{x}}{\groupoidFunction{ \phi }} = \limit{\latticeBFS{\quiver{F},\vert{x},\groupoidFunction{ \phi },\sym{d}}}{\sym{d} \to \infty } \]

This limit is true in the sense that every vertex / edge of the quotient will eventually be generated by the search for some sufficiently large \(\sym{d}\), and conversely every vertex / edge generated by the search corresponds to some vertex / edge of the quotient.

Translation matrices

While cardinal matrices \(\groupoidHomomorphism{ \phi }(\card{c}_{\sym{i}})\) are in general \(\sym{n}\times \sym{n}\), we will be limiting ourselves to translation matrices, which can be put into a simple upper triangular form as follows:

\[ \translationVector{\sym{x}}\defEqualSymbol {\begin{pmatrix}1&\sym{x}\\0&1\end{pmatrix}}\quad \translationVector{\sym{x},\sym{y}}\defEqualSymbol {\begin{pmatrix}1&0&\sym{x}\\0&1&\sym{y}\\0&0&1\end{pmatrix}}\quad \translationVector{\sym{x},\sym{y},\sym{z}}\defEqualSymbol {\begin{pmatrix}1&0&0&\sym{x}\\0&1&0&\sym{y}\\0&0&1&\sym{z}\\0&0&0&1\end{pmatrix}}\quad \ellipsis \]

These matrices have the property that:

\[ \begin{aligned} \translationVector{\sym{x}}\matrixDotSymbol \translationVector{\primed{\sym{x}}}&= \translationVector{\sym{x} + \primed{\sym{x}}}\\ \translationVector{\sym{x},\sym{y}}\matrixDotSymbol \translationVector{\primed{\sym{x}},\primed{\sym{y}}}&= \translationVector{\sym{x} + \primed{\sym{x}},\sym{y} + \primed{\sym{y}}}\\ \translationVector{\sym{x},\sym{y},\sym{z}}\matrixDotSymbol \translationVector{\primed{\sym{x}},\primed{\sym{y}},\primed{\sym{z}}}&= \translationVector{\sym{x} + \primed{\sym{x}},\sym{y} + \primed{\sym{y}},\sym{z} + \primed{\sym{z}}}\end{aligned} \]

Line lattice

To kick things off let’s look at probably the simplest possible fundamental quiver: a 1-bouquet quiver \(\bindCards{\bouquetQuiver{1}}{\rform{\card{r}}}\).

We'll associate its only cardinal \(\rform{\card{r}}\) with a \(2 \times 2\) matrix, representing a generator of the group \(\mathbb{Z}\).

Now, because this quiver only has one vertex, all of the paths in \(\quiver{F}\) are trivially composable, and the path groupoid \(\pathGroupoid{\quiver{F}}\) is isomorphic to the word group \(\wordGroup{\quiver{F}}\) on one cardinal, which is itself isomorphic to \(\mathbb{Z}\) – since we just count how many times that cardinal appears in a given word.

We wish to generate the lattice quiver, which is the quotient \(\compactQuotient{\bindCardSize{\bouquetQuiver{1}}{\rform{\card{r}}}}{\vert{o}}{\bindCardSize{\translationWordHomomorphism{1}}{\rform{\card{r}}}}\), where \(\bindCardSize{\translationWordHomomorphism{1}}{\rform{\card{r}}}\) is the group homomorphism \(\functionSignature{\function{\bindCardSize{\translationWordHomomorphism{1}}{\rform{\card{r}}}}}{\wordGroup{\quiver{F}}}{\generalLinearGroup{2}{\ring{\mathbb{Z}}}}\) defined by:

\[ \bindCardSize{\translationWordHomomorphism{1}}{\rform{\card{r}}}\defEqualSymbol \homomorphismMapping{\mto{\rform{\card{r}}}{\translationVector{1}}} \]

We can traverse the single fundamental quiver edge \(\tde{\vert{x}}{\vert{x}}{\rform{\card{r}}}\) in the forward or reverse direction, so we can reach two states from the initial state. We continue this process until we have reached the specified traversal depth.

Here’s the lattice quiver for our simple fundamental quiver, explored to depth 4 (the origin vertex, corresponding to state \(\tuple{\vert{o},\matrix{I}}\), is shown larger):

Let's label these vertices with their corresponding matrices to see better what is going on:

Note that the top-right entry of each matrix is effectively acting as a 1D coordinate.

We state without proof:

\[ \bindCardSize{\subSize{\lineQuiver }{ \infty }}{\rform{\card{r}}}\isomorphicSymbol \compactQuotient{\bindCardSize{\bouquetQuiver{1}}{\rform{\card{r}}}}{\vert{o}}{\bindCardSize{\translationWordHomomorphism{1}}{\rform{\card{r}}}} \]

Square lattice

Let’s move on to a two-dimensional lattice quiver. We’ve added a cardinal \(\bform{\card{b}}\) to the fundamental quiver:

Notice that the cardinal matrices are the two unit translation matrices for \(\mathbb{Z}^2\):

\[ \bindCardSize{\translationWordHomomorphism{2}}{\rform{\card{r}},\bform{\card{b}}}\defEqualSymbol \homomorphismMapping{\mto{\rform{\card{r}}}{\translationVector{1,0}},\mto{\bform{\card{b}}}{\translationVector{0,1}}} \]

As you would expect, the lattice quiver this generates is a 2D grid, shown here to depth 3:

Again, notice the 2D “translation coordinates” that the representation matrices contain:

Note that negative integers are displayed as red, rather than with a minus sign.

Since all our matrices are translation matrices, we can extract the coordinate vector from each matrix for a cleaner graphic:

Again, we state without proof:

\[ \bindCardSize{\subSize{\squareQuiver }{ \infty }}{\rform{\card{r}},\bform{\card{b}}}\isomorphicSymbol \compactQuotient{\bindCardSize{\bouquetQuiver{2}}{\rform{\card{r}},\bform{\card{b}}}}{\vert{o}}{\bindCardSize{\translationWordHomomorphism{2}}{\rform{\card{r}},\bform{\card{b}}}} \]

Paths and relations

Although the point should be quite clear, let's visualize how vertices in the lattice quiver correspond to paths in the fundamental quiver that have the same value.

Here we have two paths with words \(\word{\rform{\card{r}}}{\bform{\card{b}}}\) and \(\word{\bform{\card{b}}}{\rform{\card{r}}}\) in the fundamental quiver, shown on the right. The fact that terminate at the same vertex in the lattice quiver reflects the fact that the values of those two paths are the same: \(\matrix{M_{\rform{\card{r}}}}\matrixDotSymbol \matrix{M_{\bform{\card{b}}}} = \matrix{M_{\bform{\card{b}}}}\matrixDotSymbol \matrix{M_{\rform{\card{r}}}}\). This must be true because the cardinal matrices \(\matrix{M_i}\) represent an Abelian group (namely a translation group) and in fact this path diagram is the defining relation of this particular group.

We'll call this a path relation of a lattice quiver, and write it algebraically as \(\word{\rform{\card{r}}}{\bform{\card{b}}}\pathIso \word{\bform{\card{b}}}{\rform{\card{r}}}\). The symbol \(\pathIso\) is understood to mean that the two paths with the given path words that share a tail vertex, also share a head vertex in the lattice quiver.

Triangular lattice

Perhaps a more interesting example of path relations comes from the following lattice quiver with three cardinals:

Here, the cardinal matrices are the following translations of \(\mathbb{Z}^3\):

\[ \bindCardSize{\starTranslationWordHomomorphism{3}}{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}\defEqualSymbol \homomorphismMapping{\mto{\rform{\card{r}}}{\translationVector{1,-1,0}},\mto{\gform{\card{g}}}{\translationVector{0,1,-1}},\mto{\bform{\card{b}}}{\translationVector{-1,0,1}}} \]

This generates a triangular lattice, shown here to depth 3:

Although these matrices represent translations in \(\mathbb{Z}^3\), they are not linearly independent, and so their action is two dimensional, yielding a planar lattice quiver.

Let's visualize their translation vectors:

We can also look at a path diagram for the triangular lattice:

Again, the fact that \(\word{\gform{\card{g}}}{\rform{\card{r}}}\pathIso \word{\bform{\ncard{b}}}\) reflects the property of the matrices \(\matrix{M_{\rform{\card{r}}}}\), \(\matrix{M_{\gform{\card{g}}}}\), \(\matrix{M_{\bform{\card{b}}}}\) that \(\matrix{M_{\rform{\card{r}}}}\matrixDotSymbol \matrix{M_{\gform{\card{g}}}} = \inverse{\matrix{M_{\bform{\card{b}}}}}\), or more simply that \(\matrix{M_{\rform{\card{r}}}}\matrixDotSymbol \matrix{M_{\gform{\card{g}}}}\matrixDotSymbol \matrix{M_{\bform{\card{b}}}} = \matrix{I}\).

So, while we pulled these matrices out of a hat, we can interpret them as encoding the following path relations:

\[ \list{\word{\gform{\card{g}}}{\rform{\card{r}}}\pathIso \word{\rform{\card{r}}}{\gform{\card{g}}},\word{\gform{\card{g}}}{\bform{\card{b}}}\pathIso \word{\bform{\card{b}}}{\gform{\card{g}}},\word{\bform{\card{b}}}{\rform{\card{r}}}\pathIso \word{\rform{\card{r}}}{\bform{\card{b}}},\word{\rform{\card{r}}}{\gform{\card{g}}}{\bform{\card{b}}}\pathIso \word{1}} \]

The full set of relations can be illustrated as path diagrams as follows:

Lastly, we again state without proof:

\[ \bindCardSize{\subSize{\triangularQuiver }{ \infty }}{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}\isomorphicSymbol \compactQuotient{\bindCardSize{\bouquetQuiver{3}}{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}}{\vert{o}}{\bindCardSize{\starTranslationWordHomomorphism{3}}{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}} \]

Connection to Cayley quivers

We've given a construction of some familiar quivers as linear path representations, which are particular path quotients \(\compactQuotient{\quiver{F}}{\vert{x}}{\groupHomomorphism{ \phi }}\) induced by group homomorphisms of the form \(\functionSignature{\groupHomomorphism{ \phi }}{\wordGroup{\quiver{F}}}{\generalLinearGroup{\sym{n}}{\field{K}}}\). These homomorphism are uniquely defined by choices of invertible matrices \(\matrix{M_{\sym{i}}}\) for each cardinal \(\card{c}_{\sym{i}}\) of \(\quiver{Q}\), letting us write \(\groupHomomorphism{ \phi } = \assocArray{\mto{\card{c}_1}{\matrix{M_1}},\ellipsis ,\mto{\card{c}_{\sym{k}}}{\matrix{M_{\sym{k}}}}}\).

It's important to emphasize how this construction yields a Cayley quiver in the special case that \(\quiver{F}\) is a bouquet quiver. This is because the path groupoid of a bouquet quiver is just the word group (as all paths can be composed), so we can write:

\[ \pathGroupoid{\quiver{F}} = \wordGroup{\quiver{F}} \]

Hence, for bouquet quivers a (linear) path representation \(\functionSignature{\groupoidHomomorphism{ \mu }}{\pathGroupoid{\quiver{F}}}{\generalLinearGroup{\sym{n}}{\field{K}}}\) is just a group homomorphism \(\functionSignature{\groupoidHomomorphism{ \mu }}{\wordGroup{\quiver{F}}}{\generalLinearGroup{\sym{n}}{\field{K}}}\). The image of \(\groupoidHomomorphism{ \mu }\) is then a subgroup \(\groupoidHomomorphism{ \mu }(\wordGroupSymbol ) \subseteq \generalLinearGroup{\sym{n}}{\field{K}}\) generated by \(\sym{J} = \setConstructor{\groupoidHomomorphism{ \mu }(\card{c}_{\sym{i}})}{1 \le \sym{i} \le \sym{k}}\). Then the regular action of this subgroup yields a Cayley quiver:

\[ \bindCayleyQuiver{\groupoidHomomorphism{ \mu }(\wordGroupSymbol )}{\sym{J}} \]

Why is this quiver the same as that produced by \(\compactQuotient{\quiver{F}}{\vert{o}}{\groupoidHomomorphism{ \mu }}\congruentSymbol \latticeBFS{\quiver{F},\vert{o},\groupoidHomomorphism{ \mu }, \infty }\)? Since \(\quiver{F}\) only has one vertex \(\vert{o}\), the states \(\tuple{\vert{v},\matrix{M}}\) involved in the bfs construction all share the fundmanetal vertex \(\vert{v} = \vert{o}\). Hence vertices of the multiway graph are uniquely described by matrices \(\matrix{M}\), and edges \(\ltde{\matrix{M}}{\primed{\matrix{M}}}{\card{\card{c}_{\sym{i}}}}\) exist iff \(\primed{\matrix{M}} = \matrix{M}\matrixDotSymbol \pathMap{ \mu }(\card{c}_{\sym{i}})\). This is by definition a right self-action of the subgroup \(\groupoidHomomorphism{ \mu }(\wordGroupSymbol )\) on itself, with generators \(\sym{J} = \setConstructor{\groupoidHomomorphism{ \mu }(\card{c}_{\sym{i}})}{1 \le \sym{i} \le \sym{k}}\), as required:

\[ \bindCayleyQuiver{\groupoidHomomorphism{ \mu }(\wordGroupSymbol )}{\sym{J}} = \compactQuotient{\quiver{F}}{\vert{o}}{\groupoidHomomorphism{ \mu }} \]

Summary

Named group homomorphisms

We collect the group homomoprhisms \(\groupoidFunction{ \phi }\) used in the linear path representations above:

\[ \begin{aligned} \bindCardSize{\translationWordHomomorphism{1}}{\rform{\card{r}}}&\defEqualSymbol \homomorphismMapping{\mto{\rform{\card{r}}}{\translationVector{1}}}\\ \bindCardSize{\translationWordHomomorphism{2}}{\rform{\card{r}},\bform{\card{b}}}&\defEqualSymbol \homomorphismMapping{\mto{\rform{\card{r}}}{\translationVector{1,0}},\mto{\bform{\card{b}}}{\translationVector{0,1}}}\\ \bindCardSize{\translationWordHomomorphism{3}}{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}&\defEqualSymbol \homomorphismMapping{\mto{\rform{\card{r}}}{\translationVector{1,0,0}},\mto{\gform{\card{g}}}{\translationVector{0,1,0}},\mto{\bform{\card{b}}}{\translationVector{0,0,1}}}\\ \bindCardSize{\starTranslationWordHomomorphism{3}}{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}&\defEqualSymbol \homomorphismMapping{\mto{\rform{\card{r}}}{\translationVector{1,-1,0}},\mto{\gform{\card{g}}}{\translationVector{0,1,-1}},\mto{\bform{\card{b}}}{\translationVector{-1,0,1}}}\end{aligned} \]

Homomorphisms and presentations

We can naturally associate these group homomorphisms with particular named [[[group presentations:Cayley quivers#presentations]]] that generate the same lattice quivers as their Cayley quivers (we discussed this from a slightly different perspective [[[above:Lattice quivers#Connection to Cayley quivers]]]).

For example, the homomorphism \(\functionSignature{\function{\starTranslationWordHomomorphism{3}}}{\wordGroup{\quiver{3}}}{\generalLinearGroup{3}{\ring{\mathbb{Z}}}}\) defined by \(\bindCardSize{\starTranslationWordHomomorphism{3}}{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}\defEqualSymbol \homomorphismMapping{\mto{\rform{\card{r}}}{\translationVector{1,-1,0}},\mto{\gform{\card{g}}}{\translationVector{0,1,-1}},\mto{\bform{\card{b}}}{\translationVector{-1,0,1}}}\) is associated with the presentation \(\starTranslationPresentation{3}\) defined by \(\bindCardSize{\starTranslationPresentation{3}}{\groupGenerator{\rform{r}},\groupGenerator{\gform{g}},\groupGenerator{\bform{b}}}\defEqualSymbol \groupPresentation{\groupGenerator{\rform{r}},\groupGenerator{\gform{g}},\groupGenerator{\bform{b}}}{\groupCommutator{\groupGenerator{\rform{r}}}{\groupGenerator{\gform{g}}},\groupCommutator{\groupGenerator{\gform{g}}}{\groupGenerator{\bform{b}}},\groupGenerator{\rform{r}}\iGmult \groupGenerator{\gform{g}}\iGmult \groupInverse{\groupGenerator{\bform{b}}}}\).

Specifically, the image \(\function{\starTranslationWordHomomorphism{3}}(\wordGroup{\quiver{3}})\) is a subgroup of \(\generalLinearGroup{3}{\ring{\mathbb{Z}}}\) that is isomorphic to the group presented by \(\starTranslationPresentation{3}\), with the isomorphism sending cardinals \(\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}\) (which are the generators) of \(\wordGroup{\quiver{3}}\) to the generators \(\groupGenerator{\rform{r}},\groupGenerator{\gform{g}},\groupGenerator{\bform{b}}\) used by the presentation \(\starTranslationPresentation{3}\). This isomorphism makes \(\starTranslationWordHomomorphism{3}\) into the "identity homomorphism":

\[ \bindCardSize{\starTranslationWordHomomorphism{3}}{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}\isomorphicSymbol \assocArray{\mto{\rform{\card{r}}}{\groupGenerator{\rform{r}}},\mto{\gform{\card{g}}}{\groupGenerator{\gform{g}}},\mto{\bform{\card{b}}}{\groupGenerator{\bform{b}}}} \]

Transitive lattice quivers

These named homomorphisms and presentations allows us to express how to generate the various transitive lattice quivers succintly in the following table:

namequiverfun. quiverhomomorphismpresentation
line quiver\(\subSize{\lineQuiver }{ \infty }\)\(\bouquetQuiver{1}\)\(\functionSignature{\function{\translationWordHomomorphism{1}}}{\wordGroup{\quiver{1}}}{\group{\mathbb{Z}}}\)\(\translationPresentation{1}\) presenting \(\group{\mathbb{Z}}\)
square quiver\(\subSize{\squareQuiver }{ \infty }\)\(\bouquetQuiver{2}\)\(\functionSignature{\function{\translationWordHomomorphism{2}}}{\wordGroup{\quiver{2}}}{\group{\power{\group{\mathbb{Z}}}{2}}}\)\(\translationPresentation{2}\) presenting \(\group{\power{\group{\mathbb{Z}}}{2}}\)
triangular quiver\(\subSize{\triangularQuiver }{ \infty }\)\(\bouquetQuiver{3}\)\(\functionSignature{\function{\starTranslationWordHomomorphism{3}}}{\wordGroup{\quiver{3}}}{\group{\power{\group{\mathbb{Z}}}{3}}}\)\(\starTranslationPresentation{3}\) presenting \(\group{\power{\group{\mathbb{Z}}}{2}}\)
cubic quiver\(\subSize{\cubicQuiver }{ \infty }\)\(\bouquetQuiver{3}\)\(\functionSignature{\function{\translationWordHomomorphism{3}}}{\wordGroup{\quiver{3}}}{\group{\power{\group{\mathbb{Z}}}{3}}}\)\(\translationPresentation{3}\) presenting \(\group{\power{\group{\mathbb{Z}}}{3}}\)
grid quiver\(\gridQuiver{\sym{k}}\)\(\bouquetQuiver{\sym{k}}\)\(\functionSignature{\function{\translationWordHomomorphism{\sym{k}}}}{\wordGroup{\quiver{\sym{k}}}}{\group{\power{\group{\mathbb{Z}}}{\sym{k}}}}\)\(\translationPresentation{\sym{k}}\) presenting \(\group{\power{\group{\mathbb{Z}}}{\sym{k}}}\)

Why?

This interrelationship between quotients, Cayley quivers, and presentations may seem rather pedantic – hardly worth all the notation and machinery. And perhaps this is true for transitive quivers! But as we mentioned in [[[Action groupoids#summary]]], the benefit is that we can generalize beyond groups and their Cayley quivers into areas where some of these constructions may be better suited, and provide better intuition, than others.

For example, the next section, we will consider more complex fundamental quivers, which will allow us to construct the hexagonal quiver, among others.


Intransitive lattices

Introduction

The lattice quivers we generated in [[[Lattice quivers]]] had the property that their fundamental quivers were bouquet quivers \(\bouquetQuiver{\sym{k}}\), meaning quivers with only one vertex. Since any two paths on a bouquet quiver can be composed, the path groupoid \(\pathGroupoid{\bouquetQuiver{\sym{k}}}\) is isomorphic to word group \(\wordGroup{\quiver{\sym{k}}}\) (the free group on \(\sym{k}\) letters), and the lattice quivers they generate can be seen as Cayley quivers of group presentations of \(\group{\power{\group{\mathbb{Z}}}{\sym{k}}}\) that we named \(\translationPresentation{\sym{k}},\starTranslationPresentation{\sym{k}}\).

By considering fundamental quivers with more than one vertex we can obtain bona-fide path groupoids – i.e. groupoids that are not groups. This occurs because there will be paths that cannot be composed, namely those pairs \(\path{P}\), \(\path{R}\) where \(\headVertex(\path{P}) \neq \tailVertex(\path{R})\). We’ll see that these produce more complex lattices in which the neighborhoods of vertices are not all alike, even when we generate them to "infinite depth". We'll call these intransitive lattices.

Hexagonal lattice quiver

Our first two-vertex fundamental quiver is \(\bindCards{\subSize{\lineQuiver }{2}}{\rform{\card{r}}\parallelCardSymbol \gform{\card{g}}\parallelCardSymbol \bform{\card{b}}}\), which will generate the hexagonal quiver, which we'll write \(\bindCards{\subSize{\hexagonalQuiver }{ \infty }}{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}\). For our path representation we'll use the same homomorphism \(\bindCardSize{\starTranslationWordHomomorphism{3}}{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}\defEqualSymbol \homomorphismMapping{\mto{\rform{\card{r}}}{\translationVector{1,-1,0}},\mto{\gform{\card{g}}}{\translationVector{0,1,-1}},\mto{\bform{\card{b}}}{\translationVector{-1,0,1}}}\), the same homomorphism used to generate the triangular quiver \(\bindCards{\subSize{\triangularQuiver }{ \infty }}{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}\). The fundamental quiver and matrix cardinals are shown below:

This gives us a hexagonal lattice quiver, shown here to depth 4, starting at fundamental vertex \(\vert{1}\).

This construction will serve as the definition of the hexagonal lattice quiver:

\[ \bindCardSize{\subSize{\hexagonalQuiver }{ \infty }}{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}\defEqualSymbol \compactQuotient{\bindCardSize{\subSize{\lineQuiver }{2}}{\rform{\card{r}}\parallelCardSymbol \gform{\card{g}}\parallelCardSymbol \bform{\card{b}}}}{1}{\bindCardSize{\starTranslationWordHomomorphism{3}}{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}} \]

Rhombille lattice quiver

We can take one obvious step to generalize the previous example: we can extend the fundamental quiver to have 3 vertices: \(\bindCards{\subSize{\lineQuiver }{3}}{\rform{\card{r}}\parallelCardSymbol \gform{\card{g}}\parallelCardSymbol \bform{\card{b}}}\).

This yields the rhombille lattice \(\bindCards{\subSize{\rhombilleQuiver }{ \infty }}{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}\), shown here to depth 3, starting at vertex \(\vert{2}\):

This will serve as the definition of the rhombille lattice quiver:

\[ \bindCardSize{\subSize{\rhombilleQuiver }{ \infty }}{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}\defEqualSymbol \compactQuotient{\bindCardSize{\subSize{\lineQuiver }{3}}{\rform{\card{r}}\parallelCardSymbol \gform{\card{g}}\parallelCardSymbol \bform{\card{b}}}}{2}{\bindCardSize{\starTranslationWordHomomorphism{3}}{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}} \]

Euclidean tilings

With suitably chosen fundamental quivers and choices of representations, we can generate lattice quivers corresponding to all of the 2D uniform Euclidean tilings. Here are a few of the simpler ones:

Here are their corresponding quiver representations:

Note that we do not show the associated translation groups here.

Enumeration

Using the quiver enumeration discussed in [[[Graphs and quivers]]], it is relatively straightforward to simply enumerate all lattice quivers once we fix a particular group representation, that is, once we fix a particular set of matrices.

2-cardinal lattices

We'll start with the 9 possible 2-cardinal quivers that we can form on two-vertex skeletons:

We fix the path representation to use \(\translationWordHomomorphism{2}\), the same as that of the square lattice:

\[ \bindCardSize{\translationWordHomomorphism{2}}{\rform{\card{r}},\bform{\card{b}}}\defEqualSymbol \assocArray{\mto{\rform{\card{r}}}{\translationVector{1,0}},\mto{\bform{\card{b}}}{\translationVector{0,1}}} \]

Up to graph isomorphism, we obtain the following 6 lattice quivers:

Note that I am deliberately ignoring "self-intersecting" lattices in which contain pairs of states \(\tuple{\vert{x},\matrix{M}}\), \(\tuple{\vert{y},\matrix{M}}\) with \(\vert{x} \neq \vert{y}\), since these would produce ambiguous 2D layouts when rendered in the natural way.

We now consider the 69 3-cardinal lattices on three vertices, the first 18 of which are shown below:

Up to isomorphism, we obtain the following 21 lattice quivers:

3-cardinal lattices

Next we'll consider the 26 different 3-cardinal quivers on the skeletons with two vertices:

We'll fix the path representation to use \(\starTranslationWordHomomorphism{3}\), that of the triangular lattice, so as to produce two-dimensional quivers:

\[ \bindCardSize{\starTranslationWordHomomorphism{3}}{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}\defEqualSymbol \homomorphismMapping{\mto{\rform{\card{r}}}{\translationVector{1,-1,0}},\mto{\gform{\card{g}}}{\translationVector{0,1,-1}},\mto{\bform{\card{b}}}{\translationVector{-1,0,1}}} \]

Up to isomorphism these generate the following 9 lattice quivers:

Notice we recover the \(\triangularQuiver\) and \(\hexagonalQuiver\), as expected.

For the 1124 different 3-cardinal quiver on skeletons with three vertices, we obtain the following 78 lattice quivers:

Verex colorings

Intransitive lattices by definition have "different types of vertex". These "types" naturally lead us to consider colorings of vertices. Let's look at two simple examples:

Hexagonal lattice

We return to the hexagonal lattice, which we saw had a fundamental quiver with two vertices. Here it is again:

The vertices of this lattice quiver are also of two types, which we could call “outward” and “inward”:

These two types of vertex in the lattice quiver correspond to the vertices labeled 1 and 2 in the fundamental quiver: the cardinals available to vertex 1 are all outgoing, and the cardinals available to vertex 2 are all incoming. This motif is reflected by the outward and inward sets of vertices in the lattice quiver. This correspondence reflects a general and important fact: lattice quivers are covering quivers of their fundamental quivers, as we will explain in the next section.

We can illustrate these two types of vertex visually by coloring the vertices of the lattice quiver by the identity of the vertex that generated them:

Rhombille lattice

Now let’s look at the rhombille tiling, which has three types of vertices in its fundamental quiver:

Again, these three vertices correspond to the types of vertex we find in the lattice quiver:

Again, we can color each vertex to indicate which of the three fundamental vertices generated it:

This coloring phenomena is richer than it first appears, and we will address it in more detail in the section [[[Vertex colorings]]].


Toroidal lattices

Introduction

In [[[Lattice quivers]]], we examined lattice quivers, which were the Cayley quivers determined by particular group presentations \(\translationPresentation{\sym{n}},\starTranslationPresentation{\sym{n}}\) of infinite Abelian groups \(\group{\power{\group{\mathbb{Z}}}{\sym{n}}}\). We could also see these quivers as the path quotients of a fundamental quiver \(\quiver{F} = \bouquetQuiver{\sym{n}}\) by affine path valuations \(\translationPathValuation{\sym{n}},\starTranslationPathValuation{\sym{n}}\) valued in Abelian groups \(\group{\power{\group{\mathbb{Z}}}{\sym{n}}}\). The benefit of taking this more abstract path quotient perspective was that more complex choices of fundamental quiver \(\quiver{F}\) can generate the hexagonal, rhombille, etc. lattices – we developed this idea in [[[Intransitive lattices]]].

The generalization we pursue in this section is to swap out the infinite groups \(\group{\power{\group{\mathbb{Z}}}{\sym{n}}}\) for finite Abelian groups. These yield finite lattice quivers that we can visualize as lattices defined on a torus. Furthermore, by choosing direct products of groups, some of which are finite (\(\cyclicGroup{\sym{n}}\)), and others which are infinite (\(\group{\mathbb{Z}}\)), we can obtain "partial tori", or cylinders.

Square torus

Square quiver

Recall that the square quiver \(\bindCardSize{\subSize{\squareQuiver }{ \infty }}{\rform{\card{r}},\bform{\card{b}}}\) can be seen in two ways:

  • as the Cayley quiver \(\bindCardSize{\cayleyQuiverSymbol{\translationPresentation{2}}}{\rform{\card{r}},\bform{\card{b}}}\), where \(\bindCardSize{\translationPresentation{2}}{\groupGenerator{\rform{r}},\groupGenerator{\bform{b}}}\defEqualSymbol \groupPresentation{\groupGenerator{\rform{r}},\groupGenerator{\bform{b}}}{\groupCommutator{\groupGenerator{\rform{r}}}{\groupGenerator{\bform{b}}}}\) is a presentation of \(\group{\power{\group{\mathbb{Z}}}{2}}\).

  • as the path quotient \(\compactQuotient{\quiver{F}}{}{\translationWordHomomorphism{2}}\) of the fundamental quiver \(\quiver{F} = \bouquetQuiver{2}\) by the affine path valuation \(\translationPathValuation{2}\).

Intuitively, the quotient takes the forward path quiver \(\forwardPathQuiver{\quiver{F}}{}\)(which is isomorphic to \(\subSize{\treeQuiver{2}}{ \infty }\)), and glues vertices together that share a path value under \(\translationPathValuation{2}\).

That \(\translationPathValuation{2}\) is affine is just the statement that a path value \(\function{\translationPathValuation{2}}(\path{P})\) depends only on the path word via the group homomorphism \(\functionSignature{\function{\translationWordHomomorphism{2}}}{\wordGroupSymbol }{\group{\power{\group{\mathbb{Z}}}{2}}}\):

\[ \function{\translationPathValuation{2}}(\path{P})\defEqualSymbol \function{\translationWordHomomorphism{2}}(\wordOf(\path{P})) \]

The homomorphism \(\translationWordHomomorphism{2}\) just sends cardinals (the generators of \(\wordGroupSymbol\)) to the obvious generators of \(\group{\power{\group{\mathbb{Z}}}{2}}\) – the behavior of \(\translationWordHomomorphism{2}\) on longer words \(\elemOf{\wordSymbol{W}}{\wordGroupSymbol }\) is uniquely determined by these images:

\[ \bindCardSize{\translationWordHomomorphism{2}}{\rform{\card{r}},\bform{\card{b}}}\defEqualSymbol \homomorphismMapping{\mto{\rform{\card{r}}}{\tuple{1,0}},\mto{\bform{\card{b}}}{\tuple{0,1}}} \]

We can see that these constructions are really the same: the forward path quiver \(\forwardPathQuiver{\quiver{F}}{}\) first constructs paths with all possible words, and the subsequent quotient \(\quotient{\forwardPathQuiver{\quiver{F}}{}}{\translationPathValuation{2}}\) by the affine path valuation \(\translationPathValuation{2}\) then identifies those paths that should be the same under relator (\(\rform{\card{r}}\iGmult \bform{\card{b}} = \bform{\card{b}}\iGmult \rform{\card{r}}\)) in the presentation \(\translationPresentation{2}\).

Torus

We can construct a square torus quiver by replacing \(\group{\power{\group{\mathbb{Z}}}{2}}\) with \(\groupDirectProduct{\cyclicGroup{\sym{w}}\groupDirectProductSymbol \cyclicGroup{\sym{h}}}\) in either of these constructions.

Let's start with the group presentation \(\bindCardSize{\translationPresentation{2}}{\rform{\card{r}},\bform{\card{b}}}\) of \(\group{\power{\group{\mathbb{Z}}}{2}}\), which is:

\[ \bindCardSize{\translationPresentation{2}}{\rform{\card{r}},\bform{\card{b}}}\defEqualSymbol \groupPresentation{\rform{\groupGenerator{r}},\bform{\groupGenerator{b}}}{\groupCommutator{\rform{\groupElement{r}}}{\bform{\groupElement{b}}}} \]

We now define the following presentation of \(\groupDirectProduct{\cyclicGroup{\sym{w}}\groupDirectProductSymbol \cyclicGroup{\sym{h}}}\), which imposes finitude, essentially saying that if we take the \(\rform{\card{r}}\) cardinal \(\sym{w}\) times we should return to our starting vertex, etc:

\[ \bindCardSize{\translationPresentation{2}}{\rform{\card{r}}\compactBindingRuleSymbol \modulo{\sym{w}},\bform{\card{b}}\compactBindingRuleSymbol \modulo{\sym{h}}}\defEqualSymbol \groupPresentation{\rform{\groupGenerator{r}},\bform{\groupGenerator{b}}}{\groupCommutator{\rform{\groupElement{r}}}{\bform{\groupElement{b}}},\groupPower{\rform{\groupElement{r}}}{\sym{w}},\groupPower{\bform{\groupElement{b}}}{\sym{h}}} \]

We can then define the square torus as the Cayley quiver of this presentation.

Alternatively, and equivalently, we can construct the square torus as a quotient by defining the "cyclic" affine path valuation induced by the group homomorphism we denote by \(\bindCardSize{\translationWordHomomorphism{2}}{\rform{\card{r}}\compactBindingRuleSymbol \modulo{\sym{w}},\bform{\card{b}}\compactBindingRuleSymbol \modulo{\sym{h}}}\):

\[ \begin{array}{c} \functionSignature{\function{\bindCardSize{\translationWordHomomorphism{2}}{\rform{\card{r}}\compactBindingRuleSymbol \modulo{\sym{w}},\bform{\card{b}}\compactBindingRuleSymbol \modulo{\sym{h}}}}}{\wordGroup{\quiver{2}}}{\groupDirectProduct{\cyclicGroup{\sym{w}}\groupDirectProductSymbol \cyclicGroup{\sym{h}}}}\\ \\ \bindCardSize{\translationWordHomomorphism{2}}{\rform{\card{r}}\compactBindingRuleSymbol \modulo{\sym{w}},\bform{\card{b}}\compactBindingRuleSymbol \modulo{\sym{h}}}\defEqualSymbol \assocArray{\mto{\rform{\card{r}}}{\tuple{1,0}},\mto{\bform{\card{b}}}{\tuple{0,1}}} \end{array} \]

The parameters \(\sym{w},\sym{h}\) are the moduli of the torus, where \(\sym{w}\) is the width modulus and \(\sym{h}\) is the height modulus. We generalize our notation for finite square quivers, which was \(\bindCardSize{\squareQuiver }{\sym{w},\sym{h}}\), to allow for these finite but cyclic dimensions:

\[ \bindCardSize{\toroidalModifier{\squareQuiver }}{\sym{w},\sym{h}}\congruentSymbol \bindCardSize{\squareQuiver }{\modulo{\sym{w}},\modulo{\sym{h}}}\defEqualSymbol \compactQuotient{\bouquetQuiver{2}}{\vert{0}}{\bindCardSize{\translationWordHomomorphism{2}}{\modulo{\sym{w}},\modulo{\sym{h}}}}\congruentSymbol \bindCardSize{\cayleyQuiverSymbol{\translationPresentation{2}}}{\modulo{\sym{w}},\modulo{\sym{h}}} \]

We suppressed the cardinals \(\rform{\card{r}},\bform{\card{b}}\), but we can also explicitly bind them in the notation:

\[ \bindCardSize{\squareQuiver }{\rform{\card{r}}\compactBindingRuleSymbol \modulo{\sym{w}},\bform{\card{b}}\compactBindingRuleSymbol \modulo{\sym{h}}}\defEqualSymbol \compactQuotient{\bindCardSize{\bouquetQuiver{2}}{\rform{\card{r}},\bform{\card{b}}}}{\vert{0}}{\bindCardSize{\translationWordHomomorphism{2}}{\rform{\card{r}}\compactBindingRuleSymbol \modulo{\sym{w}},\bform{\card{b}}\compactBindingRuleSymbol \modulo{\sym{h}}}}\congruentSymbol \bindCardSize{\cayleyQuiverSymbol{\translationPresentation{2}}}{\rform{\card{r}}\compactBindingRuleSymbol \modulo{\sym{w}},\bform{\card{b}}\compactBindingRuleSymbol \modulo{\sym{h}}} \]

Below we show \(\bindCards{\squareQuiver }{\rform{\card{r}}\compactBindingRuleSymbol \modulo{10},\bform{\card{b}}\compactBindingRuleSymbol \modulo{4}}\), the square torus with width modulus 10 and height modulus 4:

The \(\rform{\card{x}}\) cardinal is associated with traversal around the outer radius of the torus, and the \(\bform{\card{y}}\) cardinal with the inner radius. The outer radius spanned by \(\rform{\card{x}}\) has a width modulus of 10, and the inner radius spanned by \(\bform{\card{y}}\) has a height modulus of 4.

Path relations

From a path-algebraic point of view, a square torus has a simple characterization. Recall that for the infinite square lattice, we have the single path relation \(\word{\rform{\card{x}}}{\bform{\card{y}}}\pathIso \word{\bform{\card{y}}}{\rform{\card{x}}}\). A square torus with moduli \(\tuple{\sym{w},\sym{h}}\) extends this to the set \(\list{\word{\rform{\card{x}}}{\bform{\card{y}}}\pathIso \word{\bform{\card{y}}}{\rform{\card{x}}},\repeatedPower{\word{\rform{\card{x}}}}{\sym{w}}\pathIso \word{1},\repeatedPower{\word{\bform{\card{y}}}}{\sym{h}}\pathIso \word{1}}\).

Square tori as generalizations of square quivers

We now compare the square torus quiver \(\bindCards{\squareQuiver }{\rform{\card{r}}\compactBindingRuleSymbol \modulo{\sym{w}},\bform{\card{b}}\compactBindingRuleSymbol \modulo{\sym{h}}}\) and the square quivers we defined in [[finite square quiver \(\bindCards{\squareQuiver }{\rform{\card{r}}\compactBindingRuleSymbol \sym{w},\bform{\card{b}}\compactBindingRuleSymbol \sym{h}}\) and the infinite square quiver \(\bindCards{\subSize{\squareQuiver }{ \infty }}{\rform{\card{r}},\bform{\card{b}}}\congruentSymbol \bindCards{\squareQuiver }{\rform{\card{r}}\compactBindingRuleSymbol \infty ,\bform{\card{b}}\compactBindingRuleSymbol \infty }\).

Firstly, if we adopt the normal convention that the additive group of integers \(\group{\mathbb{Z}}\,\)is a cyclic group order infinity (\(\group{\mathbb{Z}} = \cyclicGroup{ \infty }\)), then we can see the infinite square quiver as being a square torus with infinite moduli. The last two path relations \(\list{\word{\rform{\card{x}}}{\bform{\card{y}}}\pathIso \word{\bform{\card{y}}}{\rform{\card{x}}},\repeatedPower{\word{\rform{\card{x}}}}{\sym{w}}\pathIso \word{1},\repeatedPower{\word{\bform{\card{y}}}}{\sym{h}}\pathIso \word{1}}\) become vacuous, leaving us with the ordinary path relations of the infinite square quiver \(\list{\word{\rform{\card{x}}}{\bform{\card{y}}}\pathIso \word{\bform{\card{y}}}{\rform{\card{x}}}}\).

Secondly, let's compare the finite square quiver \(\bindCards{\squareQuiver }{\rform{\card{r}}\compactBindingRuleSymbol \sym{w},\bform{\card{b}}\compactBindingRuleSymbol \sym{h}}\) with the square torus quiver \(\bindCards{\squareQuiver }{\rform{\card{r}}\compactBindingRuleSymbol \modulo{\sym{w}},\bform{\card{b}}\compactBindingRuleSymbol \modulo{\sym{h}}}\) for e.g. \(\tuple{\sym{w},\sym{h}} = \tuple{10,4}\). We will display the torus quiver on a 2-dimensional “modular plane” rather than in 3 dimensions. We can think of this plane as “wrapping around” on its border – but we’ll number the edges that cross this border so that it is easy to trace how they connect up:

Compare this to the ordinary finite square quiver \(\bindCardSize{\squareQuiver }{\rform{\card{r}}\compactBindingRuleSymbol 10,\bform{\card{b}}\compactBindingRuleSymbol 4}\):

Clearly, the square torus has the same number of vertices, and differs only from the regular square quiver in that we have "glued the borders" together in the obvious way.

Square cylinder

We've defined the square torus \(\bindCardSize{\squareQuiver }{\rform{\card{r}}\compactBindingRuleSymbol \modulo{\sym{w}},\bform{\card{b}}\compactBindingRuleSymbol \modulo{\sym{h}}}\), in which dimensions are cyclic. But what about the case in which only one is cyclic and the other is infinite, e.g. \(\bindCardSize{\squareQuiver }{\rform{\card{r}}\compactBindingRuleSymbol \infty ,\bform{\card{b}}\compactBindingRuleSymbol \modulo{\sym{h}}}\)?

This is already well-defined if we consider the integers to be a cyclic group with infinite order (\(\group{\mathbb{Z}} = \cyclicGroup{ \infty }\)). We'll call these special tori cylinders.

Here we show a fragment of the square cylinder \(\bindCardSize{\squareQuiver }{\rform{\card{r}}\compactBindingRuleSymbol \infty ,\bform{\card{b}}\compactBindingRuleSymbol \modulo{5}}\) on the modular plane:

Here is the same cylinder in 3 dimensions:

In general, we'll use the generic term tori to encompass both the cases where both cardinals have finite dimension, yielding a torus, and where one (or more) cardinal has infinite dimension, yielding a cylinder (or higher-dimensional analogue).

Triangular torus

The construction we saw above gives toroidal and cyclindrical versions of the square, cubic, and indeed all the higher dimensional variants \(\gridQuiver{\sym{n}}\). But how can we obtain a toroidal triangular lattice?

As Cayley quiver

The Cayley quiver construction is most natural. Recall the "triangular" group presentation \(\starTranslationPresentation{3}\) we introduced in [[[Cayley quivers#Transitive quivers as Cayley quivers]]]:

\[ \bindCardSize{\starTranslationPresentation{3}}{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}\defEqualSymbol \groupPresentation{\groupGenerator{\rform{r}},\groupGenerator{\gform{g}},\groupGenerator{\bform{b}}}{\groupCommutator{\groupGenerator{\rform{r}}}{\groupGenerator{\gform{g}}},\groupCommutator{\groupGenerator{\gform{g}}}{\groupGenerator{\bform{b}}},\groupGenerator{\rform{r}}\iGmult \groupGenerator{\gform{g}}\iGmult \groupInverse{\groupGenerator{\bform{b}}}} \]

To make this group finite, we now define a related presentation that imposes additional relators that cause every element of this group to have finite order:

\[ \bindCardSize{\starTranslationPresentation{3}}{\groupGenerator{\rform{r}}\compactBindingRuleSymbol \modulo{\sym{h}},\groupGenerator{\gform{g}}\compactBindingRuleSymbol \modulo{\sym{w}},\groupGenerator{\bform{b}}\compactBindingRuleSymbol \modulo{\sym{w}}}\defEqualSymbol \groupPresentation{\groupGenerator{\rform{r}},\groupGenerator{\gform{g}},\groupGenerator{\bform{b}}}{\groupCommutator{\groupGenerator{\rform{r}}}{\groupGenerator{\gform{g}}},\groupCommutator{\groupGenerator{\gform{g}}}{\groupGenerator{\bform{b}}},\groupGenerator{\rform{r}}\iGmult \groupGenerator{\gform{g}}\iGmult \groupInverse{\groupGenerator{\bform{b}}},\groupPower{\groupGenerator{\rform{r}}}{\sym{h}},\groupPower{\groupGenerator{\gform{g}}}{\lcm(\sym{w},2 \, \sym{h})}} \]

Two notes: the role of the lowest-common-multiple function will explained later. Also, the "missing relation" \(\groupPower{\groupGenerator{\bform{b}}}{\lcm(\sym{w},2 \, \sym{h})}\) is implied by the other relations.

As path quotient

We can use a similar method as before, except this time we adapt the homomorphism \(\starTranslationWordHomomorphism{3}\). We will cheat a little and define the toroidal form of \(\starTranslationWordHomomorphism{3}\) as a rather trivial map into the group presented by \(\bindCardSize{\starTranslationPresentation{3}}{\groupGenerator{\rform{r}}\compactBindingRuleSymbol \modulo{\sym{h}},\groupGenerator{\gform{g}}\compactBindingRuleSymbol \modulo{\sym{w}},\groupGenerator{\bform{b}}\compactBindingRuleSymbol \modulo{\sym{w}}}\) that we just defined above – we explained this connection in [[[Lattice quivers#Homomorphisms and presentations]]].

\[ \begin{array}{c} \functionSignature{\function{\bindCardSize{\starTranslationWordHomomorphism{3}}{\rform{\card{r}}\compactBindingRuleSymbol \modulo{\sym{h}},\gform{\card{g}}\compactBindingRuleSymbol \modulo{\sym{w}},\bform{\card{b}}\compactBindingRuleSymbol \modulo{\sym{w}}}}}{\wordGroup{\quiver{3}}}{\bindCardSize{\starTranslationPresentation{3}}{\groupGenerator{\rform{r}}\compactBindingRuleSymbol \modulo{\sym{h}},\groupGenerator{\gform{g}}\compactBindingRuleSymbol \modulo{\sym{w}},\groupGenerator{\bform{b}}\compactBindingRuleSymbol \modulo{\sym{w}}}}\\ \\ \starTranslationWordHomomorphism{3}\defEqualSymbol \assocArray{\mto{\rform{\card{r}}}{\groupGenerator{\rform{r}}},\mto{\gform{\card{g}}}{\groupGenerator{\gform{g}}},\mto{\bform{\card{b}}}{\groupGenerator{\bform{b}}}} \end{array} \]

This map sends the cardinals \(\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}\) to the generators \(\groupGenerator{\rform{r}},\groupGenerator{\gform{g}},\groupGenerator{\bform{b}}\) of the presentation. Then we define the torus to be the path quotient:

\[ \bindCardSize{\triangularQuiver }{\rform{\card{r}}\compactBindingRuleSymbol \modulo{\sym{h}},\gform{\card{g}}\compactBindingRuleSymbol \modulo{\sym{w}},\bform{\card{b}}\compactBindingRuleSymbol \modulo{\sym{w}}}\defEqualSymbol \compactQuotient{\bindCardSize{\bouquetQuiver{3}}{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}}{\vert{0}}{\bindCardSize{\starTranslationWordHomomorphism{3}}{\rform{\card{r}}\compactBindingRuleSymbol \modulo{\sym{h}},\gform{\card{g}}\compactBindingRuleSymbol \modulo{\sym{w}},\bform{\card{b}}\compactBindingRuleSymbol \modulo{\sym{w}}}} \]

Here is the triangular torus \(\bindCardSize{\triangularQuiver }{\rform{\card{r}}\compactBindingRuleSymbol \modulo{4},\gform{\card{g}}\compactBindingRuleSymbol \modulo{8},\bform{\card{b}}\compactBindingRuleSymbol \modulo{8}}\):

In this case, the dimension 4 measures the number vertices visited before the \(\rform{\card{r}}\)-axis loops back to itself, and similarly 8 measures this count for the \(\gform{\card{g}}\)-axis (and also the \(\bform{\card{b}}\)-axis):

Here we visualize the triangular torus in 3 dimensions:

We can highlight the cardinal axes:

Triangular cylinder

Here is (a fragment of) the triangular cylinder \(\bindCardSize{\triangularQuiver }{\rform{\card{r}}\compactBindingRuleSymbol \modulo{4},\gform{\card{g}}\compactBindingRuleSymbol \infty ,\bform{\card{b}}\compactBindingRuleSymbol \infty }\), cyclic in the \(\rform{\card{r}}\) dimension but infinite in the \(\gform{\card{g}}\) and \(\bform{\card{b}}\) dimensions:

Also note that we are using an artificial transparency effect to make the three dimensional structure easier to perceive.

Hexagonal torus

Having established the construction of the triangular torus, we can produce the hexagonal torus by adjusting the fundamental quiver from \(\quiver{F} = \bindCardSize{\bouquetQuiver{3}}{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}}\) to \(\quiver{F} = \bindCardSize{\subSize{\lineQuiver }{2}}{\rform{\card{r}}\parallelCardSymbol \gform{\card{g}}\parallelCardSymbol \bform{\card{b}}}\) as we explored in [[[Intransitive lattices]]].

Here we plot \(\bindCardSize{\toroidalModifier{\hexagonalQuiver }}{\rform{\card{r}}\compactBindingRuleSymbol 6,\gform{\card{g}}\compactBindingRuleSymbol 12,\bform{\card{b}}\compactBindingRuleSymbol 12}\congruentSymbol \bindCardSize{\hexagonalQuiver }{\rform{\card{r}}\compactBindingRuleSymbol \modulo{6},\gform{\card{g}}\compactBindingRuleSymbol \modulo{12},\bform{\card{b}}\compactBindingRuleSymbol \modulo{12}}\) on the modular plane:

Comparing this to the triangular torus \(\bindCardSize{\triangularQuiver }{\rform{\card{r}}\compactBindingRuleSymbol \modulo{6},\gform{\card{g}}\compactBindingRuleSymbol \modulo{6},\bform{\card{b}}\compactBindingRuleSymbol \modulo{6}}\), we see that we have can obtain the hexagonal torus by deleting from the triangular torus a periodic pattern of vertices, corresponding to the "forbidden states" that the structure of the fundamental quiver prevents us from visiting:

Three dimensions

We can plot the torus in three dimensions. Here we show \(\bindCardSize{\toroidalModifier{\hexagonalQuiver }}{\rform{\card{r}}\compactBindingRuleSymbol 18,\gform{\card{g}}\compactBindingRuleSymbol 48,\bform{\card{b}}\compactBindingRuleSymbol 48}\):

Hexagonal cylinder

A hexagonal cylinder gives a structure corresponding to the bond connectivity of a carbon nanotube. Here we show \(\bindCardSize{\hexagonalQuiver }{\rform{\card{r}}\compactBindingRuleSymbol \modulo{12},\gform{\card{g}}\compactBindingRuleSymbol \infty ,\bform{\card{b}}\compactBindingRuleSymbol \infty }\):

Axes

Let’s consider for a moment what axis-aligned geodesics look like for toroidal lattices. First, though, let’s consider the situation for the non-toroidal, two-dimensional lattices:

The geodesics are colored by which cardinal they are aligned with. In a hexagonal lattice we cannot form path words like \(\word{\card{a}}{\card{a}}{\card{a}}\), so our “axes” are composed of alternating pairs of cardinals, e.g. \(\word{\card{a}}{\ncard{b}}{\card{a}}{\ncard{b}}{\card{a}}{\ncard{b}}\); we color these paths by blending the colors of the alternated cardinals.

Ok, now we can compare with square torus (top) and triangular torus (bottom):

As you probably expected, the square torus has predictable “orthogonal” axes.

But the situation with triangular torus appears to be more interesting: the \(\gform{\card{g}}\) and \(\bform{\card{b}}\) axes twist around and meet at an point opposite the origin. This behavior turns out to be sensitive to the moduli of the torus.

If the moduli are coprime, then either of the axes \(\gform{\card{g}}\) and \(\bform{\card{b}}\) will reach every vertex:

Modular plane

This is of course a straightforward consequence of basic number theory, but is best explained by plotting these lattices on the modular plane we introduced earlier. To repeat: we can think of this plane as “wrapping around” on its border – but we’ll number the edges that cross this border so that it is easy to trace how they connect up:

Let’s plot the \(\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}\) axes on the plane for \(\bindCardSize{\toroidalModifier{\triangularQuiver }}{\rform{\card{r}}\compactBindingRuleSymbol 4,\gform{\card{g}}\compactBindingRuleSymbol 8,\bform{\card{b}}\compactBindingRuleSymbol 8}\):

Plotting the \(\rform{\card{r}}\) and \(\bform{\card{b}}\) axes for a range of moduli, we can see how the greatest common divisor of the two moduli determines how many orbits of the \(\sym{w}\) dimension the \(\bform{\card{b}}\) axis will make before returning to the origin:

Notice that if \(\sym{w} / 2\) and \(\sym{h} / 2\) are coprime, the axis \(\bform{\card{b}}\) intersects every vertex. In general the number of times \(\rform{\card{r}}\) will intersect \(\bform{\card{b}}\) for a \(\sym{w}\times \sym{h}\) torus is \(2 \, \lcm(\sym{h} / 2,\sym{w}) / \sym{h}\).

A similar situation applies for the hexagonal torus, when we use alternating axes:

Due to an arbitrary choice of orientation of these hexagons, our previously vertical axis is now horizontal, but a similar relation holds: the number of vertices in the intersection of the axis-aligned geodesics is given by \(3 \, \lcm(\sym{w},\sym{h} / 3) / \sym{h}\), where it is important to notice the \(\tuple{\sym{w} = 6,\sym{h} = 9}\) case actually has two such intersecting vertices, not one as it first appears. Similarly the \(\tuple{\sym{w} = 12,\sym{h} = 9}\) case has 4 intersecting vertices.

We are certainly not limited to these square, triangular, and hexagonal toroidal lattices. Any fundamental quiver employing the same translation groups has a toroidal version. For example, the rhombille lattice:

Sheared tori

There is a straightforward construction we can use to introduce an intuitive kind of shear or torsion into our lattice quivers.

We'll start with the square torus (of size \(5 \times 3\)), where the torsion is easiest to see. On the left is the sheared lattice, and on the right is the normal square lattice for comparison.

Notice that in the sheared lattice, the top left vertex connects to the second vertex on the bottom left; in the normal lattice it connects to the first. We’ll say that this lattice has a shear parameter of \(\sym{z} = 1\).

Here are square lattices with shear parameters \(-2 \le \sym{z} \le 2\):

Notice similar "orbital mechanics" for the sheared square lattice as we saw for the triangular lattice: for \(\sym{z} = \pm 1\), a \(\bform{\card{y}}\) geodesic will orbit through all vertices, but for \(\sym{z} = \pm 2\), a \(\bform{\card{y}}\) geodesic effectively skips the neighboring geodesic on completing a circuit, so if \(\sym{w}\) is even we will have exactly two distinct \(\bform{\card{y}}\)-orbits.

From a path-algebraic point of view, a \(\sym{z}\)-sheared square lattice can be expressed as the path relation set:

\[ \list{\word{\rform{\card{x}}}{\bform{\card{y}}}\pathIso \word{\bform{\card{y}}}{\rform{\card{x}}},\repeatedPower{\word{\rform{\card{x}}}}{\sym{w}}\pathIso \repeatedPower{\word{\bform{\card{y}}}}{\sym{z}},\repeatedPower{\word{\bform{\card{y}}}}{\sym{h}}\pathIso \word{1}} \]

It's clear then that if \(\sym{z} = \sym{h}\), we have no shear at all, and hence the shear parameter lives in the integers modulo \(\sym{h}\).

When plotted in three dimensions, the twist of a sheared square torus resembles the twisted magnetic field used in a tokamak.


Noncommutativity

Introduction

The line, square, triangular, etc. quivers we have examined in [[[Transitive quivers]]], [[[Intransitive lattices]]], and [[[Toroidal lattices]]] have all been associated with finite- or infinite-order Abelian groups. Specifically, they could be seen as the Cayley quivers of presentations of these groups, or in for non-transitive quivers like the hexagonal quiver, as path quotients by affine path valuations with values in these groups.

Ultimately, the group associated with each such quiver can be interpreted as the translation group that describes how we can permute the vertices of the quiver, while preserving path words. This translation group is the group center of the endomorphism group of the quiver, which is the larger group of path homomorphisms that permute vertices and rewrite path words in an invertible way.

Let us now move beyond Abelian groups, to non-commutative groups. One family of "minimally non-commutative" groups are the dihedral groups, which describe the symmetries of a n-gon. We'll examine the infinite dihedral groups, which, in the 1-dimensional case, describe symmetries of a "polygon with infinite number of edges".

Note: this section is a stub. See [[[here:Summary and roadmap#Noncommutativity]]] for more information.

Dihedral lattices

Let’s look at the one-dimensional family first. The cardinals \(\rform{\card{x}}\) and \(\rform{\inverted{\card{x}}}\) move right and left, and \(\rgform{\card{f}}\) flips the direction of movement. The matrix representation used is:

The lattice so generated is a doubled version of the line lattice, with the \(\rgform{\card{f}}\) switching between the upper and lower portions:

We can generalize this concept to the two-dimensional infinite dihedral group, with cardinals \(\rform{\card{x}}\), \(\bform{\card{y}}\). This representation is:

The generated lattice consists of two oppositely oriented copies of the square lattice, with the \(\rgform{\card{f}}\) cardinal acting to alternate between them:

Wreathe product

This immediately suggests a general procedure, since the flip cardinal is effectively a generator of a group action on the other cardinals via \(\list{\rewrite{\rform{\card{x}}}{\rform{\inverted{\card{x}}}},\rewrite{\bform{\card{y}}}{\bform{\inverted{\card{y}}}}}\). We can therefore take any lattice quiver with an abelian group, and add to it additional cardinals that permute and/or invert its other cardinals. I claim without proof that this is equivalent to forming a restricted wreath product with base group being the "pure translation" cardinals. The infinite dihedral group above is a wreathe product with a group isomorphic to \(\mathbb{Z}_2\).

As one example of this procedure, let’s add a cardinal \(\gform{\card{r}}\) that performs a 90° rotation of the other cardinals, which corresponds to taking a wreathe product with a group isomorphic to \(\mathbb{Z}_4\):

The generated lattice produces contains four copies of the square lattice:

Each application of the \(\gform{\card{r}}\) cardinal cycles us among four different square lattices in which the roles of \(\rform{\card{x}}\) and \(\bform{\card{y}}\) are cycled through the list \(\list{\rform{\card{x}},\bform{\card{y}},\rform{\inverted{\card{x}}},\bform{\inverted{\card{y}}}}\).

Unfortunately the representation I used above only generates a cover of the true lattice quiver. I had to write the cardinal matrices directly in order to produce a tractable coordinatization, but if one abandons matrix representations and uses a finite state machine directly, the lattice can be generated in that fashion quite directly.

A small aside: a famous example of a wreathe group is the “lamplighter group”: an bi-infinite street of lamps, and a lamplighter who can either move left or right, or toggle the lamp he is at. This admits a straightforward state machine implementation. For a “circular street” of \(n\)lamps, we obtain some very symmetric polyhedra:

One way to understand these polyhedra is that they are truncated hypercubes (this is most obvious visually for the 2 and 3-lamp cases above). The reason for this is simple: the possible configurations of \(n\) lamps form the vertices of an \(n\)-hypercube, with each axis corresponding to a lamp. Flipping a particular lamp is equivalent to traversing an edge of this hypercube. If we are at a corner of the hypercube, we can flip any lamp we wish since there are \(n\) edges incident to us. To prevent this, imagine “shaving off” a corner of the \(n\)-hypercube to obtain a polygon with \(n-1\) sides. Each corner of this polygon has one “toggle” cardinal associated with it, corresponding to toggling a single lamp. The two neighboring polygon corners represent the togglings available if we walk to the next or previous lamp. By walking along this polygon, we can reach any particular lamp in order to flip it.

Enumerations


Rewriting systems

Introduction

We now make our first foray into dynamics: quivers that describe systems that change in time. To do this we will use the lens of rewriting systems. A (computational) rewriting system is a non-deterministic automaton that succesively transforms some global state, represented by an arbitrary data structure, by finding and applying well-defined rules that match particular fragments of the global state, replacing them with other fragments.

Rewriting systems form a very flexible and general model of computations, and any computational system can be cast into this framework: Turing machines, cellular automata, graph rewriting systems, string rewriting systems, register machines, non-deterministic automata, etc. In all cases, these systems can be non-deterministic, although of course deterministic systems are special cases, which from our point of view will result in rather trivial theories.

Eventually, we will see how to apply discrete versions of ideas from theoretical physics to these rewriting systems, giving us computational incarnations of the ideas that underly special relativity and field theory.

Note: this section is a stub. The roadmap for this section can be found [[[here:Summary and roadmap#Rewriting systems]]].

Local vs global states

The fragments we referred to earlier we'll call local states. By definition, a global state is the juxtaposition of a set of local states that together describe the state of the entire system. By a minimal local state, we mean a local state that is as granular as possible: that is not the juxtaposition of other local states. This we will refer to as a token. (There can be some freedom in how one defines the tokens in each case.)

Here we show a table indicating how this may be done for various types of system:

zzzz
system typeglobal statetoken
\(\stringRewritingSystem{}\)string rewriting systemstring \(\qstring{\character{c}_1 \character{c}_2 \ellipsis \character{c}_{\sym{n}}}\)\(\tuple{\sym{i},\character{c}_{\sym{i}}}\)
\(\turingMachineRewritingSystem{}\)Turing machinehead in state \(\sym{s}\) at cell \(\sym{i}\) on tape \(\qstring{\character{c}_1 \ellipsis \character{c}_{\sym{n}}}\)\(\sym{s},\sym{i},\tuple{\sym{i},\character{c}_{\sym{i}}}\)
\(\cellularAutomatonRewritingSystem{}\)cellular automatonvector of cells \(\list{\character{c}_1,\character{c}_2,\ellipsis ,\character{c}_{\sym{n}}}\)\(\tuple{\sym{i},\sym{c}_{\sym{i}}}\)
\(\graphRewritingSystem{}\)graph rewriting systemset of edges \(\list{\de{\vert{\sym{t}_1}}{\vert{\sym{h}_1}},\ellipsis ,\de{\vert{\sym{t}_{\sym{n}}}}{\vert{\sym{h}_{\sym{n}}}}}\)edge \(\de{\vert{\sym{t}_{\sym{i}}}}{\vert{\sym{h}_{\sym{i}}}}\)
\(\hypergraphRewritingSystem{}\)hypergraph rewriting systemset of hyperedges \(\list{\sym{e}_1,\sym{e}_2,\ellipsis ,\sym{e}_{\sym{n}}}\)hyperedge \(\sym{e}_{\sym{i}}\)
\(\petriNetRewritingSystem{}\)Petri netplace occupancy \(\assocArray{\mto{\sym{t}_1}{\sym{N}_1},\ellipsis ,\mto{\sym{t}_{\sym{n}}}{\sym{N}_{\sym{n}}}}\)\(\tuple{\sym{t}_{\sym{i}},\sym{N}_{\sym{i}}}\)

Evolution

Once a particular rewriting system type has been chosen, it remains to specify the rewriting rules that should be applied. We'll indicate the system in a script typeface, typically \(\rewritingSystem{R}\), and list its rules as:

\[ \rewritingSystem{R} = \rewritingRuleBinding{\genericRewritingSystem{}}{\rewritingRule{\sym{L}_1}{\sym{R}_1},\rewritingRule{\sym{L}_2}{\sym{R}_2},\ellipsis ,\rewritingRule{\sym{L}_{\sym{n}}}{\sym{R}_{\sym{n}}}} \]

where \(\sym{L}_{\sym{i}}\) is the left-hand-side, or LHS, of the \(i^{\textrm{th}}\) rule, and \(\sym{R}_{\sym{i}}\) is the right-hand-side, or RHS.

The LHS specifies a pattern that should match a particular local state (i.e. one or more tokens), and the RHS specifies how the matched state should be rewritten to yield a new local state (and hence a new global state). If multiple matches can occur in a given global state, the system is non-deterministic. If a maximum of one match can occur, the system is deterministic.

After specifying \(\rewritingSystem{R}\), we can now choose an initial state, written \(\sym{s}_0\). We write the combined data of a rewriting system and a state as \(\rewritingStateBinding{\rewritingSystem{R}}{\sym{s}_0}\).

At that point we can evolve the system, which is an iterative process that is carried out either for a fixed number of steps, or alternatively in an ongoing fashion that never terminates. We may also reach a global state that cannot be rewritten because there are no matches: we say that a particular global state has halted.

This process generates a graph, known as a multiway graph or rewrite graph, in which vertices represent global states, and edges represent rewrites. We'll write the process that generates this graph to depth \(\sym{n}\) as:

\[ \multiwayBFS{\rewritingSystem{R},\sym{s}_0,\sym{n}} \]

String rewriting systems

To illustrate this setup, we'll focus on string rewriting systems, since they are both easy to visualize, familiar to those with experience with computer programming, and fairly easy to analyze.

Our first example will be the following extremely simple system:

\[ \rewritingSystem{R_0}\defEqualSymbol \rewritingRuleBinding{\stringRewritingSystem{}}{\rewritingRule{\lstr{b}}{\lstr{a}}} \]

This rewrite system simply replaces the letter \(\lchar{b}\) with the letter \(\lchar{a}\) whereever it occurs.

Here we visualize the rewrite graph generated by \(\multiwayBFS{\rewritingSystem{R_0},\qstring{\lstr{bab}}, \infty }\):

As you can see, there are two matches for the initial state \(\qstring{\lstr{bab}}\). In the two successor states \(\qstring{\lstr{aab}}\) and \(\qstring{\lstr{baa}}\) there is one match, corresponding to the remaining \(\lchar{b}\), and in the final state \(\qstring{\lstr{aaa}}\) there are no remaining matches as all \(\lchar{b}\)'s have been rewritten.

Rewrite quiver

Notice the important fact here that the two matches, at positions 1 and 3 of the original string, do not overlap: we say that these rewrites commute. This implies that we can rewrite those matches in either order, and the non-rewritten match will still remain. This gives us a hint of how we might attach a cardinal structure to the rewrite graph, yielding the rewrite quiver.

Formally, the rewrite quiver is the quiver whose cardinals are the labels formed by the following data taken as a whole: the rule that was matched, and the tokens that were involved in the match.

Here we show the rewrite quiver for this simple system, where the two cardinals correspond to the two independent rewrites:

Let's consider a slightly more complex initial condition of \(\qstring{\lstr{bbb}}\).

We can see already that this rewrite system yields a rewrite quiver given by \(\subSize{\gridQuiver{\sym{n}}}{2}\), a hypercube of dimension \(\sym{n}\), where \(\sym{n}\) is the count of \(\lchar{b}\)'s in the initial condition. The rewrite quiver is insensitive to the order of the characters in the string, only depending on the \(\lchar{b}\)-count. This is a generic feature of string rewriting systems in which the rules cannot overlap.

More generally, in any global state of a rewriting system in which we have \(\sym{n}\) commuting rewrites available, we will obtain a subquiver that is isomorphic to \(\subSize{\gridQuiver{\sym{n}}}{2}\).

Sorting system

We'll now focus on the "sorting system" that partially sorts substrings:

\[ \rewritingSystem{R_1}\defEqualSymbol \rewritingRuleBinding{\stringRewritingSystem{}}{\rewritingRule{\lstr{ba}}{\lstr{ab}}} \]

Here we show the rewrite quiver for a variety of initial conditions:

Notice the obvious fact that all of these quivers terminate in a single final state, in which the characters of the string are in sorted order. This must always happen, since a rewrite always "moves one \(\lchar{b}\) to the right", and will always be able to do so if any \(\lchar{a}\)'s are to the right of any \(\lchar{b}\)'s. The only halting state therefore is the state in which all \(\lchar{a}\)’s are to the left of all \(\lchar{b}\)’s.

Causality-preserving contractions

In the later sections [[[Coverings]]] and [[[Contraction lattices]]], we introduce the notion of a quiver covering, which is a way of "gluing" or contracting vertices together in such a way that the result is still a quiver. By applying a modified form of this procedure to the rewrite quiver, we obtain "simplified descriptions" of the possible evolutions of the system, in which we conflate particular states as long as they do not violate causality. Here we show such a causality-preserving contraction lattice.

Intuitively, this object corresponds to the various ways in which we can "ignore" rewrites without violating the underlying causal order of the system. Each time we choose to "ignore" a rewrite, we will obtain a self-loop on the corresponding state.

Petri nets

Rewrite bigraph and rewrite hypergraph


Coverings

Motivation

In [[[Path groupoids]]] we defined the path groupoid \(\pathGroupoid{\quiver{Q}}\) of a quiver \(\quiver{Q}\), and in [[[Path homomorphisms]]] we defined maps between the path groupoids of two quivers that was a groupoid homomorphism. We will now define a relationship between quivers called a quiver covering, which corresponds to a surjective path homomorphism. Certain coverings can be seen as contractions in which we “glue together” sets of vertices.

Graph covers

Graph homomorphisms

Before we can define quiver covers, we'll briefly introduce graph covers and graph homomorphisms.

Formally, a (directed) graph cover \(\functionSignature{\function{\graphHomomorphism{ \pi }}}{\graph{G}}{\graph{H}}\) is a surjective graph homomorphism \(\graphHomomorphism{ \pi }\) between directed graphs \(\graph{G}\) and \(\graph{H}\). \(G\) is then called a cover of \(\graph{H}\), written \(\graph{G}\coversSymbol \graph{H}\). We'll also write \(\covering{\graphHomomorphism{ \pi }}{\graph{G}}{\graph{H}}\) to explicitly indicate the homomorphism \(\graphHomomorphism{ \pi }\) involved. But what is a graph homomorphism?

The homomorphism \(\graphHomomorphism{ \pi }\) tells us how to "project" elements of \(\graph{G}\) onto elements of \(\graph{H}\), and consists of a map \(\functionSignature{\graphHomomorphism{ \pi _V}}{\vertexList(\graph{G})}{\vertexList(\graph{H})}\) and a map \(\functionSignature{\graphHomomorphism{ \pi _E}}{\edgeList(\graph{G})}{\edgeList(\graph{H})}\), subject to the fairly obvious compatibility condition that the vertices of the projection of an edge must be the projection of the vertices of that edge:

\[ \begin{array}{c} \graphHomomorphism{ \pi _E}(\de{\vert{g_1}}{\vert{g_2}}) = \de{\vert{h_1}}{\vert{h_2}}\\ \implies \\ \paren{\graphHomomorphism{ \pi _V}(\vert{g_1})\orSymbol \vert{h_1}}\andSymbol \paren{\graphHomomorphism{ \pi _V}(\vert{g_2})\orSymbol \vert{h_2}} \end{array} \]

Graph covers

A graph cover \(\graph{G}\coversSymbol \graph{H}\) is a surjective graph homomorphism. Therefore one way we can depict a cover is by illustrating which vertices and edges of \(\graph{G}\) cover which vertices and edges of \(\graph{H}\). For small graphs, we will use additive color semantics to do this. In particular, if \(\graph{G}\) has three vertices, we will depict them as \(\rform{\filledToken }\), \(\gform{\filledToken }\), \(\bform{\filledToken }\). Then we'll show a vertex of \(\graph{H}\) with a color that is the additive blend of the primary colors of its preimage under \(\graphHomomorphism{ \pi _V}\). For example, \(\inverse{\graphHomomorphism{ \pi _V}}(\rgform{\filledToken }) = \list{\rform{\filledToken },\gform{\filledToken }}\), \(\inverse{\graphHomomorphism{ \pi _V}}(\wcform{\filledToken }) = \list{\rform{\filledToken },\gform{\filledToken },\bform{\filledToken }}\). Similarly we'll color the edges: \(\inverse{\graphHomomorphism{ \pi _E}}(\waform{\barToken }) = \list{\barToken ,\wcform{\barToken }}\).

Let's look at very simple example undirected graph \(\graph{G}\), which we'll call the partial triangle, and a particular \(\graph{H}\) it covers:

The \(\rgform{\filledToken }\) vertex of \(\graph{H}\) is covered by the \(\rform{\filledToken }\) and \(\gform{\filledToken }\) vertices of \(\graph{G}\), and the \(\bform{\filledToken }\) vertex of \(\graph{H}\) by the \(\bform{\filledToken }\) vertex of \(\graph{G}\). We’ll refer to these pre-images as contractions, so that we say \(\rgform{\filledToken }\) is the contraction of \(\rform{\filledToken }\) and \(\gform{\filledToken }\). We've also shown dotted lines to their original positions to indicate that the \(\rform{\filledToken }\) and \(\gform{\filledToken }\) vertices were contracted together by this covering to form the \(\rgform{\filledToken }\) vertex. The two edges are mapped uniquely here, and so remain colored \(\barToken\) and \(\wcform{\barToken }\), hence there are no edge contractions. However, the edge between \(\rform{\filledToken }\) and \(\gform{\filledToken }\) now become a self-loop on \(\rgform{\filledToken }\).

Covering partial order

Our partial triangle covers many smaller graphs. For finite graphs, it’s clear that the covered graph has the same or fewer vertices, so we can conclude that up to isomorphism there are only finitely many covered graphs of \(\graph{G}\). Furthermore, if \(\graph{G}\coversSymbol \graph{H}\coversSymbol \graph{J}\), it's clear that \(\graph{G}\coversSymbol \graph{J}\), since the composition of two surjective homomorphisms is another. Therefore, covering forms a partial order on finite graphs, and we can depict this in the form of a larger vertical graph, with an edge betwen two graphs if the higher one strictly covers the lower one – in other words a graph is connected to one below it if it covers it, is not isomorphic, and the covering is not implied by transitivity.

Here is the covering partial order, or synonymously the contraction partial order, for our example:

Square

Let's consider the covering partial order for a "partial square" with 4 vertices and 3 edges. To reduce uninteresting complexity, we will avoid the explicit contraction of edges, and perform these contractions "greedily" whenever multiple edges exist between two vertices as a result of a vertex contraction:

Notice that as in the previous example, this partial order terminates in a single vertex and self-loop, the 1-graph, which is covered by every other graph. This single vertex and its self loop are gray, reflecting the fact that they are the color average of all of the original primary-colored vertices and edges.

Quiver covers

What about quivers? How do we extend the notion of covering to the quiver setting? We saw that for graphs, we could effect any particular covering in a sequence of atomic steps, in which we contracted together pairs of vertices and edges. It turns out that this approach does not work for quivers, for the elementary reason that we can easily violate the local uniqueness property unless we perform multiple vertex contractions simultaneously.

Simultaneous contractions

Let's take a simple example to illustrate this idea. We'll focus on coverings of \(\bindCards{\subSize{\squareQuiver }{2}}{\rform{\card{r}},\bform{\card{b}}}\):

Here we illustrate a particular graph covering:

Here, we have performed the contraction \(\contractionProduct{\vert{N}\contractionProductSymbol \vert{E}}\), where \(\contractionProductSymbol\) represents the contraction of two vertices. However the result is no longer a quiver, as the contracted vertex \(\contractionProduct{\vert{n}\contractionProductSymbol \vert{e}}\) now has two incoming \(\rform{\card{r}}\) cardinals. So while this is graph covering, it is not a quiver covering.

In contrast, here is a valid quiver covering, where we have performed the gluing \(\contractionSum{\contractionProduct{\vert{N}\contractionProductSymbol \vert{E}}\contractionSumSymbol \contractionProduct{\vert{S}\contractionProductSymbol \vert{W}}}\), which consists of the simultaneous gluings \(\contractionProduct{\vert{N}\contractionProductSymbol \vert{E}}\) and \(\contractionProduct{\vert{S}\contractionProductSymbol \vert{W}}\):

You might object that there should be two edges with the cardinal \(\rform{\card{r}}\) betwen the glued vertices \(\contractionProduct{\vert{N}\contractionProductSymbol \vert{E}}\) and \(\contractionProduct{\vert{S}\contractionProductSymbol \vert{W}}\). We simply define these two edges to be contracted together automatically and implicitly, and in fact we will only allow edge contractions that are precisely of this "deduplicating" form.

The key point here is that the requirement of preserving the local uniqueness property is what makes gluings such as \(\contractionProduct{\vert{N}\contractionProductSymbol \vert{E}}\) impossible to perform in isolation: it is only when we perform \(\contractionSum{\contractionProduct{\vert{N}\contractionProductSymbol \vert{E}}\contractionSumSymbol \contractionProduct{\vert{S}\contractionProductSymbol \vert{W}}}\) simultaneously that we preserve local uniqueness.

Contraction order

Let's compute the complete contraction order:

In the section [[[Contraction lattices]]] we will examine this object from an order-theoretic point of view, establishing the structure of an order-theoretic lattice (which is a different usage of the word "lattice" than that in [[[Lattice quivers]]]).

Path homomorphisms

Let's now turn to the question of the connection between path homomorphisms and quiver coverings.

Pictured below is a quiver \(\graph{G}\), and 5 quivers that it covers \(\graph{H_1},\graph{H_2},\graph{H_3},\graph{H_4},\graph{H_5}\).

These form a partial order as before, which looks like this:

Let's focus on a particular covering \(\covering{\graphHomomorphism{ \pi }}{\graph{G}}{\graph{H_1}}\), which is associated with some quiver homomorphism \(\graphHomomorphism{ \pi } = \tuple{\graphHomomorphism{ \pi _E},\graphHomomorphism{ \pi _V}}\).

An alternative way of expressing a quiver homomorphism is via a path homomorphism \(\functionSignature{\pathHomomorphism{ \rho }}{\pathGroupoid{\graph{G}}}{\pathGroupoid{\graph{H_1}}}\). Why is this? I'll illustrate by providing a particular \(\pathHomomorphism{ \rho }\) that corresponds to \(\graphHomomorphism{ \pi }\), and illustrating its behavior with a path table:

As for any path homomorphism, empty paths are sent to empty paths, \(\pathHomomorphism{ \rho }(\paren{\pathWord{\vert{s}}{\emptyWord{}}{\vert{s}}}) = \paren{\pathWord{\vert{t}}{\emptyWord{}}{\vert{t}}}\), giving us the vertex covering \(\graphHomomorphism{ \pi _V}(\vert{s}) = \vert{t}\).

Additionally, this homomorphism is length-preserving: 1-paths are sent to 1-paths, \(\pathHomomorphism{ \rho }(\paren{\pathWord{\vert{u}}{\word{\card{c}}}{\vert{\primed{u}}}}) = \paren{\pathWord{\vert{v}}{\word{\card{c}}}{\vert{\primed{v}}}}\), giving us the edge covering \(\graphHomomorphism{ \pi _E}(\tde{\vert{u}}{\primed{u}}{\card{c}}) = \tde{\vert{v}}{\primed{v}}{\card{c}}\).

What about the compatibility condition between \(\graphHomomorphism{ \pi _E}\) and \(\graphHomomorphism{ \pi _V}\)? This is a consequence (easily checked) of the ordinary compatibility condition of path homomorphisms: \(\pathHomomorphism{ \rho }(\pathCompose{\path{P_1}}{\path{P_2}}) = \pathCompose{\pathHomomorphism{ \rho }(\path{P_1})}{\pathHomomorphism{ \rho }(\path{P_2})}\).

Ok, so coverings can be described by path homomorphisms. But are they uniquely so described? And do all path homomorphisms yield corresponding coverings?

Surjective path homomorphisms to coverings

To answer the latter question, let's answer a simpler question: can a path homomorphism send an empty path to a non-empty path? As we saw in [[[Path homomorphisms]]], the answer is no. Therefore we can always obtain a vertex cover \(\graphHomomorphism{ \pi _V}\) from a surjective path homomorphism, since this will guarantee that every vertex (= empty path) of the covered quiver has at least one corresponding vertex (= empty path) of the covering quiver.

Ok, so the \(\graphHomomorphism{ \pi _V}\) story seems clear. To know that we can obtain an edge cover \(\graphHomomorphism{ \pi _E}\) from \(\pathHomomorphism{ \rho }\), let's imagine how it could go wrong: can a 1-path can be sent to e.g. a 2-path? Again, we saw examples of path-lengethening homomorphisms already in [[[Path homomorphisms]], but here is a path table showing a simple example:

This path homomorphism is not surjective, of course: the 1-paths in \(\graph{H}\) have no preimage under \(\pathHomomorphism{ \rho }\). However, we can construct a more elaborate surjective homomorphism that is still path lengthening? Here is such an example:

Clearly, if the covering graph is disconnected we have considerable freedom in defining path homomorphisms.

Another counterexample to the hypothesis that surjective path homomorphisms yield coverings is given by a surjective path shortening:

Here, in moving from \(\graph{G}\) to \(\graph{H}\), we have contracted the edge with cardinal \(\gform{\card{g}}\), effectively deleting that cardinal from the path word of any path that passes through it.

The tentative answer then seems to be that without additional restrictions, a surjective path homomorphism does not automatically yield a covering. But the requirement we need is easily guessed: we must have a length-preserving path homomorphism, since this defines a unique (oriented) edge in the covered graph for every edge in the covering graph in a compatible way.

Coverings to surjective path homomorphisms

Does a covering \(\covering{\graphHomomorphism{ \pi }}{\graph{G}}{\graph{H_1}}\) induce a unique path homomorphism \(\pathHomomorphism{ \rho }\)? The answer here is more satisfying: yes! The reason of course is simple: the data of \(\graphHomomorphism{ \pi _E}\) and \(\graphHomomorphism{ \pi _V}\) does uniquely determine the behavior of \(\pathHomomorphism{ \rho }\) on 0-paths and 1-paths. And since all longer paths in \(\graph{G}\) can be constructed from compositions of 1-paths, and composition must be preserved by \(\pathHomomorphism{ \rho }\), we have no choice in how to define \(\pathHomomorphism{ \rho }\) on such longer paths. Hence, a covering yields (or generates) a path homomorphism.

Path quiver homomorphism

A more subtle kind of path homomorphism has been latent since we introduced path quivers: the path homomorphisms from a quiver to its path quiver. To construct these, we need to map every path in the quiver to a path in the path quiver (a “path of paths”). Let’s start with the easy part: if the path in the base quiver starts at the origin, we form the path in the path quiver by taking the sequence of extensions that extend the empty path into the full path:

In this example, we’ve sent a path in the base quiver with path word \(\word{\gform{\card{g}}}{\gform{\card{g}}}{\rform{\card{r}}}\) to a path in the path quiver with path word \(\word{\gform{\card{g}}}{\gform{\card{g}}}{\rform{\card{r}}}\).

But to define a path homomorphism, we also need to figure out where to send paths which do not start at the origin. For the tree quiver example, this is straightforward: for a path \(\path{P}\) in the base quiver starting at \(\vert{t} \neq \vert{o}\), we choose a vertex in the path quiver corresponding to the path taking us from the origin \(\vert{o}\) to \(\vert{t}\), then use the path word as before:

In the case of trees the of this path homomorphism from a quiver to its path quiver is trivial, because the path quivers of trees are already isomorphic to them. But it turns out a related construction will work for all finite connected quivers, not just trees. Let’s look at a simple base quiver that is not a tree:

Because there is a cycle \(\paren{\pathWord{\vert{1}}{\word{\rform{\card{r}}}{\bform{\card{b}}}{\rform{\ncard{r}}}{\bform{\ncard{b}}}}{\vert{1}}}\), the path quiver will be infinite, so we’ll only draw the subgraph of the path quiver in which this cycle is “wound” a maximum of one time. Choosing the origin as \(\vert{1}\), we again have no problem with the “easy” part of where to send paths starting at the origin, since they just have the same cardinal word. For example, the path \(\paren{\pathWord{\vert{1}}{\word{\bform{\card{b}}}{\rform{\card{r}}}{\bform{\card{b}}}}{\vert{6}}}\):

The “hard” part consists of dealing with paths like this:

To figure out where our path homomorphism \(\pathHomomorphism{ \rho }\) sends this path \(\path{P} = \paren{\pathWord{\vert{5}}{\word{\bform{\ncard{b}}}{\rform{\card{r}}}{\bform{\card{b}}}}{\vert{6}}}\) must first choose a vertex \(\elemOf{\vert{t}}{\forwardPathQuiver{\quiver{Q}}{\vert{1}}}\) that corresponds to the tail vertex of \(\path{P}\), which is \(\vert{5}\). Now \(\pathHomomorphism{ \rho }(\vert{5})\) is a path with head vertex \(\vert{5}\). One we’ve chosen \(\pathHomomorphism{ \rho }(\vert{t})\), there is nothing more to do, since the path word of \(\path{P}\) gives the path word of \(\pathHomomorphism{ \rho }(\path{P})\). However, whatever choice we make for \(\pathHomomorphism{ \rho }(\vert{5})\) must be compatible with other choices we make for other vertices in \(\quiver{Q}\). Luckily, this isn’t as tricky as it sounds. All we need to do is choose a spanning tree of the base quiver.

Fundamental quiver

We now return to the situation of a lattice quiver \(\quiver{Q}\) generated by a fundamental quiver \(\bindCards{\quiver{F}}{\card{\card{c}_1},\card{\ellipsis },\card{\card{c}_{\sym{i}}}}\) with the representation associated with a cardinal valuation \(\functionSignature{\groupoidFunction{ \phi }}{\cardinalList(\quiver{Q})}{\group{G}}\). That \(\quiver{Q}\) is generated by \(\quiver{F}\) is the statement:

\[ \quiver{Q} = \compactQuotient{\quiver{F}}{\vert{v}}{\groupoidFunction{ \phi }} \]

An important fact about lattice quivers is they cover their fundamental quivers: \(\covering{\graphHomomorphism{ \pi }}{\quiver{Q}}{\quiver{F}}\). To this covering is associated a path homomorphism \(\pathHomomorphism{ \rho }\), which we use to define the covering as follows:

\[ \begin{aligned} \pathHomomorphism{ \rho }(\pathWord{\primed{\vert{t}}}{\wordSymbol{W}}{\primed{\vert{h}}})&\defEqualSymbol \pathWord{\vert{t}}{\wordSymbol{W}}{\vert{h}}\\ \primed{\vert{t}}&\defEqualSymbol \tuple{\vert{t},\groupoidElement{g}_1}\\ \primed{\vert{h}}&\defEqualSymbol \tuple{\vert{h},\groupoidElement{g}_2}\end{aligned} \]

Here we use the fact that \(\elemOf{\primed{\vert{v}}}{\vertexList(\quiver{Q})}\) are precisely pairs \(\tuple{\vert{v},\groupoidElement{g}}\), where \(\elemOf{\vert{t}}{\vertexList(\quiver{F})}\) and \(\groupoidElement{g}\) are elements of the group associated with the cardinal valuation \(\groupoidFunction{ \phi }\).


Contraction lattices

Recap

In the previous section [[[Coverings]]], we introduced the idea of a quiver covering. Starting from a single quiver \(\quiver{Q}\) we considered the contraction order of \(\quiver{Q}\), whose elements are contracted quivers in which sets of vertices of \(\quiver{Q}\) are identified with one another. In this section we will develop this idea further, turning the contraction order into a contraction lattice, and study the structure of this lattice for some of the basic transitive quivers. We will also outline the connections of this lattice with group theory.

Note: this section is largely incomplete. See [[[here:Summary and roadmap#Contraction lattices]]] for more information.

Contraction sets and terms

Let's start with the quiver \(\bindCards{\subSize{\squareQuiver }{2}}{\rform{\card{r}},\bform{\card{b}}}\), shown below:

The contraction order for this quiver is shown below, where each contracted quiver is labeled with the corresponding contraction set, which we will define shortly:

A contraction set \(\sym{S}\) expresses a contraction of the original quiver in terms of a disjoint union of contraction terms \(\sym{T}_{\sym{i}}\):

\[ \sym{S} = \contractionSum{\sym{T}_1\contractionSumSymbol \sym{T}_2\contractionSumSymbol \ellipsis \contractionSumSymbol \sym{T}_{\sym{n}}} \]

Each term \(\sym{T}_{\sym{i}}\) represents a set of vertices that are contracted together. For example, the contracted quiver on the right is specified by the contraction set \(\contractionSum{\contractionProduct{\vert{E}\contractionProductSymbol \vert{S}}\contractionSumSymbol \contractionProduct{\vert{N}\contractionProductSymbol \vert{W}}}\), which consists of the disjoint contraction terms \(\contractionProduct{\vert{E}\contractionProductSymbol \vert{S}}\) and \(\contractionProduct{\vert{N}\contractionProductSymbol \vert{W}}\).

Visualizing contractions

We'll introduce three ways to visualize the individual contracted quivers in the contraction lattice. To illustrate these visualizations, we'll use the same contractions of \(\bindCards{\subSize{\squareQuiver }{2}}{\rform{\card{r}},\bform{\card{b}}}\) that we introduced above:

The clique visualization depicts each contraction term as a clique of interconnected vertices. The color visualization draws vertices belonging to the same contraction term using distinct colors (note these colors have no connection to the colors of the cardinals), and uses white for vertices that are left uncontracted. The graph visualization shows the contracted graphs directly.

Lattice structure

We defined the contraction order to be the partially ordered set of contracted quivers of some original quiver \(\quiver{Q}\). Next we will show how to to attach the structure of an order-theoretic lattice to this poset, which we'll call the contraction lattice of \(\quiver{Q}\), written \(\contractionLattice{\quiver{Q}}\).

Lattices

First we give a superficial summary of lattices, but we recommend reading additional material about lattices to make the most of this section.

A lattice is a poset with two additional binary operations, known as \(meet\) \(\latticeMeetSymbol\) and join \(\latticeJoinSymbol\). These operations distribute over each other, and play a role analogous to intersection and union of sets – in particular the subsets of a set \(\sym{X}\) form a lattice in which \(\latticeElement{A}\latticeMeetSymbol \latticeElement{B}\defEqualSymbol \latticeElement{A}\setIntersectionSymbol \latticeElement{B}\), \(\latticeElement{A}\latticeJoinSymbol \latticeElement{B}\defEqualSymbol \latticeElement{A}\setUnionSymbol \latticeElement{B}\), and \(\latticeElement{A} \le \latticeElement{B}\iff \latticeElement{A} \subseteq \latticeElement{B}\). A bounded lattice is a lattice with two distinguished elements called top \(\latticeTop\) and bottom \(\latticeBottom\), which are respectively greater than and less than all other elements, and serve as the identity for meet and join respectively.

Contractions as equivalence relations

Recall that \(\path{R}\) is a contraction quiver of \(\quiver{Q}\) if the vertices of \(\path{R}\) are contractions of vertices of \(\quiver{Q}\) that preserve the local uniqueness property. We can then see \(\path{R}\) as being uniquely specified by an equivalence relation on the vertices of \(\quiver{Q}\). We’ll write this relation as \(\isContractedIn{\vert{u}}{\vert{v}}{\quiver{R}}\), which is the statement that vertices \(\vert{u},\vert{v}\) of \(\quiver{Q}\) are considered contracted together in \(\quiver{R}\).

A little thought will reveal that a contraction \(\quiver{R}\) covers another contraction \(\quiver{S}\), written \(\quiver{R}\coversSymbol \quiver{S}\) (or in lattice terminology \(\quiver{R}\latticeGreaterEqualSymbol \quiver{S}\)) if and only if the relation for \(\quiver{R}\) is a refinement of the relation for \(\quiver{S}\):

\[ \quiver{R}\coversSymbol \quiver{S}\iff \paren{\isContractedIn{\vert{u}}{\vert{v}}{\quiver{S}}\implies \isContractedIn{\vert{u}}{\vert{v}}{\quiver{R}}} \]

(Note that we use the word "cover" here in the usual sense of a quiver covering, not in the lattice-theoretic sense of a cover, which has a different meaning.)

Ok, we've expressed the elements of the contraction order in terms of equivalence relations on sets, with the partial order induced by refinement of equivalence relations. The finest equivalence relation regards all vertices as distinct, corresponding to the uncontraction \(\quiver{Q}\), and the coarsest equivalence relation regards all vertices as contracted, corresponding to the complete contraction, given by a bouquet quiver with the same cardinals as \(\quiver{Q}\). These serve as the top and bottom of the contraction order: \(\latticeTop = \quiver{Q},\latticeBottom = \bouquetQuiver{\sym{k}}\).

Topped intersection structure

We now show that the set of vertex equivalence relations describing valid quiver contractions form a subset of the powerset of the vertices, closed under intersection. A set of this form is called a topped intersection structure, and automatically gives this set the structure of a bounded lattice. The meet and join are defined as you would expect: the meet of two relations corresponds to the finest relation that is still coarser than both, and the join of two relations gives the coarsest relation that still is finer than both.

First, we show that if we have two quiver contraction equivalence relations \(\contractedRelation{\quiver{R}},\contractedRelation{\quiver{S}}\), the set-theoretic intersection of these two relations (as subsets of the powerset) \(\contractedRelation{\quiver{R} \, \quiver{S}}\defEqualSymbol \contractedRelation{\quiver{R}}\setIntersectionSymbol \contractedRelation{\quiver{S}}\) is again an equivalence relation. This is straightforward:

\[ \begin{aligned} \paren{\isContractedIn{\vert{u}}{\vert{v}}{\quiver{R} \, \quiver{S}}}\andSymbol \paren{\isContractedIn{\vert{v}}{\vert{w}}{\quiver{R} \, \quiver{S}}}& \implies \paren{\isContractedIn{\vert{u}}{\vert{v}}{\quiver{R}}}\andSymbol \paren{\isContractedIn{\vert{u}}{\vert{v}}{\quiver{R}}}\andSymbol \paren{\isContractedIn{\vert{v}}{\vert{w}}{\quiver{S}}}\andSymbol \paren{\isContractedIn{\vert{v}}{\vert{w}}{\quiver{S}}}\\ & \implies \paren{\isContractedIn{\vert{u}}{\vert{w}}{\quiver{R}}}\andSymbol \paren{\isContractedIn{\vert{u}}{\vert{w}}{\quiver{S}}}\\ & \implies \isContractedIn{\vert{u}}{\vert{w}}{\quiver{R} \, \quiver{S}}\end{aligned} \]

It remains to be shown that this equivalence relation corresponds to a quiver contraction, meaning that it preserves LU. We use proof by contradiction: assume that we have a violation of LU witnessed by \(\tde{\vert{u}}{\vert{v}}{\card{c}},\tde{\vert{u}}{\vert{w}}{\card{c}},\isNotContractedIn{\vert{v}}{\vert{w}}{\quiver{R} \, \quiver{S}}\), where \(\vert{u},\vert{v},\vert{w}\) are arbitrary representatives of equivalence classes in the relation \(\contractedRelation{\quiver{R} \, \quiver{S}}\). Since \(\contractedRelation{\quiver{R}}\) and \(\contractedRelation{\quiver{S}}\) both do correspond to quiver contractions, we must have both \(\isContractedIn{\vert{v}}{\vert{w}}{\quiver{R}}\) and \(\isContractedIn{\vert{v}}{\vert{w}}{\quiver{S}}\) to prevent these being witnesses to violation of LU in \(\quiver{R}\) and \(\quiver{S}\) respectively. But this implies that \(\isContractedIn{\vert{v}}{\vert{w}}{\quiver{R} \, \quiver{S}}\) by definition, a contradiction.

Intuition

In terms of contractions, we can provide an intuitive summary of this situation as follows:

  • the meet \(\quiver{R}\latticeMeetSymbol \quiver{S}\) of two contracted quivers gives the contracted quiver that performs all the vertex contractions present in either, as well as the minimum number of additional contractions that is required to recover LU. In other words, the “minimal amount of contraction” that will unify both quivers.

  • the join \(\quiver{R}\latticeJoinSymbol \quiver{S}\) of two contracted quivers gives the contracted quiver that has undergone as much contraction as possible that is consistent with either of them: any additional contractions would contract pairs of vertices that are not contracted in one or the other.

Minimal contraction sets

We now describe a simple algorithm to find the minimal contraction sets of a quiver \(\quiver{Q}\). These are “minimal” in the sense that they are forced by a contraction of only two vertices. We'll write this set as \(\minimalContractionSets(\quiver{Q})\), and the corresponding contracted quivers as \(\minimalContractions(\quiver{Q})\).

The algorithm starts by enumerating the set of all possible contaction terms containing two distinct vertices. Each 2-term serves as a "seed" for calculating a minimal contraction set that preserves local uniqueness (abbreviated LU). We first contract the vertices of the original quiver using the seed 2-term, and then test if this produces any duplicate incoming or outgoing cardinals, as these indicate a violation of LU for one or more cardinals. If there are no duplicates, we are done, and have a new minimal contraction set containing just that single 2-term, and we can move on to the next candidate term.

If not, we "chase" all duplicate incoming or outgoing cardinals, and so obtain one or more additional 2-terms that must be contracted to re-establish the LU. This chasing process might have to repeat several times, since these additional contraction terms will eliminate the original violations of LU but could introduce new violations for the new terms. When we finally obtain a new set of contraction terms that does not introduce any new LU violations, we are done, and we have a minimal contraction set, and can proceed to the next candidate pair.

Example

We'll use \(\bindSize{\squareQuiver }{2,3}\) to illustrate this process:

Here we show a seed term \(\contractionProduct{1\contractionProductSymbol 2}\) and the successive steps of the "growing" of the seed, each time chasing outgoing \(\rform{\card{r}}\)-duplicates:

Here we show the sequence for a different seed term \(\contractionProduct{1\contractionProductSymbol 3}\):

The sequence for \(\contractionProduct{2\contractionProductSymbol 3}\):

Notice that if we start at the seed \(\contractionProduct{4\contractionProductSymbol 5}\), we obtain the same final contraction:

With a little thought it becomes clear that we will grow the same contraction set when starting from any of its terms. This implies that our enumeration algorithm can avoid this redundancy by skipping any candidate 2-terms that have already appeared as a 2-term of any previously generated contraction set.

Some simple minimal contractions

To gain intuition, we'll explore the minimal contraction sets \(\minimalContractionSets(\quiver{Q})\) for the line, cycle, square, and square tori quivers. These will turn out to be straightforward to understand, and in fact will give us a good initial understanding of the nature of the contraction lattices for these particular quivers.

Cycle quiver

Here we show \(\minimalContractionSets(\subSize{\cycleQuiver }{12})\), using color visualization, and below each, the corresponding minimal contracted quivers \(\minimalContractions(\subSize{\cycleQuiver }{12})\):

We've also labeled each of the contracted quivers with its "closed form", that is, a named quiver that is isomoprhic to the contracted quiver. These are the cycle quivers whose size consists of prime power divisors of 12, plus the "degenerate prime" \(\subSize{\cycleQuiver }{1}\). This turns out to be true for the minimal contraction sets of \(\subSize{\cycleQuiver }{\sym{n}}\) for arbitrary \(\sym{n}\), yielding the theorem:

\[ \minimalContractions(\subSize{\cycleQuiver }{\sym{n}}) = \setConstructor{\subSize{\cycleQuiver }{\power{\sym{p}}{\sym{m}}}}{\elemOf{\sym{m}}{\mathbb{N}^+},\elemOf{\sym{p}}{\mathbb{P}},\power{\sym{p}}{\sym{m}}\dividesSymbol \sym{n}}\setUnionSymbol \list{\subSize{\cycleQuiver }{1}} \]

Here \(\mathbb{P}\) stands for the domain of the prime numbers.

Line quiver

Here we show \(\minimalContractionSets(\subSize{\lineQuiver }{7})\):

The minimal contractions here the ways to glue the two ends of the line together with more or less overlap, yielding cycle quivers. Again, the pattern generalizes, yielding the following theorem:

\[ \minimalContractions(\subSize{\lineQuiver }{\sym{n}}) = \setConstructor{\subSize{\cycleQuiver }{\sym{i}}}{1 \le \sym{i}<\sym{n}} \]

Square quiver

We'll start with \(\bindSize{\squareQuiver }{3,2}\), the example we worked through earlier:

Here is \(\minimalContractionSets(\bindSize{\squareQuiver }{3,2})\):

Notice that the first 5 contractions have intuitive interpretations. The \(1^{\textrm{st}}\), \(2^{\textrm{nd}}\) and \(5^{\textrm{th}}\) have "rolled up" the square quiver to form toroidal lattices in either the \(\rform{\card{r}}\) or \(\bform{\card{b}}\) axis. The \(3^{\textrm{rd}}\) and \(4^{\textrm{th}}\) have "projected" the 2D square lattice into a 1D lattice with the two possibily "parities". To explain the final two contractions, we will consider the larger example of \(\bindSize{\squareQuiver }{3,3}:\)

The twelve generating contraction sets are shown below using color visualization:

As before, we obtain several torodial contractions and two linear contractions. A little thought will see that we can compose the remaining, mysterious contractions with each other to obtain sheared toroidal contractions with shear factors of \(1\) and \(-1\) along either the \(\rform{\card{r}}\) or \(\bform{\card{b}}\) axes.

Square tori

Earlier, we saw that a line quiver contracted to cycle quivers, which themselves contracted to other cycle quivers according to their prime power factors. Similarly, the square quiver contracted to line quivers and (possibly sheared) square tori, which are the 2D analogues of the cycle quivers. So do the square tori contract to other square tori?

To answer this question, we compute the minimal contractions for some small square tori:

The answer here is a provisional yes. Eliding cardinal assingments for brevity, we have the following closed forms, given in the same order as the above diagrams:

\[ \begin{aligned} \minimalContractions(\bindSize{\toroidalModifier{\squareQuiver }}{3,3})&= \list{\bindSize{\lineQuiver }{3},\bindSize{\lineQuiver }{3},\bindSize{\toroidalModifier{\squareQuiver }}{3,1},\bindSize{\toroidalModifier{\squareQuiver }}{1,3}}\\ \minimalContractions(\bindSize{\toroidalModifier{\squareQuiver }}{3,4})&= \list{\bindSize{\cycleQuiver }{1},\bindSize{\toroidalModifier{\squareQuiver }}{1,2},\bindSize{\toroidalModifier{\squareQuiver }}{3,1},\bindSize{\toroidalModifier{\squareQuiver }}{2,4},\bindSize{\toroidalModifier{\squareQuiver }}{3,2}}\\ \minimalContractions(\bindSize{\toroidalModifier{\squareQuiver }}{4,4})&= \list{\bindSize{\cycleQuiver }{4},\bindSize{\toroidalModifier{\squareQuiver }}{2_1,2},\bindSize{\toroidalModifier{\squareQuiver }}{2,2_1},\bindSize{\toroidalModifier{\squareQuiver }}{4,1},\bindSize{\toroidalModifier{\squareQuiver }}{1,4},\bindSize{\toroidalModifier{\squareQuiver }}{4,2},\bindSize{\toroidalModifier{\squareQuiver }}{2,4},\bindSize{\toroidalModifier{\squareQuiver }}{2_2,2}}\end{aligned} \]

Obtaining the contraction lattice

Having obtained the set of minimal contraction sets for a quiver, how do we go about generating the entire contraction lattice?

To gain intuition for this problem, let's look at the lattice for the quiver \(\bindSize{\squareQuiver }{2,3}\) we looked at initially. Here we highlight the vertices that correspond to the minimal contraction sets:

The minimal contractions here seem to be precisely the elements that are covered by a single other element. Lattice elements with this property are known as meet-irreducible in order theory. Meet-irreducible elements have the further property that for complete lattices, every element can be expressed as the meet of meet-irreducible elements (although not necessarily in a unique way).

The non-uniqueness of this decomposition can be seen in the example above. The rightmost element on the third row can be formed by taking the meet of any 2 of its 3 parents (or all three). The situation can be even more complicated: the left element on the penultimate row has 4 meet-irreducible parents. There are 5 ways of taking the meet of 2 of these parents to form it, but there is also 1 way of taking the meet of 2 of its parents (the left 2) that does not form it. Taking the meet of any 3 of its parents is sufficient to form it, however.

Nevertheless, this connection with meet-irreducibility suggests a plain if inelegant way generate all other contraction sets: we can form all possible sums of the meet irreducible contraction sets. This corresponds to forming a valid contraction \(\quiver{R}\coveredBySymbol \quiver{Q}\) as the meet of every minimal contraction generated by all pairs of contracted vertices in \(\quiver{R}\).


Vertex colorings

Introduction

Returning to colorings, we are now better equipped to understand how colorings correspond to coverings. We say a quiver covering \(\functionSignature{\graphHomomorphism{ \pi }}{\graph{G}}{\graph{H}}\,\)induces a coloring of \(\graph{G}\), where the “colors” are just the identities of vertices in \(\graph{H}\). In other words, the color of a \(\elemOf{\vert{g}}{\vertexList(\graph{G})}\) is simply which vertex \(\elemOf{\vert{h}}{\vertexList(\graph{H})}\) it is sent to: specifically \(\graphHomomorphism{ \pi _V}(\vert{g})\). We can of course only use visible colors to illustrate this idea when \(\graph{H}\) has a finite number of vertices.

What makes this covering perspective on colorings interesting is that there is a fairly mechanical process we can use to construct finite coverings of any fundamental quiver. These coverings will continue to generate the same lattice quiver as the original fundamental quiver, but will yield colorings of the lattice quiver containing more colors. We’ll see later that that the families of colorings given by fundamental coverings are in a sense discrete harmonics of a particular lattice quiver, generated by discrete partial difference equations.

Line lattice

Let’s look first at the 1-dimension line lattice.

The fundamental coloring given by the simplest fundamental quiver, the bouquet quiver, is a 1-coloring (or constant coloring), since the bouquet only has one vertex:

Here’s the 2-coloring, given by the fundamental quiver that simply alternates between the two colors:

Higher colorings are given by “circle quivers” with more vertices, where the cardinal simply cycles among the colors (the 1- and 2-colorings can be seen as instances of these):

These are the only fundamental colorings of the line lattice, since there is no remaining freedom for how to choose cardinals once the number of vertices in the fundamental quiver is decided.

Square lattice

The square lattice brings with it more interesting behavior, since the two cardinals can interact in various ways. But let’s start with the 1-coloring given by the simplest fundamental quiver:

With two colors, we obtain “stripes” of constant color that are horizontally, vertically, or diagonally oriented:

3-colorings display a similar pattern, except the diagonal stripes can now be oriented in two different ways (whereas in the case of 2 colors, both of these orientations yield the same coloring):

4-colorings repeat these motifs, but include a third kind of behavior we haven’t encountered before, in which fixing a color yields a “decimated” form of the original square lattice at one-quarter resolution:

One way we can view these colorings is as embedding sub-lattices in the quiver lattice. The idea is to choose a color in the fundamental quiver and consider the set of (shortest) paths that begin and end at this vertex. The words for these paths then act as the primitive cardinals for the sub-lattice. The first four colorings above yield to the line lattice by choosing e.g. blue, and the path words \(\word{\card{x}}\), \(\word{\card{y}}\), and \(\word{\card{x}}{\ncard{y}}\) respectively. The fifth coloring yields the square lattice, via blue and the path words \(\list{\word{\card{x}}{\card{x}},\word{\card{y}}{\card{y}}}\).

Let's call this fifth coloring a 1-decimation, since it is the smallest possible decimation. A 2-decimation is shown below, with path words \(\list{\word{\card{x}}{\card{x}}{\card{x}},\word{\card{y}}{\card{y}}{\card{y}}}\):

Triangular lattice

Let’s now turn to colorings of the triangular lattice. As before, we’ll start with the 1-coloring induced by the simplest fundamental quiver:

The two-colorings are the familiar oriented stripes, which can now occur along the three cardinal axes. Interestingly, there is no equivalent of the diagonal stripes we saw in the square case:

The 3-colorings do include a new motif that can be seen either as 1-decimation of the triangular lattice, or as a diagonal stripe that is half-way between the orientations of the 3 cardinals. Again, as in the square case, this single coloring simultaneously yields all 3 orientations of this diagonal in a “degenerate” way:

As we saw before in the square case, moving to 4-colorings causes the single degenerate diagonal coloring to split into oriented versions:

With 5-colorings, this situation repeats unchanged:

Jumping ahead to 9-colorings, we obtain a 2-decimation of the triangular lattice to itself:

This 2-decimation is in fact almost identical to the 2-decimation of the square lattice we saw earlier, thanks to the fact that a triangular lattice can be obtained from a square lattice by introducing additional edges that connect each vertex \(\vert{v}\) to the vertex \(\vert{w}\) via path \(\pathWord{\vert{v}}{\word{\card{x}}{\card{y}}}{\vert{w}}\).

It’s not hard to see that for both triangular and square lattices, an \(n\)-decimation has \((n+1)^2\) colors.

Hexagonal lattice

The hexagonal lattice, being the first lattice with a non-bouquet fundamental quiver, generally requires many more colors in its fundamental quivers, making its analysis more cumbersome.

Let's start with the smallest fundamental quiver, which is already a two-coloring:

There are no three colorings. Four-colorings produce “mixed diagonal” stripes composed of two colors and two cardinals taken in alternation:

There is a simple connection between \(n\)-colorings of the hexagonal lattice and \(n+1\)-colorings of triangular lattice: observe that the hexagonal lattice can be obtained from the triangular lattice by deleting a certain set of vertices, leaving a triangular pattern of “holes”. We can achieve this by deleting one or more vertices from the fundamental quiver of a triangular lattice if those vertices yield the right triangular pattern of holes. This will give a fundamental quiver that generates the hexagonal lattice, and hence a hexagonal lattice coloring. For example, the 2-coloring shown above can be obtained from the 1-decimation of the square lattice by deleting the green fundamental vertex:

Similarly we can obtain of the hexagonal 4-colorings by deleting a color from triangular 5-colorings. Here we show one case:


Quiver products

Motivation

To this point we have left the questions of topology unexamined. Namely: what are the discrete analogs of continuous functions and open sets for quiver geometry? We won't examine these questions yet, but we will consider a topic that is similarly abstract and will ground future investigations into topology. That topic is of product spaces: how do we form products of quivers? Quiver products will be important in the next section for defining fibre bundles, but they'll also give us a new perspective on lattice quivers, which we will see later relates to irreducible and indecomposable representations.

Quiver products

We'll shortly introduce two kinds of quiver products, and then point out a straightforward generalization that gives us an infinite family of products on any number of quivers.

But first, what is a quiver product? Speaking informally, a quiver product between two quivers \(\quiver{R}\) and \(\quiver{S}\) is another quiver \(\quiver{Q}\) with the following properties:

\[ \begin{aligned} \vertexList(\quiver{Q})&\subseteq \vertexList(\quiver{R})\cartesianProductSymbol \vertexList(\quiver{S})\\ \edgeList(\quiver{Q})&\subseteq \edgeList(\quiver{R})\cartesianProductSymbol \edgeList(\quiver{S})\end{aligned} \]

Defining a particular quiver product involves specifying which subsets of the Cartesian products we choose. But we must also attach a cardinal structure to the product \(\quiver{Q}\).

Terminology

To talk clearly about the vertices, edges, and cardinals of \(\quiver{Q}\), and contrast them with the vertices, edges, and cardinals of \(\quiver{R}\) and \(\quiver{S}\), we will use the following terms:

zzz
factor quiversf-quivers\(\quiver{R}\) and \(\quiver{S}\)
factor vertexf-vertexvertex of \(\quiver{R}\) or \(\quiver{S}\)
factor edgef-edgeedge of \(\quiver{R}\) or \(\quiver{S}\)
factor cardinalf-cardinalcardinal of \(\quiver{R}\) or \(\quiver{S}\)
product quiverp-quiver\(\quiver{Q}\)
product vertexp-vertexvertex of \(\quiver{Q}\), constructed from f-vertices
product edgep-edgeedge of \(\quiver{Q}\), constructed from f-edges
product cadinalp-cardinalcardinal of \(\quiver{Q}\), constructed from f-cardinals

We will not use tuples \(\tuple{\vert{u},\vert{v}}\) to represent the results of product constructions as is typically done: when writing a product vertex that is constructed out of factor vertices \(\vert{u}\) and \(\vert{v}\), we'll use the syntax \(\vert{u} \vertexProductSymbol \vert{v}\), and similarly for product edges and product cardinals.

Color

To ease the notational burden and avoid unnecessary use of subscripts, we'll use color to associate vertices, edges, and cardinals with their corresponding graphs in a product. For example, for quivers \(\quiver{\rform{R}},\quiver{\bform{S}}\) we'll refer generically to particular vertices belonging to \(\quiver{\rform{R}}\) and \(\quiver{\bform{S}}\) with symbols \(\vert{\rform{r}}\) and \(\vert{\bform{s}}\). Likewise we'll refer to particulars edges with \(\edge{\rform{e}},\edge{\bform{f}}\), and refer to particular cardinals with \(\card{\rform{c}},\card{\bform{d}}\).

We'll also use color to relate the product vertices and edges with factor vertices and edges, similar to the section "Covers". Of course we'll announce when we switch the role of color switches between these two aspects.

Head and tail

When denoting vertices that serve as the head or tail of some edge, we'll use \(\hvert{v}\) and \(\tvert{v}\) respectively. Therefore an edge will be written \(\de{\tvert{v}}{\hvert{v}}\) – allowing us to write the reversal of this edge as \(\de{\hvert{v}}{\tvert{v}}\). This convention is similar to the convention of using \(\sym{x}\) and \(\primed{\sym{x}}\) to denote two distinct variables related by some transformation.

Dependent quiver product

We'll introduce a binary quiver product called the dependent quiver product, denoted \(\graphProductSymbol\). This product is related to the notion of the tensor graph product \(\otimes\) of undirected graphs.

The dependent quiver product \(\quiver{\rform{R}}\dependentQuiverProductSymbol \quiver{\bform{S}}\) of two quivers \(\quiver{\rform{R}}\), \(\quiver{\bform{S}}\) is the graph constructed as follows:

\[ \begin{aligned} \vertexList(\quiver{\rform{R}}\dependentQuiverProductSymbol \quiver{\bform{S}})&\defEqualSymbol \setConstructor{\vert{\rform{r}} \vertexProductSymbol \vert{\bform{s}}}{\begin{array}{c} \elemOf{\vert{\rform{r}}}{\vertexList(\quiver{\rform{R}})}\\ \elemOf{\vert{\bform{s}}}{\vertexList(\quiver{\bform{S}})} \end{array} }\\ \\ \edgeList(\quiver{\rform{R}}\dependentQuiverProductSymbol \quiver{\bform{S}})&\defEqualSymbol \setConstructor{\ltde{\tvert{\rform{r}} \vertexProductSymbol \tvert{\bform{s}}}{\hvert{\rform{r}} \vertexProductSymbol \hvert{\bform{s}}}{\card{\rform{c}} \cardinalProductSymbol \card{\bform{d}}}}{\begin{array}{c} \elemOf{\tde{\tvert{\rform{r}}}{\hvert{\rform{r}}}{\card{\rform{c}}}}{\edgeList(\quiver{\rform{R}})}\\ \elemOf{\tde{\tvert{\bform{s}}}{\hvert{\bform{s}}}{\card{\bform{d}}}}{\edgeList(\quiver{\bform{S}})} \end{array} }\end{aligned} \]

It's easy to check that the product has a number of vertices and edges given by:

\[ \begin{aligned} \setCardinality{\vertices{\quiver{\rform{R}}\dependentQuiverProductSymbol \quiver{\bform{S}}}}&= \setCardinality{\vertices{\quiver{\rform{R}}}} \, \setCardinality{\vertices{\quiver{\bform{S}}}}\\ \setCardinality{\edges{\quiver{\rform{R}}\dependentQuiverProductSymbol \quiver{\bform{S}}}}&= \setCardinality{\edges{\quiver{\rform{R}}}} \, \setCardinality{\edges{\quiver{\bform{S}}}}\end{aligned} \]

Visualizing graph products

We can visualize the graph product in ways that help clarify the product structure. We'll use two methods to do this:

  • We will color vertices of the product by additive blending of the constituent vertices. For example, the product vertex \(\rform{\filledToken } \vertexProductSymbol \gform{\filledToken }\) will be displayed as \(\rgform{\filledToken }\).

  • For graphs that can be layed out in one dimension, we will derive the \(\sym{y}\) coordinate of \(\vert{u} \vertexProductSymbol \vert{v}\) from the one-dimensional coordinate of \(\vert{u}\) and the \(\sym{x}\) coordinate of \(\vert{u} \vertexProductSymbol \vert{v}\) from the one-dimensional coordinate of \(\vert{v}\).

Let's examine the graph product \(\quiver{S}\dependentQuiverProductSymbol \quiver{R}\), where \(\quiver{S} = \quiver{R} = \subSize{\lineQuiver }{2}\):

Notice that the p-vertices \(\emptyToken \vertexProductSymbol \rform{\filledToken }\) and \(\filledToken \vertexProductSymbol \bform{\filledToken }\) are disconnected from the other vertices. The only p-edge is \(\de{\filledToken \vertexProductSymbol \rform{\filledToken }}{\emptyToken \vertexProductSymbol \bform{\filledToken }}\), corresponding to the f-edges \(\de{\filledToken }{\emptyToken }\) and \(\de{\rform{\filledToken }}{\bform{\filledToken }}\).

Next we enlarge \(\quiver{S}\), setting \(\quiver{S} = \subSize{\lineQuiver }{3}\):

Negation

We'll now illustrate the four products \(\quiver{R}\graphProductSymbol \quiver{S},\inverted{\quiver{R}}\graphProductSymbol \quiver{S},\quiver{R}\graphProductSymbol \inverted{\quiver{S}},\inverted{\quiver{R}}\graphProductSymbol \inverted{\quiver{S}}\), where \(\inverted{\quiver{Q}}\) indicates the quiver derived from \(\quiver{Q}\) whose edges have been reversed, or equivalently, whose cardinals have been inverted.

From this table we can notice a couple things:

  • the top-left and bottom-right graphs are inverses: \(\inverted{\quiver{R}\graphProductSymbol \quiver{S}} = \inverted{\quiver{R}}\graphProductSymbol \inverted{\quiver{S}}\)

  • the bottom-left and top-right graphs are inverses: \(\inverted{\inverted{\quiver{R}}\graphProductSymbol \quiver{S}} = \quiver{R}\graphProductSymbol \inverted{\quiver{S}}\)

These properties are general identities, easily verified.

Independent graph product

We now introduce the independent graph product of \(\quiver{\rform{R}}\) and \(\quiver{\bform{S}}\), written \(\quiver{\rform{R}}\independentQuiverProductSymbol \quiver{\bform{S}}\), which is the graph constructed as follows:

\[ \begin{aligned} \vertexList(\quiver{\rform{R}}\independentQuiverProductSymbol \quiver{\bform{S}})&\defEqualSymbol \setConstructor{\vert{\rform{r}} \vertexProductSymbol \vert{\bform{s}}}{\begin{array}{c} \elemOf{\vert{\rform{r}}}{\vertexList(\quiver{\rform{R}})}\\ \elemOf{\vert{\bform{s}}}{\vertexList(\quiver{\bform{S}})} \end{array} }\\ \\ \edgeList(\quiver{\rform{R}}\independentQuiverProductSymbol \quiver{\bform{S}})&\defEqualSymbol \setConstructor{\begin{array}{c} \ltde{\tvert{\rform{r}} \vertexProductSymbol \tvert{\bform{s}}}{\hvert{\rform{r}} \vertexProductSymbol \hvert{\bform{s}}}{\card{\rform{c}} \cardinalProductSymbol \card{\bform{d}}}\\ \ltde{\tvert{\rform{r}} \vertexProductSymbol \hvert{\bform{s}}}{\hvert{\rform{r}} \vertexProductSymbol \tvert{\bform{s}}}{\card{\rform{c}} \cardinalProductSymbol \inverted{\card{\bform{d}}}} \end{array} }{\begin{array}{c} \elemOf{\tde{\tvert{\rform{r}}}{\hvert{\rform{r}}}{\card{\rform{c}}}}{\edgeList(\quiver{\rform{R}})}\\ \elemOf{\tde{\tvert{\bform{s}}}{\hvert{\bform{s}}}{\card{\bform{d}}}}{\edgeList(\quiver{\bform{S}})} \end{array} }\end{aligned} \]

The intuitive meaning of this is: we can transition from a p-vertex to another p-vertex by choosing transitions for its f-vertices. We choose such transitions by choosing f-cardinals in the corresponding graphs. These f-cardinals can be inverted, or not. For the dependent quiver product, these choices were not indepenent: we could either take the p-cardinal \(\card{\rform{c}} \cardinalProductSymbol \card{\bform{d}}\) or its p-cardinal \(\inverted{\card{\rform{c}} \cardinalProductSymbol \card{\bform{d}}} = \inverted{\card{\rform{c}}} \cardinalProductSymbol \inverted{\card{\bform{d}}}\).

For the independent quiver product, these choices are independent: we can take any of the p-cardinals \(\list{\card{\rform{c}} \cardinalProductSymbol \card{\bform{d}},\card{\rform{c}} \cardinalProductSymbol \inverted{\card{\bform{d}}},\inverted{\card{\rform{c}}} \cardinalProductSymbol \card{\bform{d}},\inverted{\card{\rform{c}}} \cardinalProductSymbol \inverted{\card{\bform{d}}}}\) – however, up to inversion there are only two choices, being (for example) \(\list{\card{\rform{c}} \cardinalProductSymbol \card{\bform{d}},\card{\rform{c}} \cardinalProductSymbol \inverted{\card{\bform{d}}}}\), corresponding to the two f-edges in the definition seen above.

Visualization

Let's visualize the independent quiver product and contrast it with the dependent quiver product. Let's start with the same products we considered earlier:

Notice that we no longer have vertices that are totally disconnected. However this graph still has two weakly-connected components: the ones associated with the non-inverted "forward" f-cardinals, and the other with a choice of f-cardinals in which one of them is inverted.

Let's enlarge \(\quiver{S}\), setting \(\quiver{S} = \subSize{\lineQuiver }{3}\):

We're now using multiple arrowheads to illustrate the f-cardinal structure of the edges of \(\quiver{R}\independentQuiverProductSymbol \quiver{S}\). Again we see two connected components, which correspond in a certain sense to the "parity" of the f-vertex in \(\quiver{R}\) relative to some f-vertex in \(\quiver{S}\). For example, if we consider a component of \(\quiver{R}\independentQuiverProductSymbol \quiver{S}\) that includes p-vertex \(\filledToken \vertexProductSymbol \rform{\filledToken }\), then we can only ever reach the f-vertex \(\emptyToken\) after an odd number of transitions, but we can only ever reach f-vertex \(\rform{\filledToken }\) after an even number of transitions. Hence this component is disconnected from the component that includes p-vertex \(\emptyToken \vertexProductSymbol \rform{\filledToken }\).

Let's compare with the dependent product:

Now let's enlarge \(\quiver{R}\) to contain 3 vertices:

Again we see two weakly connected components with the same underlying explanation.

Product notation

We notice that in the constructions of the dependent and independent quiver products, the vertices were always given by the Cartesian product of f-vertices. The only freedom came in how to construct edges: when choosing edges, we were able to decide how one should be allowed to choose f-cardinals from each of the corresponding graphs.

We can encode such choices in a compact notation we'll call arrow notation.

For a binary quiver product between \(\quiver{\rform{R}}\) and \(\quiver{\bform{S}}\), we write a kind of polynomial in variables \(\list{\rform{\forwardFactor },\rform{\backwardFactor },\bform{\forwardFactor },\bform{\backwardFactor }}\). Each term of the polynomial represents a p-edge constructor, with the variable \(\rform{\forwardFactor }\) representing a choice of f-cardinal from \(\quiver{\rform{R}}\), and \(\rform{\backwardFactor }\) a inverted f-cardinal. For example, the dependent product \(\rform{\quiver{R}}\dependentQuiverProductSymbol \bform{\quiver{S}}\) is represented by the monomial \(\quiverProdPoly{\bform{\forwardFactor }\,\rform{\forwardFactor }}\), because the f-cardinals from both graphs have the same sign in the p-edge.

What about the independent quiver product? It is \(\quiverProdPoly{\rform{\forwardFactor }\,\bform{\backwardFactor }+\rform{\forwardFactor }\,\bform{\forwardFactor }}\), which we can also write as \(\quiverProdPoly{\rform{\forwardFactor }\,\paren{\bform{\backwardFactor }+\bform{\forwardFactor }}}\).

We can also use this notation to describe quiver versions of two traditional graph products form the literature, the Cartesian product and the strong product.

Cartesian product

The p-edges of the Cartesian product are constructed by choosing only one f-edge, taken from either \(\quiver{\rform{R}}\) or \(\quiver{\bform{S}}\). If \(\rform{ \uarr }\) is chosen, then the f-vertex for \(\quiver{\bform{S}}\) does not experience a transition, and vice versa. In explicit notation, in other words:

\[ \setConstructor{\begin{array}{c} \ltde{\tvert{\rform{r}} \vertexProductSymbol \vert{\bform{s}}}{\hvert{\rform{r}} \vertexProductSymbol \vert{\bform{s}}}{\card{\rform{c}} \cardinalProductSymbol 1}\\ \ltde{\vert{\rform{r}} \vertexProductSymbol \tvert{\bform{s}}}{\vert{\rform{r}} \vertexProductSymbol \hvert{\bform{s}}}{1 \cardinalProductSymbol \card{\bform{d}}} \end{array} }{\begin{array}{c} \elemOf{\tde{\tvert{\rform{r}}}{\hvert{\rform{r}}}{\card{\rform{c}}}}{\edgeList(\quiver{\rform{R}})}\\ \elemOf{\tde{\tvert{\bform{s}}}{\hvert{\bform{s}}}{\card{\bform{d}}}}{\edgeList(\quiver{\bform{S}})} \end{array} } \]

Using our abbreviated notation, this is written \(\quiverProdPoly{\rform{\forwardFactor }+\bform{\forwardFactor }}\).

Strong product

The p-edges of the strong product are constructed by combining the p-edges of the Cartesian product and the dependent (or tensor) product:

\[ \setConstructor{\begin{array}{c} \ltde{\tvert{\rform{r}} \vertexProductSymbol \vert{\bform{s}}}{\hvert{\rform{r}} \vertexProductSymbol \vert{\bform{s}}}{\card{\rform{c}} \cardinalProductSymbol 1}\\ \ltde{\vert{\rform{r}} \vertexProductSymbol \tvert{\bform{s}}}{\vert{\rform{r}} \vertexProductSymbol \hvert{\bform{s}}}{1 \cardinalProductSymbol \card{\bform{d}}}\\ \ltde{\tvert{\rform{r}} \vertexProductSymbol \tvert{\bform{s}}}{\hvert{\bform{s}} \vertexProductSymbol \hvert{\bform{s}}}{\card{\rform{c}} \cardinalProductSymbol \card{\bform{d}}} \end{array} }{\begin{array}{c} \elemOf{\tde{\tvert{\rform{r}}}{\hvert{\rform{r}}}{\card{\rform{c}}}}{\edgeList(\quiver{\rform{R}})}\\ \elemOf{\tde{\tvert{\bform{s}}}{\hvert{\bform{s}}}{\card{\bform{d}}}}{\edgeList(\quiver{\bform{S}})} \end{array} } \]

In our abbreviated notation, this is written \(\quiverProdPoly{\rform{\forwardFactor }+\bform{\forwardFactor }+\rform{\forwardFactor }\,\bform{\forwardFactor }}\).

Application

When computing a product polynomial in the context of particular quivers, we'll use the following notation to indicate which arrow factors come from which quivers:

\[ \frac{\quiverProdPoly{\rform{\forwardFactor }+\bform{\forwardFactor }}} {\rform{\quiver{R}},\bform{\quiver{S}}} \]

Summary

At this point we can summarize the above products in the following table:

zz
dependent quiver product\(\quiverProdPoly{\rform{\forwardFactor }\,\bform{\forwardFactor }}\)
independent quiver product\(\quiverProdPoly{\rform{\forwardFactor }\,\bform{\backwardFactor }+\rform{\forwardFactor }\,\bform{\forwardFactor }}\)
Cartesian product\(\quiverProdPoly{\rform{\forwardFactor }+\bform{\forwardFactor }}\)
strong product\(\quiverProdPoly{\rform{\forwardFactor }+\bform{\forwardFactor }+\rform{\forwardFactor }\,\bform{\forwardFactor }}\)

Algebraic properties

We can identify some algebraic properties of the generalized product, verifiable from the definition. Note that in all these cases we make the identification \(\paren{\vert{u} \vertexProductSymbol \vert{v}} \vertexProductSymbol \vert{w} = \vert{u} \vertexProductSymbol \paren{\vert{v} \vertexProductSymbol \vert{w}} = \vert{u} \vertexProductSymbol \vert{v} \vertexProductSymbol \vert{w}\) for product vertices and cardinals.

Associativity

\[ \quiverProdPoly{\rform{\forwardFactor }\,\paren{\gform{\forwardFactor }\,\bform{\forwardFactor }}} = \quiverProdPoly{\paren{\rform{\forwardFactor }\,\gform{\forwardFactor }}\,\bform{\forwardFactor }} = \quiverProdPoly{\rform{\forwardFactor }\,\gform{\forwardFactor }\,\bform{\forwardFactor }} \]

Distributivity

\[ \begin{aligned} \quiverProdPoly{\paren{\gform{\forwardFactor }+\bform{\forwardFactor }}\,\rform{\forwardFactor }}&= \quiverProdPoly{\gform{\forwardFactor }\,\rform{\forwardFactor }+\bform{\forwardFactor }\,\rform{\forwardFactor }}\\ \quiverProdPoly{\rform{\forwardFactor }\,\paren{\gform{\forwardFactor }+\bform{\forwardFactor }}}&= \quiverProdPoly{\rform{\forwardFactor }\,\gform{\forwardFactor }+\rform{\forwardFactor }\,\bform{\forwardFactor }}\end{aligned} \]

Negation

\[ \begin{aligned} \quiverProdPoly{\rform{\inverted{\forwardFactor }}}&= \rform{\backwardFactor }\\ \inverted{\quiverProdPoly{\rform{\forwardFactor }\,\bform{\forwardFactor }}}&= \quiverProdPoly{\rform{\backwardFactor }\,\bform{\backwardFactor }}\\ \inverted{\quiverProdPoly{\rform{\forwardFactor }+\bform{\forwardFactor }}}&= \quiverProdPoly{\rform{\backwardFactor }+\bform{\backwardFactor }}\end{aligned} \]

Lattice quiver products

We've now able to understand an interesting new perspective on the lattice quivers in terms of products.

Square lattice

Let's start with the Cartesian product \(\rform{ \uarr } + \bform{ \uarr }\) between two finite line lattices \(\subSize{\lineQuiver }{\sym{n}}\):

We recover a fragment of the square lattice quiver. We can write this formally as:

\[ \frac{\quiverProdPoly{\rform{\forwardFactor }+\bform{\forwardFactor }}} {\bindCards{\subSize{\lineQuiver }{\sym{n}}}{\rform{\card{r}}},\bindCards{\subSize{\lineQuiver }{\sym{n}}}{\bform{\card{b}}}} = \bindCards{\subSize{\squareQuiver }{\sym{n}}}{\rform{\card{r}},\bform{\card{b}}} \]

Setting \(\sym{n} = \infty\) in the above equation states that Cartesian product of two infinite line lattices gives in the infinite square lattice.

Triangular lattice

Here we show the product \(\rform{ \uarr } \, \gform{ \darr } + \gform{ \uarr } \, \bform{ \darr } + \bform{ \uarr } \, \rform{ \darr }\) between three infinite line lattices \(\rform{\quiver{R}},\gform{\quiver{G}},\bform{\quiver{B}}\). The product is a graph whose connected components are subgraphs of the triangular lattice. Here we show the product between three finite line lattices of length 5, and take the component containing the "center" product vertex \(0 \vertexProductSymbol 0 \vertexProductSymbol 0\):

Here we color the p-cardinals by the additive blend of the graphs involved, so that \(\quiverProdPoly{\rform{\forwardFactor }\,\gform{\backwardFactor }}\) is represented by the arrowhead \(\rgform{\arrowhead }\), \(\poly{\gform{\forwardFactor } \, \bform{\backwardFactor }}\) by \(\gbform{\arrowhead }\), and \(\quiverProdPoly{\bform{\forwardFactor }\,\rform{\backwardFactor }}\) by \(\rbform{\arrowhead }\). The symbol \(\componentSuperQuiverOfSymbol\) means "contains the connected component".

The full set of connected components correspond to slices through a larger object which we will describe at a later stage:

Hexagonal lattice

It might seem that we cannot decompose non-transitive lattice quivers, such as the hexagonal lattice, as products of transitive lattices. And this is true. But finite line lattices are not transitive: their two end vertices are different from the others. This leads to the following representation of the hexagonal lattice quiver:

\[ \quiverProdPoly{\rform{\forwardFactor }\,\gform{\backwardFactor }\,\waform{\forwardFactor }+\gform{\forwardFactor }\,\bform{\backwardFactor }\,\waform{\forwardFactor }+\bform{\forwardFactor }\,\rform{\backwardFactor }\,\waform{\forwardFactor }} \]

Here \(\rform{\quiver{R}},\gform{\quiver{G}},\bform{\quiver{B}}\) are copies of \(\subSize{\lineQuiver }{\sym{n}}\) as before, but \(\wbform{\quiver{X}}\) is \(\subSize{\lineQuiver }{2}\).Taking \(\sym{n} = 8\) we obtain:

Here is the full set of connected graph components, this time for \(\sym{n} = 6\).

We can also interpret the factorization \(\quiverProdPoly{\rform{\forwardFactor }\,\gform{\backwardFactor }\,\waform{\forwardFactor }+\gform{\forwardFactor }\,\bform{\backwardFactor }\,\waform{\forwardFactor }+\bform{\forwardFactor }\,\rform{\backwardFactor }\,\waform{\forwardFactor }} = \quiverProdPoly{\paren{\rform{\forwardFactor }\,\gform{\backwardFactor }+\gform{\forwardFactor }\,\bform{\backwardFactor }+\bform{\forwardFactor }\,\rform{\backwardFactor }}\,\waform{\forwardFactor }}\) as stating that we can obtain the hexagonal lattice quiver as the product of the triangular lattice quiver with the 2-line quiver. In fact, three copies of the triangular lattice are produced, shown below:

Note that the number of connected components (three) does not depend on the size of the \(\rform{\quiver{R}},\gform{\quiver{G}},\bform{\quiver{B}}\) line lattices.

In general we can write:

\[ \frac{\quiverProdPoly{\rform{\forwardFactor }\,\gform{\backwardFactor }\,\waform{\forwardFactor }+\gform{\forwardFactor }\,\bform{\backwardFactor }\,\waform{\forwardFactor }+\bform{\forwardFactor }\,\rform{\backwardFactor }\,\waform{\forwardFactor }}} {\bindCards{\subSize{\lineQuiver }{ \infty }}{\rform{\card{r}}},\bindCards{\subSize{\lineQuiver }{ \infty }}{\gform{\card{g}}},\bindCards{\subSize{\lineQuiver }{ \infty }}{\bform{\card{b}}},\bindCards{\subSize{\lineQuiver }{2}}{\wbform{\card{w}}}}\componentSuperQuiverOfSymbol \bindCards{\subSize{\hexagonalQuiver }{ \infty }}{\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}} \]

Rhombille lattice

Extending \(\wbform{\quiver{X}}\) to be a 3-line lattice yields the rhombille lattice:

Again, the factorization gives us an alternative way of building the rhombille lattice, again showing the three connected components:

Extending \(\wbform{\quiver{X}}\) to be a 4-line lattice yields the "alternating rhombille lattice", which involves a similar motif to the rhombille lattice, in which vertices alternate between degree 3 and degree 6:

Returning to the square lattice, we apply the same technique to obtain non-transitive versions of the square lattice. Here, we compute:

\[ \quiverProdPoly{\rform{\forwardFactor }\,\waform{\forwardFactor }+\bform{\forwardFactor }\,\waform{\forwardFactor }} \]

varying \(\wbform{\quiver{X}}\) between a 2-line lattice and a 5-line lattice:

Decomposition of products

In the previous section we decomposed the non-transitive hexagonal and rhombille lattices into their connected components. We now extend this technique to the earlier products we examined, so we can better understand how they produce fragments of corresponding lattice quivers.

As before, we'll visualize these as by superimposing each connected component on top of the full union of all conneced components, shown dimmed. Note that it may appear that the union itself is fully connected, but when this occurs it is an artefact of the projection onto two dimensions.

Square decomposition

The Cartesian product \(\quiverProdPoly{\rform{\forwardFactor }+\bform{\forwardFactor }}\) decomposition is trivial, since the Cartesian product of two line lattices yields a single connected graph.

Triangular decomposition

The triangular product \(\quiverProdPoly{\rform{\forwardFactor }\,\gform{\backwardFactor }+\gform{\forwardFactor }\,\bform{\backwardFactor }+\bform{\forwardFactor }\,\rform{\backwardFactor }}\) is more interesting, yielding a "stack" of disconnected components:

These components correspond to angled slices through the vertices of a cubic grid. Here we show a smaller fragment to avoid clutter, from an angle to emphasize the separate planes that yield the connected components:

And from another angle to emphasize the hexagonal structure of each plane:

Hexagonal decomposition

The hexagonal product \(\quiverProdPoly{\rform{\forwardFactor }\,\gform{\backwardFactor }\,\waform{\forwardFactor }+\gform{\forwardFactor }\,\bform{\backwardFactor }\,\waform{\forwardFactor }+\bform{\forwardFactor }\,\rform{\backwardFactor }\,\waform{\forwardFactor }}\) is similar to the triangular product, except with more slices possible:

The corresponding higher-dimensional object of which the connected components are slices is 4-dimensional, and cannot easily be visualized. Notice that the appearance of two single vertex connected components above is a reflection of the fact that there are two p-vertices (corresponding to the two \(\wbform{\quiver{X}}\)-vertices) whose whose projections into 2 (and 3) dimensions co-incide.

Square products

Finally, we can decompose the product of the square lattice with a 2-line lattice:

Unlike the case with the product of the triangular lattice with the 2-line, we have a large number of connected components that depends on the size of the finite square lattice. We can see these components as slices of the following three-dimensional "slab" in which the \(\wbform{\quiver{X}}\)-axis has length 2, depicted going into the page:

Here the \(\wbform{\quiver{X}}\)-axis is depicted vertically, and the connected components are more easily seen:

For a 3-line lattice we obtain a "thicker stripe" that scans across the square:

This corresponds to slices of a three-dimensional slab where the \(\wbform{\quiver{X}}\)-axis has length 3, depicted going into the page.

Here the \(\wbform{\quiver{X}}\)-axis is depicted vertically, and the connected components are more easily seen as being intersections of the slab vertices with particular three-dimensional planes:

Extended product notation

Neutral factor

We've used notation like \(\quiverProdPoly{\rform{\forwardFactor }\,\gform{\backwardFactor }+\gform{\forwardFactor }\,\bform{\backwardFactor }+\bform{\forwardFactor }\,\rform{\backwardFactor }}\) to describe generalized products between three distinct factor quivers. We've mentioned that product edges generated by monomials with two factors, like \(\quiverProdPoly{\rform{\forwardFactor }\,\gform{\backwardFactor }}\), correspond to transitions that apply only to factor vertices from e.g. \(\rform{\quiver{R}}\) and \(\gform{\quiver{G}}\), leaving the factor vertex from \(\bform{\quiver{B}}\) unchanged. We write the corresponding product cardinals as \(\rform{\card{r}} \cardinalProductSymbol \gform{\card{g}} \cardinalProductSymbol \bform{\card{1}}\), where \(\bform{\card{1}}\) indicates the absense of a factor cardinal from \(\bform{\quiver{B}}\). But the notation makes it difficult to interpret the meaning of a single monomial like \(\quiverProdPoly{\rform{\forwardFactor }\,\gform{\backwardFactor }}\) in isolation, because it leaves ambiguous how many factor quivers are actually involved.

To remedy this ambiguity, we will use the "shorn" arrow \(\neutralFactor\) to indicate such "neutral factor" edge constructors explicitly, so that for a product of three quivers all monomials are elements of the set \(\list{\rform{\forwardFactor },\rform{\neutralFactor },\rform{\backwardFactor }}\cartesianProductSymbol \list{\gform{\forwardFactor },\gform{\neutralFactor },\gform{\backwardFactor }}\cartesianProductSymbol \list{\bform{\forwardFactor },\bform{\neutralFactor },\bform{\backwardFactor }}\). Using this convention, the Cartesian product \(\quiverProdPoly{\rform{\forwardFactor }+\bform{\forwardFactor }}\) is written more explicitly as \(\quiverProdPoly{\rform{\forwardFactor }\,\bform{\neutralFactor }+\bform{\forwardFactor }\,\rform{\neutralFactor }}\), and the triangular product \(\quiverProdPoly{\rform{\forwardFactor }\,\gform{\backwardFactor }+\gform{\forwardFactor }\,\bform{\backwardFactor }+\bform{\forwardFactor }\,\rform{\backwardFactor }}\) as \(\quiverProdPoly{\rform{\forwardFactor }\,\gform{\backwardFactor }\,\bform{\neutralFactor }+\gform{\forwardFactor }\,\bform{\backwardFactor }\,\rform{\neutralFactor }+\bform{\forwardFactor }\,\rform{\backwardFactor }\,\gform{\neutralFactor }}\).

Single-quiver products

It is interesting to examine the products we can form from a single quiver \(\rform{\quiver{R}}\) using the constructors \(\list{\rform{\forwardFactor },\rform{\neutralFactor },\rform{\backwardFactor }}\). They are shown below for a finite line quiver:

The action of the neutral factor constructor \(\rform{\neutralFactor }\) is to entirely disconnect the quiver.

Two-quiver products

Let's examine the behavior of the neutral factor constructor for two-product quivers:

Three-quiver products

Finally we can look at the terms of the triangular product. Recall that the product \(\quiverProdPoly{\rform{\forwardFactor }\,\gform{\backwardFactor }\,\bform{\neutralFactor }+\gform{\forwardFactor }\,\bform{\backwardFactor }\,\rform{\neutralFactor }+\bform{\forwardFactor }\,\rform{\backwardFactor }\,\gform{\neutralFactor }}\) on line lattices \(\rform{\quiver{R}},\gform{\quiver{G}},\bform{\quiver{B}}\) produces distinct connected components, again we will show only the component containing the “center” product vertex \(0 \vertexProductSymbol 0 \vertexProductSymbol 0\). We will examine the products as we add terms one-by-one:

Clearly the one-product terms are line lattices, and the two-term products are square lattices. We will see shortly how to make this more manifest by a suitable factorization.

Powers

We are ready now to consider powers of factors like \(\quiverProdPoly{\rform{\forwardFactor }},\quiverProdPoly{\rform{\backwardFactor }}\) allowing terms such as \(\quiverProdPoly{\rform{\forwardFactor }\,\rform{\forwardFactor }},\quiverProdPoly{\rform{\forwardFactor }\,\rform{\forwardFactor }\,\rform{\forwardFactor }},\ellipsis\) and \(\quiverProdPoly{\rform{\backwardFactor }\,\rform{\backwardFactor }},\quiverProdPoly{\rform{\backwardFactor }\,\rform{\backwardFactor }\,\rform{\backwardFactor }},\ellipsis\). We first describe \(\quiverProdPoly{\rform{\forwardFactor }\,\rform{\forwardFactor }}\) and consider an example.

For quiver \(\rform{\quiver{R}}\) we define the monomial \(\quiverProdPoly{\rform{\forwardFactor }\,\rform{\forwardFactor }}\) to be the quiver \(\rform{\quiver{R}_2}\) defined as follows:

\[ \begin{aligned} \vertexList(\rform{\quiver{R}_2})&\defEqualSymbol \vertexList(\rform{\quiver{R}})\\ \\ \edgeList(\rform{\quiver{R}_2})&\defEqualSymbol \setConstructor{\ltde{\tvert{r}}{\hvert{r}}{\card{c_1} \cardinalSequenceSymbol \card{c_2}}}{\elemOf{\tde{\tvert{r}}{\vert{m}}{\card{c_1}},\tde{\vert{m}}{\hvert{r}}{\card{c_2}}}{\edgeList(\rform{\quiver{R}})}}\end{aligned} \]

In other words, the product edges of \(\rform{\quiver{R}_2}\) are 2-paths formed from (non-inverted) factor cardinals in \(\rform{\quiver{R}}\). The corresponding product cardinals are ordered 2-lists \(\card{c_1} \cardinalSequenceSymbol \card{c_2}\) of the corresponding factor cardinals. This is essentially identical to taking the square of the cardinal adjacency matrix.

Line lattice

Here is \(\rform{\quiver{R}_2}\) visualized for \(\rform{\quiver{R}} = \bindCards{\subSize{\lineQuiver }{6}}{\rform{\card{r}}}\). It splits into two isomorphic connected components:

For length \(\rform{\quiver{R}} = \bindCards{\subSize{\lineQuiver }{5}}{\rform{\card{r}}}\), the two components are not isomorphic:

For \(\rform{\quiver{R}} = \bindCards{\subSize{\cycleQuiver }{6}}{\rform{\card{r}}}\), we again obtain two connected components:

For \(\rform{\quiver{R}} = \bindCards{\subSize{\cycleQuiver }{5}}{\rform{\card{r}}}\), we again obtain one connected component:

This general pattern is easy to state:

zzz
finite line quiver\(\subSize{\lineQuiver }{\sym{n}}\)\(\subSize{\lineQuiver }{\ceiling{\sym{n} / 2}}\graphUnionSymbol \subSize{\lineQuiver }{\floor{\sym{n} / 2}}\)
infinite line quiver\(\subSize{\lineQuiver }{ \infty }\)\(\subSize{\lineQuiver }{ \infty }\graphUnionSymbol \subSize{\lineQuiver }{ \infty }\)
even cycle quiver\(\subSize{\cycleQuiver }{2 \, \sym{n}}\)\(\subSize{\cycleQuiver }{2 \, \sym{n}}\)
odd cycle quiver\(\subSize{\cycleQuiver }{2 \, \sym{n} + 1}\)\(\subSize{\cycleQuiver }{\sym{n}}\graphUnionSymbol \subSize{\cycleQuiver }{\sym{n}}\)

Square lattice

For \(\quiver{Q}\) a square quiver, which has multiple cardinals \(\cardinalList(\quiver{Q}) = \list{\rform{\card{r}},\bform{\card{b}}}\), the construction for \(\quiver{Q}_2\) is a little more complex. Here, the product cardinals are constructed from all possible pairs of non-inverted cardinals:

\[ \cardinalList(\quiver{Q_2}) = \list{\rform{\card{r}} \cardinalSequenceSymbol \rform{\card{r}},\rform{\card{r}} \cardinalSequenceSymbol \bform{\card{b}},\bform{\card{b}} \cardinalSequenceSymbol \rform{\card{r}},\bform{\card{b}} \cardinalSequenceSymbol \bform{\card{b}}} \]

We visualize \(\quiver{Q}_2\) for a 5,5-square lattice:

The long horizontal and vertical edges above are the p-cardinals \(\rform{\card{r}} \cardinalSequenceSymbol \rform{\card{r}}\) and \(\bform{\card{b}} \cardinalSequenceSymbol \bform{\card{b}}\), and the short pairs of diagonal edges with identical head and tail are \(\rform{\card{r}} \cardinalSequenceSymbol \bform{\card{b}}\) and \(\bform{\card{b}} \cardinalSequenceSymbol \rform{\card{r}}\).

Triangular lattice

The structure of the second power of the triangular lattice is complex and interesting, but will not be described further here.

Interaction of \(\forwardFactor\) and \(\backwardFactor\)

Higher powers

We can define the general \(n^{\textrm{th}}\) forward power of a quiver similarly, written as \(\quiverProdPoly{\quiverProdPower{\rform{\forwardFactor }}{\sym{n}}}\defEqualSymbol \parenLabeled{\quiverProdPoly{\rform{\forwardFactor }\,\rform{\forwardFactor }\,\quiver{\ellipsis }\,\rform{\forwardFactor }}}{\sym{n} \textrm{ times}}\). The same constructions work as you would imagine for \(\quiverProdPoly{\quiverProdPower{\rform{\backwardFactor }}{\sym{n}}}\).

Homomorphisms

Summary

Here are the four simple products we introduced in the last section, as applied to two line lattices. We also include some obvious generalizations for reference:

These examples make it clear that in the case of the products of infinite line lattices we choose to read the terms of the product as describing the roots of the resulting product, when see as a point lattice, in the sense of a subset of \(\mathbb{R}^2\), rather than as a quiver. For example, the Cartesian lattice quiver \(\quiverProdPoly{\rform{\forwardFactor }+\bform{\forwardFactor }}\) corresponds to the roots \(\list{\tuple{1,0},\tuple{0,1}}\), whereas \(\quiverProdPoly{\rform{\forwardFactor }+\bform{\forwardFactor }+\rform{\forwardFactor }\,\bform{\forwardFactor }+\rform{\forwardFactor }\,\bform{\backwardFactor }}\) corresponds to the roots \(\list{\tuple{1,0},\tuple{0,1},\tuple{1,1},\tuple{1,-1}}\).


Path calculus

Introduction

This section will introduce path calculus. Path calculus is the simple formalism that extends the so-called calculus of finite differences to the setting of functions defined on the vertices of quivers. In the subsequent section, we will explain how to generalize path calculus into the realm of path algebra, where finite differences become linear operators on a vector space of paths. But for now, the constructions will be elementary and straightforward.

How do we set up calculus on cardinal quivers? Before beginning, it is obvious that we should expect something that looks more like the calculus of finite differences than the more familiar infinitesimal calculus employed for continuous functions. Philosophically, the individual edges of a lattice quiver are the equivalent of infinitesimals from a suitably “zoomed out” perspective.

All the following examples will be hosted on a relatively simple lattice quivers. We’ll start with the one-dimensional line lattice, and move later to the square and triangular lattices to illustrate the generalization to multiple cardinals and hence dimensions.

One dimensional lattices

To start, our base lattice will be line lattice, written \(\quiver{L}\), which has the attractive pedagogical property that it will act like the discrete equivalent of the real number line on which continuous one-dimensional functions are usually defined.

We’ve labeled the vertices with integers, with 0 for the origin vertex. We’ll refer to the vertices of \(\quiver{L}\) as \(\vertices{\quiver{L}} = \vertexList(\quiver{L})\).

Vertex fields

A vertex field on \(\quiver{L}\) is a function \(\functionSignature{\function{\vertexField{f}}}{\vertices{\quiver{L}}}{\baseField{K}}\), where \(\baseField{K}\) is a field (or commutative ring). We write the space of all vertex fields \(\functionSpace{\vertices{}}{\baseField{K}}\).

The word field here is serving two different roles, of course: the field in “vertex field” is analogous to a scalar field in physics: a single value at each point in space, whereas the field in “\(\baseField{K}\) is a field refers to a field of scalar values in the sense of algebraic ring with inverses. Of course, vertex fields form a field in their own right under pointwise multiplication, addition, and inversion, so the pun is in some sense accurate.

We’ll initially consider only finite fields \(\baseField{K} = \finiteField{p}\), which will allow us to visualize vertex fields as colorings of vertices. For \(\sym{p}=2\) we’ll use white for 0 and black for 1, and for \(\sym{p}=3\) we’ll use white for 0, red for 1, and blue for −1. For \(\sym{p}>3\), the cyclic property of these finite fields will be represented with colors that cycle through the visible spectrum.

Here are two vertex fields \(\vertexField{u}\) and \(\vertexField{v}\) we’ll use to illustrate various operations:

We can form sums and products of these vertex fields, defined vertex-wise:

Translation operator

We now introduce the translation operator \(\pathTranslate{}{\vertexField{u}}\), which translates the vertex field \(\vertexField{u}\) along the cardinal \(\card{x}\). Later we’ll define this operation for quivers with more than one cardinal, and generalize it to allow translation along arbitrary paths.

Notice that the vertex fields \(\vertexField{u}\) and \(\vertexField{v}\) have been “shifted over” to the right. Similarly we can define the backward translation operator \(\pathBackwardTranslate{}{\vertexField{u}}\):

Finite differences

We can use these translation operators to define the forward finite difference of a vertex field \(\vertexField{u}\), written \(\forwardDifference{}\,\vertexField{u}\).

The operation \(\forwardDifference{}\,\vertexField{u}\) is defined to be \(\forwardDifference{}\,\vertexField{u} = \vertexField{u} - \pathTranslate{}{\vertexField{u}}\), and can be thought of as comparing the translated and untranslated versions of \(\vertexField{u}\):

The single red vertex in the center indicates that the vertex field \(\vertexField{u} = \list{\ellipsis ,0,0,1,1,1,\ellipsis }\) has a “step change”, yielding \(\forwardDifference{}\,\vertexField{u} = \list{\ellipsis ,0,0,1,0,0,\ellipsis }\). In terms of 1D discrete functions, the picture is:

Similarly we can define the backward finite difference to be \(\backwardDifference{}\,\vertexField{u} = \pathBackwardTranslate{}{\vertexField{u}} - \vertexField{u}\), illustrated below:

The worked calculation is shown below:

We can again visualize this as a finite difference of a 1D discrete function:

Finally we can define the central difference \(\centralDifference{}\,\vertexField{u} = \forwardDifference{}\,\vertexField{u} + \backwardDifference{}\,\vertexField{u}\), which simplifies to \(\pathBackwardTranslate{}{\vertexField{u}} - \pathTranslate{}{\vertexField{u}}\)

The 1D discrete function interpretation:

Second order differences

It is perfectly well defined to apply the \(\centralDifference{}\) operators multiple times, which we’ll write as \(\centralDifference{}\,\centralDifference{} = \centralDifference{}_2\), etc.

Let’s visualize the behavior of the second order forms of the three operators:

Liebniz’s rule

In traditional calculus, we have the famous Leibniz (or product) rule: \(\partialdof{\function{f} \, \function{g}} = \function{f} \, \partialdof{\function{g}} + \function{g} \, \partialdof{\function{f}}\).

Does the same rule hold for the finite difference of a product \(\vertexField{u} \, \vertexField{w}\) of vertices fields \(\vertexField{u}\), \(\vertexField{w}\) on the line lattice? The following table illustrates on the first row example vertex fields \(\vertexField{u}\), \(\vertexField{w}\) and their product \(\vertexField{u} \, \vertexField{w}\), on the second row the central finite difference of them individually, and of their product, and on the third row the two terms of the ordinary product rule, and their sum.

As we can see, the two bolded expressions are different, so the “naive” form of the Leibniz rule does not hold.

Luckily, it is straightforward to derive a modified form of the Leibniz rule, involving translations of one or both of the products. There are in fact two, equivalent versions of this modified form for each derivative, which one might call the ‘forward’ and ‘backward’ forms:

Again, notice that the naive Leibniz rule does not give the true derivative for each of the three cases, whereas both the left and right forms of the modified Leibniz rule do.

It is intuitive that in the “continuum limit” of slowly changing vertex fields on very large lattices, the effect of the infinitesimal translations like \(\pathTranslate{}{\vertexField{w}}\) can be ignored and replaced with the untranslated fields \(\vertexField{w}\). Doing this to the above modified Liebniz rules we pass to the classical Liebnitz rule, so for example in the case of the central difference:

\[ \pathTranslate{}{\vertexField{w}} \, \centralDifference{}\,\vertexField{u} + \pathBackwardTranslate{}{\vertexField{u}} \, \centralDifference{}\,\vertexField{w}\approxEqualSymbol \pathBackwardTranslate{}{\vertexField{w}} \, \centralDifference{}\,\vertexField{u} + \pathTranslate{}{\vertexField{u}} \, \centralDifference{}\,\vertexField{w}\approxEqualSymbol \vertexField{w} \, \centralDifference{}\,\vertexField{u} + \vertexField{u} \, \centralDifference{}\,\vertexField{w} \]

Two dimensional lattices

To continue our recapitulation of calculus, we next move to multivariable calculus. Taking the place of continuous functions of two real variables, we will have vertex fields on lattices with two cardinals.

Let’s start with the most intuitive, the square lattice:

This time, we will take finite difference separately in the two cardinals directions \(\rbform{\card{x}}\) and \(\gbform{\card{y}}\), with the cardinal writtein subscript form: e.g. for the central finite differences

zzzz
difference along \(\rbform{\card{x}}\)\(\pathCentralDifference{\card{x}}\)\(\pathForwardDifference{\card{x}}\)\(\pathBackwardDifference{\card{x}}\)
difference along \(\gbform{\card{y}}\)\(\pathCentralDifference{\card{y}}\)\(\pathForwardDifference{\card{y}}\)\(\pathBackwardDifference{\card{y}}\)

These are defined as before, except now we use per-cardinal forward and backward translations:

zzz
translation along \(\rbform{\card{x}}\)\(\pathLeftTranslate{\card{x}}\)\(\pathLeftBackwardTranslate{\card{x}}\)
translation along \(\gbform{\card{y}}\)\(\pathLeftTranslate{\card{y}}\)\(\pathLeftBackwardTranslate{\card{y}}\)

Here we show the finite differences of three simple vertex fields \(\vertexField{u}\), \(\vertexField{v}\), \(\vertexField{w}\), shown on successive rows:

We can also take second order differences in multiple ways, show here in terms of the central difference applied to \(\vertexField{u}\). Note that we define second order differences to act in the order they appear in the subscript, so that e.g. \(\pathCentralDifference{\card{x},\card{y}} = \pathCentralDifference{\card{y}}\,\pathCentralDifference{\card{x}}\).

Notice that \(\pathCentralDifference{\card{y},\card{x}}\,\vertexField{u} = \pathCentralDifference{\card{x},\card{y}}\,\vertexField{u}\). In fact, this identity is true for all vertex fields. This is a consequence of the path relation \(\word{\rbform{\card{x}}}{\gbform{\card{y}}}\pathIso \word{\gbform{\card{y}}}{\rbform{\card{x}}}\), which implies that the translations \(\pathLeftTranslate{\card{x}}\) and \(\pathLeftTranslate{\card{y}}\) commute, which makes the proof of the identity elementary:

\[ \begin{aligned} \pathCentralDifference{\rbform{\card{x}},\gbform{\card{y}}}\,\vertexField{u}&= \pathBackwardTranslate{\rbform{\card{x}}}{\paren{\pathCentralDifference{\gbform{\card{y}}}\,\vertexField{u}}} - \pathTranslate{\rbform{\card{x}}}{\paren{\pathCentralDifference{\gbform{\card{y}}}\,\vertexField{u}}}\\ &= \pathBackwardTranslate{\rbform{\card{x}}}{\pathBackwardTranslate{\gbform{\card{y}}}{\vertexField{u}}} - \pathBackwardTranslate{\rbform{\card{x}}}{\pathTranslate{\gbform{\card{y}}}{\vertexField{u}}} - \pathTranslate{\rbform{\card{x}}}{\pathBackwardTranslate{\gbform{\card{y}}}{\vertexField{u}}} + \pathTranslate{\rbform{\card{x}}}{\pathTranslate{\gbform{\card{y}}}{\vertexField{u}}}\\ &= \pathBackwardTranslate{\gbform{\card{y}}}{\pathBackwardTranslate{\rbform{\card{x}}}{\vertexField{u}}} - \pathBackwardTranslate{\gbform{\card{y}}}{\pathTranslate{\rbform{\card{x}}}{\vertexField{u}}} - \pathTranslate{\gbform{\card{y}}}{\pathBackwardTranslate{\rbform{\card{x}}}{\vertexField{u}}} + \pathTranslate{\gbform{\card{y}}}{\pathTranslate{\rbform{\card{x}}}{\vertexField{u}}}\\ &= \pathBackwardTranslate{\gbform{\card{y}}}{\paren{\pathCentralDifference{\rbform{\card{x}}}\,\vertexField{u}}} - \pathTranslate{\gbform{\card{y}}}{\paren{\pathCentralDifference{\rbform{\card{x}}}\,\vertexField{u}}}&= \pathCentralDifference{\gbform{\card{y}},\rbform{\card{x}}}\,\vertexField{u}\end{aligned} \]

Edge fields

Next, we are going to consider edge fields on the square lattice quiver \(\quiver{S}\), constructed similarly to the vertex fields \(\functionSpace{\vertices{}}{\baseField{K}}\).

An edge field on \(\quiver{S}\) is a function \(\functionSignature{\function{\edgeField{h}}}{\edges{\quiver{S}}}{\baseField{K}}\), where again \(\baseField{K}\) is a field or commutative ring, and \(\edges{\quiver{S}}\) is the set of edges of \(\quiver{S}\). We write the space of all edge fields as \(\functionSpace{\edges{}}{\baseField{K}}\).

Orientation

It's important that we consider these edges in a directed sense: an edge field is a single value associated with a given edge \(\elemOf{\edge{e}}{\edges{}}\), namely \(\edgeField{h}(\edge{e})\), but if we consider that edge in its invered oriention, we invert the corresponding value of the edge field: \(\edgeField{h}(\inverted{\edge{e}}) = \minus{\edgeField{h}(\edge{e})}\). This interpretation is natural if we regard the edge field as representing a flow of some quantity, since the flow along a given edge will be negative if choose to measure it in the opposite orientation. We'll be on a firmer footing when we consider path algebra, so don't worry if this point seems vague right now.

Visualization

We will visualize edge fields using colored edges in the same fashion we used for vertex fields. Because they are naturally oriented by the orientation of the corresponding cardinals, a positive weight on an edge will be represented visually as a doubled-headed arrow in which the arrowhead in the forward direction is colored red, and the arrowhead in the backward direction is colored blue. The opposite applies when drawing a negative weight.

Here's an example of an edge field in which only two edges have non-zero weight: the horizontal edge has weight 1, and the vertical edge has weight -1. Alongside it is the original lattice quiver \(\quiver{S}\) to allow comparison with the orientation of the corresponding cardinals.

Gradient

We can generate an edge field from a vertex field \(\functionSignature{\function{\vertexField{u}}}{\vertices{\quiver{S}}}{\baseField{K}}\) using the gradient operator, written \(\grad\). Formally, \(\grad\) is a map from the space of vertex fields to the space of edge fields, in other words \(\functionSignature{\function{\grad }}{\functionSpace{\vertices{}}{\baseField{K}}}{\functionSpace{\edges{}}{\baseField{K}}}\). It is defined edgewise as follows:

\[ \function{\paren{\grad \,\vertexField{u}}}(\de{\vert{x}}{\vert{y}}) = \vertexField{u}(\vert{y}) - \vertexField{u}(\vert{x}) \]

In other words, the gradient operator measures the difference between the value of \(\vertexField{u}\) at the head and tail of each edge.

Let's visualize the behavior of the gradient operator on some simple vertex fields:

Divergence

Next we'll introduce the divergence operator, which is a kind of complementary operator to the gradient operator. The divergence operator is written \(\div\). The divergence operator operates on an edge field \(\functionSignature{\edgeField{h}}{\edges{}}{\baseField{K}}\) and produces a vertex field \(\functionSignature{\function{\div \,\edgeField{h}}}{\vertices{}}{\baseField{K}}\), in othe words we have \(\functionSignature{\function{\div }}{\functionSpace{\edges{}}{\baseField{K}}}{\functionSpace{\vertices{}}{\baseField{K}}}\).

It is defined vertexwise as follows:

\[ \function{\paren{\div \,\edgeField{h}}}(\vert{v}) = \indexSum{\edgeField{h}(\edge{e})}{\headVertex(\edge{e}) = \vert{v}}{} - \indexSum{\edgeField{h}(\edge{e})}{\tailVertex(\edge{e}) = \vert{v}}{} \]

We can define it more elegantly using the path Kronecker, \(\functionSignature{\function{ \Xi }}{\tuple{\edges{},\vertices{}}}{\baseField{K}}\), defined as:

\[ \function{ \Xi }(\edge{e},\vert{v}) = \begin{cases} 1 &\text{if } \headVertex(\edge{e}) = \vert{v}\\ -1 &\text{if } \tailVertex(\edge{e}) = \vert{v}\\ 0 &\text{otherwise} \end{cases} \]

Using \(\function{ \Xi }\) we can express \(\div\) vertexwise as a kind of convolution:

\[ \function{\paren{\div \,\edgeField{h}}}(\vert{v}) = \indexSum{\function{ \Xi }(\edge{e},\vert{v}) \, \edgeField{h}(\edge{e})}{\edge{e}}{} \]

Let's apply the divergence operator to some example edge fields:

Laplacian

An interesting quantity is the divergence of the gradient, \(\laplacian = \div \,\grad\), called the Laplacian. Let's evaluate it on a simple vertex field:

The weights for vertex field \(\laplacianOf{\vertexField{u}}\) are \(+4\) for the central red vertex and \(-1\) for the surrounding blue vertices. This can be explained by counting the number of incident edges for the central vertex you can see in \(\gradOf{\vertexField{u}}\): there are 4. There is only one incident edge for the outer vertices.

We will have more to say about this at a later stage, particular in its connection with vertex colorings of lattices.

Curl

The operator analogous to curl in vector calculus will have to wait until we have the machinery of path algebra to guide us. This is largely due to the fact that curl itself is just the tip of the iceberg, more generically handled using the idea of the exterior calculus (or, largely equivalently, geometric algebra). We will therefore leave this topic aside for now, although we'll see hints of it below.

Integration

We've covered some basic territory in terms of finite-differential calculus. What about integration?

The staring point here is the notion of the path integral of an edge field \(\elemOf{\edgeField{h}}{\functionSpace{\edges{}}{\baseField{K}}}\) along a path \(\path{P}\), written \(\pathIntegral{\path{P}}{\edgeField{h}}\).

Let's visualize this idea for an arbitrary \(\edgeField{h}\) and \(\path{P}\):

We first "split" \(\path{P}\) into its constituent edges (each edge having weight one), and then multiply them edgewise with \(\edgeField{h}\):

The summed weight of this product vector is the result of the integral, in this case, the sum of three negative weights and one positive weight.

We can write this succintly in the following way:

\[ \pathIntegral{\path{P}}{\edgeField{h}} = \pathDot{\split(\path{P})}{\edgeField{h}} \]

Here, the dot product or inner product between two edge fields is the map \(\functionSignature{\function{\pathDotSymbol{}}}{\tuple{\functionSpace{\edges{}}{\baseField{K}},\functionSpace{\edges{}}{\baseField{K}}}}{\baseField{K}}\) defined to be the sum of products of their edge weights:

\[ \pathDot{\edgeField{g}}{\edgeField{h}} = \indexSum{\edgeField{g}(\edge{e}) \, \edgeField{h}(\edge{e})}{\edge{e}}{} \]

Fundamental theorem of discrete calculus

We can now make a rather trivial observation about the gradient edge field of a vertex field \(\vertexField{u}\). Let's calculate the result of a path integral on \(\gradOf{\vertexField{u}}\):

\[ \begin{aligned} \pathIntegral{\path{P}}{\paren{\gradOf{\vertexField{u}}}}&= \pathDot{\split(\path{P})}{\paren{\gradOf{\vertexField{u}}}}\\ &= \indexSum{\suchThat{\function{\paren{\gradOf{\vertexField{u}}}}(\edge{e})}{\elemOf{\edge{e}}{\path{P}}}}{\edge{e}}{}\\ &= \indexSum{\suchThat{\vertexField{u}(\vert{y}) - \vertexField{u}(\vert{x})}{\elemOf{\de{\vert{x}}{\vert{y}}}{\path{P}}}}{\vert{x},\vert{y}}{}\end{aligned} \]

In other words, the integral is the sum of differences of values of \(\vertexField{u}\) along the edges of the path \(\path{P}\). But these will cancel in pairs, since:

\[ \support(\path{P}) = \list{\de{\vert{x_1}}{\vert{x_2}},\de{\vert{x_2}}{\vert{x_3}},\ellipsis ,\de{\vert{x_{\sym{n} - 1}}}{\vert{x_{\sym{n}}}}} \]

And hence the integral is determined by the difference between the value of \(\vertexField{u}\) at the head and tail of \(\path{P}\).

\[ \pathIntegral{\path{P}}{\paren{\gradOf{\vertexField{u}}}} = \vertexField{u}(\headVertex(\path{P})) - \vertexField{u}(\tailVertex(\path{P})) \]

This rather banal calculation amounts to a discrete version of the fundamental theorem of calculus for a function of one variable. Note the important consequence that if \(\path{P}\) is a closed path, then by definition \(\headVertex(\path{P}) = \tailVertex(\path{P})\), and the integral is zero.

You may have noticed that we have played a little fast and loose here: in particular, the operation \(\split\) seemed to produce an edge field that didn't have the customary double arrowheads, and this feature was reflected by the product of it with the integrand edge field. There is good reason for this, and to understand what is going on we will have to develop path algebra. This will then allow us to formulate an appropriate discrete version of the generalized Stoke's theorem, an important milestone in "multicardinal calculus".


Path algebra

Introduction

We are ready at this point to understand path calculus through the lens of path algebra. This will allow us to generalize the finite difference approach to operate on objects more general than vertex and edge fields, and on quivers that include complex cardinal structure that manifest the phenomenon of discrete curvature.

We previously defined \(\functionSpace{\vertices{}}{\baseField{K}}\), the space of vertex fields, to be the space of functions from the set of vertices to some field \(K\). These form a vector space, and in fact a ring under pointwise multiplication. The basis of this space is of course the set of vertices.

We also defined \(\functionSpace{\edges{}}{\baseField{K}}\), the space of edge fields, similarly.

We now unify and extend these definitions via path algebra, by expressing vertices and edges as elements of a larger space: the set of finite paths.

Path vectors

First, we notice that the set of vertices can be identified with the set of empty paths: to each vertex \(\vert{v}\) we associate the empty path \(\idElem{\vert{v}} = \paren{\pathWord{\vert{v}}{\emptyWord{}}{\vert{v}}}\).

What about edge fields? We could identify an edge \(\elemOf{\edge{e}}{\edges{}} = \tde{\vert{x}}{\vert{y}}{\card{c}}\) with the 1-path \(\paren{\pathWord{\vert{x}}{\word{\card{c}}}{\vert{y}}}\). But we must take care of orientation: edge fields are antisymmetric, in that for edge field \(\elemOf{\edgeField{h}}{\functionSpace{\edges{}}{\baseField{K}}}\), we have \(\edgeField{h}(\inverted{\edge{e}}) = \minus{\edgeField{h}(\edge{e})}\). Therefore we identify the edge \(\edge{e}\) with the formal sum of paths \(\paren{\pathWord{\vert{x}}{\word{\card{c}}}{\vert{y}}} - \paren{\pathWord{\vert{y}}{\word{\inverted{\card{c}}}}{\vert{x}}}\).

Hence we have identified the basis elements for vertex and edge fields as basis elements of a larger vector space: the vector space of all finite-length paths.

A vector of this enlarged path vector space, written \(\pathVectorSpace{P}\), is a path vector, written \(\elemOf{\pathVector{p}}{\pathVectorSpace{P}}\).

A path vector \(\pathVector{p}\) is a \(\baseField{K}\)-linear combination of paths, which we will call basis paths, since they form the basis of the vector space \(\pathVectorSpace{P}\). We can write this sum formally as \(\pathVector{p} = \indexSum{\basisPathWeight{p}{i} \, \basisPath{p}{i}}{i}{}\), where \(\basisPath{p}{i}\) is a basis path and \(\basisPathWeight{p}{i}\) is the \(\baseField{K}\)-valued coefficient of the basis path in the sum, called a weight.

The set of \(\basisPath{p}{i}\) for which \(\basisPathWeight{p}{i} \neq 0\) will be called the support of the vector \(\pathVector{p}\).

Visualization

We can visualize such path vectors in a familiar way: we superimpose the paths \(\basisPath{p}{i}\) in a single diagram, with the color indicating the weight \(\basisPathWeight{p}{i}\) in the linear combination. Basis paths with coefficient zero (basis paths outside the support) are of course not drawn at all. For example:

We'll note that this diagramatic scheme is fully consistent with the way we have chosen to visualize vertex and edge fields in the previous section.

Unit vertex field

The vertex fields \(\functionSpace{\vertices{}}{\baseField{K}}\) form a vector subspace of \(\pathVectorSpace{P}\), of course, closed under addition, multiplication, and scalar multiplication. We can identify a special vector in this subspace: \(\unitVertexField\), the unit vertex field, with a weight 1 for every empty path:

\[ \unitVertexField = \indexSum{\paren{\pathWord{\vert{v}}{\emptyWord{}}{\vert{v}}}}{\elemOf{\vert{v}}{\vertices{}}}{} \]

Cardinal edge fields

While the vertex fields are the simplest interesting subspace of \(\pathVectorSpace{P}\), there is another natural subspace: the subspace of length-1 paths. There are particular vectors in these subspaces that stand out: those that are associated with a particular cardinal. The linear combination of edges, that is to say, length-1 paths, that are labeled with a given cardinal \(\card{c}\) are called the forward cardinal edge fields, and are defined by:

\[ \wordVector{\word{\card{c}}}{\forwardSymbol } = \indexSum{\paren{\pathWord{\vert{t}}{\word{\card{c}}}{\vert{h}}}}{\elemOf{\vert{t},\vert{h}}{\vertices{}}}{} \]

To explain this notation a bit: the summand \(\paren{\pathWord{\vert{t}}{\word{\card{c}}}{\vert{h}}}\) is dropped if it is not a valid path, in other words, if \(\tde{\vert{t}}{\vert{h}}{\card{c}}\) is not an edge of the quiver.

Here we show the two forward cardinal edge fields for the square lattice:

We can equally well construct edge fields from the inverses of these cardinals, giving the backward cardinal edge fields:

\[ \wordVector{\word{\card{c}}}{\backwardSymbol } = \indexSum{\paren{\pathWord{\vert{h}}{\word{\ncard{c}}}{\vert{t}}}}{\elemOf{\vert{t},\vert{h}}{\vertices{}}}{} \]

The forward and backward cardinal edge fields are related via \(\wordVector{\word{\card{c}}}{\backwardSymbol } = \pathReverse{\paren{\wordVector{\word{\card{c}}}{\forwardSymbol }}}\), where \(\pathReverse{}\) indicates the operation of path reversal, in which we simply reverse each basis path of the vector.

A final class of cardinal edge fields are the symmetric and antisymmetric cardinal edge fields:

\[ \begin{aligned} \wordVector{\word{\card{c}}}{\symmetricSymbol }&= \wordVector{\word{\card{c}}}{\forwardSymbol } + \wordVector{\word{\card{c}}}{\backwardSymbol }\\ \wordVector{\word{\card{c}}}{\antisymmetricSymbol }&= \wordVector{\word{\card{c}}}{\forwardSymbol } - \wordVector{\word{\card{c}}}{\backwardSymbol }\end{aligned} \]

Visualized for the square lattice:

We adopt a slight tweak to the visualization here: when a path and its reversal are both present, we combine them into one double-headed arrow, shading the each arrowhead to indicate the weight in that direction. This reveals the fact that the edge fields we considered in the "Path calculus" section were in fact just the antisymmetric 1-path vectors.

Word vectors

The cardinal edge fields are themselves special cases of a more general kind of path vector called a word vector, which is the path vector which consists of the sum of all paths whose path word is \(\wordSymbol{W}\):

zz
forward word vector\(\wordVector{\wordSymbol{W}}{\forwardSymbol }\defEqualSymbol \indexSum{\suchThat{\basisPath{p}{\sym{i}}}{\wordOf(\basisPath{p}{\sym{i}}) = \wordSymbol{W}}}{\sym{i}}{}\)
backward word vector\(\wordVector{\wordSymbol{W}}{\backwardSymbol }\defEqualSymbol \wordVector{\inverted{\wordSymbol{W}}}{\forwardSymbol } = \pathReverse{\paren{\wordVector{\wordSymbol{W}}{\forwardSymbol }}}\)
symmetric word vector\(\wordVector{\wordSymbol{W}}{\symmetricSymbol }\defEqualSymbol \wordVector{\wordSymbol{W}}{\forwardSymbol } + \wordVector{\wordSymbol{W}}{\backwardSymbol }\)
antisymmetric word vector\(\wordVector{\wordSymbol{W}}{\antisymmetricSymbol }\defEqualSymbol \wordVector{\wordSymbol{W}}{\forwardSymbol } - \wordVector{\wordSymbol{W}}{\backwardSymbol }\)

As you’d expect, if the word \(\wordSymbol{W}\) consists of a single cardinal, we obtain the cardinal edge fields defined earlier.

Here are the word vectors corresponding to the word \(\word{\rbform{\card{x}}}{\gbform{\inverted{\card{y}}}}\):

As a special case, we can consider the empty word vectors, which we write with an invisible subscript. These yields the sum of empty paths, in other words, the unit vertex field \(\unitVertexField\):

Grades

We can organize this situation via the notion of a grade. The grade of an basis path \(\elemOf{\pathVector{p}}{\pathVectorSpace{P}}\) is simply the length of the path, which we’ll write \(\grade(\pathVector{p})\). The grade of a vector \(\pathVector{p} = \indexSum{\basisPathWeight{p}{i} \, \basisPath{p}{i}}{i}{}\) is the single common grade of its support, if there is such a common value. If the support of \(\pathVector{p}\) contains basis paths of different grades, we’ll say that \(\pathVector{p}\) has mixed grade. As a special case, we consider the zero path vector \(\pathVector{0}\) to be of undefined grade.

Since empty paths have length 0, we can now organize the situation as follows:

zzz
vertex fields\(\pathVectorSpace{P}_0\)path vectors of grade 0
edge fields\(\pathVectorSpace{P}_1\)path vectors of grade 1
\(n\)-path fields\(\pathVectorSpace{P}_{\sym{n}}\)path vectors of grade \(\sym{n}\)

Then we have the general fact that \(\pathVectorSpace{P}_{\sym{n}}\) is a subspace of \(\pathVectorSpace{P}\) closed under addition, multiplication, and scaling.

Linear and bilinear operations

What is the path algebra \(\pathVectorSpace{P}\,\)good for? In other words what can we do with it, or rather, what can we do in it?

We introduce several operations, though we have seen aspects of these before:

zz
translation of \(\pathVector{p}\) along \(\pathVector{t}\)\(\pathTranslate{\pathVector{t}}{\pathVector{p}}\) and \(\pathBackwardTranslate{\pathVector{t}}{\pathVector{p}}\)
composition of \(\pathVector{p}\) with \(\pathVector{q}\)\(\pathCompose{\pathVector{p}}{\pathVector{q}}\)
reversal of \(\pathVector{p}\)\(\pathReverse{\pathVector{p}}\)
head and tail of \(\pathVector{p}\)\(\pathHeadVector{\pathVector{p}}\) and \(\pathTailVector{\pathVector{p}}\)

To define these operations formally, we need only specify what they do on the set of basis paths \(\compactBasis{\pathVectorSpace{P}}\defEqualSymbol \basis(\pathVectorSpace{P})\). For binary operations like \(\translateSymbol\), \(\backwardTranslateSymbol\), and \(\pathComposeSymbol{}\), this means defining their behavior on pairs of basis paths. For unary operations like \(\pathReverse{}\), \(\pathHeadVector{\path{}}\), and \(\pathTailVector{\path{}}\), this means defining their behavior on individual basis paths. We’ll illustrate this process with specific examples, but for now, let’s define the linear-algebraic foundation of this approach.

For a unary operation \(\function{f}\) defined on basis paths \(\functionSignature{\function{f}}{\compactBasis{\pathVectorSpace{P}}}{\compactBasis{\pathVectorSpace{P}}}\), we define \(\boldForm{\function{f}}\), the “vectorial” version of \(\function{f}\), by linearity:

\[ \function{\boldForm{\function{f}}}(\pathVector{p})\defEqualSymbol \indexSum{\basisPathWeight{p}{\sym{i}} \, \function{f}(\basisPath{p}{\sym{i}})}{\sym{i}}{} \]

If \(\function{f}\) is a partial function not defined for certain basis paths \(\basisPath{p}{\sym{i}}\), we define \(\function{f}(\basisPath{p}{\sym{i}}) = \pathVector{0}\), so can simply drop such terms from the sum. This exact same construction will work if \(\function{f}\) outputs linear combinations of basis paths, rather than single basis paths, in other words, for \(\functionSignature{\function{f}}{\compactBasis{\pathVectorSpace{P}}}{\pathVectorSpace{P}}\).

Similarly, for a binary operation \(\function{g}\) defined on basis paths \(\functionSignature{\function{g}}{\tuple{\compactBasis{\pathVectorSpace{P}},\compactBasis{\pathVectorSpace{P}}}}{\compactBasis{\pathVectorSpace{P}}}\), we define vectorial \(\boldForm{\function{g}}\) by bilinearity:

\[ \function{\boldForm{\function{g}}}(\pathVector{p},\pathVector{q})\defEqualSymbol \indexSum{\basisPathWeight{p}{\sym{i}} \, \basisPathWeight{q}{\sym{j}} \, \function{g}(\basisPath{p}{\sym{i}},\basisPath{q}{\sym{j}})}{\sym{i},\sym{j}}{} \]

Again, if \(\function{g}\) is a partial function that is not defined for certain pairs \(\tuple{\basisPath{p}{\sym{i}},\basisPath{q}{\sym{j}}}\), we define \(\function{g}(\basisPath{p}{\sym{i}},\basisPath{q}{\sym{j}}) = \pathVector{0}\). Likewise, this definition works perfectly well if \(\function{g}\) outputs linear combinations rather than basis elements, in other words, for \(\functionSignature{\function{g}}{\tuple{\compactBasis{\pathVectorSpace{P}},\compactBasis{\pathVectorSpace{P}}}}{\pathVectorSpace{P}}\).

Translation

For a lattice quiver, the translation operation \(\pathTranslate{\pathVector{t}}{\pathVector{p}}\), or “\(\pathVector{p}\) translated along \(\pathVector{t}\)”, is defined on basis paths as follows:

\[ \constructor{\pathTranslate{\path{t}}{\path{p}} = \paren{\pathWord{\vert{y}}{\wordSymbol{P}}{\blank}}}{\begin{array}{c} \path{t} = \paren{\pathWord{\vert{x}}{\blank}{\vert{y}}}\\ \path{p} = \paren{\pathWord{\vert{x}}{\wordSymbol{P}}{\blank}} \end{array} } \]

Here, \(\_\) is the symbol for some vertex or cardinal, whose value is irrelevant or implied.

Put in words, \(\pathTranslate{\path{t}}{\path{p}}\) is the path that starts where \(\path{t}\,\)ends, and has the same path word \(\wordSymbol{P}\) as \(\path{p}\). To be defined, \(\path{p}\) must be “tail-to-tail” with \(\path{t}\).

Some examples on basis paths:

The operation of translation will become considerably more subtle when move beyond perfect lattice quivers and consider the phenomenon of cardinal transport – more on that later.

Composition

The composition operation \(\pathCompose{\pathVector{p}}{\pathVector{q}}\), or “\(\pathVector{p}\) composed with \(\pathVector{q}\)”, is defined on basis paths as follows:

\[ \constructor{\pathCompose{\path{p}}{\path{q}} = \paren{\pathWord{\vert{t}}{\concat{\wordSymbol{P} \wordSymbol{Q}}}{\vert{h}}}}{\begin{array}{c} \path{p} = \paren{\pathWord{\vert{t}}{\wordSymbol{P}}{\wbform{\vert{m}}}}\\ \path{q} = \paren{\pathWord{\wbform{\vert{m}}}{\wordSymbol{Q}}{\vert{h}}} \end{array} } \]

This is just the ordinary path composition we have considered before: we can compose \(\path{p}\) with \(\path{q}\) if \(\path{p}\) is “head-to-tail” with \(\path{q}\). The result has the combined path word of \(\path{p}\) and \(\path{q}\).

Some examples on basis paths:

Reversal

The reversal operation \(\pathReverse{\pathVector{p}}\) is defined on basis paths as follows:

\[ \constructor{\pathReverse{\path{p}} = \paren{\pathWord{\vert{y}}{\word{\ncard{\card{c}_{\sym{n}}}}{\card{\ellipsis }}{\ncard{\card{c}_2}}{\ncard{\card{c}_1}}}{\vert{x}}}}{\path{p} = \paren{\pathWord{\vert{x}}{\word{\card{\card{c}_1}}{\card{\card{c}_2}}{\card{\ellipsis }}{\card{\card{c}_{\sym{n}}}}}{\vert{y}}}} \]

Or more simply, if we define the inverse of a path word to be the inversion and reversal of its constituent cardinals:

\[ \constructor{\pathReverse{\path{p}} = \paren{\pathWord{\vert{y}}{\inverted{\wordSymbol{W}}}{\vert{x}}}}{\path{p} = \paren{\pathWord{\vert{x}}{\wordSymbol{W}}{\vert{y}}}} \]

Head and tail

The head and tail are defined as:

\[ \constructor{\begin{array}{c} \pathHeadVector{\path{p}} = \paren{\pathWord{\vert{y}}{\emptyWord{}}{\vert{y}}}\\ \pathTailVector{\path{p}} = \paren{\pathWord{\vert{x}}{\emptyWord{}}{\vert{x}}} \end{array} }{\path{p} = \paren{\pathWord{\vert{x}}{\blank}{\vert{y}}}} \]

The head and tail operations “collapse” a path to the empty path at its head or tail vertex.

Multiset interpretation

There is a simple interpretation of the meaning of path vectors and their linear operations when we take the base field \(K\) to be not a field but the semiring \(\mathbb{N}\): it is the algebra of multiset operations on paths. (Technically we have now passed to a module rather than a vector space). In this picture, a path vector is a collection (a multiset) of paths, and binary operations are applied in every possible way between the two collections being operated on, with the outputs again being placed in a collection. Some of these operations may “fail”, in which case they do not contribute to the resulting collection. The coefficient of a basis path in a vector merely counts its multiplicity in the collection: how many times that path occurs in the collection.

A slightly more flexible interpretation can also be used when the base field \(K\) is the ring \(\mathbb{Z}\): we allow paths in the collection to "cancel" when they occur with opposite "sign". At a stretch, we can even extend this interpretation to the field \(\mathbb{Q}\), where we can imagine sets in which multiplicities of individual basis paths are so large that we are justified in reasoning only about their multiplicity relative to some large absolute count \(N\), neglecting the “shot noise” that occurs for small but non-zero multiplicities.

These interpretations can be a helpful guide to concrete thinking about path vectors, but of course they become nonsensical for fields like \(\mathbb{R}\) or \(\mathbb{C}\), although later we will advance a possible interpretation of the "meaning" of \(\mathbb{C}\) (and its \(\mathbb{Z}\)-analog, the Gaussian integers).

Covariant differences

Equipped with these new algebraic operations, we can generalize our previous forward, backward, and central finite differences in a straightforward way to define the covariant difference of a path vector \(Q\) along a path vector \(P\):

zz
forward covariant difference\(\Delta _P^+ Q=(P_ \bullet -P ) \uarr Q\)
backward covariant difference\(\Delta _P^- Q=(P^ \dag -P^ \bullet ) \uarr Q\)
central covariant difference\(\Delta _P Q=(P^ \dag -P ) \uarr Q=( \Delta _P^++ \Delta _P^- )Q\)

To avoid typesetting clutter, we’ll sometimes write \(\Delta _P Q\) as \(P \Delta Q\), treating \(\Delta\) as a binary operation.

The motivation for the term covariant difference will become clearer when we consider curvature, but for now, the important aspect of these new differences is that can operate on arbitrary path vectors, not just vertex fields.

Let’s see how this works in practice. We’ll construct the forward cardinal edge fields for cardinal \(x\) and compute the various covariant difference of an examples vertex field \(u\).

The simplest case is the central covariant difference of a the forward edge field of \(x\). Previously, we called this \(\Delta _x\), which is written \(e_x^f \Delta\) in our new notation:

The full set of combinations is shown below, with rows corresponding to the forward, backward, symmetric, and antisymmetric edge fields of \(x\), and central three columns corresponding to the central, forward, and backward covariant differences:

We can see some identities manifested by in this table – to point them out we’ll refer to elements of this table as \((row,column)\).

That \((1,3)=-(2,4)\) and \((1,4)=-(2,3)\) is due to the identity \(P \Delta ^ \pm =-P^ \dag \Delta ^ \mp\), which follows directly from the definition. That \((1,2)=-(2,2)\) is due to the identity \(P \Delta =-P^ \dag \Delta\), again easily verified from the definition. That \((3,3)=-(3,4)\) is due to the first identity again, giving \(S \Delta ^+=-S \Delta ^-\) for symmetric path vectors (those satisfying \(S=S^ \dag\)). That \((3,2)=0\) follows from the previous fact, since \(\Delta = \Delta ^++ \Delta ^-\).

Differences of edge fields

What happens when we compute the covariant difference of an edge field rather than a vertex field? For perfect lattice quivers, the behavior is in some sense identical:

The action of the difference \(e_x^f \Delta\) on path vector \(Q\), or in fact an arbitrary difference \(\Delta _P\), is determined by the action of \(\Delta _P\) on the tail vertices of \(Q\).

We can formalize this in the following statement: \(( \Delta _PQ)_ \bullet = \Delta _P(Q_ \bullet )\).

This is not to say that \(\Delta _PQ\) can be recovered from \(( \Delta _PQ)_ \bullet\), as the following example demonstrates:

Since \(p\) consists of two 1-paths that have the same tail but opposite weight, the tail vector \(p_ \bullet\) is zero.

Differences and grades

We’ve seen the covariant differences taken along 1-paths, in other words, elements of \(\mathscr{P} _1\) but what about other grades?

Since vertex fields (elements of \(\mathscr{P} _0\)) have the property that \(P=P^ \dag =P^ \bullet =P_ \bullet\), the differences \((P_ \bullet -P )\) etc. used in the definition of covariant differences are identically zero, meaning the result of these covariant differences will also always be zero. We can verify this on a simple example:


Cardinal transport

Motivation

An important task for quiver geometry is to describe the phenomenon of curvature. Curvature is a well-defined if somewhat intricate concept in continuous geometry – what form could it possibly take in quiver geometry? It turns out to be connected to the presence of what we could call topological crystal defects in a quiver. We'll leave this idea mysterious for now, but we will return to it in time. The task of this section is to explore a simple example of a curved quiver, using a well-worn object: the Möbius strip. Doing this will make vivid the bookkeeping we will need to model arbitrary forms of curvature in more complex cases.

Note: this section requires substantial rework. See [[[here:Summary and roadmap#Curvature]]] for more information.

The Möbius strip

First we’ll introduce the bare connectivity / topology of the strip, without any cardinal structure. As we did for toroidal lattices, the edges that “wrap around” on the sides of the strip are labeled to show how they connect up:

The famous twist of the Möbius strip is captured by the fact that the top right vertex is adjacent to the bottom left vertex via the edge labeled 3, and the top left vertex is adjacent to the bottom right vertex via the edge labeled 1.

Charts

We’ll now introduce the cardinal structure. There will be 4 cardinals present, though we will soon organize them into collections called charts.

The cardinal \(\card{x}\) moves “rightward” on the strip and is present on every vertex, but the \(\rform{\card{r}}\), \(\gform{\card{g}}\), and \(\bform{\card{b}}\) cardinals are defined only on portions of the strip. Notice the important fact that this quiver looks locally like a square lattice quiver: the left half of the strip obeys the path relations \(\word{\card{x}}{\rform{\card{r}}}\pathIso \word{\rform{\card{r}}}{\card{x}}\), similarly \(\word{\card{x}}{\gform{\card{g}}}\pathIso \word{\gform{\card{g}}}{\card{x}}\) and \(\word{\card{x}}{\bform{\card{b}}}\pathIso \word{\bform{\card{b}}}{\card{x}}\) where they are defined.

Note the twist of the Möbius strip is also manifested by the fact that the cardinal \(\bform{\card{b}}\) reverses apparent orientation when passing from the right side of the lattice to the left. There is nothing special about this location in the lattice; this discontinuity exists purely because the way we are drawing the lattice doesn’t match the topology of the lattice itself.

Our three charts will be \(\textcolor{#b50700}{\chart{rx}} = \list{\rform{\card{r}},\card{x}}\), \(\textcolor{#217f00}{\chart{gx}} = \list{\gform{\card{g}},\card{x}}\), \(\textcolor{#165e9d}{\chart{bx}} = \list{\bform{\card{b}},\card{x}}\), their corresponding subgraphs visualized below:

Again, notice the important fact that within each chart we have the ordinary path relations of a square quiver \(\subSize{\squareQuiver }{ \infty }\): \(\word{\card{x}}{\rform{\card{r}}}\pathIso \word{\rform{\card{r}}}{\card{x}}\) for \(\textcolor{#b50700}{\chart{rx}}\), \(\word{\card{x}}{\gform{\card{g}}}\pathIso \word{\gform{\card{g}}}{\card{x}}\) for \(\textcolor{#217f00}{\chart{gx}}\), and \(\word{\card{x}}{\bform{\card{b}}}\pathIso \word{\bform{\card{b}}}{\card{x}}\) for \(\textcolor{#165e9d}{\chart{bx}}\).

Transport atlas

We’ll now focus on the regions where the charts intersect, since this well tell us how the cardinals in each chart relate to one another.

The relations are shown below each intersection. For example, the final relation \(\word{\bform{\card{b}}}\pathIso \word{\rform{\inverted{\card{r}}}}\) represents that for any path in \(\textcolor{#165e9d}{\chart{bx}}\graphRegionIntersectionSymbol \textcolor{#b50700}{\chart{rx}}\), we can rewrite the path word by replacing any \(\bform{\card{b}}\) with \(\rform{\inverted{\card{r}}}\) (and vice versa), and the path will remain unchanged.

We can summarize these relations in a transport atlas for \(\quiver{Q}\), denoted \(\transportAtlas{\quiver{Q}}\):

The vertices of \(\transportAtlas{\quiver{Q}}\) are charts of \(\quiver{Q}\), and the edges of \(\transportAtlas{\quiver{Q}}\) are transitions between charts, labeled with the cardinals from \(\quiver{Q}\) that can achieve them. Additionally, edges of \(\transportAtlas{\quiver{Q}}\) are labeled with cardinal rewrites, which describe how to rewrite cardinals of the tail chart to become cardinals of the head chart when making a transition between two charts. Notice that these are oriented versions of the path relations \(\word{\rform{\card{r}}}\pathIso \word{\gform{\card{g}}},\word{\gform{\card{g}}}\pathIso \word{\bform{\card{b}}},\word{\bform{\card{b}}}\pathIso \word{\rform{\inverted{\card{r}}}}\) we saw above.

Cardinal transport

Now, how do we interpret the non-orientability of the Möbius strip in this discrete setting? To do this we will now introduce the discrete analog of the notion of parallel transport from differential geometry. Parallel transport, which in differential geometry controls how tangent vectors are smoothly transformed as we move smoothly in the base manifold, becomes in the setting of quiver geometry cardinal transport: a process by which we can translate between cardinals in different charts as we follow a path in the quiver. Unlike in the continuous case, this transport is discrete: cardinals are replaced wholesale with other cardinals as described by the transport atlas.

Importantly, transport is associated with an entire path on the base quiver \(\quiver{Q}\), which is associated also with a path on \(\transportAtlas{\quiver{Q}}\). Let's examine an example for the Möbius strip.

We’ll start with an empty path, shown alongside its depiction on the transport atlas (which we’ll call an atlas path). We will gradually extend this path (colored teal), transporting the particular cardinal \(\rform{\card{r}}\) as we go. We’ll illustrate how the cardinal is rewritten as we transition between charts in the atlas. To do this, we’ll superimpose a second, smaller path at the head of the first path to illustrate what it means to take the transported version of \(\rform{\card{r}}\).

Here is the initially empty path \(\path{P_0} = \paren{\pathWord{\textcolor{#b50700}{\chart{rx}}}{\emptyWord{}}{\textcolor{#b50700}{\chart{rx}}}}\), along with the second path illustrating the direction of the (untransported) cardinal \(\rform{\card{r}}\):

We’ll now extend \(\path{P_0}\) by \(\repeatedPower{\card{x}}{2}\) to obtain \(\path{P_1} = \paren{\pathWord{\textcolor{#b50700}{\chart{rx}}}{\repeatedPower{\word{\card{x}}}{2}}{\textcolor{#217f00}{\chart{gx}}}}\).

Notice that the cardinal rewrite, \(\cardinalRewrite{\rform{\card{r}}}{\gform{\card{g}}}\), that occurred corresponds to the edge we traversed in the cardinal atlas.

Again we will extend \(\path{P_1}\) by the \(\repeatedPower{\card{x}}{2}\) to obtain \(\path{P_2} = \paren{\pathWord{\textcolor{#b50700}{\chart{rx}}}{\repeatedPower{\word{\card{x}}}{4}}{\textcolor{#165e9d}{\chart{bx}}}}\).

And again we obtained another cardinal rewrite, this time \(\cardinalRewrite{\gform{\card{g}}}{\bform{\card{b}}}\).

Finally we can extend \(\path{P_2}\) to obtain \(\path{P_3} = \paren{\pathWord{\textcolor{#b50700}{\chart{rx}}}{\repeatedPower{\word{\card{x}}}{6}}{\textcolor{#b50700}{\chart{rx}}}}\):

The final cardinal rewrite obtained was \(\cardinalRewrite{\bform{\card{b}}}{\rform{\inverted{\card{r}}}}\).

Summarizing the rewrites that occured, we see that transporting the cardinal \(\rform{\card{r}}\) around this closed path \(\path{P_3}\) yields the transported cardinal \(\rform{\inverted{\card{r}}}\), and hence the red path at the head is now oriented against the original direction of \(\rform{\card{r}}\). So, while we have an quiver that is formed by the union of square-lattice charts, there is a non-local form of curvature that prevents us from gluing these charts together into a larger chart that describes the entire quiver.

Discrete curvature

We’ve seen how to define cardinal transport on a path in the quiver when we have a collection of charts, which we can organize into a transport atlas that summarizes the relations of their cardinals.

Signed cardinals

Can we formalize the phenomena of curvature we saw for the Möbius strip? To do this, we'll first introduce the notion of a signed cardinal permutation group, or a cardinal group for short, written \(\cardinalGroup{\sym{C}}\). This group is the group of permutations of a set of cardinals \(C\) and their inverses, with the restriction that if a permutation sends \(\rewrite{\card{x}}{\card{y}}\), it must also send \(\rewrite{\inverted{\card{x}}}{\inverted{\card{y}}}\).

For example, taking the cardinals \(\sym{C} = \list{\card{x},\rform{\card{r}}}\), the cardinal group \(\cardinalGroup{\sym{C}}\) is the subgroup of the symmetric group on the set of signed cardinals \(\signed{\sym{C}} = \list{\card{x},\inverted{\card{x}},\rform{\card{r}},\rform{\inverted{\card{r}}}}\) obeying the symmetry mentioned above.

We now introduce the function \(\signedCardinalList\) that yields such signed cardinal sets, so for example we have the aforementioend \(\signed{\sym{C}} = \signedCardinalList(\textcolor{#b50700}{\chart{rx}}) = \list{\card{x},\inverted{\card{x}},\rform{\card{r}},\rform{\inverted{\card{r}}}}\), and the set of signed cardinals of the entire quiver \(\signedCardinalList(\quiver{Q}) = \list{\card{x},\inverted{\card{x}},\rform{\card{r}},\rform{\inverted{\card{r}}},\gform{\card{g}},\gform{\inverted{\card{g}}},\bform{\card{b}},\bform{\inverted{\card{b}}}}\).

We can then refer to the cardinal group for the signed cardinals of \(\quiver{Q}\) as as \(\cardinalGroup{\sym{\quiver{Q}}}\).

Transport map

These definitions out the way, we can now define the transport map, written \(\transportMap{\path{P}}\), for a closed path \(\path{P}\) that begins (and ends) in a given chart \(\chartSymbol _{\sym{i}}\): it is the group element \(\elemOf{\transportMap{\path{P}}}{\cardinalGroup{\sym{\chartSymbol _{\sym{i}}}}}\) that sends cardinals to their transported forms under cardinal transport along \(\path{P}\): the cardinal \(\card{c}\) is sent to \(\transportMap{\path{P}}(\card{c})\).

We've already calculated \(\transportMap{\path{P_3}}(\rform{\card{r}})\) for the particular closed path \(\path{P_3}\) in the Möbius strip, and found it to be \(\transportMap{\path{P_3}}(\rform{\card{r}}) = \rform{\inverted{\card{r}}}\). And since \(\card{x}\) is shared by all charts, we know also that \(\transportMap{\path{P_3}}(\card{x}) = \card{x}\). Hence, \(\transportMap{\path{P_3}}\) is the permutation \(\rform{\card{r}} \leftrightarrow \rform{\inverted{\card{r}}}\), which is an element of \(\cardinalGroup{\sym{\textcolor{#b50700}{\chart{rx}}}}\).

But how can we generalize this definition to give us \(\transportMap{\path{P}}\) for any path \(\path{P}\) that starts in a given chart \(\chartSymbol _{\sym{i}}\)? It should work for paths that aren’t closed paths, in other words, paths that end on an arbitrary chart \(\chartSymbol _{\sym{j}}\). To do this, we might try to enlarge the cardinal group from \(\cardinalGroup{\sym{\textcolor{#b50700}{\chart{rx}}}}\) to \(\cardinalGroup{\sym{\quiver{Q}}}\).

For example, for the path \(\path{P_2} = \paren{\pathWord{\textcolor{#b50700}{\chart{rx}}}{\repeatedPower{\word{\card{x}}}{4}}{\textcolor{#165e9d}{\chart{bx}}}}\) we considered earlier, we might posit that \(\transportMap{\path{P_2}} = \cardinalRewrite{\rform{\card{r}}}{\bform{\card{b}}}\). But this isn't a permutation as such. What happens to \(\bform{\card{b}}\) and \(\gform{\card{g}}\)? These cardinals simply weren't present in the chart \(\textcolor{#b50700}{\chart{rx}}\), so they have no well-defined image under transport.

The way around this is quite simple: we will relax \(\cardinalGroup{\sym{\quiver{Q}}}\) from the status of group to the status of groupoid. What is this groupoid? It is the action groupoid of partially defined permutations, represented as rewrites. We can compose such partial permutations whenever they do not specify contradictory information.

For example, we cannot compose the partial permutations \(\cardinalRewrite{\rform{\card{r}}}{\bform{\card{b}}}\) and \(\cardinalRewrite{\gform{\card{g}}}{\bform{\card{b}}}\), since this resulting object could not be inverted. Similarly we cannot compose \(\cardinalRewrite{\rform{\card{r}}}{\gform{\card{g}}}\) and \(\cardinalRewrite{\rform{\card{r}}}{\bform{\card{b}}}\), since the image of \(\rform{\card{r}}\) would not be uniquely defined. But composing \(\cardinalRewrite{\rform{\card{r}}}{\gform{\card{g}}}\) with \(\cardinalRewrite{\gform{\card{g}}}{\bform{\card{b}}}\) would yield \(\cardinalRewrite{\rform{\card{r}}}{\bform{\card{b}}}\) as expected.

You may notice that this condition for when it is meaningful to compose partially defined permutations is similar to the local uniqueness property of quivers themselves. We will elaborate this connection in a future section, where we will see that rewrite systems give rise to quivers in a natural way, and we'll see that the cardinal groupoid is a rich motivating example.

Curvature quiver

An observant reader might recognize that \(\transportMapSymbol{}\) seemed to exhibit some of the properties of a path valuation of the path quiver \(\forwardPathQuiver{\transportAtlas{}}{\vert{\chartSymbol _{\sym{i}}}}\), which is the path quiver of paths in the transport atlas \(\transportAtlas{\quiver{Q}}\) that begin in the chart \(\chartSymbol _{\sym{i}}\). Let’s proceed boldly to construct the curvature quiver, being the quotient \(\quotient{\forwardPathQuiver{\transportAtlas{}}{\vert{\chartSymbol _{\sym{i}}}}}{\transportMapSymbol{}}\), in which \(\chartSymbol _{\sym{i}}\) plays the role of the origin. For the Möbius strip, we'll choose \(\chartSymbol _{\sym{i}} = \textcolor{#b50700}{\chart{rx}}\).

First, notice the (non-quotiented) atlas path quiver \(\forwardPathQuiver{\transportAtlas{}}{\textcolor{#b50700}{\chart{rx}}}\) is a line lattice:

Let's now see the curvature quiver, which is the quotient \(\quotient{\forwardPathQuiver{\transportAtlas{}}{\textcolor{#b50700}{\chart{rx}}}}{\transportMapSymbol{}}\):

To interpret what we're seeing here: vertices of the curvature quiver are atlas paths, modulo their cardinal rewrites. In other words, all cardinal transport behavior, for a path of any length that starts in \(\textcolor{#b50700}{\chart{rx}}\), is summarized in this single quiver.

More specifically, we see that circling the strip in either direction once we obtain the same cardinal rewrite \(\cardinalRewrite{\rform{\card{r}}}{\rform{\inverted{\card{r}}}}\). Technically the equivalence classes in this quotient include infinitely many paths, being (positive or negative) powers of \(\repeatedPower{\card{x}}{6}\), since we can wind around the strip an arbitrary number of times. Only the first such winding in either direction is indicated in the diagram.

To summarize, we will obtain the rewrite \(\cardinalRewrite{\rform{\card{r}}}{\rform{\card{r}}}\) if we circle an even number of times, and \(\cardinalRewrite{\rform{\card{r}}}{\rform{\inverted{\card{r}}}}\) an odd number of times, which matches the behavior of the familiar Möbius strip that a tangent vector is inverted when we traverse it an odd number of times.

This was a particularly simple example that serves well to illustrate the basic idea about cardinal transport. In the coming sections we will extend this construction to model curvature of the Platonic solids, which will be discrete stand-ins for the sphere.


The cube

Recap

In [[[Cardinal transport]]], we used the Möbius strip as a toy model to take the first steps towards defining curvature in the setting of quiver geometry. We defined the transport atlas, which measured the effects of cardinal transport when moving between charts of the strip. We saw a form of non-local curvature, corresponding to paths that circled the strip an integer number of times, and summarized this curvature in a curvature quiver.

In this section, we will repeat this procedure for a cardinal quiver corresponding to the most familiar of the Platonic solids, the cube.

Note: this section requires substantial rework. See [[[here:Summary and roadmap#Curvature]]] for more information.

Cardinal structure

The underlying graph of a cube is very simple:

However, we will find it more intuitive to work with a subdivided cube, since it allows us to understand its behavior on the individual faces more clearly:

How do we attach a quiver structure to this skeleton? The cardinals we’ll use will correspond to the orbits of permutations of vertices that are associated with particular axes of symmetry that pass through the faces of the cube. These permutations do depend on a particular embedding of the graph into \(\mathbb{R}^3\), but once we have this cardinal structure we will immediately forget this embedding.

Putting these cardinals together we arrive at a cardinal quiver:

This is visually busy! We'll now organize these cardinals into charts.

Charts

The charts we will use will consist of pairs of the cardinals \(\rform{\card{r}},\gform{\card{g}},\bform{\card{b}}\). We’ll pick the charts to correspond to the subgraphs on which those cardinals individually commute pairwise, in other words, in which the cardinal relations are those of \(\subSize{\squareQuiver }{3}\). These charts will correspond to faces of the cube. Notice that the charts split into pairs of opposite faces:

Here is the transport atlas, written \(\transportAtlas{\quiver{A}}\), plotted in 2 and 3 dimensions. Since the vertices correspond to faces of the cube, and edges to shared edges of the cube, the connectivity of this graph corresponds to to the dual polyhedron of the cube, which is an octahedron:

There is a lot going on here, but don’t worry, we will unpack these diagrams!

Cardinal transport via linear algebra

To help us perform cardinal transport calculations, we’ll introduce the notion of a frame vector. This is a gadget that we will use to understand how cardinals are transported as we form paths in the atlas. The frame vector contains 3 components to track the orientations of cardinals as we perform transport. To each individual cardinal we associate a basis vector: \(\hat{r}=\{1,0,0\},\hat{g}=\{0,1,0\},\hat{b}=\{0,0,1\}\), with inverses of cardinals being represented by negation of vectors: \(\hat{\underline{r}}=-\hat{r}=\{-1,0,0\},\hat{\underline{g}}=-\hat{g}=\{0,-1,0\},\hat{\underline{b}}=-\hat{b}=\{0,0,-1\}\). We can see these vectors as living in the vector space \(\mathbb{F} _3^3\), which is a 3-dimensional vector space over the finite field \(\mathbb{F} _3=\{-1,0,1\}\).

This allows us to represent cardinal transport between two compasses via linear maps from this vector space to itself, called frame transformations. For example, for the path \(P=\de{\textcolor{#dc841a}{C_{rg+}}}{\textcolor{#c74883}{C_{rb+}}}\), we have that the transport \(\tau _P\) is given by the parallel rewrite \(\tau _P=\{r \to r,g \to \underline{b}\}\). We’ll write the linear map for this path \(P\) as \(T_P\), giving us \(T_P(\hat{r})=\hat{r}\) and \(T_P(\hat{g})=-\hat{b}\). But where to send \(T_P(\hat{b})\), especially since there is no cardinal \(b\) present in the compass \(\textcolor{#dc841a}{C_{rg+}}\)? We’ll see that we “fill in” the behavior of this map (and all cardinal transport maps) by imposing some desirable properties on this machinery of cardinal transport maps.

We first notice that these maps must compose in a natural way: if we have two composable paths \(\path{P}\) and \(\path{Q}\) in the atlas, then the orientation of a given cardinal after transport along \(\pathCompose{\path{P}}{\path{Q}}\) must clearly be the same its orientation after transport along \(\path{P}\) multiplied by its orientation after transport along \(\path{Q}\). Algebraically, we require \(T_{P \cdot Q}=T_P \cdot T_Q\). In other words, we are asking for a groupoid homomorphism \(\functionSignature{\groupoidFunction{T}}{\pathGroupoid{\transportAtlas{\quiver{A}}}}{\generalLinearGroup{3}{\finiteField{3}}}\) from the path groupoid of the atlas to the group(oid) of matrix multiplication of 3×3 matrices with entries in \(\mathbb{F} _3\) that we use to represent cardinal orientation.

At this point, we should expand on the idea that the atlas \(\transportAtlas{\quiver{A}}\) is a quiver in its own right. We’ll allow ourselves the freedom to label its edges with cardinals in whatever way we like, but we must keep distinct the two kinds of cardinals: cardinals in the atlas, which represent transitions between compasses, and cardinals in the base quiver, which represent the most atomic movements it is possible to make.

In the case of the cardinal atlas of the cube, we will use capital letters to denote the atlas cardinals: \(\card{R},\card{G},\card{B}\). The cardinal \(\card{R}\) will label the transition from \(\textcolor{#dc841a}{C_{rg+}}\) to \(\textcolor{#c74883}{C_{rb+}}\), and similarly for \(\card{G}\) and \(\card{B}\). Our goal will be to construct the homomorphism we seek by defining it only the atlas cardinals, in other words, by defining \(T_R,T_G,T_B\).

To help us define defining \(T_R\), we exploit the fact that it must represent parallel rewrites on two distinct edges edges \(\de{\textcolor{#dc841a}{C_{rg+}}}{\textcolor{#c74883}{C_{rb+}}}\) and \(\de{\textcolor{#c74883}{C_{rb+}}}{\textcolor{#dc841a}{C_{rg-}}}\). The first edge give is what we saw for \(T_P\) above, which was \(T_P(\hat{r})=\hat{r}\) and \(T_P(\hat{g})=-\hat{b}\). The second edge has parallel rewrite \(\{r \to r,b \to c\}\), giving us the action on the remaining basis vector \(T_R(\hat{b})=\hat{g}\). Using the basis \(\{\hat{r},\hat{g},\hat{b}\}\), we now have a matrix representation of \(T_R\); similar calculations yield \(T_G\) and \(T_B\):

\(T_R=\begin{pmatrix}1&0&0\\0&0&1\\0&{\underline{, 1, }}&0\end{pmatrix}\) \(T_G=\begin{pmatrix}0&0&{\underline{, 1, }}\\0&1&0\\1&0&0\end{pmatrix}\) \(T_B=\begin{pmatrix}0&1&0\\{\underline{, 1, }}&0&0\\0&0&1\end{pmatrix}\)

These matrices connect to our earlier notion of a cardinal groupoid. In fact, they are simply a representation of this groupoid, in an identical way to how matrices provide linear representations of ordinary groups.

Curvature quiver

A benefit of having these matrices is that we can compute the curvature quiver using the same matrix machinery that we have used previously to produce lattice quivers. The atlas serves as the fundamental quiver, and the matrices \(T_i\) give us the path value map that we use to compute the quotient \(\compactQuotient{\transportAtlas{\quiver{A}}}{\chart{\sym{i}}}{\function{T}}\), where \(\functionSignature{\function{T}}{\sym{i}}{T_i}\) acts as a cardinal valuation. We’ll use \(\textcolor{#dc841a}{C_{rg+}}\)as the origin chart, but this choice is arbitrary.

Before we construct the curvature quiver, it is interesting to note that the atlas \(\transportAtlas{\quiver{A}}\) is the fundamental quiver of the rhombitrihexagonal lattice, a fragment shown here:

Computing the quotient \(\compactQuotient{\transportAtlas{\quiver{A}}}{\chart{\sym{i}}}{\function{T}}\) for the cardinal atlas under the cardinal valuation \(\sym{T}\), we obtain the curvature quiver, shown below:

It turns out that this 24-vertex curvature quiver is the Cayley quiver of the so-called binary tetrahedral group. Each vertex in the curvature quiver represents an element of the group, and the edges correspond to the actions of a particular set of generators. Each vertex of the atlas lives on 4 cycles, each of length 4, that together make up the whole graph: