# toricQuiver -- the toricQuiver constructor

## Synopsis

• Usage:
Q = toricQuiver E
Q = toricQuiver (E, F)
Q = toricQuiver M
Q = toricQuiver (M, F)
Q = toricQuiver G
Q = toricQuiver (G, F)
Q = toricQuiver T
Q = toricQuiver (T, F)
• Inputs:
• E, a list, of pairs (V1, V2) giving the edges of the quiver in terms of the vertices
• F, a list, the flow on the quiver given as a list of integers
• G, an instance of the type Graph,
• M, , of integers giving the connectivity structure of the quiver
• T, an instance of the type ToricQuiver,
• Optional inputs:
• Flow (missing documentation) => , default value Default, that specifies the flow for the polytope. options are Default, which takes the flow from values in the matrix, Canonical, which sets the flow to 1 for each edge, and Random, which assigns a random integer between 0 and 100 to each edge
• Outputs:

## Description

A toric quiver is a directed graph Q=(Q_0, Q_1) where Q_0 is the set of vertices associated to Q and Q_1 is the set of arrows. Also included in $Q$ is a flow, which associates an integer value to each edge. The canonical flow gives a weight of 1 to each edge.

the ToricQuiver data type is stored as a hash table with the following keys:

• IncidenceMatrix:matrix representation of the connected graph underlying the quiver
• flow: list of integers representing the flow associated to each edge of the quiver
• Q0: the list of vertices
• Q1: the list of edges
• weights: the values on each vertex induced by the flow

 i1 : Q = toricQuiver matrix({{-1,-1,-1,-1},{1,1,0,0},{0,0,1,1}}) o1 = ToricQuiver{flow => {1, 1, 1, 1} } IncidenceMatrix => | -1 -1 -1 -1 | | 1 1 0 0 | | 0 0 1 1 | Q0 => {0, 1, 2} Q1 => {{0, 1}, {0, 1}, {0, 2}, {0, 2}} weights => {-4, 2, 2} o1 : ToricQuiver i2 : Q = toricQuiver(matrix({{-1,-1,-1,-1},{1,1,0,0},{0,0,1,1}}), {3, 1, 0, 5}) o2 = ToricQuiver{flow => {3, 1, 0, 5} } IncidenceMatrix => | -1 -1 -1 -1 | | 1 1 0 0 | | 0 0 1 1 | Q0 => {0, 1, 2} Q1 => {{0, 1}, {0, 1}, {0, 2}, {0, 2}} weights => {-9, 4, 5} o2 : ToricQuiver i3 : Q = toricQuiver {{0,1},{0,1},{0,2},{0,2}} o3 = ToricQuiver{flow => {1, 1, 1, 1} } IncidenceMatrix => | -1 -1 -1 -1 | | 1 1 0 0 | | 0 0 1 1 | Q0 => {0, 1, 2} Q1 => {{0, 1}, {0, 1}, {0, 2}, {0, 2}} weights => {-4, 2, 2} o3 : ToricQuiver i4 : Q = toricQuiver ({{0,1},{0,1},{0,2},{0,2}}, {1,2,3,4}) o4 = ToricQuiver{flow => {1, 2, 3, 4} } IncidenceMatrix => | -1 -1 -1 -1 | | 1 1 0 0 | | 0 0 1 1 | Q0 => {0, 1, 2} Q1 => {{0, 1}, {0, 1}, {0, 2}, {0, 2}} weights => {-10, 3, 7} o4 : ToricQuiver i5 : Q = toricQuiver(matrix({{-1,-1,-1,-1},{1,1,0,0},{0,0,1,1}}), Flow=>"Canonical") o5 = ToricQuiver{flow => {1, 1, 1, 1} } IncidenceMatrix => | -1 -1 -1 -1 | | 1 1 0 0 | | 0 0 1 1 | Q0 => {0, 1, 2} Q1 => {{0, 1}, {0, 1}, {0, 2}, {0, 2}} weights => {-4, 2, 2} o5 : ToricQuiver i6 : Q = toricQuiver(matrix({{-1,-1,-1,-1},{0,0,1,1},{1,1,0,0}}), Flow=>"Random") o6 = ToricQuiver{flow => {24, 65, 71, 72} } IncidenceMatrix => | -1 -1 -1 -1 | | 0 0 1 1 | | 1 1 0 0 | Q0 => {0, 1, 2} Q1 => {{0, 2}, {0, 2}, {0, 1}, {0, 1}} weights => {-232, 143, 89} o6 : ToricQuiver i7 : R = toricQuiver(Q) o7 = ToricQuiver{flow => {24, 65, 71, 72} } IncidenceMatrix => | -1 -1 -1 -1 | | 0 0 1 1 | | 1 1 0 0 | Q0 => {0, 1, 2} Q1 => {{0, 2}, {0, 2}, {0, 1}, {0, 1}} weights => {-232, 143, 89} o7 : ToricQuiver i8 : R = toricQuiver(Q, {1,2,3,4}) o8 = ToricQuiver{flow => {1, 2, 3, 4} } IncidenceMatrix => | -1 -1 -1 -1 | | 0 0 1 1 | | 1 1 0 0 | Q0 => {0, 1, 2} Q1 => {{0, 2}, {0, 2}, {0, 1}, {0, 1}} weights => {-10, 7, 3} o8 : ToricQuiver