Communicated by Notices Associate Editor Han-Bom Moon
1.Cluster Algebras
Cluster algebras were defined by Sergey Fomin and Andrei Zelevinsky 9 in 2001, with the goal of providing a combinatorial framework for problems related to total positivity and canonical bases in Lie theory. Since then, various connections have been developed between the theory of cluster algebras and many areas of mathematics, including representation theory and categorification, integrable systems, mathematical physics, symplectic and algebraic geometry, and higher Teichmüller theory, to name just a few. The goal of this article is to introduce weaves as a technique to construct cluster algebra structures on the coordinate rings of certain algebraic varieties that appear naturally in the study of Legendrian links and in Lie theory, and which generalize many of the motivating examples of cluster algebras.
1.1.Cluster algebras
Cluster algebras are a special type of commutative algebras that enjoy nice algebraic and combinatorial properties. In contrast with the commutative algebras we encounter in a first algebra course, or even in an algebraic geometry class, cluster algebras are typically not explicitly given by generators and relations. Rather, cluster algebras are defined to be subalgebras of a field of rational functions $\mathcal{F}\cong \mathbb{C}(x_1, \dots , x_r)$ specified by a set of generators $S \subseteq \mathcal{F}$, known as the set of cluster variables. While the set $S$ may be infinite, it can be expressed as a union of distinguished finite subsets of the same cardinality $r$, which is the transcendence degree of the field $\mathcal{F}$. Each of these finite subsets is called a cluster. A key property of cluster algebras is that, in order to know all of the cluster variables, it is enough to know a single cluster and a certain combinatorial datum together with a rule, called mutation, for how to get all the other such pairs from it. Thus, a cluster algebra is defined by two pieces of data:
1.
A finite set $\mathbf{x} = \{x_1, \dots , x_r\}$, called an initial cluster, consisting of algebraically independent elements that form a free generating set of the field $\mathcal{F}$.
2.
A complementary piece of data given by a quiver (i.e., an oriented graph) $Q$ without loops or oriented $2$-cycles, whose vertex set is identified with $\mathbf{x}$.
The pair $\Sigma \coloneq (\mathbf{x}, Q)$ is known as an initial seed, and it determines a cluster algebra $\mathcal{A}(\Sigma )$: from the initial seed $\Sigma$ all other clusters are obtained as follows. For $k = 1, \dots , r$, define a new element $x'_k \in \mathcal{F}$ by the equation:
where by $i \to k$ and $k \to j$ we mean arrows in the quiver $Q$. The condition that $Q$ has no loops is imposed so that $x_k$ does not appear on the right-hand side of 1, while the condition that $Q$ has no $2$-cycles is imposed so that no element $x_i$ divides the right-hand side of 1. Now we create a new cluster $\mu _k(\mathbf{x})$ by replacing in $\mathbf{x}$ the element $x_k$ by the element $x'_k$, that is, $\mu _k(\mathbf{x}) = (\mathbf{x}\setminus \{x_k\})\cup \{x'_k\}$. Note that this gives $r$ new clusters: $\mu _1(\mathbf{x}), \dots , \mu _r(\mathbf{x})$. Each one of these new clusters is known as a mutation of the original cluster $\mathbf{x}$.
Now we want to mutate each of the clusters $\mu _1(\mathbf{x}), \dots , \mu _r(\mathbf{x})$, and so on. However, we also need to update the quiver $Q$ in a compatible way every time we mutate. This is given by the procedure of quiver mutation. Given a vertex $k$ of $Q$, the mutation $\mu _k(Q)$ is a new quiver obtained from $Q$ by the following three-step procedure:
(i)
For each pair of arrows $j \to k \to i$, insert a new arrow $j \to i$.
(ii)
Reverse all arrows incident with $k$.
(iii)
The previous two steps may have created $2$-cycles. Remove a maximal collection of these.
With this in hand, we start with an initial seed $\Sigma = (\mathbf{x}, Q)$; we create $r$ new seeds $\mu _i(\Sigma ) = (\mu _i(\mathbf{x}), \mu _i(Q))$,$i = 1, \dots , r$; from each one of these seeds we create more seeds, and so on. As an exercise, the reader may prove that mutation is involutive: $\mu _k(\mu _k(\Sigma )) = \Sigma$. By definition, the cluster algebra $\mathcal{A}(\mathbf{x}, Q)$ is the subalgebra of $\mathcal{F}$ generated by all clusters that can be obtained from $\mathbf{x}$ by iterated mutations. Note that, since mutation is involutive, the choice of an initial seed is not important: the cluster algebra associated with an arbitrary seed $\Sigma '$ which can be obtained from $\Sigma$ by finitely many mutations coincides with $\mathcal{A}(\mathbf{x}, Q)$.
Variations. Before giving examples of cluster algebras, let us explain variations of the definition that are commonly used in the literature. First, given our initial cluster $\mathbf{x}$, we may declare some elements of it to be unmutable, or frozen. We are not allowed to mutate at these elements. As a consequence, these elements will belong to every cluster. To reflect this, we declare the corresponding vertices of $Q$ to be frozen; we are not allowed to mutate at these. A quiver $Q$ with frozen vertices is also known as an ice quiver. Second, if $x_k$ is a frozen variable, it is common to adjoin the element $x_k^{-1}$ to the cluster algebra $\mathcal{A}$. In this case, we say that the frozen variable $x_k$ is invertible. Below, we indicate frozen variables by putting them in a box; invertible frozen variables will, in addition, be colored blue.
1.2.The geometry of cluster algebras
From the definition, each cluster variable is a rational function in the initial cluster. The following is one of the key early results in the theory of cluster algebras.
The Laurent phenomenon was proved by Fomin and Zelevinsky in 9. One way to interpret this result is that, for every cluster $\mathbf{x}= \{x_1, \dots , x_r\}$, we have
where both algebras are considered inside our fixed field $\mathcal{F}$. Note that, since $x_1$, …, $x_r \in \mathcal{A}$, we actually have $\mathbb{C}[x_1, \dots , x_r] \subseteq \mathcal{A}\subseteq \mathbb{C}[x_1^{\pm 1}, \dots , x_r^{\pm 1}]$, so if we adjoin to $\mathcal{A}$ the inverse to the element $x_1\cdots x_r$, we have:
The equation 2 has a neat algebro-geometric interpretation. To each finitely generated commutative algebra $\mathcal{A}$ with no nonzero nilpotent elements, algebraic geometry associates a space $\operatorname {Spec}(\mathcal{A})$, called an affine algebraic variety, whose algebra of regular functions to $\mathbb{C}$ is precisely $\mathcal{A}$. For example, if $\mathcal{A}= \mathbb{C}[x_1, \dots , x_n]/(p_1, \dots , p_k)$ then $\operatorname {Spec}(\mathcal{A})$ consists of the points in $\mathbb{C}^n$ where the polynomials $p_1$, …, $p_k$ all vanish. As another example, if $\mathcal{A}= \mathbb{C}[x_1^{\pm 1}, \dots , x_n^{\pm 1}]$ then $\operatorname {Spec}(\mathcal{A})$ is $(\mathbb{C}^{\times })^{n}$. The condition that the algebra $\mathbb{C}[\operatorname {Spec}(\mathcal{A})]$ is $\mathcal{A}$ determines $\operatorname {Spec}(\mathcal{A})$ uniquely: if we have an affine algebraic variety $X$ whose algebra of regular functions is $\mathcal{A}$, then $X$ is isomorphic to $\operatorname {Spec}(\mathcal{A})$.
Then, 2 tells us that the set of $p \in \operatorname {Spec}(\mathcal{A})$ for which all $x_1(p)$, …, $x_r(p)$ are nonzero, which is open in $\operatorname {Spec}(\mathcal{A})$, is isomorphic to a torus $(\mathbb{C}^{\times })^{r}$. Thus, each cluster $\mathbf{x}$ defines an open torus $\mathbb{T}_{\mathbf{x}} \subseteq \operatorname {Spec}(\mathcal{A})$, known as a cluster torus.
Example. We go back to Example 1.1: $\operatorname {Spec}(\mathcal{A}) = \mathrm{Mat}(2 \times 2, \mathbb{C})$. We have a cluster $\{a_{11}, a_{12}, a_{21}, \det \}$. Then, Theorem 1.2 tells us that the set of invertible $(2 \times 2$)-matrices with $a_{11}, a_{12}, a_{21} \neq 0$ is isomorphic to a torus $(\mathbb{C}^{\times })^{4}$. Indeed, one can check that the following map is an isomorphism:
$$\begin{align*} (\mathbb{C}^{\times })^{4} \to \{M \in \operatorname {GL}(2, \mathbb{C}) \mid a_{11}, a_{12}, a_{21} \neq 0 \}, \\ (x, y, z, w) \mapsto \left(\begin{matrix} x & y \\ z & x^{-1}(w + yz) \end{matrix}\right). \end{align*}$$
The union of all the cluster tori is typically properly contained in $\operatorname {Spec}(\mathcal{A})$. The Laurent phenomenon also suggests to consider the upper cluster algebra
where the intersection is taken inside our fixed field $\mathcal{F}$. By Theorem 1.2, $\mathcal{A}\subseteq \mathcal{U}$. In some cases, these two algebras coincide, but this does not always happen. As we will see next, from a geometric point of view it is more natural to consider the algebra $\mathcal{U}$. Note that, by the same reasoning as with $\mathcal{A}$, we have that every cluster $\mathbf{x}$ defines a cluster torus $\mathbb{T}_{\mathbf{x}} \subseteq \operatorname {Spec}(\mathcal{U})$.
1.3.Constructing cluster structures
Given a commutative algebra $R$, how to decide whether it has an (upper) cluster algebra structure? Since cluster algebras are subalgebras of fields, a necessary condition on $R$ to have a cluster algebra structure is that it is an integral domain. Beyond that, this seems like a daunting task. We would need to:
1.
Construct a set $S \subseteq R$ of cluster variables.
2.
Partition $S$ into clusters.
3.
Find a mutation rule to move between the clusters.
The Laurent phenomenon, Theorem 1.2, gives us a geometric way to move forward. If $R$ is to be an (upper) cluster algebra, then $\operatorname {Spec}(R)$ must contain cluster tori. So a first task is to find candidates for these cluster tori. After finding these tori, we must find a system of coordinates on them: these will be the candidates for the cluster variables. When this is done, the most difficult part is to find a mutation rule that allows us to mutate every coordinate of a cluster torus which is not an invertible element of $R$, for we can define the invertible elements to be frozen variables. This is not an easy task. However, the following result tells us that we do not necessarily have to find all (possibly infinitely many!) cluster tori: we only need to find one of them and all of its possible one-step mutations.
Let us say a few words on the assumptions of the theorem. The assumption that the algebra $R$ is normal is made so as to be able to use an algebraic version of Hartogs’s theorem from complex analysis, that says that a function on a normal algebraic variety that is regular outside of codimension $2$ must be regular everywhere. This condition is satisfied if, for example, $\operatorname {Spec}(R)$ is smooth. The coprimeness conditions on the variables are made so as to ensure that both the cluster $\mathbf{x}$ and its one-step mutations generate the fraction field $\mathcal{F}$ of $R$. As we will see below, the starfish lemma is a powerful tool when trying to find cluster algebra structures on a given commutative algebra.
1.4.Why?
Let us mention a few reasons why you would be interested in constructing a cluster structure on a given commutative algebra. As mentioned above, one of Fomin and Zelevinsky’s original motivations was to provide an algebraic framework for the study of total positivity. The $\mathrm{Mat}(2 \times 2, \mathbb{C})$ example is a good illustration of this. Let us say that a $2 \times 2$-matrix$A$ is totally positive if all of its minors are positive real numbers. Since $a_{22} = \frac{\det + a_{12}a_{21}}{a_{11}}$, to check total positivity it is enough to verify that the elements of the cluster given in Example 1.1 give positive numbers: we do not have to check all minors. In general, the algebra of functions on $\mathrm{Mat}(n \times n, \mathbb{C})$ admits a cluster structure, with each cluster containing $n^2$ elements. To check total positivity of a matrix it is sufficient to check that the elements of a single cluster, i.e., $n^2$ functions, evaluate to positive numbers, which is more efficient than verifying that all the $\sum _{k = 1}^{n}\binom{n}{k}^{2}$ minors of the matrix are positive.
More generally, given a cluster algebra $\mathcal{A}$ one can define the totally positive space $\operatorname {Spec}(\mathcal{A})^{+}$ to be the set of points $p \in \operatorname {Spec}(\mathcal{A})$ such that $x(p) > 0$ for every cluster variable $x$. It is a highly nontrivial result that it is enough to verify that $x(p) > 0$ for all elements in a single cluster, 13. Thus, having a cluster structure not only allows us to define a notion of positivity, it also provides (many!) efficient tests for it.
Another motivation of Fomin and Zelevisnky was the study of (semi)canonical bases in Lie theory. Much later, several families of bases for quite general (upper) cluster algebras $\mathcal{A}$ (resp. $\mathcal{U}$) were proved to exist in 1317; see 18 for a survey. Each of these is a vector space basis of $\mathcal{A}$ (resp. $\mathcal{U}$) including all cluster variables; the basis constructed in 13 also has positive structure constants.
In general, having a cluster structure on $R$ comes with a wealth of combinatorial properties that allow to explicitly study the geometry and topology of the variety $\operatorname {Spec}(R)$.
2.Points in the Projective Line
In this section, we find cluster structures on varieties defined from configurations of points. Let $\mathbb{P}^{1}$ denote the complex projective space of dimension $1$, that is, the set of lines passing through the origin in $\mathbb{C}^{2}$. We will use homogeneous coordinates and denote by $[a:b] \in \mathbb{P}^{1}$ the line passing through the origin and $(a,b) \neq (0,0)$. Thus, $[a:b] = [\lambda a: \lambda b]$ for any $0 \neq \lambda \in \mathbb{C}$, i.e. we can simultaneously rescale the coordinates without changing the point in $\mathbb{P}^{1}$. We will denote $\mathbf{0} = [1:0], \mathbf{\infty } \coloneq [0:1] \in \mathbb{P}^{1}$.
Now let $m > 0$ and consider the space $X(m)$ consisting of $(m+1)$-tuples of elements of $\mathbb{P}^{1}$,$(\mathbf{x}_0, \dots , \mathbf{x}_{m}) \in (\mathbb{P}^{1})^{m+1}$, satisfying:
so that $X(2) \cong \mathbb{P}^{1}\setminus \{\mathbf{0}, \mathbf{\infty }\} \cong \mathbb{C}^{\times }$, the space of nonzero complex numbers. These are both algebraic varieties. Let us show that $X(m)$ is an algebraic variety for all $m$.
Since we are required to have $\mathbf{x}_1 \neq [1:0]$, we must have $\mathbf{x}_1 = [a_1: b_1]$ with $b_1 \neq 0$. Rescaling, we have that $\mathbf{x}_1 = [z_1:1]$ for a unique $z_1 \in \mathbb{C}$. Now, since $(z_1, 1)$ and $(-1, 0)$Footnote1 form a basis of $\mathbb{C}^{2}$,$\mathbf{x}_2 = [a_2:b_2]$, where $(a_2, b_2) = \lambda _1 (z_1, 1) + \lambda _2(-1, 0)$. Since $\mathbf{x}_2 \neq \mathbf{x}_1$, we have $\lambda _2 \neq 0$. Rescaling again, we may assume $\lambda _2 = 1$ and, renaming $\lambda _1 \eqcolon z_2$, we have $\mathbf{x}_2 = [z_1z_2-1:z_2]$. Similarly, $\mathbf{x}_3$ is represented by an element in $\mathbb{C}^2$ of the form $z_3(z_1z_2 - 1, z_2) + (-z_1, -1)$ for a unique $z_3 \in \mathbb{C}$. Continuing recursively, we obtain a family of polynomials defined by $p_{-1} \equiv 0, p_{0} \equiv 1$, and
1
The choice of sign is made so that the matrix $\left(\begin{matrix} z_1 & -1 \\ 1 & 0\end{matrix}\right)$ has determinant $1$.
We see that $X(m)$ is an affine algebraic variety: it is given by the zeros of a polynomial equation. Note also that $\mathbf{x}_{m} = \mathbf{\infty }$ implies that $\mathbf{x}_{m-1} \neq \mathbf{\infty }$ and, conversely, if $\mathbf{x}_{m-1} \neq \mathbf{\infty }$ we obtain an element of $X(m)$ by setting $\mathbf{x}_{m} = \mathbf{\infty }$. We thus obtain an equivalent description of the variety $X(m)$:
which realizes $X(m)$ as an open subvariety of $\mathbb{C}^{m-1}$. As an open subvariety of a $\mathbb{C}^{m-1}$,$X(m)$ is smooth of dimension $m-1$ and
So that $\mathbf{x} \coloneq \{p_1, \dots , p_{m-1}\}$ seems to be a cluster in $\mathbb{C}[X(m)]$, with mutations given by $\mu _{1}(\mathbf{x}) = \{z_2, p_2, \dots , p_{m-1}\}, \mu _2(\mathbf{x}) = \{p_1, z_3, \dots , p_{m-1}\}$ and $\mu _i(\mathbf{x}) = \{p_1, \dots , p_{i-1}, z_{i+1}, p_{i+1}, \dots , p_{m-1}\}$. Note that since $p_{m-1}$ is invertible, we may consider it frozen. In order to verify that this is the mutation rule for a cluster structure on $\mathbb{C}[X(m)]$, we need to verify that there exists a quiver $Q$ providing a mutation rule of the form 1 that coincides with 4. From 4 we can see that the neighbors of $p_{i-1}$ must be $p_{i}$ and $p_{i-2}$, so that $Q$ exists and is as follows:
Since $X(m)$ is smooth, $\mathbb{C}[X(m)]$ is normal. We are then in position to apply the starfish lemma 1.3 to conclude that the upper cluster algebra $\mathcal{U}(\mathbf{x}, Q)$ is contained in $\mathbb{C}[X(m)]$. On the other hand, the algebra $\mathbb{C}[X(m)]$ is generated by $z_1$, …, $z_{m-1}$ and the invertible variable $p_{m-1}$. These all belong to $\mathcal{A}(\mathbf{x}, Q)$. We then conclude that $\mathcal{U}(\mathbf{x}, Q) \subseteq \mathbb{C}[X(m)] \subseteq \mathcal{A}(\mathbf{x}, Q)$ and thus these are all equalities.
By virtue of it being a cluster variety, the variety $X(m)$ must contain a collection of open tori $\mathbb{T}_{\mathbf{x}}$, one for each cluster $\mathbf{x}$. Let us study these cluster tori, starting with the initial cluster $\mathbf{x} = \{p_1, \dots , p_{m-2}, p_{m-1}\}$. By definition, $\mathbb{T}_{\mathbf{x}}$ consists of the points $(z_1, \dots , z_{m-1}) \in \mathbb{C}^{m-1}$ such that $p_i(z_1, \dots , z_{m-1}) \neq 0$ for all $i = 1, \dots , m-1$. Recalling that $\mathbf{x}_{i} = [p_i(z_1, \dots , z_i) : p_{i-1}(z_2, \dots , z_i)]$ and that $\infty = [0:1]$, we obtain:
Let us represent this torus pictorially. First, we represent the elements of $X(m)$ graphically, as follows:
5$$\begin{equation} \vcenter{\img[][200pt][30pt][{\renewcommand{\arraystretch}{1} \setlength{\unitlength}{1.0pt} \setlength{\extrarowheight}{0.0pt}\begin{tikzcd} \draw[dashed] (0,0) to (0,1) to (7,1) to (7, 0) -- cycle; \node at (0.5, 0.4) {\mathbf{0}}; \draw[line width = 0.5mm, color=blue] (1,0) to (1,1); \node at (1.5, 0.4) {\mathbf{x}_1}; \draw[line width = 0.5mm, color=blue] (2,0) to (2,1); \node at (2.5, 0.5) {\dots}; \draw[line width = 0.5mm, color=blue] (3,0) to (3,1); \node at (3.5, 0.4) {\mathbf{x}_{m-3}}; \draw[line width = 0.5mm, color=blue] (4,0) to (4,1); \node at (4.5, 0.4) {\mathbf{x}_{m-2}}; \draw[line width = 0.5mm, color=blue] (5,0) to (5,1); \node at (5.5, 0.4) {\mathbf{x}_{m-1}}; \draw[line width = 0.5mm, color=blue] (6,0) to (6,1); \node at (6.5, 0.4) {\infty}; \end{tikzcd}}]{Images/img044c2793b1358b450b0cd544493faf97.svg}} \cssId{texmlid7}{\tag{5}} \end{equation}$$
Here, two points in $\mathbb{P}^1$ labeling adjacent regions separated by a blue edge are required to be different. Since in the torus $\mathbb{T}_{\mathbf{x}}$ we are forced to have $\mathbf{x}_i \neq \infty$ for every $i = 0, \dots , m-1$, we can represent this torus in a similar way:
so that now every point $\mathbf{x}_0 = \mathbf{0}, \mathbf{x}_1, \dots , \mathbf{x}_{m-1}$ is separated from $\mathbf{x}_{m} = \infty$ by a blue edge. Thus, this diagram represents the points $(\mathbf{x}_0, \dots , \mathbf{x}_m) \in X(m)$ such that $\mathbf{x}_i \neq \infty$ for all $i = 0, \dots , m-1$, which is precisely the cluster torus $\mathbb{T}_{\mathbf{x}}$.
Let us now examine the mutation $\mathbf{y} = \mu _{m-2}(\mathbf{x}) = \{p_1, \dots , p_{m-3}, z_{m-1}, p_{m-1}\}$. In the torus $\mathbb{T}_{\mathbf{y}}$, we have $p_1(z) \neq 0, \dots , p_{m-3}(z) \neq 0, z_{m-1} \neq 0, p_{m-1} \neq 0$. As before, the nonvanishing conditions on $p$’s mean that $\mathbf{x}_1 \neq \infty , \dots , \mathbf{x}_{m-3} \neq \infty$,$\mathbf{x}_{m-1} \neq \infty$. What does the condition $z_{m-1} \neq 0$ mean? By definition, $\mathbf{x}_i$ represents the line passing through the origin and a point $x_i \in \mathbb{C}^2$. The points $x_i$ are defined recursively by $x_0 = (1,0)$,$x_{-1} = (0,1)$ and $x_{i} = z_{i}x_{i-1} - x_{i-2}$. Thus, $x_{m-1} = z_{m-1}x_{m-2} - x_{m-3}$, and $z_{m-1} \neq 0$ if and only if the elements $x_{m-1}, x_{m-3} \in \mathbb{C}^2$ are linearly independent, that is, if and only if