Macaulay2 » Documentation
Packages » HyperplaneArrangements :: graphic(List,List,PolynomialRing)
next | previous | forward | backward | up | index | toc

graphic(List,List,PolynomialRing) -- make a graphic arrangement

Synopsis

Description

A graph $G$ is specified by a list $V$ of vertices and a list $E$ of pairs of vertices. When $V$ is not specified, it is assumed to be the list $1, 2, \ldots, n$, where $n$ is the largest integer appearing as a vertex of $E$. The graphic arrangement $A(G)$ of $G$ is the subarrangement of the type $A_{n-1}$ arrangement with hyperplanes $x_i-x_j$ for each edge $\{i,j\}$ of the graph $G$.

i1 : G = {{1,2},{2,3},{3,4},{4,1}}; -- a four-cycle
i2 : AG = graphic G

o2 = {- x  + x , - x  + x , - x  + x , x  - x }
         1    2     2    3     3    4   1    4

o2 : Hyperplane Arrangement 
i3 : rank AG -- the number of vertices minus number of components

o3 = 3
i4 : ring AG

o4 = QQ[x ..x ]
         1   4

o4 : PolynomialRing

One can also specify the ambient ring.

i5 : AG' = graphic(G,QQ[x,y,z,w]) -- four variables because there are 4 vertices

o5 = {- x + y, - y + z, - z + w, x - w}

o5 : Hyperplane Arrangement 
i6 : ring AG'

o6 = QQ[x..z, w]

o6 : PolynomialRing

Occasionally, one might want to give labels to the vertices. These labels can be anything!

i7 : V = {"a", "b", "c", "d"};
i8 : E = {{"a","b"}, {"b", "c"}, {"c","d"}, {"d","a"}};
i9 : graphic(E, V)

o9 = {- x  + x , - x  + x , - x  + x , x  - x }
         1    2     2    3     3    4   1    4

o9 : Hyperplane Arrangement 

The vertices can also be the variables of a polynomial ring.

i10 : R = QQ[a,b,c,d];
i11 : arr = graphic({{a,b},{b,c},{c,d},{d,a}}, gens R, R)

o11 = {- a + b, - b + c, - c + d, a - d}

o11 : Hyperplane Arrangement 
i12 : ring arr === R

o12 = true

Loops and parallel edges are allowed.

i13 : graphic({{1,2}, {1,2}})

o13 = {- x  + x , - x  + x }
          1    2     1    2

o13 : Hyperplane Arrangement 
i14 : graphic({{1,1}, {1,2}})

o14 = {0, - x  + x }
             1    2

o14 : Hyperplane Arrangement 

See also

Ways to use this method: