1 Introduction

Dimer systems have been studied since the 1960s when they were introduced to model close-packed diatomic molecules, and research on them has flourished with a renewed vigor since the 1990s (see e.g. [30]).

A dimer configuration on a graph \(\mathcal {G}=(\mathcal {V},\mathcal {E})\) is a perfect matching on \(\mathcal {G}\): that is, a subset of edges \({\mathfrak {m}}\subseteq \mathcal {E}\) such that every vertex \(v\in \mathcal {V}\) is covered by exactly one edge of \({\mathfrak {m}}\); for this reason \({\mathfrak {m}}\) is also referred to as a dimer cover. If \(\mathcal {G}\) is a finite undirected graph equipped with non-negative edge weights \((\nu _e)_{e\in \mathcal {E}}\), a probability measure on dimer covers is given by

$$\begin{aligned} \mathbb {P}_\mathcal {G}({\mathfrak {m}}) \equiv \frac{\nu _\mathcal {G}({\mathfrak {m}})}{{{\textsf {\textit{Z}}}}_\mathcal {G}},\quad \text {with } \nu _\mathcal {G}({\mathfrak {m}})\equiv \prod _{e\in {\mathfrak {m}}}\nu _e \quad \text {and} \quad {{\textsf {\textit{Z}}}}_\mathcal {G}\equiv \sum _{{\mathfrak {m}}} \nu _\mathcal {G}({\mathfrak {m}}). \end{aligned}$$

The non-normalized measure \(\nu _\mathcal {G}\) is the dimer measure on the \(\nu \)-weighted graph \(\mathcal {G}\). The normalizing constant \({{\textsf {\textit{Z}}}}_\mathcal {G}\) is the associated dimer partition function, with \(\log {{\textsf {\textit{Z}}}}_\mathcal {G}\) the free energy and \(|\mathcal {V}|^{-1}\log {{\textsf {\textit{Z}}}}_\mathcal {G}\) (free energy per vertex) the free energy density.

An ordered pair of independent dimer configurations gives (by superposition) a double-dimer configuration, consisting of even-length loops and doubled edges. The double-dimer partition function is \(\mathcal {Z}_\mathcal {G}=({{\textsf {\textit{Z}}}}_\mathcal {G})^2\). Double-dimer configurations on planar graphs are closely related to the Gaussian free field [29, 31].

1.1 Square lattice dimer partition function

Kasteleyn, Temperley, and Fisher [16, 25, 46] showed how to compute the dimer partition function \({{\textsf {\textit{Z}}}}_\mathcal {G}\) on a finite planar graph \(\mathcal {G}\) as the Pfaffian of a certain signed adjacency matrix, now known as the Kasteleyn matrix. For graphs embedded on a torus or other low-genus surface, \({{\textsf {\textit{Z}}}}_\mathcal {G}\) can be computed by combining a small number of Pfaffians [18, 25, 45]; we provide further background in Sect. 2.1. Using this method, Kasteleyn [25] showed that on the unweighted square lattice, both the \(m\times n\) rectangle and \(m\times n\) torus have asymptotic free energy density

$$\begin{aligned} \mathbf {f}_0\equiv \lim _{\begin{array}{c} m,n\rightarrow \infty ,\\ mn\text { even} \end{array}} (mn)^{-1} \log {{\textsf {\textit{Z}}}}_\mathcal {G}= G/\pi , \end{aligned}$$

where \({G\equiv \sum _{j\ge 0} (-1)^j/(2j+1)^2= 0.915965594\ldots }\) is Catalan’s constant. (If mn is odd, clearly \({{\textsf {\textit{Z}}}}_\mathcal {G}=0\).) In the case of m and n both even, Fisher [16] calculated the free energy of the \(m\times n\) rectangle to be given more precisely by

$$\begin{aligned} \log {{\textsf {\textit{Z}}}}= & {} mn\,\mathbf {f}_0- 2(m+n)\,\mathbf {f}_1+ O(1),\quad \text {with}\\ \mathbf {f}_1= & {} {\tfrac{1}{4}}\log (1+2^{1/2}) -{\tfrac{1}{2}}G/\pi \end{aligned}$$

—the second term in the expansion of \(\log {{\textsf {\textit{Z}}}}\) is linear in the rectangle perimeter, so we interpret \(\mathbf {f}_1\) as the surface free energy density while \(\mathbf {f}_0\) is the bulk free energy density.

Ferdinand [14] refined the calculation further for both rectangle and torus, finding a constant-order correction term which depends on both the “shape” of the region (the choice of rectangle or torus boundary conditions, as well as the aspect ratio \({{\tfrac{m}{n}}}\)) as well as the parities of m and n. For mn even, Ferdinand found

$$\begin{aligned} \log {{\textsf {\textit{Z}}}}= & {} mn\,\mathbf {f}_0+ \text {(perimeter)}\,\mathbf {f}_1+ \text {(corners)}\,\mathbf {f}\lrcorner + {\textsf {fsc}}^\mathrm {topology}_{(-1)^{m+n}}({\tfrac{n}{m}}) +o(1) \nonumber \\= & {} {\left\{ \begin{array}{ll} mn\,\mathbf {f}_0+ {\textsf {fsc}}^\mathrm {tor}_{(-1)^{m+n}} ({\tfrac{n}{m}}) + o(1), &{} (m\times n \text { torus});\\ mn\,\mathbf {f}_0+ 2(m+n)\,\mathbf {f}_1+4 \mathbf {f}\lrcorner +{\textsf {fsc}}^\mathrm {rect}_{(-1)^{m+n}}({\tfrac{n}{m}})+o(1) &{} (m\times n\text { rectangle}) \end{array}\right. } \nonumber \\ \end{aligned}$$

where \(\mathbf {f}\lrcorner \) is a constant which may be interpreted as the free energy per corner, and the four functions \({\textsf {fsc}}^\mathrm {tor}_{\pm 1},{\textsf {fsc}}^\mathrm {rect}_{\pm 1}\) are explicit analytic functions of the aspect ratio \({{n}/{m}}\). These functions \({\textsf {fsc}}\) are called the finite-size corrections to the free energy: they contain information about long-range properties of the dimer system (see e.g. [1, 6, 44]). Figure 1 shows these finite-size corrections for the \(m\times n\) torus. We shall see (Fig. 5) that if we expand our consideration slightly to all near-rectilinear tori—tori which are rotated with respect to the coordinate axis, or which deviate slightly from being perfectly rectangular—then in fact seven \({\textsf {fsc}}\) curves arise in the limit.

Fig. 1
figure 1

Unweighted square lattice dimers. Finite-size corrections \({\textsf {fsc}}\) for rectilinear \(m\times n\) tori, shown as a function of logarithmic aspect ratio \(\log (n/m)\). Curves are labeled according to parity of (mn)

Kasteleyn, Fisher, and Ferdinand also carried out these calculations for the weighted square lattice where the horizontal edges receive weight a while the vertical edges receive weight b. In this setting they found (for mn even)

$$\begin{aligned} \log {{\textsf {\textit{Z}}}}=mn\,\mathbf {f}_0|_{a,b} +(\text {perimeter})\,\mathbf {f}_1|_{a,b} +(\text {corners})\,\mathbf {f}\lrcorner |_{a,b} +{\textsf {fsc}}^\mathrm {topology}_{(-1)^{m+n}}({\tfrac{n b}{m a}}) +o(1) \end{aligned}$$

where the free energy coefficients \(\mathbf {f}_0,\mathbf {f}_1,\mathbf {f}\lrcorner \) depend on the weights ab in a complicated manner, but the finite-size correction \({{\textsf {fsc}}^\mathrm {topology}_{(-1)^{m+n}}({\tfrac{n b}{m a}})}\) is the same function as appearing in the expansion (1) for the unweighted square lattice, now applied to the “effective” aspect ratio \({\tfrac{n b}{m a}}\). In this sense the finite-size corrections are seen to be robust to the particulars of the model.

Finite-size corrections for square lattice dimers have also been explicitly computed on the cylinder [4, eq. (46)], [22], Möbius band [4, eq. (48)], [22], and Klein bottle [22]. In each of these topologies, for each given choice of side length parities, the finite-size correction is an analytic function of the aspect ratio [22]. See [23, 24] for a discussion of these finite-size corrections in the context of logarithmic conformal field theory.

1.2 Characteristic polynomial and spectral curve

In this article we consider dimer systems defined on two broad classes of critically weighted \(\mathbb {Z}^2\)-periodic planar lattices—rather loosely, a bipartite and a non-bipartite class. We assume throughout that the lattices are connected, with each edge occurring with positive probability. Within each class, we compute an asymptotic expansion of the dimer free energy on large toric quotient graphs—including “skew” or “helical” (non-rectilinear) tori—and explicitly determine the finite-size correction.

On non-bipartite lattices, the finite-size correction depends on a single parameter \(\tau \) in the complex upper half-plane describing the conformal shape of the domain—\({{\tau }/{i}}\) generalizes the “effective aspect ratio” \({\tfrac{nb}{ma}}\) appearing in (2). On bipartite lattices, the correction depends further on whether the finite torus is globally bipartite or non-bipartite, as well as on a phase parameter \((\zeta ,\xi )\in \mathbb {T}^2\) which generalizes the signs \(((-1)^m,(-1)^n)\) appearing in (2). The functional form of the correction is universal within each class.

More precisely, the bipartite and non-bipartite graph classes which we consider throughout this paper are characterized by algebraic conditions on the dimer characteristic polynomial. This is a certain Laurent polynomial P(zw), whose definition depends only on the combinatorics of the fundamental domain, the \(1\times 1\) toric quotient of the \(\mathbb {Z}^2\)-periodic graph.

On the unit torus \(\mathbb {T}^2\equiv \{(z,w)\in \mathbb {C}:|z|=|w|=1\}\), the characteristic polynomial P(zw) is non-negative. Many large-scale quantities of interest in the dimer model can be computed from P: for example the free energy per fundamental domain is given by half the logarithmic Mahler measure

$$\begin{aligned} \mathbf {f}_0\equiv {\tfrac{1}{2}}\iint \limits _{\mathbb {T}^2} \log P(z,w) \, \frac{dz}{2\pi iz}\,\frac{dw}{2\pi iw}. \end{aligned}$$

Edge-edge correlations are obtained from the Fourier transform of \(P(z,w)^{-1}\) [28].

Criticality in dimer models is characterized by the intersection of the spectral curve

$$\begin{aligned} \{(z,w)\in \mathbb {C}^2:P(z,w)=0\}, \end{aligned}$$

with the unit torus \(\mathbb {T}^2\). Dimer models on bipartite graphs have been quite deeply understood, in part via the classification of the spectral curve as a simple Harnack curve [3234]. The bipartition of the graph gives a natural factorization \(P(z,w)=Q(z,w)Q(z^{-1},w^{-1})\) with Q a real polynomial, so that the factors Q(zw) and \(Q(z^{-1},w^{-1})\) are complex conjugates for \((z,w)\in \mathbb {T}^2\) (see Sect. 2.2). It is known that if the zero set of Q on \(\mathbb {T}^2\) is non-empty, then it consists of a pair of complex conjugate zeroes—which either are distinct, or coincide at a real root of Q. In the case of distinct zeroes, or zeroes coinciding at a real root at which Q has a node, the model is critical or liquid, with polynomial decay of correlations. [A node is a point \((z_0,w_0)\) at which the polynomial is a product of two distinct lines \((b_1(z-z_0)+c_1(w-w_0))(b_2(z-z_0)+c_2(w-w_0))\) plus higher-order terms.] In all other cases the model is off-critical, and belongs (depending on the geometry of the spectral curve) either to a gaseous (exponential decay of correlations) or frozen (no large-scale fluctuations) phase.

Far less is known about the spectral curves of non-bipartite dimer systems. In this setting it is conjectured that the characteristic polynomial P(zw) is either non-vanishing on the unit torus, or is vanishing to second order at a single real node which is one of the four points \((\pm 1,\pm 1)\). This conjecture has been proved for the Fisher lattice with edge weights corresponding to any bi-periodic ferromagnetic Ising model on the square lattice [37]. For lattices satisfying this condition one can show (see [33]) that frozen phases do not exist: when the spectral curve is disjoint from the unit torus the model is gaseous (off-critical), and when it intersects at a real node the model is liquid (critical). In this paper we assume this condition and illustrate its implications for critical dimer systems.

1.3 Statement of results

Let \({\mathbb {L}}\) be a weighted \(\mathbb {Z}^2\)-periodic quasi-transitive (that is, the quotient \({\mathbb {L}}/\mathbb {Z}^2\) is finite) planar graph. We consider dimers on large toric quotients of \({\mathbb {L}}\), as follows: let \({\text {End}_+(\mathbb {Z}^2)}\) be the set of integer \(2\times 2\) matrices

$$\begin{aligned} E\equiv \begin{pmatrix} u &{} v \\ x &{} y \end{pmatrix} \quad \text {with } \det E>0. \end{aligned}$$

Any \(E\in {\text {End}_+(\mathbb {Z}^2)}\) defines the toric graph \({\mathbb {L}}_E\equiv {\mathbb {L}}/(\mathbb {Z}^2 E)\), the quotient of \({\mathbb {L}}\) modulo translation by the vectors in the lattice \(\mathbb {Z}^2 E\equiv \{ a(u,v) + b(x,y) : a,b\in \mathbb {Z}\}\). We take asymptotics with E tending to infinity while being “well-shaped” in the sense that

$$\begin{aligned} \begin{array}{l} \det E \text { tends to infinity}\\ \quad \text {while remaining within a constant factor of both } \Vert (u,v)\Vert ^2 \text { and } \Vert (x,y)\Vert ^2. \end{array} \end{aligned}$$

1.3.1 Finite-size correction to the characteristic polynomial

The \(1\times 1\) toric quotient \({\mathbb {L}}_I\) (with I the 2-dimensional identity matrix) is called the fundamental domain. We assume it has k vertices with k even: as a consequence (see Sect. 5.2), \({\mathbb {L}}\) is equipped with a periodic Kasteleyn orientation in which the contour loop surrounding each face has an odd number of clockwise-oriented edges [27]. (In Sect. 5 we discuss how to handle k odd, for which such orientations do not exist.) The dimer characteristic polynomial P(zw) is the determinant of a certain k-dimensional matrix K(zw) associated with the fundamental domain, which may be considered as the discrete Fourier transform of the (infinite-dimensional) weighted signed adjacency matrix of \({\mathbb {L}}\). For a brief review and formal definitions see Sect. 2.1.

Of course for given \({\mathbb {L}}\) there is some freedom in the choice of fundamental domain: in particular any \({\mathbb {L}}_E\) may be regarded as the fundamental domain, with corresponding characteristic polynomial \(P_E(\zeta ,\xi )\) which is the determinant of a \((k\det E)\)-dimensional matrix \(K_E(\zeta ,\xi )\). It can be obtained from P(zw) by the double product formula

$$\begin{aligned} P_E(\zeta ,\xi ) = \prod _{\begin{array}{c} z^u w^v=\zeta \\ z^x w^y=\xi \end{array}} P(z,w), \end{aligned}$$

(see e.g. [8, 28, 33]). If the characteristic polynomial P is non-vanishing on the unit torus, it is easily seen from (6) (see Theorem 2, below) that, in the limit (5), \(\log P_E(\zeta ,\xi ) = (\det E)\,2\mathbf {f}_0+o(1)\) uniformly over \((\zeta ,\xi )\in \mathbb {T}^2\), which readily implies (using e.g. Proposition 2.2) the free energy expansion \(\log {{\textsf {\textit{Z}}}}_E=(\det E)\,\mathbf {f}_0+o(1)\).

In this paper we compute an asymptotic expansion of \(P_E(\zeta ,\xi )\) (\(\zeta ,\xi \in \mathbb {T}\)) in the more interesting critical case where P(zw) is vanishing to second order at nodes on the unit torus. Formally, let us say that P has a positive node at \((e^{i{\texttt {r} }_0},e^{i{\texttt {s} }_0})\in \mathbb {T}^2\) if it is vanishing there to second order with positive-definite Hessian matrix:

$$\begin{aligned} \begin{array}{l} P(e^{\pi i({\texttt {r} }_0+{\texttt {r} })},e^{\pi i({\texttt {s} }_0+{\texttt {s} })}) = \pi ^2\langle ({\texttt {r} },{\texttt {s} }), H ({\texttt {r} },{\texttt {s} })\rangle + O(\Vert ({\texttt {r} },{\texttt {s} })\Vert ^3) \quad \text {where }\\ \displaystyle H = \begin{pmatrix} A_z&{} B \\ B &{} A_w\end{pmatrix} \quad \text {with } A_z,A_w>0 \text { and } D\equiv \sqrt{A_zA_w-B^2}>0. \end{array} \end{aligned}$$

In the bipartite case (see above), distinct conjugate zeroes of Q correspond to positive nodes of P; see (21). If instead Q has a real node, the Harnack property implies that this node is positive (up to global sign change). We associate to H the parameter

$$\begin{aligned} \tau [H] \equiv (-B+i D)/A_w\in \mathbb {H}\equiv \{z\in \mathbb {C}:{{\mathrm{Im\,}}}z>0\}. \end{aligned}$$

Theorem 1

Suppose P(zw) is an analytic non-negative function defined on the unit torus \(\mathbb {T}^2\), non-vanishing except at positive nodes \((z_j,w_j)\) (\(1\le j\le \ell \)) with associated Hessians \(H_j\). Then, in the limit (5), for \(\zeta ,\xi \in \mathbb {T}\) we have

$$\begin{aligned} \log P_E(\zeta ,\xi ) = 2(\det E)\,\mathbf {f}_0+\sum _{j=1}^\ell 2\log {\varvec{\Xi }}\bigg ( \frac{\zeta }{z_j^u w_j^v}, \frac{\xi }{z_j^x w_j^y} \,\Big |\, \tau _j\bigg ) + O\bigg ( \frac{1}{n^{2/5} \varvec{r}} \bigg ) \end{aligned}$$

where \(\mathbf {f}_0\) is given by (3), \(\varvec{r}\) is the minimum Euclidean distance between (1, 1) and the set of points \((\zeta /(z_j^u w_j^v),\xi /(z_j^x w_j^y))\), \(\tau _j\) is the parameter (8) associated to the transformed Hessian \((E^t)^{-1}H_j E^{-1}\), and \({\varvec{\Xi }}\) is the explicit function (31).

In the two settings we consider (see Sect. 1.2), the spectral curve of the characteristic polynomial either intersects the unit torus at a single positive node \((z_0,w_0)=(\pm 1,\pm 1)\) with Hessian H, or at conjugate positive nodes \((z_0,w_0)\ne (\overline{z}_0,\overline{w}_0)\) with the same Hessian H (see (21)). These conjugate nodes may occur at the same point, in which case P vanishes to fourth order; however in this case we can still treat each node separately in Theorem 1. In either case we define

$$\begin{aligned} \displaystyle \tau _E\equiv & {} \frac{x+y\,\tau [H]}{u+v\,\tau [H]} =\tau [(E^t)^{-1} H E^{-1}] \in \mathbb {H}\quad \text {the} \ conformal \ shape \ of \ {\mathbb {L}}_E; \nonumber \\ (\zeta _E,\xi _E)\equiv & {} (e^{\pi i {\texttt {r} }_E},e^{\pi i {\texttt {s} }_E}) \equiv (z_0^u w_0^v,z_0^x w_0^y)\in \mathbb {T}^2 \quad \text {the} \ domain \ phase \ of \ {\mathbb {L}}_E. \end{aligned}$$

where \({\texttt {r} }_E,{\texttt {s} }_E\) are chosen to lie in the interval \((-1,1]\). (In the case of two distinct nodes, for most purposes it suffices to take the phase to be defined modulo complex conjugation. For one of our results, Theorem 4, we specify a distinction between the nodes to have a more explicit statement.)

1.3.2 Finite-size correction to the dimer partition function

By the method of Pfaffians [18, 25, 45] (see also [9]), the dimer partition function on \({\mathbb {L}}_E\) is a signed combination of the four square roots \(P_E(\pm 1,\pm 1)^{1/2}\):

$$\begin{aligned} {{\textsf {\textit{Z}}}}_E = {\tfrac{1}{2}}[ \pm P_E(+1,+1)^{1/2} \pm P_E(+1,-1)^{1/2} \pm P_E(-1,+1)^{1/2} \pm P_E(-1,-1)^{1/2}] \end{aligned}$$

(a review is given in Sect. 2.1; see in particular Proposition 2.2). In Sect. 3 we explain how to choose the signs to deduce from Theorem 1 the finite-size correction to the dimer partition function for the two classes of critically weighted graphs described above:

Theorem 2

If the spectral curve \(\{P(z,w)=0\}\) is disjoint from the unit torus, then \(\log {{\textsf {\textit{Z}}}}_E= (\det E)\,\mathbf {f}_0+o(1)\).

  1. (a)

    If the spectral curve intersects the unit torus at a single real positive node with associated Hessian H, then

    $$\begin{aligned} \log {{\textsf {\textit{Z}}}}_E = (\det E)\,\mathbf {f}_0+ {{\textsf {fsc} }_1}(\tau _E) + o(1) \end{aligned}$$

    where \(\tau _E\) is as in (10), and \({{\textsf {fsc} }_1}\equiv \log {{\textsf {FSC} }_1}\) with

    $$\begin{aligned} \textstyle {{\textsf {FSC} }_1}(\tau ) \equiv {\tfrac{1}{2}} \sum _{\zeta ,\xi =\pm 1}{\varvec{\Xi }}(\zeta ,\xi |\tau ). \end{aligned}$$
  2. (b)

    Suppose the fundamental domain is bipartite, with dimer characteristic polynomial \(P(z,w)=Q(z,w)\,Q({{1}/{z}},{{1}/{w}})\) non-vanishing on \(\mathbb {T}^2\) except at distinct conjugate positive nodes \((z_0,w_0)\ne (\overline{z}_0,\overline{w}_0)\) with associated Hessian H.Footnote 1 Then

    $$\begin{aligned} \log {{\textsf {\textit{Z}}}}_E = (\det E)\,\mathbf {f}_0+ {{\textsf {fsc} }_2}(\zeta _E,\xi _E|\tau _E) + o(1) \end{aligned}$$

    where \(\tau _E,\zeta _E,\xi _E\) are as in (10), and \({{\textsf {fsc} }_2}\equiv \log {{\textsf {FSC} }_2}\) with

    $$\begin{aligned} \textstyle {{\textsf {FSC} }_2}(\zeta ,\xi |\tau ) \equiv {\tfrac{1}{2}} \sum _{z,w=\pm 1} {\varvec{\Xi }}( z\zeta ,w\xi |\tau )^2 \end{aligned}$$

    which has the equivalent expression

    $$\begin{aligned} {{\textsf {FSC} }_2}(e^{\pi i {\texttt {r} }},e^{\pi i {\texttt {s} }}|\tau )= \frac{\sum _{\varvec{e}\in \mathbb {Z}^2} \exp \{ -{\tfrac{\pi }{2}} g_\tau ( \varvec{e}-({\texttt {s} },-{\texttt {r} }) ) \}}{ |{\eta }(\tau )|^2(2{{\mathrm{Im\,}}}\tau )^{1/2} } \end{aligned}$$

    where for \(\tau \in \mathbb {H}\), \(g_\tau \) is the quadratic form

    $$\begin{aligned} g_\tau (\varvec{e}) \equiv (\tau _{{\mathrm {im}}})^{-1}(e_1^2 + 2 \tau _{{\mathrm {re}}}e_1 e_2 + |\tau |^2 e_2^2) \end{aligned}$$

    and \({\eta }\) is the Dedekind eta function.

  3. (c)

    Suppose the fundamental domain is bipartite, with dimer characteristic polynomial \(P(z,w)=Q(z,w)\,Q({{1}/{z}},{{1}/{w}})\) non-vanishing on \(\mathbb {T}^2\) except at a single (real) root at which Q has a positive node with associated Hessian H. Then

    $$\begin{aligned} \log {{\textsf {\textit{Z}}}}_E = (\det E)\,\mathbf {f}_0+ {{\textsf {fsc} }_2}(1,1|\tau _E) + o(1) \end{aligned}$$

    where \(\tau _E\) is as in (10).

  4. (d)

    If the spectral curve intersects the unit torus at two real positive nodes \((z_1,w_1)\) and \((z_2,w_2)\) with the same associated Hessian H, then

    $$\begin{aligned} \log {{\textsf {\textit{Z}}}}_E =(\det E)\,\mathbf {f}_0+{{\textsf {fsc} }_3}(\zeta _E,\xi _E|\tau _E) +o(1) \end{aligned}$$

    where, defining \((z_0,w_0)\equiv (z_1z_2,w_1w_2)\), the parameters \(\tau _E,\zeta _E,\xi _E\) are as in (10), and \({{\textsf {fsc} }_3}\equiv \log {{\textsf {FSC} }_3}\) with

    $$\begin{aligned} \textstyle {{\textsf {FSC} }_3}(\zeta ,\xi |\tau ) \equiv {\tfrac{1}{2}}\sum _{z,w=\pm 1} {\varvec{\Xi }}(z,w|\tau ){\varvec{\Xi }}(z\zeta ,w\xi |\tau ) \end{aligned}$$

    We further have the simplifications

    $$\begin{aligned} {{\textsf {FSC} }_3}(+1,+1|\tau )= & {} {{\textsf {FSC} }_2}(+1,+1|\tau )\\ {{\textsf {FSC} }_3}(+1,-1|\tau )= & {} {\varvec{\Xi }}(-1,-1|\tau ){\varvec{\Xi }}(-1,+1|\tau ) ={\varvec{\Xi }}(-1,+1|2\tau )\\ {{\textsf {FSC} }_3}(-1,+1|\tau )= & {} {\varvec{\Xi }}(-1,-1|\tau ){\varvec{\Xi }}(+1,-1|\tau ) ={\varvec{\Xi }}(+1,-1|{{\tau }/{2}})\\ {{\textsf {FSC} }_3}(-1,-1|\tau )= & {} {\varvec{\Xi }}(-1,+1|\tau ){\varvec{\Xi }}(+1,-1|\tau ) ={\varvec{\Xi }}(+1,-1 |{\tfrac{1+\tau }{2}}) \end{aligned}$$

See Fig. 2 for plots of these functions \({{\textsf {fsc} }_1}\), \({{\textsf {fsc} }_2}\), and \({{\textsf {fsc} }_3}\). In [33, Thm. 5.1] it is shown that for bipartite graphs on tori, case d does not occur. However, for graphs on tori that are locally bipartite but not globally bipartite, such as an odd \(\times \) even grid on a torus, we see in Sect. 5.1 that this case does occur.

We emphasize again that the functional form of the finite-size correction is universal within each class: the finite-size correction \({\varvec{\Xi }}\) to the characteristic polynomial (Theorem 1) is an explicit function depending only on the three parameters \(\zeta ,\xi ,\tau \). Thus in Theorem 2a the graph structure enters into the correction only through \(\tau \) (that is, only through the Hessian associated with the real node). In the bipartite setting (Theorem 2b–d), the finite-size correction depends on the graph structure only through \(\tau \) and \((\zeta _E,\xi _E)\).

Fig. 2
figure 2

Free energy finite-size corrections as a function of \(\tau =x+i y\in \mathbb {H}\). In these plots, \(-1\le x\le 1\) and \(0<y\le 1\), and the identically zero function is indicated by the horizontal plane. There is one \({{\textsf {fsc} }_1}\) function, there are four \({{\textsf {fsc} }_3}\) functions, and there is a two-parameter family of \({{\textsf {fsc} }_2}\) functions. Panels c through i show the seven functions for unweighted square-grid tori; their restrictions to the pure imaginary line \(\tau =i\rho \) are the curves in Fig. 5 (shown there as a function of \(\log \rho \)). Panels b and d show two of the functions relevant to unweighted honeycomb graph tori; see Fig. 4. The function shown in panel a is relevant to the Ising model; see Fig. 7

As we explain in Sect. 3.3, the parameter \(\tau \) has a simple interpretation as the half-period ratio of the torus with respect to its “natural” or “conformal” embedding. Consequently the finite-size corrections are invariant under modular transformations. For example, for the unweighted honeycomb graph, the \(m\times n\) torus (Fig. 3) has \(\tau = i\rho \) where \(\rho ={{n}/{(m\sqrt{3})}}\) is the effective or geometric aspect ratio.

Fig. 3
figure 3

The \(4\times 3\) toric quotient of the honeycomb graph, with effective aspect ratio \(\rho ={{\sqrt{3}}/{4}}\) (also the actual aspect ratio of this geometric embedding) in the unweighted setting

The domain phase parameter \((\zeta _E,\xi _E)\) is of a quite different nature: it generalizes the signs \((-1)^m,(-1)^n\) appearing in (2), and depends sensitively on the entries of E. For example, for dimers on the honeycomb lattice, the finite-size correction for \(m\times n\) quotients (Fig. 3) was computed by Boutillier and de Tilière in the case \(n\equiv 0 \hbox { mod }3\) [2]. Figure 4 shows this correction for the unweighted honeycomb lattice as a function of the logarithmic effective aspect ratio \(\log \rho \), together with three other curves—one showing the different correction which applies for \(n\not \equiv 0\hbox { mod }3\), and the remaining two showing corrections which can be found on toric quotients which are nearly but not quite rectilinear. Some discussion of this is given in Sect. 4.4.

Fig. 4
figure 4

Unweighted honeycomb graph dimers. Finite-size corrections \({{\textsf {fsc} }_2}(\zeta _E,\xi _E|\tau )\) for near-rectilinear toric quotients, shown as a function of logarithmic aspect ratio \(\log \rho \), labelled according to value of \((u-v,x-y)/3\) modulo 1 (see Sect. 4.4)

Fig. 5
figure 5

Unweighted square lattice dimers. Finite-size corrections \({\textsf {fsc}}\) for near-rectilinear toric quotients, shown as a function of the logarithmic aspect ratio \(\log \rho \). There are seven distinct curves, depending on parities of vectors defining the torus (see Sect. 5.1). (It is easy to distinguish only five of the curves, see Fig. 16 for a magnified view.)

In the square lattice we find a similar phase sensitivity, but we find a dependence also on the global bipartiteness of the torus (for example, the \(4\times 3\) torus in the square lattice is non-bipartite). As a result, for near-rectilinear tori the finite-size correction lies asymptotically on any of seven curves, Fig. 5—four curves for bipartite tori and three for nonbipartite. Further discussion of this is given in Sect. 5.

1.3.3 Non-contractible loops on the torus

Recall that the superposition of two independent dimer covers of a planar graph \(\mathcal {G}\) produces a double-dimer configuration consisting of even-length loops and doubled edges. Alternatively, a single dimer cover of \(\mathcal {G}\) may be mapped to a double-dimer configuration by superposition with a fixed reference matching \(\overline{{\mathfrak {m}}}\). It is of interest to study the non-contractible loops arising from this process on toric graphs. In addition to the finite-size corrections to the overall dimer partition functions \({{\textsf {\textit{Z}}}}_E\) (Theorem 2), we are able to obtain some finer information on the distribution of the partition function between dimer covers of different homological types, as follows.

Non-contractible loops in the bipartite setting. If \(\mathcal {G}\) is bipartite, a double-dimer configuration resulting from the (ordered) pair \(({\mathfrak {m}},{\mathfrak {m}}')\) is naturally regarded as an oriented loop configuration \({\mathfrak {m}}\ominus {\mathfrak {m}}'\), with edges from \({\mathfrak {m}}\) oriented black-to-white and edges from \({\mathfrak {m}}'\) oriented white-to-black. We then let

$$\begin{aligned} {{\mathrm{{{\textsf {wind}\,}}}}}{\mathfrak {m}}\ominus {\mathfrak {m}}' \equiv ({\textsf {w} }_\mathrm {h},{\textsf {w} }_\mathrm {v})\in \mathbb {Z}^2 \end{aligned}$$

denote the homology class (or “winding numbers”) of the oriented loop configuration.Footnote 2

For \(m\times n\) toric quotients of the unweighted honeycomb tiling (Fig. 3), it was shown in [2] that for \(n\in 3\mathbb {Z}\), the winding \({{\mathrm{{{\textsf {wind}\,}}}}}{\mathfrak {m}}\ominus \overline{{\mathfrak {m}}}\) of a dimer cover \({\mathfrak {m}}\) with respect to a fixed reference matching \(\overline{{\mathfrak {m}}}\) is asymptotically distributed as a pair of independent discrete Gaussians, with variances determined by the torus aspect ratio. The proof is based on a perturbative analysis of the finite-size correction, and we generalize their method to prove

Theorem 3

In the setting of Theorem 2b, let \({\mathfrak {m}}_E\) be a fixed reference matching of \({\mathbb {L}}_E\) obtained by periodically extending a matching \({\mathfrak {m}}_0\) of the fundamental domain. Then the winding \({{\mathrm{{{\textsf {wind}\,}}}}}{\mathfrak {m}}\ominus {\mathfrak {m}}_E\in \mathbb {Z}^2\) asymptotically fluctuates as a discrete Gaussian:

$$\begin{aligned}&\displaystyle \mathbb {P}({{\mathrm{{{\textsf {wind}\,}}}}}{\mathfrak {m}}\ominus {\mathfrak {m}}_E = \varvec{e}) \rightarrow \frac{\exp \{ -{\tfrac{\pi }{2}} (\varvec{e}-{\varvec{\mu }_E})^t {\varvec{\Sigma }_{E}^{-1}}(\varvec{e}-{\varvec{\mu }_E}) \}}{\sum _{\varvec{e}'\in \mathbb {Z}^2} \exp \{ -{\tfrac{\pi }{2}} (\varvec{e}'-{\varvec{\mu }_E})^t {\varvec{\Sigma }_{E}^{-1}}(\varvec{e}'-{\varvec{\mu }_E}) \} }\quad \text {with} \\&\displaystyle \text {covariance } {\varvec{\Sigma }_E}\!=\!\frac{(E^t)^{-1}HE^{-1}}{(\det H)^{1/2}/\det E},\quad \text {center } {\varvec{\mu }_E}\!\equiv \! \pm {\tfrac{1}{\pi }}(\arg \xi _E,-\arg \zeta _E) \mod \mathbb {Z}^2. \end{aligned}$$

A more explicit version of Theorem 3 is given as Theorem 4, stated and proved in Sect. 4. Dubédat [12, Thm. 7] proved a version of Theorem 3 for dimers on bipartite isoradial graphs.

Non-contractible loops in the non-bipartite setting. In the non-bipartite setting, the loop configuration \({\mathfrak {m}}\oplus {\mathfrak {m}}'\) is not oriented, and we take the winding \({{\mathrm{{{\textsf {wind}\,}}}}}{\mathfrak {m}}\oplus {\mathfrak {m}}'\) to be defined only as an element of \((\mathbb {Z}/2\mathbb {Z})^2\). In the setting of Theorem 2a, we also compute (Proposition 3.1) the finite-size corrections to the partition functions \({{\textsf {\textit{Z}}}}_E^{\,{\texttt {r} }{\texttt {s} }}\) of the four homology classes indexed by \(({\texttt {r} },{\texttt {s} })\in \{{\texttt {0} },{\texttt {1} }\}^2\).

To note one particular motivation, we remark that this winding is of particular interest in the context of Ising models. On a graph \(\mathcal {G}\,{=}\,(\mathcal {V},\mathcal {E})\) with real-valued parameters \((\beta _e)_{e\in \mathcal {E}}\) (coupling constants), we define the associated Ising model to be the probability measure on spin configurations \(\underline{{\sigma }}\in \{\pm 1\}^{\mathcal {V}}\) given by

$$\begin{aligned} {}^\ddagger {\mathbb {P}}_\mathcal {G}(\underline{{\sigma }}) \equiv \frac{1}{{}^\ddagger {{\textsf {\textit{Z}}}}_\mathcal {G}}\prod _{e=(uv)\in \mathcal {E}} \exp \{ \beta _e\sigma _u\sigma _v \}. \end{aligned}$$

On the square lattice with vertical and horizontal coupling constants \(\beta _a\) and \(\beta _b\) (“Onsager’s lattice”), the bulk free energy density \({}^\ddagger \mathbf {f}_0\) was first calculated by Onsager [42]. Kasteleyn [26] and Fisher [17] rederived this result by exhibiting a correspondence between the Ising model on a planar (weighted) graph \(\mathcal {G}\) and the dimer model on various “decorated” versions \(\mathcal {G}'\) of \(\mathcal {G}\).

Fig. 6
figure 6

Fisher correspondence between the Ising model on the triangular lattice and the dimer model on the Fisher lattice. The Ising spins \(\pm 1\) (yellow and blue) live on the dodecagonal faces of the Fisher lattice. The Fisher lattice is given the reference matching \(\overline{{\mathfrak {m}}}\) consisting of all between-triangle edges (black). Take the unique dimer configuration \({\mathfrak {m}}\) which contains a between-triangle edge if and only if it separates like spins (red): then the loops of \({\mathfrak {m}}\oplus {\mathfrak {m}}\) trace the spin domain boundaries in the low-temperature expansion of the Ising model. The Ising and dimer partition functions are related in (14) (color figure online)

For instance, the Ising model on the triangular lattice with coupling constants \(\beta _a,\beta _b,\beta _c\) corresponds—via its low-temperature expansion—to the dimer model on the Fisher lattice with unit weights on the within-triangle edges, and weights \((a,b,c)=(e^{2\beta _a},e^{2\beta _b},e^{2\beta _c})\) on the edges between triangles (Fig. 6). To calculate the Ising partition function \({}^\ddagger {{\textsf {\textit{Z}}}}_{m,n}\) on the \(m\times n\) torus in the triangular lattice, take the \(m\times n\) torus in the Fisher lattice, and fix the reference matching \(\overline{{\mathfrak {m}}}\) consisting of all (abc)-edges. Let \({{\textsf {\textit{Z}}}}^{\,{\texttt {0} }{\texttt {0} }}[a,b,c]\) denote the partition function of dimer configurations \({\mathfrak {m}}\) with \({{\mathrm{{{\textsf {wind}\,}}}}}{\mathfrak {m}}\oplus \overline{{\mathfrak {m}}}=({\texttt {0} },{\texttt {0} })\): then

$$\begin{aligned} {}^\ddagger {{\textsf {\textit{Z}}}}_{m,n} = \frac{2\cdot {{\textsf {\textit{Z}}}}^{{\texttt {0} }{\texttt {0} }}_{m,n} \left[ e^{2\beta _a},e^{2\beta _b},e^{2\beta _c}\right] }{\prod _e e^{\beta _e}}. \end{aligned}$$

At \(\beta _c=0\) (\(c=1\)), the Ising model on the triangular lattice reduces to the Ising model on Onsager’s lattice. Criticality for \(\mathbb {Z}^2\)-periodic Ising models has been characterized in terms of the intersection of the Fisher lattice spectral curve with the unit torus ([36, 37], see also [7]).

Using (14) and similar correspondences, the asymptotic expansion of the Ising partition function has been computed in numerous contexts [5, 11, 15, 21, 38, 41, 43, 47]. In particular, for Onsager’s lattice on the ferromagnetic critical line

$$\begin{aligned} a+b+1=ab \quad \text {with } \ a=e^{2\beta _a} \text { and }b=e^{2\beta _b}, \end{aligned}$$

the Ising free energy on \(m\times n\) graphs has the expansion (compare (2))

$$\begin{aligned} \log {}^\ddagger {{\textsf {\textit{Z}}}}_{m,n} \!=\! mn\,{}^\ddagger \mathbf {f}_0+ (\text {perimeter})\,{}^\ddagger \mathbf {f}_1+ (\text {corners})\,{}^\ddagger \mathbf {f}\lrcorner + {}^\ddagger {\textsf {fsc}}^{\mathrm {topology}} \left( {\tfrac{n}{m}} {\tfrac{a^2-1}{2a}}\right) +o(1), \end{aligned}$$

where \({}^\ddagger {\textsf {fsc}}\) is an explicit analytic function depending on the topology (rectangle, torus, cylinder, etc.)—but not on the parity of (mn). On the anti-ferromagnetic critical line

$$\begin{aligned} a^{-1}+b^{-1}+1=(ab)^{-1}, \end{aligned}$$

the finite-size correction depends also on the parity of (mn). Figure 7 shows the finite-size corrections for \(m\times n\) toric quotients of the homogeneous Onsager’s lattice (\(\beta _a=\beta _b=\beta \)) at the critical points

$$\begin{aligned} \beta =\pm {\tfrac{1}{2}}\log (\sqrt{2}+1), \end{aligned}$$

where \(\beta \) positive is ferromagnetic and \(\beta \) negative is anti-ferromagnetic.

Fig. 7
figure 7

Square lattice critical Ising (\(\beta ={\tfrac{1}{2}}\log (\sqrt{2}+1)\)). Finite-size corrections for \(m\times n\) tori as a function of logarithmic aspect ratio \(\log \rho \) (color figure online)

The following proposition characterizes criticality for the Fisher lattice, as well as for a superficially similar lattice, the so-called rhombitrihexagonal tiling (Fig. 18). The latter graph has no known correspondence with the Ising model, yet its dimer systems exhibit some similar features. Though the proposition is easy to prove and various special cases appear in the literature, we include a detailed proof in the Appendix 1 for completeness. Combined with Theorem 2a, it gives the finite-size correction for general (critical) Ising models on large toric quotients (including skew tori) of the triangular lattice and Onsager’s lattice.

Proposition 1.1

For the Fisher graph (Fig. 17) or the graph (Fig. 18), the spectral curve can only intersect the unit torus at a real node, characterized by the vanishing of one of the four quantities

$$\begin{aligned} \varvec{c} \begin{pmatrix} -\mathrm {Pf}\,K(+1,+1)\\ +\mathrm {Pf}\,K(+1,-1)\\ +\mathrm {Pf}\,K(-1,+1)\\ +\mathrm {Pf}\,K(-1,-1)\\ \end{pmatrix} =\begin{pmatrix} +a+b+c-a b c\\ -a+b+c+a b c\\ +a-b+c+a b c\\ +a+b-c+a b c\\ \end{pmatrix} \equiv \begin{pmatrix} \kappa _\circ \\ \kappa _a \\ \kappa _b \\ \kappa _c \end{pmatrix} \end{aligned}$$

where \(\varvec{c}\) is 1 for the Fisher graph, and \({{1}/{2}}\) for the graph.

For dimers coming from the Ising model, such as on the Fisher graph, the node coincides with the Ising model’s critical temperature [7, 36].

We summarize the relevant background in Sect. 2. Theorem 2 is proved in Sect. 3. In Sect. 4 we prove Theorem 4, which is a stronger version of Theorem 3. In Sect. 5 we consider lattices with odd-sized fundamental domain, which provide examples for some of the cases in Theorem 2. We postpone the proof of Theorem 1 until Sect. 6, even though the proofs of Theorems 2 and 4 depend on it, since its proof is somewhat technical. Proposition 1.1 is proved in Appendix 1.

2 Preliminaries

Throughout this paper, \({\mathbb {L}}\) denotes a \(\mathbb {Z}^2\)-periodic quasi-transitive planar graph equipped with positive edge weights.

2.1 Kasteleyn orientation and characteristic polynomial

The Kasteleyn orientation is a way of computing the dimer and double-dimer partition functions via matrix Pfaffians and determinants. The Pfaffian of a \(2n\times 2n\) skew-symmetric matrix is given by

$$\begin{aligned} \mathrm {Pf}\,K\equiv \frac{1}{n!\,2^n} \sum _{\sigma \in S_{2n}} ({{\mathrm{sgn\,}}}\sigma ) \prod _{j=1}^n K_{\sigma (2j-1),\sigma (2j)}, \end{aligned}$$

and satisfies \((\mathrm {Pf}\,K)^2\,{=}\,\det K\). If K is the (skew-symmetric) weighted adjacency matrix of a finite directed graph \(\mathcal {G}\), then each non-zero term in (17) corresponds to a dimer cover of \(\mathcal {G}\). All the \(n!\,2^n\) permutations \(\sigma \in S_{2n}\) corresponding to the same dimer cover \({\mathfrak {m}}\) appear with the same sign \({{\mathrm{sgn\,}}}{\mathfrak {m}}\) in (17), so that we may write \(\mathrm {Pf}\,K= \sum _{\mathfrak {m}}\,(\mathrm {Pf}\,K)_{\mathfrak {m}}\) where each matching contributes \((\mathrm {Pf}\,K)_{\mathfrak {m}}\equiv ({{\mathrm{sgn\,}}}{\mathfrak {m}})\prod _{(ij)\in {\mathfrak {m}}} |K_{ij}|\).

Every finite planar graph \(\mathcal {G}\) can be equipped with a Kasteleyn or Pfaffian orientation, in which all dimer covers \({\mathfrak {m}}\) appear with the same sign \({{\mathrm{sgn\,}}}{\mathfrak {m}}\) in (17)—that is, for which \(|\mathrm {Pf}\,K|\) is the dimer partition function \({{\textsf {\textit{Z}}}}_\mathcal {G}\) of \(\mathcal {G}\), and \(\det K\) is the double-dimer partition function \(({{\textsf {\textit{Z}}}}_\mathcal {G})^2\). A Kasteleyn orientation is given by arranging each (non-external) face to be clockwise odd, i.e. with an odd number of edges oriented in the clockwise direction; see [27, § V-D] for details.Footnote 3

Returning to the setting of Sect. 1.3, let \({\mathbb {L}}\) be a planar \(\mathbb {Z}^2\)-periodic lattice, with an even number k of vertices per fundamental domain. \({\mathbb {L}}\) can be equipped with a periodic Kasteleyn orientation in which every face is clockwise odd (see Sect. 5.2); this defines an infinite-dimensional weighted signed adjacency matrix (Kasteleyn matrix) K, with entries \(K_{ij}\equiv (\mathbf {1}_{i\rightarrow j}-\mathbf {1}_{j\rightarrow i})\nu _{ij}\) for \(i,j\in {\mathbb {L}}\). For \(z,w\in \mathbb {C}\) and

$$\begin{aligned} E=\begin{pmatrix} u&{}v\\ x&{}y \end{pmatrix}\in {\text {End}_+(\mathbb {Z}^2)}, \end{aligned}$$

define a (zw)-periodic function to be a function \(f:{\mathbb {L}}\rightarrow \mathbb {C}\) satisfying \(f( p+a(u,v)+b(x,y) ) = f(p) z^a w^b\) for \(p\in {\mathbb {L}}\) and \(a,b\in \mathbb {Z}\). We let

$$\begin{aligned} K_E(z,w) \quad \text {the ``Fourier transform of { K} with respect to } E'' \end{aligned}$$

denote the action of K on the (finite-dimensional) space of (zw)-periodic functions. We write \(K(z,w)\equiv K_I(z,w)\in \mathbb {C}^{k\times k}\) (where I is the identity matrix) and call

$$\begin{aligned} P(z,w)\equiv \det K(z,w) \quad \text {the }{} characteristic polynomial \hbox { of }{\mathbb {L}}. \end{aligned}$$

Note that \(K(z,w)^{{\text {t}}}=-K({{1}/{z}},{{1}/{w}})\), so \(P(z,w)=P({{1}/{z}},{{1}/{w}})\).

2.2 Bipartite characteristic polynomial

Note that in (18) the linear map K(zw) was defined without reference to a basis, which is unnecessary for defining the determinant. To consider Pfaffians of K(zw), however, we must fix a basis: from the relation \(\mathrm {Pf}\,(MKM^t) = (\det M)(\mathrm {Pf}\,K)\) it is clear that even an orthogonal change of basis can change the sign of the Pfaffian. We therefore assume a fixed ordering \(1,\ldots ,k\) of the vertices of the fundamental domain, and take the basis \((f_1,\ldots ,f_k)\) where \(f_p(q) = z^a w^b\) if q is the vertex corresponding to p in the (ab)-translate of the fundamental domain, and \(f_p(q)=0\) for all other q. For the action of \(K_E(z,w)\) fix any ordering of the fundamental domains and take the basis

$$\begin{aligned} (f^1_1,\ldots ,f^1_k,\ldots ,f^{\det E}_1,\ldots ,f^{\det E}_k) \end{aligned}$$

where \({f^{\varvec{e}}_p(q)}\) is the (zw)-periodic function (with period E) corresponding to the p-vertex in the \(\varvec{e}\)-th fundamental domain.Footnote 4

If a planar graph \(\mathcal {G}\) (with positive edge weights) is bipartite with parts B (black) and W (white), an equivalent characterization of a Kasteleyn orientation is that the boundary of each non-external face has an odd or even number of edges \(B\rightarrow W\) according to whether its length is 0 or 2 modulo 4.Footnote 5

Suppose \({\mathbb {L}}\) has bipartite fundamental domain, with \({{k}/{2}}\) vertices of each color; and for \(E\in {\text {End}_+(\mathbb {Z}^2)}\) let \(b_E\equiv (\det E){{k}/{2}}\). The action of \(K_E(z,w)\) interchanges the (zw)-periodic functions supported on B with those supported on W: from the basis (19), there is an orthogonal change-of-basis matrix O with \(\det O = (-1)^{b_E(b_E-1)/2}\) such that

$$\begin{aligned} O\,K_E(z,w)\,O^t = \begin{pmatrix} 0 &{} \textsc {k}_E(z,w)\\ -\textsc {k}_E({{1}/{z}},{{1}/{w}})^t&{}0 \end{pmatrix} \equiv \widetilde{K}_E(z,w), \end{aligned}$$

with \(\textsc {k}_E(z,w)\) the action of \(K_E(z,w)\) from W-supported to B-supported functions. For \(z,w\in \{\pm 1\}\) the matrix \(K_E(z,w)\) is skew-symmetric, with Pfaffian

$$\begin{aligned} \mathrm {Pf}\,K_E(z,w) = (\det O) (\mathrm {Pf}\,\widetilde{K}_E(z,w)) = \det \textsc {k}_E(z,w) \equiv Q_E(z,w). \end{aligned}$$

The bipartite characteristic polynomial is \(Q(z,w)\equiv Q_I(z,w)\). In this setting it is known that Q(zw) either has no roots on the unit torus or two roots, which are necessarily complex conjugates; it is possible for the roots to coincide [34]. Simple zeroes of Q(zw) are nodes of \(P(z,w)\equiv Q(z,w)Q({{1}/{z}},{{1}/{w}})=|Q(z,w)|^2\) with associated positive-definite Hessian

$$\begin{aligned} H =\begin{pmatrix} |z \partial _z Q|^2 &{} {{\mathrm{Re}}}[ z \partial _z Q \, \overline{w \partial _w Q} ] \\ {{\mathrm{Re}}}[ z \partial _z Q \, \overline{w \partial _w Q} ] &{} |w \partial _w Q|^2 \end{pmatrix}\bigg |_{(z,w)=(z_0,w_0)} =\begin{pmatrix} A_z&{} B \\ B &{} A_w\end{pmatrix}. \end{aligned}$$

In particular, distinct conjugate nodes of P must have the same Hessian matrix. If instead Q has a real node then P vanishes there to fourth order, but the finite-size corrections to \({{\textsf {\textit{Z}}}}_E\) can be determined using the second-order expansion of Q.

2.3 Pfaffian method for toric graphs

For non-planar graphs Kasteleyn orientations do not in general exist. Instead the dimer partition function of the toric graph \({\mathbb {L}}_E\) can be computed as a linear combination of four Pfaffians, as follows (cf. [25]).

Fix arbitrarily a reference matching \({\mathfrak {m}}_0\) of the fundamental domain, and “unroll” the matching to obtain a periodic reference matching \({\mathfrak {m}}_\infty \) of \({\mathbb {L}}\). Assume that no edges of the reference matching cross between different fundamental domains (which can be achieved by deforming the domain boundaries in a periodic manner), so that \({\mathfrak {m}}_0\) occurs with the same sign in \(\mathrm {Pf}\,K(z,w)\) for all \(z,w\in \{\pm 1\}\). This sign can be switched by reversing the orientation of all edges incident to any single vertex, and we hereafter take it to be \(+1\). If \({\mathfrak {m}}_E\) is the projection of \({\mathfrak {m}}_\infty \) to \({\mathbb {L}}_E\), then for the basis (19) we have \((\mathrm {Pf}\,K_E(+1,+1))_{{\mathfrak {m}}_E} =(\mathrm {Pf}\,K(+1,+1))_{{\mathfrak {m}}_0}^{\det E}\)—thus \({\mathfrak {m}}_E\) appears with sign \(+1\) in \(\mathrm {Pf}\,K_E(z,w)\) for all \(E\in {\text {End}_+(\mathbb {Z}^2)}\) and all \(z,w\in \{\pm 1\}\).

Next, say that an even-length cycle on \({\mathbb {L}}_E\) is \({\mathfrak {m}}_E\) -alternating if every other edge comes from \({\mathfrak {m}}_E\). All \({\mathfrak {m}}_0\)-alternating cycles on the fundamental domain with the same homology must occur with the same sign: to see this, let \(C_1,C_2\) be two \({\mathfrak {m}}_0\)-alternating cycles of the same homology type. Then we can transform \(C_1\) to \(C_2\) by deforming the cycle across planar faces one at a time (the intermediate cycles need not have even length). Switching \(C_1\) with \(C_2\) as needed, we may assume that each face traversed by this process has boundary partitioned into a segment \(\gamma _-\) (containing \(\ell _-\) edges) which is traveled in the negative direction by the cycle just before the face is traversed, and another segment \(\gamma _+\) (containing \(\ell _+\) edges) which is traveled in the positive direction by the cycle just after the face is traversed. Since the face is clockwise odd (i.e., has negative sign in the counterclockwise direction), \({{\mathrm{sgn\,}}}(\gamma _-){{\mathrm{sgn\,}}}(\gamma _+) = -(-1)^{\ell _-}\). The deformation from \(\gamma _-\) to \(\gamma _+\) “crosses” \(\ell _--1\) vertices in the sense that it brings \(\ell _--1\) more vertices (strictly) to the left of the cycle. Thus the total sign change between \(C_1\) and \(C_2\) is \((-1)^\ell \) with \(\ell \) the total number of vertices crossed. Since \(C_1\) and \(C_2\) are both \({\mathfrak {m}}_0\)-alternating, \({\mathfrak {m}}_0\) must restrict to a perfect matching of the \(\ell \) vertices crossed: therefore \(\ell \) must be even, and so \({{\mathrm{sgn\,}}}(C_1)={{\mathrm{sgn\,}}}(C_2)\) as claimed.

Appropriately reversing edges along horizontal or vertical “seams” (boundaries separating adjacent copies of the fundamental domain) produces a periodic Kasteleyn orientation of \({\mathbb {L}}\) such that in any \({\mathbb {L}}_E\) with the inherited orientation, every \({\mathfrak {m}}_E\)-alternating cycle has sign \(+1\). We hereafter assume that the lattice \({\mathbb {L}}\) has been “pre-processed” such that all these sign conditions hold, that is:

Definition 2.1

Fix \({\mathfrak {m}}_0\) a reference matching of the fundamental domain \({\mathbb {L}}_I\), let \({\mathfrak {m}}_\infty \) denote its periodic extension to \({\mathbb {L}}\). We say that \({\mathbb {L}}\) is \({\mathfrak {m}}_0\) -oriented if (1) no edges of \({\mathfrak {m}}_\infty \) cross boundaries separating different copies of the fundamental domain, (2) \({\mathfrak {m}}_0\) occurs with positive sign in \(\mathrm {Pf}\,K(+1,+1)\) [hence in all four Pfaffians \(\mathrm {Pf}\,K(\pm 1,\pm 1)\)], and (3) every \({\mathfrak {m}}_0\)-alternating cycle in the fundamental domain has sign \(+1\).

For \({\texttt {r} },{\texttt {s} }\in \{0,1\}\) let \({{\textsf {\textit{Z}}}}_E^{\,{\texttt {r} }{\texttt {s} }}\) denote the partition function of matchings \({\mathfrak {m}}\) such that the superposition of \({\mathfrak {m}}\) with \({\mathfrak {m}}_0\) is of homology \(({\texttt {r} },{\texttt {s} })\) modulo 2. For any periodic Kasteleyn orientation of \({\mathbb {L}}\), it is easily seen that

$$\begin{aligned} \frac{(\mathrm {Pf}\,K_E(z,w))_{\mathfrak {m}}\,(\mathrm {Pf}\,K_E(z,w))_{{\mathfrak {m}}_0}}{(\mathrm {Pf}\,K_E(1,1))_{\mathfrak {m}}\,(\mathrm {Pf}\,K_E(1,1))_{{\mathfrak {m}}_0}} = z^{\texttt {r} }w^{\texttt {s} }\quad \begin{array}{l} \text {for } z,w\in \{\pm 1\};\\ {\mathfrak {m}}\text { contributing to }{{\textsf {\textit{Z}}}}_E^{\,{\texttt {r} }{\texttt {s} }}. \end{array} \end{aligned}$$

Specializing to the case that \({\mathbb {L}}\) is \({\mathfrak {m}}_0\)-oriented, the argument of [25] (also explained in [40, Ch. 4]) gives the following

Proposition 2.2

If lattice \({\mathbb {L}}\) is \({\mathfrak {m}}_0\)-oriented, then

$$\begin{aligned} \begin{pmatrix} -\mathrm {Pf}\,K_E( +1,+1 )\\ +\mathrm {Pf}\,K_E( +1,-1 )\\ +\mathrm {Pf}\,K_E( -1,+1 )\\ +\mathrm {Pf}\,K_E( -1,-1 )\\ \end{pmatrix} =\underbrace{\begin{pmatrix} -1&{}1&{}1&{}1\\ 1&{}-1&{}1&{}1\\ 1&{}1&{}-1&{}1\\ 1&{}1&{}1&{}-1 \end{pmatrix}}_{\varvec{S}} \begin{pmatrix} {{\textsf {\textit{Z}}}}_E^{\,{\texttt {0} }{\texttt {0} }}\\ {{\textsf {\textit{Z}}}}_E^{\,{\texttt {1} }{\texttt {0} }}\\ {{\textsf {\textit{Z}}}}_E^{\,{\texttt {0} }{\texttt {1} }}\\ {{\textsf {\textit{Z}}}}_E^{\,{\texttt {1} }{\texttt {1} }} \end{pmatrix}. \end{aligned}$$

In particular, the dimer partition function of \({\mathbb {L}}_E\) is

$$\begin{aligned} {{\textsf {\textit{Z}}}}_E^{\,}={\tfrac{1}{2}}[ -\mathrm {Pf}\,K_E(+1,+1) +\mathrm {Pf}\,K_E(+1,-1) +\mathrm {Pf}\,K_E(-1,+1) +\mathrm {Pf}\,K_E(-1,-1) ]. \end{aligned}$$

We shall also define \(\mathcal {Z}_E^{\,{\texttt {r} }{\texttt {s} }}\) to be the partition function of double-dimer configurations \({\mathfrak {m}}_1\oplus {\mathfrak {m}}_2\) with homology \(({\texttt {r} },{\texttt {s} })\) modulo 2. It can be seen from (22) that

$$\begin{aligned} \textstyle \mathcal {Z}_E^{\,{\texttt {r} }{\texttt {s} }} \equiv \sum _{{\texttt {r} }',{\texttt {s} }'} {{\textsf {\textit{Z}}}}_E^{\,{\texttt {r} }'{\texttt {s} }'} {{\textsf {\textit{Z}}}}_E^{\,({\texttt {r} }'+{\texttt {r} })({\texttt {s} }'+{\texttt {s} })}. \end{aligned}$$

The double-dimer partition function on \({\mathbb {L}}_E\) is given by the sum \(\mathcal {Z}_E^{\,}=\sum _{{\texttt {r} },{\texttt {s} }}\mathcal {Z}_E^{\,{\texttt {r} }{\texttt {s} }}\).

2.4 Special functions and Poisson summation

For dimer systems on tori we find finite-size corrections which can be expressed in terms of the Jacobi theta functions \(\vartheta _{{\texttt {r} }{\texttt {s} }}\) (\({\texttt {r} },{\texttt {s} }\in \{0,1\}\)), whose definition we now briefly recall (for further information see e.g. [13]). These are functions \(\vartheta _{{\texttt {r} }{\texttt {s} }}(\nu |\tau )\) of complex variables \(\nu \) and \(\tau \equiv \tau _{{\mathrm {re}}}+i\tau _{{\mathrm {im}}}\), with \(\tau _{{\mathrm {im}}}>0\), expressed equivalently as functions \(\vartheta _{{\texttt {r} }{\texttt {s} }}(\nu ,q_\tau )\) of \(\nu \) and the nome

$$\begin{aligned} q_\tau \equiv e^{\pi i\tau } = e^{\pi i\tau _{{\mathrm {re}}}}|q_\tau |. \end{aligned}$$

Note that \(|q_\tau |<1\). Each theta function is given by an infinite sum:

$$\begin{aligned} \begin{aligned} \vartheta _{{\texttt {0} }{\texttt {0} }}(\nu |\tau )&\equiv \sum \nolimits _{j\in \mathbb {Z}}e^{2\pi i j\nu }q_\tau ^{j^2}, \\ \vartheta _{{\texttt {0} }{\texttt {1} }}(\nu |\tau )&\equiv \sum \nolimits _{j\in \mathbb {Z}} (-1)^j e^{2\pi i j\nu }q_\tau ^{j^2},\\ \vartheta _{{\texttt {1} }{\texttt {0} }}(\nu |\tau )&\equiv \sum \nolimits _{j\in \mathbb {Z}+1/2}e^{2\pi i j\nu }q_\tau ^{j^2},\\ \vartheta _{{\texttt {1} }{\texttt {1} }}(\nu |\tau )&\equiv i \sum \nolimits _{j\in \mathbb {Z}+1/2} (-1)^{j-1/2} e^{2\pi i j\nu }q_\tau ^{j^2}. \end{aligned} \end{aligned}$$

The theta functions also have infinite product expressions, as follows:

$$\begin{aligned} \begin{aligned} \vartheta _{{\texttt {0} }{\texttt {0} }}(\nu |\tau )&=G(q_\tau ) \prod \nolimits _{\ell \in \mathbb {N}-1/2} (1+2q_\tau ^{2\ell } (\cos 2\pi \nu ) + q_\tau ^{4\ell }) \\ \vartheta _{{\texttt {0} }{\texttt {1} }}(\nu |\tau )&= G(q_\tau ) \prod \nolimits _{\ell \in \mathbb {N}-1/2} (1-2q_\tau ^{2\ell } (\cos 2\pi \nu ) + q_\tau ^{4\ell }) \\ \vartheta _{{\texttt {1} }{\texttt {0} }}(\nu |\tau )&={2q_\tau ^{1/4} (\cos \pi \nu ) G(q_\tau ) \prod \nolimits _{\ell \ge 1} (1 +2q_\tau ^{2\ell }(\cos 2\pi \nu ) + q_\tau ^{4\ell })} \\ \vartheta _{{\texttt {1} }{\texttt {1} }}(\nu |\tau )&={ -2q_\tau ^{1/4} (\sin \pi \nu ) G(q_\tau ) \prod \nolimits _{\ell \ge 1} (1-2{q_\tau ^{2\ell }} (\cos 2\pi \nu ) + q_\tau ^{4\ell })}, \end{aligned} \end{aligned}$$

where \(G(q)\equiv \prod _{j\ge 1} (1-q^{2j})\); this is also the q-Pochhammer symbol \((q^2;q^2)_\infty \). The Dedekind \(\eta \) function is

$$\begin{aligned} {\eta }(\tau )\equiv q_\tau ^{1/12} G(q_\tau ). \end{aligned}$$

We also write \(\vartheta _{{\texttt {r} }{\texttt {s} }}(\tau )\equiv \vartheta _{{\texttt {r} }{\texttt {s} }}(0|\tau )\); the function \(\vartheta _{{\texttt {1} }{\texttt {1} }}(\tau )\) is identically zero.Footnote 6

Many useful theta function identities may be found in [10, 13] (see in particular [13, p. 356]). The theta functions satisfy the relations

$$\begin{aligned} \vartheta _{{\texttt {0} }{\texttt {0} }}(\nu +1|\tau ) =\vartheta _{{\texttt {0} }{\texttt {0} }}(\nu |\tau ),\quad \vartheta _{{\texttt {0} }{\texttt {0} }}(\nu +\tau |\tau ) =e^{-\pi i(2\nu +\tau )}\vartheta _{{\texttt {0} }{\texttt {0} }}(\nu |\tau ). \end{aligned}$$

The four theta functions are related by the transformations

$$\begin{aligned} \begin{aligned} \vartheta _{{\texttt {0} }{\texttt {0} }}(\nu +{\tfrac{1}{2}}|\tau )&=\vartheta _{{\texttt {0} }{\texttt {1} }}(\nu |\tau ),\\ \vartheta _{{\texttt {0} }{\texttt {0} }}(\nu +{\tfrac{1}{2}}\tau |\tau )&=e^{-\pi i(\nu +\tau /4)}\vartheta _{{\texttt {1} }{\texttt {0} }}(\nu |\tau )\\ \vartheta _{{\texttt {0} }{\texttt {0} }}(\nu +{\tfrac{1}{2}}(1+\tau ) |\tau )&=-ie^{-\pi i(\nu +\tau /4)}\vartheta _{{\texttt {1} }{\texttt {1} }}(\nu |\tau ). \end{aligned} \end{aligned}$$

2.5 Finite-size correction and Gaussian sum formulas

The correction appearing in (9) is expressed in terms of these special functions as follows: for \(\phi ,\psi \in \mathbb {R}\) and \({\texttt {r} },{\texttt {s} }\in \{0,1\}\) we define

$$\begin{aligned} {\varvec{\Xi }}^{{\texttt {r} }{\texttt {s} }}(-e^{2\pi i\phi },-e^{2\pi i \psi }|\tau ) \equiv \bigg | \frac{\vartheta _{{\texttt {r} }{\texttt {s} }}(\phi \tau -\psi |\tau ) e^{\pi i \tau \phi ^2}}{{\eta }(\tau )} \bigg |, \quad \text {and }{\varvec{\Xi }}\equiv {\varvec{\Xi }}^{{\texttt {0} }{\texttt {0} }}. \end{aligned}$$

From the relations (29), the evaluation of \({\varvec{\Xi }}\) does not depend on the integer parts of \(\phi \) or \(\psi \). It then follows from (30) that the same holds for any \({\varvec{\Xi }}^{{\texttt {r} }{\texttt {s} }}\), and further

$$\begin{aligned} {\varvec{\Xi }}( (-1)^{\texttt {r} }\zeta , (-1)^{\texttt {s} }\xi |\tau ) ={\varvec{\Xi }}^{{\texttt {r} }{\texttt {s} }}(\zeta ,\xi |\tau ) \quad \text {for all }\zeta ,\xi \in \mathbb {T}. \end{aligned}$$

Recalling \(\vartheta _{{\texttt {r} }{\texttt {s} }}(\tau )\equiv \vartheta _{{\texttt {r} }{\texttt {s} }}(0|\tau )\), we define \({\varvec{\Xi }}^{{\texttt {r} }{\texttt {s} }}(\tau )\equiv {\varvec{\Xi }}^{{\texttt {r} }{\texttt {s} }}(-1,-1|\tau )\), with \({\varvec{\Xi }}^{{\texttt {1} }{\texttt {1} }}\equiv 0\).

Expressions involving theta functions can often be transformed in a useful way using the Poisson summation formula: for \(f\in L^1(\mathbb {R}^d)\), denote its Fourier transform \({\hat{f}(k) = \int _{\mathbb {R}^d} e^{-2\pi i \langle k,x\rangle } f(x) dx}\). With this normalization, the Gaussian function \(e^{-\pi x^2}\) is preserved by the Fourier transform. If both \(f,\hat{f}\) satisfy \(|f(x)|+|\hat{f}(x)| \lesssim (1+|x|)^{-d-\delta }\) for some \(\delta >0\), then they are both continuous functions with

$$\begin{aligned} \sum _{k\in \mathbb {Z}^d} \hat{f}(k) e^{2\pi i \langle k,x\rangle } = \sum _{n\in \mathbb {Z}^d} f(x + n) \quad \text {for all }x\in \mathbb {R}^d. \end{aligned}$$

(see e.g. [19]). Our typical application of this formula is to transform expressions involving theta functions into partition functions for discrete Gaussian distributions:

Definition 2.3

For \(\mu \in \mathbb {R}^d\), \(\varvec{\Sigma }_0\in \mathbb {R}^{d\times d}\) positive-definite, and L any discrete subset of \(\mathbb {R}^d\), the discrete Gaussian on L with center parameter \(\varvec{\mu }\) and scale parameter \(\varvec{\Sigma }_0\) is the L-valued random variable X with

$$\begin{aligned} \mathbb {P}(X=\varvec{e}) = \frac{\exp \{ -{\tfrac{\pi }{2}} [(\varvec{e}-\varvec{\mu })\varvec{\Sigma }_0^{-1}(\varvec{e}-\varvec{\mu })] \}}{ \sum _{ \varvec{e}'\in L } \exp \{ -{\tfrac{\pi }{2}} [(\varvec{e}'-\varvec{\mu })\varvec{\Sigma }_0^{-1}(\varvec{e}'-\varvec{\mu })] \} }\quad \text {for }\varvec{e}\in L. \end{aligned}$$

Only two-dimensional discrete Gaussians arise in this paper.

Theta functions and discrete Gaussian distributions are related as follows. Recalling the quadratic form \(g_\tau (\varvec{e})\) from (12), if \(\tau =\tau [H]\) as in (8), then

$$\begin{aligned} g_\tau (\varvec{e}) = \varvec{e}^t\varvec{\Sigma }_0^{-1}\varvec{e} \quad \text { with } \varvec{\Sigma }_0= (\det H)^{-1/2} H. \end{aligned}$$

Lemma 2.4

For \({\texttt {r} },{\texttt {s} }\in \{{\texttt {0} },{\texttt {1} }\}\) and \(\phi ,\psi \in \mathbb {R}\),

$$\begin{aligned} {\varvec{\Xi }}^{{\texttt {r} }{\texttt {s} }}(-e^{2\pi i\phi },-e^{2\pi i\psi }|\tau )^2 =\frac{ \sum _{j,k\in \mathbb {Z}} (-1)^{({\texttt {r} }+k)({\texttt {s} }+j)} \exp \{-{\tfrac{\pi }{2}} g_\tau (j-2\psi ,k+2\phi ) \}}{|{\eta }(\tau )|^2 (2\tau _{{\mathrm {im}}})^{1/2}}, \end{aligned}$$


Write \(\nu \equiv \phi \tau -\psi \). Recalling (25), write \(q\equiv |q_\tau |\equiv e^{-\pi \tau _{{\mathrm {im}}}}\). Use (26) to expand

$$\begin{aligned}&|\vartheta _{{\texttt {0} }{\texttt {0} }}(\nu |\tau )|^2 \!=\! \sum \nolimits _{x,y\in \mathbb {Z}} q^{x^2 + y^2 + 2\phi (x+y)} \exp \{2\pi i [ (\phi \tau _{{\mathrm {re}}}-\psi ) + {\tfrac{1}{2}}\tau _{{\mathrm {re}}}(x\!+\!y) ] (x-y)\}\\&\quad = {\tfrac{1}{2}}\sum \nolimits _{j\in \mathbb {Z}} q^{j^2/2+2\phi j} \sum \nolimits _{k\in \mathbb {Z}} q^{k^2/2} \exp \{2\pi i [(\phi \tau _{{\mathrm {re}}}-\psi ) + {\tfrac{1}{2}}\tau _{{\mathrm {re}}}j]k\}\\&\qquad + {\tfrac{1}{2}}\sum \nolimits _{j\in \mathbb {Z}}(-1)^j q^{j^2/2+2\phi j} \sum \nolimits _{k\in \mathbb {Z}}(-1)^k q^{k^2/2} \exp \{2\pi i [(\phi \tau _{{\mathrm {re}}}-\psi ) + {\tfrac{1}{2}}\tau _{{\mathrm {re}}}j]k\} \end{aligned}$$

where the second equality follows by the change of variables \(j\equiv x+y\), \(k\equiv x-y\). For both of the double sums appearing in the last expression, apply Poisson summation over k for each fixed j to obtain [with some rearranging, and recalling (32)]

$$\begin{aligned} {\varvec{\Xi }}^{{\texttt {0} }{\texttt {0} }}(-e^{2\pi i\phi },-e^{2\pi i\psi }|\tau )^2= & {} \left| \frac{q^{\phi ^2}\vartheta _{{\texttt {0} }{\texttt {0} }}(\nu |\tau )}{{\eta }(\tau )} \right| ^2\\= & {} \frac{ \sum _{j,k\in \mathbb {Z}} (-1)^{jk} \exp \{-{\tfrac{\pi }{2}} g_\tau ( j-2\psi ,k+2\phi )\} }{|{\eta }(\tau )|^2 (2\tau _{{\mathrm {im}}})^{1/2}}, \end{aligned}$$

proving (34) for \(({\texttt {r} },{\texttt {s} })=(0,0)\). The formulas for the remaining values of \(({\texttt {r} },{\texttt {s} })\) follow from (32). \(\square \)

Lemma 2.5

The zero-argument correction factors \({\varvec{\Xi }}^{{\texttt {r} }{\texttt {s} }}(\tau )\equiv {\varvec{\Xi }}^{{\texttt {r} }{\texttt {s} }}(-1,-1|\tau )\) satisfy the cross product identities

$$\begin{aligned} \begin{aligned} {\varvec{\Xi }}^{{\texttt {0} }{\texttt {0} }}(\tau ){\varvec{\Xi }}^{{\texttt {0} }{\texttt {1} }}(\tau )&= {\varvec{\Xi }}^{{\texttt {0} }{\texttt {1} }}(2\tau ), \\ {\varvec{\Xi }}^{{\texttt {0} }{\texttt {0} }}(\tau ){\varvec{\Xi }}^{{\texttt {1} }{\texttt {0} }}(\tau )&= {\varvec{\Xi }}^{{\texttt {1} }{\texttt {0} }}({{\tau }/{2}}), \\ {\varvec{\Xi }}^{{\texttt {0} }{\texttt {1} }}(\tau ){\varvec{\Xi }}^{{\texttt {1} }{\texttt {0} }}(\tau )&= {\varvec{\Xi }}^{{\texttt {1} }{\texttt {0} }}({\tfrac{1+\tau }{2}} ). \end{aligned} \end{aligned}$$

For distinct pairs \({\texttt {r} }_1{\texttt {s} }_1\) and \({\texttt {r} }_2{\texttt {s} }_2\) belonging to \(\{{\texttt {0} }{\texttt {0} },{\texttt {0} }{\texttt {1} },{\texttt {1} }{\texttt {0} }\}\),

$$\begin{aligned} {\varvec{\Xi }}^{{\texttt {r} }_1{\texttt {s} }_1}(\tau ) {\varvec{\Xi }}^{{\texttt {r} }_2{\texttt {s} }_2}(\tau ) =\frac{ \sum _{\varvec{e}\in \mathbb {Z}^2} \exp \{ -{\tfrac{\pi }{4}} g_\tau ( 2\varvec{e} + ({\texttt {s} }_1,{\texttt {r} }_1)+({\texttt {s} }_2,{\texttt {r} }_2) ) \} }{|{\eta }(\tau )|^2(\tau _{{\mathrm {im}}})^{1/2}} \end{aligned}$$


We have the identities (see e.g. [10, §4.1])

$$\begin{aligned} \vartheta _{{\texttt {0} }{\texttt {0} }}(\tau )\vartheta _{{\texttt {0} }{\texttt {1} }}(\tau )= & {} \vartheta _{{\texttt {0} }{\texttt {1} }}(2\tau )^2, \quad 2 g_{2\tau }(\varvec{e}) = g_\tau (e_1,2e_2)\\ 2\vartheta _{{\texttt {0} }{\texttt {0} }}(\tau )\vartheta _{{\texttt {1} }{\texttt {0} }}(\tau )= & {} \vartheta _{{\texttt {1} }{\texttt {0} }}({{\tau }/{2}})^2, \quad 2 g_{\tau /2}(\varvec{e}) = g_\tau (2e_1,e_2)\\ 2 e^{i\pi /4} \vartheta _{{\texttt {0} }{\texttt {1} }}(\tau )\vartheta _{{\texttt {1} }{\texttt {0} }}(\tau )= & {} \vartheta _{{\texttt {1} }{\texttt {0} }}( {\tfrac{1+\tau }{2}} )^2, \quad 2g_{(1+\tau )/2}(\varvec{e}) = g_\tau (2e_1+e_2,e_2) \end{aligned}$$

Straightforward manipulations using the product formulas (27) give (35). Combining with (34) gives (36): for example, recalling \({\varvec{\Xi }}^{{\texttt {1} }{\texttt {1} }}(\tau )=0\),

$$\begin{aligned} {\varvec{\Xi }}^{{\texttt {0} }{\texttt {0} }}(\tau ){\varvec{\Xi }}^{{\texttt {0} }{\texttt {1} }}(\tau ) \!=\!\frac{{\varvec{\Xi }}^{{\texttt {0} }{\texttt {1} }}(2\tau )^2+{\varvec{\Xi }}^{{\texttt {1} }{\texttt {1} }}(2\tau )^2}{ | {\eta }(\tau )/{\eta }(2\tau ) |^2 } = \frac{ \sum _{\varvec{e}\in (2\mathbb {Z})^2 +({\texttt {1} },{\texttt {0} })} \exp \{ -{\tfrac{\pi }{2}} g_{2\tau }(e_1,{{e_2}/{2}}) \}}{ |{\eta }(\tau )|^2 (\tau _{{\mathrm {im}}})^{1/2} }, \end{aligned}$$

and combining with the above identity for \(g_{2\tau }\) gives the formula. \(\square \)

3 Finite-size correction to the torus partition function

In this section we prove Theorem 2, determining the finite-size corrections to the dimer partition function \({{\textsf {\textit{Z}}}}_E^{\,}\) as well as to its four components \({{\textsf {\textit{Z}}}}_E^{\,{\texttt {r} }{\texttt {s} }}\). The critical non-bipartite setting (single real node) is treated in Sect. 3.1, while the critical bipartite setting (distinct conjugate nodes) is treated in Sect. 3.2. In both cases the asymptotic expansion of the absolute value \(|\mathrm {Pf}\,K_E(\zeta ,\xi )|=P_E(\zeta ,\xi )^{1/2}\) is given by Theorem 1, and we explain how to determine the sign of \(\mathrm {Pf}\,K_E(\zeta ,\xi )\). Applying \(\varvec{S}^{-1}\) to both sides of (23) then gives expressions for the finite-size corrections to the quantities \({{\textsf {\textit{Z}}}}_E^{\,{\texttt {r} }{\texttt {s} }}\) as signed combinations of absolute values or squared absolute values of the functions \({\varvec{\Xi }}^{{\texttt {r} }{\texttt {s} }}\). In some cases, we can apply Lemma 2.4 to obtain Gaussian sum formulas for the finite-size corrections. Lastly, in Sect. 3.3 we explain the interpretation of \(\tau \) as the shape of the torus in its “conformal” embedding.

We take the standard branch of the logarithm, which is holomorphic on \(\mathbb {C}\backslash \mathbb {R}_{\le 0}\), and continuous in z as it approaches the negative real half-line from the upper half-plane. If for \(z\in \mathbb {T}\) we write \(e^{i\theta }\equiv z\), unless otherwise specified we mean that \(-\pi <\theta \le \pi \) equals \(\arg z\), the imaginary part of (the chosen branch of) \(\log z\).

3.1 Finite-size correction in presence of real nodes

3.1.1 Calculations of the finite-size corrections

Proposition 3.1

(Implies Theorem 2a) Suppose \({\mathbb {L}}\) is \({\mathfrak {m}}_0\)-oriented with characteristic polynomial P(zw) which is non-vanishing on \(\mathbb {T}^2\) except at a positive node \((z_0,w_0)\in \{\pm 1\}^2\) where it has expansion (7) with Hessian matrix H. Then, in the limit (5),

$$\begin{aligned} \log {{\textsf {\textit{Z}}}}_E^{\,{\texttt {r} }{\texttt {s} }} =(\det E)\,\mathbf {f}_0+ {{\textsf {fsc} }_1}^{{\texttt {r} }+{\texttt {s} }_E,{\texttt {s} }+{\texttt {r} }_E}(\tau _E) + o(1) \end{aligned}$$

where \(\tau _E\in \mathbb {H}\) and the indices \({\texttt {r} }_E,{\texttt {s} }_E\in \{0,1\}\) are as in (10), and \({{\textsf {fsc} }_1}^{{\texttt {r} }{\texttt {s} }}\equiv \log {{\textsf {FSC} }_1}^{{\texttt {r} }{\texttt {s} }}\) with

$$\begin{aligned} \textstyle {{\textsf {FSC} }_1}^{{\texttt {r} }{\texttt {s} }}(\tau ) \equiv {\tfrac{1}{4}} \sum _{{\texttt {r} }',{\texttt {s} }'} (-1)^{({\texttt {s} }+{\texttt {r} }')({\texttt {r} }+{\texttt {s} }')} {\varvec{\Xi }}^{{\texttt {r} }'{\texttt {s} }'}(\tau ). \end{aligned}$$

Summing over \({\texttt {r} },{\texttt {s} }\) gives the statement of Theorem 2a.


The asymptotic expansions of absolute values of the Pfaffians \(\mathrm {Pf}\,K_E(\zeta ,\xi )\) are given by Theorem 1, so the issue is to determine their signs for \(\zeta ,\xi \in \{\pm 1\}^2\). The location of the node at \((z_0,w_0)\) implies \(\mathrm {Pf}\,K_E(\zeta _E,\xi _E)=0\). If \(\zeta _E=\xi _E=1\) then (23) gives

$$\begin{aligned} 0 =-{{\textsf {\textit{Z}}}}_E^{\,{\texttt {0} }{\texttt {0} }} +{{\textsf {\textit{Z}}}}_E^{\,{\texttt {1} }{\texttt {0} }} +{{\textsf {\textit{Z}}}}_E^{\,{\texttt {0} }{\texttt {1} }} +{{\textsf {\textit{Z}}}}_E^{\,{\texttt {1} }{\texttt {1} }}, \end{aligned}$$

implying that the other three entries on the left-hand side of (23) must be non-negative. A similar argument applies for the other three possibilities for the location of \((\zeta _E,\xi _E)\). It follows from Theorem 1 and (32) that for \({\texttt {r} },{\texttt {s} }\in \{0,1\}\),

$$\begin{aligned} \frac{P_E((-1)^{\texttt {r} }, (-1)^{{\texttt {s} }})^{1/2}}{e^{(\det E)\,\mathbf {f}_0+ o(1)}} = {\varvec{\Xi }}^{{\texttt {r} }{\texttt {s} }}(\zeta _E,\xi _E|\tau _E) ={\varvec{\Xi }}^{({\texttt {r} }+1,{\texttt {s} }+1)+({\texttt {r} }_E,{\texttt {s} }_E)}(\tau _E). \end{aligned}$$

The matrix \(\varvec{S}\) in (23) satisfies \(\varvec{S}=4\varvec{S}^{-1}\), so

$$\begin{aligned} \begin{pmatrix} {{\textsf {\textit{Z}}}}_E^{\,{\texttt {0} }{\texttt {0} }}\\ {{\textsf {\textit{Z}}}}_E^{\,{\texttt {1} }{\texttt {0} }}\\ {{\textsf {\textit{Z}}}}_E^{\,{\texttt {0} }{\texttt {1} }}\\ {{\textsf {\textit{Z}}}}_E^{\,{\texttt {1} }{\texttt {1} }} \end{pmatrix} =\varvec{S}^{-1} \begin{pmatrix} P_E(+1,+1 )^{1/2}\\ P_E(+1,-1)^{1/2}\\ P_E(-1,+1)^{1/2}\\ P_E(-1,-1)^{1/2}\\ \end{pmatrix} = e^{(\det E)\,\mathbf {f}_0+ o(1)}\, {\tfrac{1}{4}}\varvec{S}\begin{pmatrix} {\varvec{\Xi }}^{({\texttt {1} },{\texttt {1} })+({\texttt {r} }_E,{\texttt {s} }_E)}(\tau _E)\\ {\varvec{\Xi }}^{({\texttt {1} },{\texttt {0} })+({\texttt {r} }_E,{\texttt {s} }_E)}(\tau _E)\\ {\varvec{\Xi }}^{({\texttt {0} },{\texttt {1} })+({\texttt {r} }_E,{\texttt {s} }_E)}(\tau _E)\\ {\varvec{\Xi }}^{({\texttt {0} },{\texttt {0} })+({\texttt {r} }_E,{\texttt {s} }_E)}(\tau _E) \end{pmatrix}, \end{aligned}$$

implying the result. \(\square \)

Proof of Theorem 2c

Suppose Q has a single real node at \((z_0,w_0)=(\pm 1,\pm 1)\). Let \((\zeta _E,\xi _E)\) be as in (10); \((\zeta _E,\xi _E)=(\pm 1,\pm 1)\). A very slight modification to the proof of Theorem 1 gives

$$\begin{aligned} \log P_E(\zeta ,\xi )^{1/2} =(\det E)\,\mathbf {f}_0+ 2 \log {\varvec{\Xi }}(\zeta /\zeta _E,\xi /\xi _E|\tau _E) + o(1). \end{aligned}$$

(The proof of Theorem 1 approximates P near a positive node by a certain polynomial \(P_\square \) determined from the Hessian; see (61). In this case we instead determine \(P_\square \) from the Hessian associated to the node of Q, and approximate P by the square of \(P_\square \); the rest of the proof remains essentially unchanged.) The finite-size correction to \({{\textsf {\textit{Z}}}}_E\) is then computed by the same argument as for Proposition 3.1, except with \({\varvec{\Xi }}\) replaced with \({\varvec{\Xi }}^2\). Finally we observe that \({{\textsf {FSC} }_2}(\pm 1,\pm 1|\tau )={{\textsf {FSC} }_2}(1,1|\tau )\). \(\square \)

Fig. 8
figure 8

(Theorem 2a) Finite-size corrections \({{\textsf {fsc} }_1}\equiv \log {{\textsf {FSC} }_1}\) and \(\log {\varvec{\Xi }}\), shown as a function of \(\tau =x+iy\) for \(-{{1}/{2}}\le x\le {{1}/{2}}\), \(0<y\le 1\). (Recall \({{\textsf {FSC} }_1}(\tau )={\tfrac{1}{2}}\sum _{\zeta ,\xi =\pm 1} {\varvec{\Xi }}(\zeta ,\xi |\tau )\), with \({\varvec{\Xi }}(+1,+1|\tau )\) identically zero.)

Fig. 9
figure 9

(Proposition 3.1) \({{\textsf {FSC} }_1}(x+iy)\) (bold) and \({{\textsf {FSC} }_1}^{{\texttt {r} }{\texttt {s} }}(x+iy)\) with y fixed

Clearly, the most straightforward application of Proposition 3.1 is when \(z_0=w_0=+1\): in this case \(\mathrm {Pf}\,K_E(+1,+1)=0\), implying that \({{\textsf {\textit{Z}}}}_E^{\,}=2{{\textsf {\textit{Z}}}}_E^{\,{\texttt {0} }{\texttt {0} }}\) and

$$\begin{aligned} \log {{\textsf {\textit{Z}}}}_E^{\,{\texttt {r} }{\texttt {s} }} = (\det E)\,\mathbf {f}_0+{{\textsf {fsc} }_1}^{{\texttt {r} }{\texttt {s} }}(\tau _E)+o(1). \end{aligned}$$

Figure 8 shows \({{\textsf {fsc} }_1}(x+iy)\) as a function of (xy). Figure 9a, b show \({{\textsf {FSC} }_1}(x+iy)\) together with the individual contributions \({{\textsf {FSC} }_1}^{{\texttt {r} }{\texttt {s} }}(x+iy)\) as a function of x with y fixed at \({{1}/{20}}\) and \({{1}/{100}}\) respectively.

If \((z_0,w_0)\ne (1,1)\), then the correspondence between \({{\textsf {\textit{Z}}}}_E^{\,{\texttt {r} }{\texttt {s} }}\) and \({{\textsf {FSC} }_1}^{{\texttt {r} }'{\texttt {s} }'}\) depends on the parities of the entries of E. On the other hand, the following corollary shows that finite-size corrections to the double-dimer partition function do not depend on the location of the node \((z_0,w_0)\):

Corollary 3.2

In the setting of Proposition 3.1,

$$\begin{aligned} \frac{\mathcal {Z}_E^{\,{\texttt {r} }{\texttt {s} }}}{ e^{(\det E)\,2\mathbf {f}_0+o(1)} }&= \frac{\sum _{\varvec{e}\in \mathbb {Z}^2} \exp \{ -{\tfrac{\pi }{4}} g_\tau (2\varvec{e}+({\texttt {r} },{\texttt {s} }))\}}{2|{\eta }(\tau )|^2(\tau _{{\mathrm {im}}})^{1/2}} \quad \text {if }({\texttt {r} },{\texttt {s} })\ne (0,0),\\ \frac{\mathcal {Z}_E^{\,{\texttt {0} }{\texttt {0} }}}{ e^{(\det E)\,2\mathbf {f}_0+o(1)} }&= \frac{ \sum _{\varvec{e}\in \mathbb {Z}^2} \exp \{ -{\tfrac{\pi }{2}} g_\tau (\varvec{e}) \}}{ 2 |{\eta }(\tau )|^2 (2\tau _{{\mathrm {im}}})^{1/2} } = \frac{\sum _{\varvec{e}\in \mathbb {Z}^2} \exp \{ -{\tfrac{\pi }{2}} g_\tau (2\varvec{e}) \}}{ |{\eta }(\tau )|^2 (2\tau _{{\mathrm {im}}})^{1/2} } \end{aligned}$$


From the definition (24) of \(\mathcal {Z}_E^{\,{\texttt {r} }{\texttt {s} }}\) and from Proposition 3.1 we find

$$\begin{aligned} \textstyle \mathcal {Z}_E^{\,{\texttt {r} }{\texttt {s} }} =e^{(\det E)\,2\mathbf {f}_0+o(1)}\, {\tfrac{1}{4}} \sum _{{\texttt {r} }'{\texttt {s} }'} {\varvec{\Xi }}^{{\texttt {r} }'{\texttt {s} }'}(\tau ) {\varvec{\Xi }}^{({\texttt {r} }',{\texttt {s} }')+({\texttt {s} },{\texttt {r} })}(\tau ), \end{aligned}$$

regardless of where the real node is located. Recalling \({\varvec{\Xi }}^{{\texttt {1} }{\texttt {1} }}(\tau )\equiv 0\) gives

$$\begin{aligned} \begin{pmatrix} \mathcal {Z}_E^{\,{\texttt {0} }{\texttt {1} }}\\ \mathcal {Z}_E^{\,{\texttt {1} }{\texttt {0} }}\\ \mathcal {Z}_E^{\,{\texttt {1} }{\texttt {1} }} \end{pmatrix} = e^{(\det E)\,2\mathbf {f}_0+o(1)}\, {\tfrac{1}{2}} \begin{pmatrix} {\varvec{\Xi }}^{{\texttt {0} }{\texttt {0} }}(\tau ){\varvec{\Xi }}^{{\texttt {1} }{\texttt {0} }}(\tau )\\ {\varvec{\Xi }}^{{\texttt {0} }{\texttt {0} }}(\tau ){\varvec{\Xi }}^{{\texttt {0} }{\texttt {1} }}(\tau )\\ {\varvec{\Xi }}^{{\texttt {0} }{\texttt {1} }}(\tau ){\varvec{\Xi }}^{{\texttt {1} }{\texttt {0} }}(\tau ) \end{pmatrix} \end{aligned}$$

and applying (36) gives the result for \(({\texttt {r} },{\texttt {s} })\ne ({\texttt {0} },{\texttt {0} })\). Using \({\varvec{\Xi }}^{{\texttt {1} }{\texttt {1} }}(\tau )\equiv 0\) again gives

$$\begin{aligned} \frac{\mathcal {Z}_E^{\,{\texttt {0} }{\texttt {0} }}}{ e^{(\det E)\,2\mathbf {f}_0+o(1)} } ={\tfrac{1}{4}}\left[ {\varvec{\Xi }}^{{\texttt {0} }{\texttt {0} }}(\tau )^2 +{\varvec{\Xi }}^{{\texttt {0} }{\texttt {1} }}(\tau )^2 +{\varvec{\Xi }}^{{\texttt {1} }{\texttt {0} }}(\tau )^2 \pm {\varvec{\Xi }}^{{\texttt {1} }{\texttt {1} }}(\tau )^2\right] \end{aligned}$$

and combining with (34) gives the two expressions for the case \(({\texttt {r} },{\texttt {s} })=({\texttt {0} },{\texttt {0} })\). \(\square \)

A similar calculation give the finite-size correction in the presence of two real nodes:

Proof of Theorem 2d

There are two domain phases, \((\zeta ^j_E,\xi ^j_E) \equiv (z_j^u w_j^v,z_j^x w_j^y)\) (\(j=1,2\)), where we must have \({\mathrm {Pf}\,K_E(\zeta ^j_E,\xi ^j_E)=0}\). It follows that all four entries on the left-hand side of (23) must be non-negative, therefore

$$\begin{aligned} \begin{pmatrix} {{\textsf {\textit{Z}}}}_E^{\,{\texttt {0} }{\texttt {0} }}\\ {{\textsf {\textit{Z}}}}_E^{\,{\texttt {1} }{\texttt {0} }}\\ {{\textsf {\textit{Z}}}}_E^{\,{\texttt {0} }{\texttt {1} }}\\ {{\textsf {\textit{Z}}}}_E^{\,{\texttt {1} }{\texttt {1} }} \end{pmatrix} = e^{(\det E)\,\mathbf {f}_0+o(1)} \varvec{S}^{-1} \begin{pmatrix} {\varvec{\Xi }}^{{\texttt {1} }{\texttt {1} }}(\zeta ^1_E,\xi ^1_E|\tau _E) {\varvec{\Xi }}^{{\texttt {1} }{\texttt {1} }}(\zeta ^2_E,\xi ^2_E|\tau _E)\\ {\varvec{\Xi }}^{{\texttt {1} }{\texttt {0} }}(\zeta ^1_E,\xi ^1_E|\tau _E) {\varvec{\Xi }}^{{\texttt {1} }{\texttt {0} }}(\zeta ^2_E,\xi ^2_E|\tau _E)\\ {\varvec{\Xi }}^{{\texttt {0} }{\texttt {1} }}(\zeta ^1_E,\xi ^1_E|\tau _E) {\varvec{\Xi }}^{{\texttt {0} }{\texttt {1} }}(\zeta ^2_E,\xi ^2_E|\tau _E)\\ {\varvec{\Xi }}^{{\texttt {0} }{\texttt {0} }}(\zeta ^1_E,\xi ^1_E|\tau _E) {\varvec{\Xi }}^{{\texttt {0} }{\texttt {0} }}(\zeta ^2_E,\xi ^2_E|\tau _E) \end{pmatrix}. \end{aligned}$$

Thus, with \((\zeta _E,\xi _E) \equiv (\zeta ^1_E\zeta ^2_E,\xi ^1_E\xi ^2_E) \equiv ( (-1)^{{\texttt {r} }_E},(-1)^{{\texttt {s} }_E} )\), we conclude

$$\begin{aligned} \textstyle {{\textsf {\textit{Z}}}}_E^{\,}= & {} e^{(\det E)\,\mathbf {f}_0+o(1)} {\tfrac{1}{2}} \sum _{{\texttt {r} },{\texttt {s} }} {\varvec{\Xi }}^{{\texttt {r} }{\texttt {s} }}(\tau _E) {\varvec{\Xi }}^{({\texttt {r} },{\texttt {s} })+({\texttt {r} }_E,{\texttt {s} }_E)}(\tau _E)\\= & {} e^{(\det E)\,\mathbf {f}_0+o(1)} {{\textsf {FSC} }_3}(\zeta _E,\xi _E |\tau _E) \end{aligned}$$

as claimed. The alternative expressions given in the theorem statement for the four \({{\textsf {FSC} }_3}(\pm 1,\pm 1|\tau )\) follow from (35). \(\square \)

3.1.2 Ising model on triangular lattice and Onsager’s lattice

By way of example we discuss Proposition 3.1 in the context of the Ising model. Recall (14) the correspondence between the low-temperature expansion of the Ising model on the triangular lattice and the dimer model on the Fisher lattice. Criticality for the latter model (vanishing of the Fisher characteristic polynomial on the unit torus) is characterized in Proposition 1.1: in particular, \(P(+1,+1) = \kappa _\circ ^2\), so \(P(+1,+1)=0\) includes the cases

$$\begin{aligned} a=b=c= & {} \sqrt{3} \ \text {(critical ferromagnetic Ising on triangular lattice),}\\ a+b+1= & {} ab \ \text {(critical ferromagnetic Ising on Onsager's lattice),} \end{aligned}$$

(in particular the homogeneous Onsager’s lattice with \(\beta _a=\beta _b={\tfrac{1}{2}}\log (\sqrt{2}+1)\)). Meanwhile, \(P(-1,-1)=\kappa _c^2\), so \(P(-1,-1)=0\) includes the case

$$\begin{aligned} \begin{array}{rl} a^{-1}+b^{-1}+1=(ab)^{-1}&\text {(critical anti-ferromagnetic Ising on Onsager's lattice).} \end{array} \end{aligned}$$

Thus, as expected, we see parity dependence in the finite-size correction to (14) only in the anti-ferromagnetic case.

We also comment briefly on the observation (cf. (37)) that

$$\begin{aligned} (\zeta _E,\xi _E) = ((-1)^{{\texttt {r} }_E},(-1)^{{\texttt {s} }_E}) \quad \text {implies}\quad {{\textsf {\textit{Z}}}}_E^{\,}= 2{{\textsf {\textit{Z}}}}_E^{\,{\texttt {s} }_E{\texttt {r} }_E}. \end{aligned}$$

In the setting of Onsager’s lattice with ferromagnetic coupling constants \(\beta _a,\beta _b>0\), this can be understood in terms of a duality transformation (see [36]): in addition to the low-temperature correspondence (14) we also have

$$\begin{aligned} \textstyle \begin{array}{rl} \text { (Onsager's lattice Ising)} &{}{}^\ddagger {{\textsf {\textit{Z}}}}_{m,n} \\ \text { (Fisher lattice dimers, homology }(n,m)) &{}= (\prod _e e^{\beta _e}) \cdot 2 \cdot {{\textsf {\textit{Z}}}}^{n,m}_{m,n}[e^{-2\beta _a},e^{-2\beta _b},1]\\ \text {(Fisher lattice dimers, all homologies)} &{}= 2^{mn} (\prod _e \cosh \beta _e) {{\textsf {\textit{Z}}}}_{m,n}[\tanh \beta _a,\tanh \beta _b,1]. \end{array} \end{aligned}$$

The first equivalence is again obtained through the low-temperature expansion, except that instead of considering the polygonal configuration on the dual lattice formed by the spin domain boundaries, we take the complementary polygonal configuration which includes each dual edge separating like spins. On the \(m\times n\) torus, the partition function is restricted to dimer covers \({\mathfrak {m}}\) with \({{\mathrm{{{\textsf {wind}\,}}}}}{\mathfrak {m}}\oplus \overline{{\mathfrak {m}}}=(n,m)\hbox { mod }2\) because the original spin domain boundaries must have homology \(({\texttt {0} },{\texttt {0} })\) (cf. (14)). The second equivalence is obtained through the usual high-temperature expansion, with no restriction on the homology of the dimer cover.

From (38), the finite-size correction to \({{\textsf {\textit{Z}}}}^{n,m}_{m,n}[e^{-2\beta _a},e^{-2\beta _b},1]\) at criticality will be sensitive to the parity of (mn) unless \(P(-1,-1)=\kappa _c=0\), which corresponds precisely to the ferromagnetic critical line (15). On this line,

$$\begin{aligned} {{\textsf {\textit{Z}}}}_{m,n}[e^{-2\beta _a},e^{-2\beta _b},1] =2\cdot {{\textsf {\textit{Z}}}}^{m,n}_{m,n}[e^{-2\beta _a},e^{-2\beta _b},1] ={{\textsf {\textit{Z}}}}_{m,n}[\tanh \beta _a,\tanh \beta _b,1] \end{aligned}$$

where the first identity is from (38), and the second follows by comparing the low- and high-temperature expansions and observing that \(2(\cosh \beta _a)(\cosh \beta _b) =e^{\beta _a}e^{\beta _b}\). In particular, in the homogeneous case \(\beta _a=\beta _b=\beta ={\tfrac{1}{2}}\log (\sqrt{2}+1)\), we have \(e^{-2\beta }=\tanh \beta \), so that the Fisher lattice is self-dual under the above transformations. Thus the Ising–Fisher correspondences give an alternate proof of (38) in this special instance; we emphasize however that (38) holds in a much more general setting.

3.2 Finite-size correction in presence of distinct conjugate nodes

Proposition 3.3

(Implies Theorem 2b) Suppose the \({\mathfrak {m}}_0\)-oriented lattice \({\mathbb {L}}\) has bipartite fundamental domain, with bipartite characteristic polynomial Q(zw) which is non-vanishing on \(\mathbb {T}^2\) except at distinct conjugate zeroes \((z_0,w_0)\ne {(\overline{z}_0,\overline{w}_0)}\). The two zeroes are positive nodes of the characteristic polynomial \(P(z,w)=Q(z,w)\,Q({{1}/{z}},{{1}/{w}})\) with the same Hessian matrix H. Then, in the limit (5),

$$\begin{aligned} \log {{\textsf {\textit{Z}}}}_E^{\,{\texttt {r} }{\texttt {s} }} = (\det E)\,\mathbf {f}_0+ {{\textsf {fsc} }_2}^{{\texttt {r} }{\texttt {s} }}(\zeta _E,\xi _E|\tau _E) + o(1) \end{aligned}$$

where \(\tau _E,\zeta _E,\xi _E\) are as in (10), and \({{\textsf {fsc} }_2}\equiv \log {{\textsf {FSC} }_2}\) with

$$\begin{aligned} \textstyle {{\textsf {FSC} }_2}^{{\texttt {r} }{\texttt {s} }}(\zeta ,\xi |\tau ) \equiv {\tfrac{1}{4}} \sum _{{\texttt {r} }',{\texttt {s} }'} (-1)^{({\texttt {r} }+{\texttt {s} }')({\texttt {s} }+{\texttt {r} }')} {\varvec{\Xi }}^{{\texttt {r} }'{\texttt {s} }'}(-\zeta ,-\xi |\tau )^2. \end{aligned}$$

Summing over \({\texttt {r} },{\texttt {s} }\in \{0,1\}\) gives the statement of Theorem 2b.

Lemma 3.4

In the setting of Proposition 3.3, the four quantities

$$\begin{aligned} Q_+^{{\texttt {r} }{\texttt {s} }} \equiv (-1)^{{\texttt {r} }{\texttt {s} }}Q( -(-1)^{\texttt {r} },-(-1)^{\texttt {s} }),\quad {\texttt {r} },{\texttt {s} }\in \{0,1\} \end{aligned}$$

must all be positive.


Since all the \({{\textsf {\textit{Z}}}}_E^{\,{\texttt {r} }{\texttt {s} }}\) are non-negative, we see on the right-hand side of (23) that either all four entries are non-negative, or exactly one is negative while the rest are positive. In the case that E is the two-dimensional identity matrix, recalling (20) shows that (since Q has no real zeroes on the unit torus)

$$\begin{aligned} either\,three\,or\,four\,Q_+^{{\texttt {r} }{\texttt {s} }}\, are \,positive. \end{aligned}$$

For \(z,w\in \mathbb {C}\) define the counts

$$\begin{aligned} {\ell }_{\mathrm {h}}(w)\equiv & {} \text {number of zeroes in } z \text { of } Q(z,w)\text { inside unit circle;} \nonumber \\ {\ell }_{\mathrm {v}}(z)\equiv & {} \text {number of zeroes in } w \text { of } Q(z,w)\text { inside unit circle} \end{aligned}$$

(taken with multiplicity), where for the moment we leave the count undefined in the case that there is a zero exactly on the unit circle.

Now suppose that \(z_0,w_0\notin \mathbb {R}\). By the assumption of distinct conjugate nodes, \({\ell }_{\mathrm {v}}(z)\) stays constant as z travels around the unit circle except that it jumps by one when z crosses \(z_0\) or \(\overline{z}_0\): thus

$$\begin{aligned} |{\ell }_{\mathrm {h}}(+1)-{\ell }_{\mathrm {h}}(-1)|=|{\ell }_{\mathrm {v}}(+1)-{\ell }_{\mathrm {v}}(-1)|=1. \end{aligned}$$

By the argument principle, \({\ell }_{\mathrm {v}}(z)\) is also the total winding of the closed curve \(Q(z,\mathbb {T})\) around the origin, or equivalently the total change in \((2\pi )^{-1} \arg Q(z,w)\) as w travels around \(\mathbb {T}\). For \(z=\pm 1\), the curve is symmetric about the real line, so \({\ell }_{\mathrm {v}}(z)\) is given by twice the change in \((2\pi )^{-1} \arg Q(z,w)\) as w travels halfway around \(\mathbb {T}\), from \(+1\) counter-clockwise to \(-1\). Thus

$$\begin{aligned} {{\mathrm{sgn\,}}}[ Q(-1,+1) Q(-1,-1)] \!= & {} \! (-1)^{{\ell }_{\mathrm {v}}(-1)},\quad {{\mathrm{sgn\,}}}[ Q(+1,+1) Q(+1,-1)] \!=\! (-1)^{{\ell }_{\mathrm {v}}(+1)},\\ {{\mathrm{sgn\,}}}[ Q(+1,-1) Q(-1,-1)] \!= & {} \! (-1)^{{\ell }_{\mathrm {h}}(-1)},\quad {{\mathrm{sgn\,}}}[ Q(+1,+1) Q(-1,+1)] \!=\! (-1)^{{\ell }_{\mathrm {h}}(+1)}. \end{aligned}$$

From (41), two of the signs above are \(+1\) while the other two are \(-1\).

If instead \(z_0\in \mathbb {R}\) or \(w_0\in \mathbb {R}\), the argument principle can be used only to determine three of the four signs, but the fourth is then also determined since the product of the signs must be \(+1\). Thus it must always be the case that Q has the same sign at three points in \(\{\pm 1\}^2\), and takes the opposite sign at the last point. Therefore \(Q_+^{{\texttt {r} }{\texttt {s} }}= (-1)^{{\texttt {r} }{\texttt {s} }}Q( -(-1)^{\texttt {r} },-(-1)^{\texttt {s} })\) is positive at an even number of points. Together with (39) this implies that the \(Q^{{\texttt {r} }{\texttt {s} }}_+\) are all positive. \(\square \)

Proof of Proposition 3.3

Again the issue is to determine the signs of the four Pfaffians \(\mathrm {Pf}\,K_E(\pm 1,\pm 1)\) which here can be all non-zero in contrast to the setting of Proposition 3.1. From (20), \(\mathrm {Pf}\,K_E(\pm 1,\pm 1) = Q_E(\pm 1,\pm 1)\), where \(Q_E\) can also be computed recursively from Q(zw) as in (6): it then follows from Lemma 3.4 that for \({\texttt {r} },{\texttt {s} }\in \{0,1\}\),

$$\begin{aligned} {{\mathrm{sgn\,}}}(-1)^{{\texttt {r} }{\texttt {s} }} \mathrm {Pf}\,K_E(-(-1)^{\texttt {r} },-(-1)^{\texttt {s} }) = {{\mathrm{sgn\,}}}Q^{{\texttt {r} }{\texttt {s} }}_+ = +1, \end{aligned}$$

and so it follows from Theorem 1 together with (42) that

$$\begin{aligned} (-1)^{{\texttt {r} }{\texttt {s} }} \mathrm {Pf}\,K_E(-(-1)^{\texttt {r} },-(-1)^{\texttt {s} }) = e^{(\det E)\,\mathbf {f}_0+o(1)}\, {\varvec{\Xi }}(-(-1)^{\texttt {r} }\zeta _E,-(-1)^{\texttt {s} }\xi _E)^2 \end{aligned}$$

It then follows from (23) that

$$\begin{aligned} \begin{pmatrix} {{\textsf {\textit{Z}}}}_E^{\,{\texttt {0} }{\texttt {0} }}\\ {{\textsf {\textit{Z}}}}_E^{\,{\texttt {1} }{\texttt {0} }}\\ {{\textsf {\textit{Z}}}}_E^{\,{\texttt {0} }{\texttt {1} }}\\ {{\textsf {\textit{Z}}}}_E^{\,{\texttt {1} }{\texttt {1} }} \end{pmatrix} = e^{(\det E)\,\mathbf {f}_0+o(1)} {\tfrac{1}{4}} \varvec{S}\begin{pmatrix} {\varvec{\Xi }}^{{\texttt {1} }{\texttt {1} }}(-\zeta _E,-\xi _E|\tau _E)^2\\ {\varvec{\Xi }}^{{\texttt {1} }{\texttt {0} }}(-\zeta _E,-\xi _E|\tau _E)^2\\ {\varvec{\Xi }}^{{\texttt {0} }{\texttt {1} }}(-\zeta _E,-\xi _E|\tau _E)^2\\ {\varvec{\Xi }}^{{\texttt {0} }{\texttt {0} }}(-\zeta _E,-\xi _E|\tau _E)^2 \end{pmatrix}, \end{aligned}$$

implying the expansion of \({{\textsf {\textit{Z}}}}_E^{\,{\texttt {r} }{\texttt {s} }}\) in the statement of the proposition. Summing over \({\texttt {r} },{\texttt {s} }\in \{0,1\}\) and recalling Lemma 2.4 concludes the proof of Theorem 2b. \(\square \)

Fig. 10
figure 10

\({{\textsf {fsc} }_1}(x+i/200)\) (blue) and \({{\textsf {fsc} }_2}(1,1|x+i/200)\) (red). The local maxima in \({{\textsf {fsc} }_2}(1,1|\tau )\) are twice as high as those for \({{\textsf {fsc} }_1}(\tau )\)

Figure 10 shows \({{\textsf {fsc} }_1}(x+iy)\) versus \({{\textsf {fsc} }_2}(x+iy)\) for \(y={{\tfrac{1}{200}}}\); note that \({{\textsf {fsc} }_1}\) resembles \({{\textsf {fsc} }_2}\) but lies below it.

3.3 Modular transformation of finite-size correction

From the results presented so far it is clear that the asymptotic behavior of dimer systems on large toric graphs \({\mathbb {L}}_E\) is governed by the conformal shape parameter \(\tau _E\) defined in (10). We now explain the interpretation of this parameter as the half-period ratio of the torus with respect to its “natural” or “conformal” embedding.

Recall that any \(E\in {\text {End}_+(\mathbb {Z}^2)}\) defines the fractional linear transformation

$$\begin{aligned} \gamma ^E:\mathbb {C}\rightarrow \mathbb {C},\quad \gamma ^E(z)\equiv \frac{x+zy}{u+zv}; \end{aligned}$$

note \(\gamma ^{EE'}=\gamma ^E\circ \gamma ^{E'}\). The associated lattice half-period ratio \(\tau ^E\) is the evaluation of this fractional linear transformation at i, \(\tau ^E\equiv \gamma ^E(i)\), a point in the upper half-plane. The parameter \(\tau \) associated to the transformed Hessian \(H_E\equiv (E^t)^{-1}HE^{-1}\) is simply the half-period ratio of a certain matrix square root of the inverse Hessian:

$$\begin{aligned} \tau [H_E] \!=\! \tau ^{E\varvec{h}^{-1}},\quad \text {where } \varvec{h}\equiv A_w^{-1/2} \begin{pmatrix} D&{}0\\ B&{}A_w\end{pmatrix} \text { satisfies }(E\varvec{h}^{-1})(E\varvec{h}^{-1})^t = (H_E)^{-1}. \end{aligned}$$

In particular we have the symmetries

$$\begin{aligned} \left. \begin{array}{l} {\varvec{\Xi }}^{{\texttt {r} }{\texttt {s} }}(\zeta ,\xi |\tau ) ={\varvec{\Xi }}^{{\texttt {r} }{\texttt {s} }}(\overline{\zeta },\xi |-\overline{\tau }) ={\varvec{\Xi }}^{{\texttt {r} }{\texttt {s} }}(\zeta ,\overline{\xi }|-\overline{\tau }),\\ \text {therefore }{\varvec{\Xi }}^{{\texttt {r} }{\texttt {s} }}(\zeta ,\xi |\tau ) ={\varvec{\Xi }}^{{\texttt {r} }{\texttt {s} }}(\overline{\zeta },\overline{\xi }|\tau ) \end{array}\right\} \quad \text {for } \zeta ,\xi \in \mathbb {T}\end{aligned}$$

(these relations are also straightforward to prove directly from the definitions of the special functions).

Two matrices \(E,E'\in {\text {End}_+(\mathbb {Z}^2)}\) specify the same lattice of vectors \(\mathbb {Z}^2 E=\mathbb {Z}^2 E'\) if and only if \(E=TE'\) for \(T\in {{{\text {SL}}}_2\mathbb {Z}}\). The half-period ratio transforms under left multiplication by \({{{\text {SL}}}_2\mathbb {Z}}\) via the group \(\Gamma \) of modular transformations \((\gamma ^T)_{T\in {{{\text {SL}}}_2\mathbb {Z}}}\). The Jacobi theta and Dedekind eta functions transform naturally under the modular group. To understand the transformations of \({\varvec{\Xi }},{{\textsf {fsc} }_1},{{\textsf {fsc} }_2},{{\textsf {fsc} }_3}\) under the modular group, it suffices to describe their transformations under the generating transformations

From the relations

$$\begin{aligned} \begin{array}{rlrl} \vartheta _{{\texttt {r} }{\texttt {s} }}(\nu |\tau +1) &{}=(e^{\pi i/4})^{\texttt {r} }\vartheta _{{\texttt {r} },{\texttt {s} }+1-{\texttt {r} }}(\nu |\tau ),\,&{} {\eta }(\tau +1) &{}=e^{\pi i/12}{\eta }(\tau ),\\ \vartheta _{{\texttt {r} }{\texttt {s} }}(\nu /\tau \mid -1/\tau ) &{}=(-i)^{{\texttt {r} }{\texttt {s} }}(-i\tau )^{1/2} e^{\pi i\nu ^2/\tau } \vartheta _{{\texttt {s} }{\texttt {r} }}(\nu |\tau ),\,&{} {\eta }(-1/\tau ) &{}=(-i\tau )^{1/2}{\eta }(\tau ), \end{array} \end{aligned}$$

it is straightforward to prove the following

Proposition 3.5

The functions \({\varvec{\Xi }}^{{\texttt {r} }{\texttt {s} }}\) satisfy the modular relations

$$\begin{aligned} \begin{array}{l} {\varvec{\Xi }}^{{\texttt {r} }{\texttt {s} }}(\zeta ,\xi |\tau ) ={\varvec{\Xi }}^{{\texttt {r} },{\texttt {r} }+{\texttt {s} }}(\zeta ,\zeta \xi |\tau +1),\\ {\varvec{\Xi }}^{{\texttt {r} }{\texttt {s} }}(\zeta ,\xi |\tau ) ={\varvec{\Xi }}^{{\texttt {s} }{\texttt {r} }}(\bar{\xi },\zeta |-1/\tau ) ={\varvec{\Xi }}^{{\texttt {s} }{\texttt {r} }}(\xi ,\zeta |1/\bar{\tau }), \end{array} \end{aligned}$$

implying for all \(T\in {{{\text {SL}}}_2\mathbb {Z}}\) that, with \((\zeta _E,\xi _E)\equiv (z_0^u w_0^v,z_0^x w_0^y)\), we have

$$\begin{aligned} \begin{array}{l} {{\textsf {fsc} }_1}^{{\texttt {r} }{\texttt {s} }}(\tau ) = {{\textsf {fsc} }_1}^{{BTB({\texttt {r} },{\texttt {s} })}}(\gamma ^T(\tau )) \text { and } {{\textsf {fsc} }_2}^{{\texttt {r} }{\texttt {s} }}(\zeta _E,\xi _E|\tau )\\ \quad = {{\textsf {fsc} }_2}^{{BTB({\texttt {r} },{\texttt {s} })}}( \zeta _{TE},\xi _{TE}|\gamma ^T(\tau )),\\ \text {hence } {{\textsf {fsc} }_1}(\tau )={{\textsf {fsc} }_1}(\gamma ^T(\tau )) \text { and } {{\textsf {fsc} }_2}(\zeta _E,\xi _E|\tau ) ={{\textsf {fsc} }_2}(\zeta _{TE},\xi _{TE}|\gamma ^T(\tau )). \end{array} \end{aligned}$$

These results indicate that at criticality, the second-order behavior of P(zw) at its nodes determines a “natural” or “conformal” geometric embedding of \({\mathbb {L}}\) into the complex plane—that is, the embedding in which the lattice is invariant under translations by \(\varvec{h}^{-1}\mathbb {Z}^2\), so that the matrix \(E\varvec{h}^{-1}\) describes \({\mathbb {L}}_E\) in Cartesian coordinates.

3.4 Asymptotic behavior of the scaling functions

In this subsection we describe the asymptotics of the finite-size correction functions as the imaginary part \(\tau _{{\mathrm {im}}}\) of \(\tau \) tends to \(+\infty \) (corresponding to the situation that one of the lattice vectors defining the torus becomes much longer than the other, with \(\det E\) still within a constant factor of \(\Vert (u,v)\Vert \Vert (x,y)\Vert \)). As we shall see, when \(\tau _{{\mathrm {im}}}\rightarrow \infty \), the corrections to the free energy become linear in \(\tau _{{\mathrm {im}}}\), while the dependence on the twist in the torus given by \(\tau _{{\mathrm {re}}}\) becomes negligible.

Consider first the function \({\varvec{\Xi }}\) of (31). Recalling (27) and (28), we express

$$\begin{aligned} {\varvec{\Xi }}(-e^{2\pi i \phi },-e^{2\pi i \psi }|\tau ) = \bigg | \frac{ \prod _{\ell \in \mathbb {N}-1/2} \big [(1+ e^{2\pi i((\ell +\phi )\tau -\psi )} ) (1+ e^{2\pi i((\ell -\phi )\tau +\psi )} ) \big ]}{ e^{\pi i \tau (1/12-\phi ^2)}} \bigg |. \end{aligned}$$

We may assume \(-{{1}/{2}}<\phi \le {{1}/{2}}\); then, in the limit \(\tau _{{\mathrm {im}}}\rightarrow \infty \), it is clear that all terms \(\ell \ne {{1}/{2}}\) in the infinite product give a negligible contribution:

$$\begin{aligned} \frac{{\varvec{\Xi }}(-e^{2\pi i \phi },-e^{2\pi i \psi }|\tau )}{1+O(e^{-2\pi \tau _{{\mathrm {im}}}})} = \bigg | \frac{ (1+ e^{2\pi i((1/2+\phi )\tau -\psi )} ) (1+ e^{2\pi i((1/2-\phi )\tau +\psi )} ) }{ e^{\pi i \tau (1/12-\phi ^2)}} \bigg |. \end{aligned}$$

If \(\phi \) is bounded away from \(\pm {{1}/{2}}\) in the limit \(\tau _{{\mathrm {im}}}\rightarrow \infty \), then

$$\begin{aligned} {\varvec{\Xi }}(-e^{2\pi i \phi },-e^{2\pi i \psi }|\tau ) = \exp \{-\pi \tau _{{\mathrm {im}}}(\phi ^2-{\tfrac{1}{12}})+o(1)\}. \end{aligned}$$

At \(\phi ={{1}/{2}}\) we instead find

$$\begin{aligned} {\varvec{\Xi }}(+1,-e^{2\pi i \psi }|\tau ) = 2\cos (\pi \psi ) \exp \{ - \pi \tau _{{\mathrm {im}}}\cdot {{1}/{6}} + O(e^{-2\pi \tau _{{\mathrm {im}}}}) \}. \end{aligned}$$

We therefore find in the limit \(\tau _{{\mathrm {im}}}\rightarrow \infty \) that

$$\begin{aligned} {{\textsf {fsc} }_1}(\tau )&= \pi \tau _{{\mathrm {im}}}/ 12 + O(e^{-\pi \tau _{{\mathrm {im}}}}),\\ {{\textsf {fsc} }_2}(\pm i,\xi |\tau )&= \pi \tau _{{\mathrm {im}}}/24 + \log 2 + O(e^{-\pi \tau _{{\mathrm {im}}}/2})\\ {{\textsf {fsc} }_2}(e^{\pm 2\pi i\phi },\xi |\tau )&= \pi \tau _{{\mathrm {im}}}\cdot ( {{1}/{6}}-2(|\phi |\wedge ({{1}/{2}}-|\phi |))^2 ) + o(1)\\&\,\quad \quad \quad \text {(for } |\phi | \text { bounded away from } {{1}/{4}})\\ {{\textsf {fsc} }_3}(+1,\pm 1|\tau )&= \pi \tau _{{\mathrm {im}}}/ 6 + O(e^{-\pi \tau _{{\mathrm {im}}}}),\\ {{\textsf {fsc} }_3}(-1,\pm 1|\tau )&= -\pi \tau _{{\mathrm {im}}}/ 12 +\log 2 + O(e^{-\pi \tau _{{\mathrm {im}}}}). \end{aligned}$$

These estimates hold uniformly over \(\tau _{{\mathrm {re}}}\in \mathbb {R}\).

4 Loop statistics on bipartite graphs

In this section we show that in the bipartite setting with distinct conjugate zeroes, the dimer winding numbers (13) have asymptotically discrete Gaussian fluctuations. Earlier results showing that the dimer height distribution is a discrete Gaussian were obtained by Kenyon and Wilson [35] for the square lattice on a cylinder and Boutillier and de Tilière [2] for the honeycomb lattice on a rectilinear torus.

Theorem 4

(Implies Thm. 3) In the setting of Theorem 2b, suppose \({\mathbb {L}}\) is \({\mathfrak {m}}_0\)-oriented, and let \({\mathfrak {m}}_E\) be the reference matching of \({\mathbb {L}}_E\) obtained by periodically extending \({\mathfrak {m}}_0\). Let

$$\begin{aligned} {\varvec{\ell }}\equiv ({\ell }_{\mathrm {h}}(-1),{\ell }_{\mathrm {v}}(-1)) \end{aligned}$$

as defined by (40). Up to switching black with white, \({{\mathrm{{{\textsf {wind}\,}}}}}{\mathfrak {m}}\ominus {\mathfrak {m}}_E\) is asymptotically distributed in the limit (5) as a discrete Gaussian on \(\mathbb {Z}^2\) with center and scale parameters \({\varvec{\mu }_E}\) and \({\varvec{\Sigma }_E}\) given by

$$\begin{aligned}&{\varvec{\mu }_E}\equiv {\tfrac{1}{\pi }}\begin{pmatrix} x \arg z_0 + y \arg w_0\\ -u\arg z_0 - v \arg w_0 \end{pmatrix}-(\det E) (E^t)^{-1} {\varvec{\ell }}, \end{aligned}$$
$$\begin{aligned}&{\varvec{\Sigma }_E}\equiv \frac{(E^t)^{-1} H E^{-1}}{(\det H)^{1/2}/\det E}, \end{aligned}$$

with \((z_0,w_0)\in \mathbb {T}^2\) the distinguished root of Q(zw) specified by (47) below.

Remark 4.1

The choice of reference matching \({\mathfrak {m}}_E\) is not particularly important to the result. For an arbitrary reference matching \(\mathfrak {n}_E\) of \({\mathbb {L}}_E\), since \({\mathfrak {m}}\ominus \mathfrak {n}_E=({\mathfrak {m}}\ominus {\mathfrak {m}}_E)\ominus (\mathfrak {n}_E\ominus {\mathfrak {m}}_E)\), the limiting distribution of \({{\mathrm{{{\textsf {wind}\,}}}}}{\mathfrak {m}}\ominus \mathfrak {n}_E\) is a discrete Gaussian with the same covariance as for \({{\mathrm{{{\textsf {wind}\,}}}}}{\mathfrak {m}}\ominus {\mathfrak {m}}_E\), but with a mean that is shifted.

The proof of Theorem 4 is via perturbative analysis of the expansion of Theorem 2b, which we repeat here for convenience:

$$\begin{aligned} \frac{{{\textsf {\textit{Z}}}}_E^{\,}}{ e^{(\det E)\,\mathbf {f}_0+o(1)} } ={{\textsf {FSC} }_2}(\zeta _E,\xi _E|\tau _E) \end{aligned}$$

with \(\tau _E,{\texttt {r} }_E,{\texttt {s} }_E\) as in (10), and

$$\begin{aligned} {{\textsf {FSC} }_2}(\zeta _E,\xi _E|\tau ) =\frac{ \sum _{\varvec{e}\in \mathbb {Z}^2} \exp \{ -{\tfrac{\pi }{2}}g_\tau ( \varvec{e}-({\texttt {s} }_E,-{\texttt {r} }_E) ) \} }{ |{\eta }(\tau )|^2(2\tau _{{\mathrm {im}}})^{1/2} }. \end{aligned}$$

For \(z\in \mathbb {T}\), if \(w\mapsto Q(z,w)\) has a root at \(w(z)\in \mathbb {C}\), then \(w\mapsto Q(z^{-1},w^{-1})\) has a root at \(w=1/\overline{w}(z)\). Since switching black and white simply reverses the roles of Q(zw) and \(Q(z^{-1},w^{-1})\), recalling (41) we may hereafter assume that

$$\begin{aligned} {\ell }_{\mathrm {v}}(+1) = {\ell }_{\mathrm {v}}(-1)-1. \end{aligned}$$

If \(z_0\) is real, then one of the \({\ell }_{\mathrm {v}}(\pm 1)\) is defined by (40) while the other is not, in which case we define it by (46) (Fig. 11).

We distinguish between the conjugate roots of Q(zw) by taking \((z_0,w_0)\) to be the root such that on a small neighborhood of \(z_0\) in \(\mathbb {T}\), there is a smooth function w(z) such that

$$\begin{aligned} w(z_0)=w_0,\, Q(z,w(z))=0,\hbox { and } |w(z_0 e^{2\pi i r})| \hbox { is decreasing in } r \text { for } |r| \text { small.} \end{aligned}$$
Fig. 11
figure 11

Square lattice, with \(Q(z,w)=a-bz-dw-{{cz}/{w}}\). a Fundamental domain in dashed lines; reference matching \({\mathfrak {m}}_0\) in gray; \({\mathfrak {m}}_0\)-alternating double-dimer loops (blue-gray horizontally,red-gray vertically). b For unweighted square lattice: radial plot \(z\mapsto z|w(z)|\) with \(z\in \mathbb {T}\), colored according to \({{\mathrm{Im\,}}}w(z)\) (unit disk shaded) (color figure online)

4.1 Moment-generating function of winding numbers

Let us briefly review the notion of a dimer height function in this bipartite setting (see [33] and references therein). A dimer configuration \({\mathfrak {m}}\) on \({\mathbb {L}}_E\) may be regarded as a black-to-white unit flow. If \({\mathfrak {m}}_E\) is the reference matching on \({\mathbb {L}}_E\), then \({\mathfrak {m}}\ominus {\mathfrak {m}}_E\) is a divergence-free flow (in addition to being an oriented loop configuration), and gives rise to a height function h which is defined on the faces of the graph as follows:

For any two faces \(f_0,f_1\) in the graph, \(h(f_1)-h(f_0)\) gives the flux of \({\mathfrak {m}}\ominus {\mathfrak {m}}_E\) across a path in the dual graph joining \(f_0\) to \(f_1\). This definition depends on the choice of the path from \(f_0\) to \(f_1\), but homologous paths give the same value. In particular, for a closed path which can be deformed to a point, the height change is zero. The horizontal winding \({\textsf {w} }_\mathrm {h}\) of the oriented loop configuration \({\mathfrak {m}}\ominus {\mathfrak {m}}_E\) is the height change along a vertical closed loop oriented downwards, and the vertical winding \({\textsf {w} }_\mathrm {v}\) is the height change along a horizontal closed loop oriented rightwards.

For \({\varvec{\alpha }}\equiv (\alpha _\mathrm {h},\alpha _\mathrm {v})\in \mathbb {R}^2\), consider the lattice \({\mathbb {L}}\) with weights modified periodically as follows: for each edge joining a black vertex in the \(\varvec{x}\in \mathbb {Z}^2\) copy of the fundamental domain to a white vertex in the \(\varvec{x}+\varvec{e}\in \mathbb {Z}^2\) copy of the fundamental domain, multiply the edge weight by \(\exp \{ \langle {\varvec{\alpha }}, \varvec{e} \rangle \}\) (regardless of the Kasteleyn orientation of the edge). Let \(\nu ^{\varvec{\alpha }}\equiv \nu ^{\varvec{\alpha }}_E\) and \({{\textsf {\textit{Z}}}}^{\varvec{\alpha }}\equiv {{\textsf {\textit{Z}}}}_E^{\,{\varvec{\alpha }}}\) denote the associated (non-normalized) dimer measure and dimer partition function on \({\mathbb {L}}_E\). The associated bipartite characteristic polynomial is

$$\begin{aligned} Q^{\varvec{\alpha }}(z,w)\equiv Q( e^{\alpha _\mathrm {h}} z, e^{\alpha _\mathrm {v}}w ). \end{aligned}$$

The free energy \(\mathbf {f}_0\) associated with the \({\varvec{\alpha }}\)-perturbed lattice weighting is the evaluation at \({\varvec{\alpha }}\) of the Ronkin function \({\varvec{R}}\) associated to Q(zw):

$$\begin{aligned} {\varvec{R}}({\varvec{\alpha }}) \equiv \iint \limits _{\mathbb {T}^2} \log |Q(e^{\alpha _\mathrm {h}}z,e^{\alpha _\mathrm {v}}w)| \,\frac{dz}{2\pi iz}\frac{dw}{2\pi iw} \end{aligned}$$

(see [33] for more information).

Recall that \({\mathfrak {m}}_E\) is the periodic extension of \({\mathfrak {m}}_0\). For a dimer configuration \({\mathfrak {m}}\) for which \({{\mathrm{{{\textsf {wind}\,}}}}}{\mathfrak {m}}\ominus {\mathfrak {m}}_E=({\textsf {w} }_\mathrm {h},{\textsf {w} }_\mathrm {v})\),

$$\begin{aligned} \frac{\nu ^{\varvec{\alpha }}({\mathfrak {m}})/\nu ^{\varvec{\alpha }}({\mathfrak {m}}_E)}{\nu ({\mathfrak {m}})/\nu ({\mathfrak {m}}_E)} =\exp \{ {\textsf {w} }_\mathrm {h}(u\alpha _\mathrm {h}+v\alpha _\mathrm {v})+ {\textsf {w} }_\mathrm {v}( x\alpha _\mathrm {h}+y\alpha _\mathrm {v}) \} =\exp \{ ({\textsf {w} }_\mathrm {h},{\textsf {w} }_\mathrm {v}) E{\varvec{\alpha }}\}. \end{aligned}$$

Since no edges of the reference matching are reweighted, \(\nu ^{\varvec{\alpha }}({\mathfrak {m}}_E) = \nu ({\mathfrak {m}}_E)\), and so

$$\begin{aligned} {{\textsf {\textit{Z}}}}_E^{\varvec{\alpha }}= \frac{\nu ^{\varvec{\alpha }}({\mathfrak {m}}_E)}{\nu ({\mathfrak {m}}_E)} \sum _{\mathfrak {m}}\frac{\nu ^{\varvec{\alpha }}({\mathfrak {m}})/\nu ^{\varvec{\alpha }}({\mathfrak {m}}_E)}{\nu ({\mathfrak {m}})/\nu ({\mathfrak {m}}_E)} \nu ({\mathfrak {m}}) = {{\textsf {\textit{Z}}}}_E\times \mathbb {E}\big [ \exp \{ ({{\mathrm{{{\textsf {wind}\,}}}}}{\mathfrak {m}}\ominus {\mathfrak {m}}_E) E{\varvec{\alpha }}\}\big ]. \end{aligned}$$

where the expectation is with respect to the original normalized dimer measure on E.

Given \({{\textsf {\textit{Z}}}}_E^{\varvec{\alpha }}/{{\textsf {\textit{Z}}}}_E\), assuming it is a sufficiently well-behaved function of \({\varvec{\alpha }}\), we can determine the distribution of the winding of the double-dimer configurations on the torus E. It is enough to evaluate \({{\textsf {\textit{Z}}}}_E^{\varvec{\alpha }}/{{\textsf {\textit{Z}}}}_E\) (sufficiently precisely) for \({\varvec{\alpha }}\) in a neighborhood of \({\varvec{0}}\). From (49), (45) and (48),

$$\begin{aligned} \frac{{{\textsf {\textit{Z}}}}_E^{\varvec{\alpha }}}{{{\textsf {\textit{Z}}}}_E} = \underbrace{ \frac{\exp \{ {\varvec{R}}({\varvec{\alpha }}) \det E\}}{\exp \{ {\varvec{R}}({\varvec{0}}) \det E\}} }_{ {\mathscr {R}}({\varvec{\alpha }}) } \cdot \underbrace{\frac{{{\textsf {FSC} }_2}(\zeta _E^{\varvec{\alpha }},\xi _E^{\varvec{\alpha }}|\tau _E^{\varvec{\alpha }})}{{{\textsf {FSC} }_2}(\zeta _E^{\varvec{0}},\xi _E^{\varvec{0}}|\tau _E^{\varvec{0}})}}_{{\mathscr {F}}({\varvec{\alpha }})} \cdot (1+o(1)) \end{aligned}$$

where \(\tau _E^{\varvec{\alpha }},\zeta _E^{\varvec{\alpha }},\xi _E^{\varvec{\alpha }}\) are all evaluated with respect to the \({\varvec{\alpha }}\)-perturbed weights. We compute the first factor on the right-hand side in Sect. 4.2, the second factor in Sect. 4.3, and then complete the proof in Sect. 4.3.

4.2 Perturbation of free energy

In this section we estimate \({\mathscr {R}}({\varvec{\alpha }})\) from (50) by computing the gradient and Hessian of the Ronkin function \({\varvec{R}}\).

A version of the gradient calculation also appears in [33, Theorem 5.6]. For \(|{\varvec{\alpha }}|\) small, \(Q^{\varvec{\alpha }}\) also has distinct conjugate zeroes on the unit torus, and to compute the gradient we must understand how the zeroes change with \({\varvec{\alpha }}\). To this end let \({\texttt {r} }_0({\varvec{\alpha }}), {\texttt {s} }_0({\varvec{\alpha }})\) be the unique smooth real-valued functions such that

$$\begin{aligned} Q^{\varvec{\alpha }}(e^{\pi i {\texttt {r} }_0({\varvec{\alpha }})},e^{\pi i {\texttt {s} }_0({\varvec{\alpha }})})=0,\quad (e^{\pi i {\texttt {r} }_0({\varvec{\alpha }})},e^{\pi i {\texttt {s} }_0({\varvec{\alpha }})})|_{{\varvec{\alpha }}={\varvec{0}}} =(z_0,w_0), \end{aligned}$$

and \(1<{\texttt {r} }_0({\varvec{0}}),{\texttt {s} }_0({\varvec{0}})\le 1\), where \((z_0,w_0)\) denotes the root of Q at \({\varvec{\alpha }}={\varvec{0}}\) which was distinguished in (47).

Lemma 4.2

In the setting of Proposition 3.3 with (46),

$$\begin{aligned} \nabla {\varvec{R}}({\varvec{\alpha }}) = \begin{pmatrix} \partial _{{\varvec{\alpha }}_\mathrm {h}}{\varvec{R}}({\varvec{\alpha }}) \\ \partial _{{\varvec{\alpha }}_\mathrm {v}}{\varvec{R}}({\varvec{\alpha }}) \end{pmatrix} =\begin{pmatrix} {\ell }_{\mathrm {h}}(-1)+{\texttt {s} }_0({\varvec{\alpha }})\\ {\ell }_{\mathrm {v}}(-1)-{\texttt {r} }_0({\varvec{\alpha }}) \end{pmatrix} \quad \text { for small }{\varvec{\alpha }}; \end{aligned}$$


$$\begin{aligned} {\text {Hess}}\,{\varvec{R}}({\varvec{\alpha }})|_{{\varvec{\alpha }}={\varvec{0}}} = \left. \begin{pmatrix} \partial _{{\varvec{\alpha }}_\mathrm {h}}^2{\varvec{R}}({\varvec{\alpha }}) &{} \partial _{{\varvec{\alpha }}_\mathrm {v}}\partial _{{\varvec{\alpha }}_\mathrm {h}}{\varvec{R}}({\varvec{\alpha }}) \\ \partial _{{\varvec{\alpha }}_\mathrm {h}}\partial _{{\varvec{\alpha }}_\mathrm {v}}{\varvec{R}}({\varvec{\alpha }}) &{} \partial _{{\varvec{\alpha }}_\mathrm {v}}^2{\varvec{R}}({\varvec{\alpha }}) \end{pmatrix}\right| _{{\varvec{\alpha }}={\varvec{0}}} = \frac{1}{\pi D} \begin{pmatrix} A_z&{} B \\ B &{} A_w\end{pmatrix}, \end{aligned}$$

where \(A_z\), \(A_w\), B, and D are defined in (7) and (21). Consequently,

$$\begin{aligned} {\varvec{R}}({\varvec{\alpha }})-{\varvec{R}}({\varvec{0}}) = \langle {\varvec{\ell }},{\varvec{\alpha }}\rangle -(-{\texttt {s} }_0\alpha _\mathrm {h}+{\texttt {r} }_0\alpha _\mathrm {v}) + (2\pi D)^{-1} ({\varvec{\alpha }}^t H {\varvec{\alpha }}) +O({\varvec{\alpha }}^3), \end{aligned}$$

where the constants in big-O term depend on the fundamental domain (but not E).


By the argument principle,

$$\begin{aligned} \partial _{{\varvec{\alpha }}_\mathrm {v}}{\varvec{R}}({\varvec{\alpha }}) ={{\mathrm{Re}}}\oint \limits _{|z|=1}\oint \limits _{|w|=e^{\alpha _\mathrm {v}}} \frac{ (w\partial _w Q) (e^{\alpha _\mathrm {h}}z,w)}{Q(e^{\alpha _\mathrm {h}}z,w)} \frac{dw}{2\pi i w}\frac{dz}{2\pi i z} =\oint \limits _{|z|=1} {\ell }_{\mathrm {v}}^{\varvec{\alpha }}(z) \frac{dz}{2\pi iz}, \end{aligned}$$

where \({\ell }_{\mathrm {v}}^{\varvec{\alpha }}(z)\) counts the number of zeroes in w of \(Q^{\varvec{\alpha }}(z,w)\) inside the unit circle. It follows from the condition (46) and from our definition (51) of \({\texttt {r} }_0,{\texttt {s} }_0\) that

$$\begin{aligned} \partial _{{\varvec{\alpha }}_\mathrm {v}}{\varvec{R}}({\varvec{\alpha }}) = {\ell }_{\mathrm {v}}^{\varvec{\alpha }}(-1)-{\texttt {r} }_0({\varvec{\alpha }}), \end{aligned}$$

where \({\ell }_{\mathrm {v}}^{\varvec{\alpha }}(-1)={\ell }_{\mathrm {v}}(-1)\) for \(|{\varvec{\alpha }}|\) small. Therefore \(\partial _{{\varvec{\alpha }}_\mathrm {v}}^2{\varvec{R}}({\varvec{\alpha }}) = -\partial _{{\varvec{\alpha }}_\mathrm {v}}{\texttt {r} }_0({\varvec{\alpha }})\), which is positive due to (47).

Differentiating the relation \(Q^{\varvec{\alpha }}(z,w)=0\) in \({\varvec{\alpha }}\) and evaluating at \({\varvec{\alpha }}={\varvec{0}}\) gives

$$\begin{aligned} \begin{pmatrix} \partial _{{\varvec{\alpha }}_\mathrm {h}}{\texttt {r} }_0({\varvec{\alpha }}) &{} \partial _{{\varvec{\alpha }}_\mathrm {h}}{\texttt {s} }_0({\varvec{\alpha }}) \\ \partial _{{\varvec{\alpha }}_\mathrm {v}}{\texttt {r} }_0({\varvec{\alpha }}) &{} \partial _{{\varvec{\alpha }}_\mathrm {v}}{\texttt {s} }_0({\varvec{\alpha }}) \end{pmatrix} \begin{pmatrix} z \partial _zQ \\ w \partial _wQ \end{pmatrix} = \frac{i}{\pi } \begin{pmatrix} z \partial _zQ \\ w \partial _wQ \end{pmatrix}. \end{aligned}$$

Since \({\texttt {r} }_0\) and \({\texttt {s} }_0\) are real-valued, separating the other terms into real and imaginary parts (\(z Q_z\equiv x_z + i y_z\) and \(w Q_w\equiv x_w + i y_w\)) gives a system of four equations for the four variables \(\partial _{{\varvec{\alpha }}_\mathrm {h}}{\texttt {r} }_0({\varvec{\alpha }})\), \(\partial _{{\varvec{\alpha }}_\mathrm {h}}{\texttt {s} }_0({\varvec{\alpha }})\), \(\partial _{{\varvec{\alpha }}_\mathrm {v}}{\texttt {r} }_0({\varvec{\alpha }})\), \(\partial _{{\varvec{\alpha }}_\mathrm {v}}{\texttt {s} }_0({\varvec{\alpha }})\). We use (21) to solve these and find

$$\begin{aligned} \begin{pmatrix} \partial _{{\varvec{\alpha }}_\mathrm {h}}{\texttt {r} }_0({\varvec{\alpha }}) &{} \partial _{{\varvec{\alpha }}_\mathrm {h}}{\texttt {s} }_0({\varvec{\alpha }}) \\ \partial _{{\varvec{\alpha }}_\mathrm {v}}{\texttt {r} }_0({\varvec{\alpha }}) &{} \partial _{{\varvec{\alpha }}_\mathrm {v}}{\texttt {s} }_0({\varvec{\alpha }}) \end{pmatrix} ={\frac{ {{\mathrm{sgn\,}}}( x_z y_w-y_z x_w ) }{\pi D}} \begin{pmatrix} -B &{} A_z\\ -A_w&{} B \end{pmatrix} = \frac{1}{\pi D} \begin{pmatrix} -B &{} A_z\\ -A_w&{} B \end{pmatrix}, \end{aligned}$$

where the last equality follows from the preceding observation that \(\partial _{{\varvec{\alpha }}_\mathrm {v}}{\texttt {r} }_0({\varvec{\alpha }})<0\).

This then implies \(\partial _{{\varvec{\alpha }}_\mathrm {h}}{\texttt {s} }_0({\varvec{\alpha }})>0\), so a similar line of reasoning as above gives

$$\begin{aligned} \partial _{{\varvec{\alpha }}_\mathrm {h}}{\varvec{R}}({\varvec{\alpha }}) =\oint \limits _{|w|=1} {\ell }_{\mathrm {h}}^{\varvec{\alpha }}(w) \frac{dw}{2\pi i w} = {\ell }_{\mathrm {h}}^{\varvec{\alpha }}(-1)+{\texttt {s} }_0({\varvec{\alpha }}), \end{aligned}$$

with \({\ell }_{\mathrm {h}}^{\varvec{\alpha }}(-1)\) defined to be \({\ell }_{\mathrm {h}}^{\varvec{\alpha }}(+1)-1\) in the case \(w_0=-1\). Therefore

$$\begin{aligned} \begin{pmatrix} \partial _{{\varvec{\alpha }}_\mathrm {h}}^2{\varvec{R}}({\varvec{\alpha }}) &{} \partial _{{\varvec{\alpha }}_\mathrm {v}}\partial _{{\varvec{\alpha }}_\mathrm {h}}{\varvec{R}}({\varvec{\alpha }})\\ \partial _{{\varvec{\alpha }}_\mathrm {h}}\partial _{{\varvec{\alpha }}_\mathrm {v}}{\varvec{R}}({\varvec{\alpha }}) &{} \partial _{{\varvec{\alpha }}_\mathrm {v}}^2{\varvec{R}}({\varvec{\alpha }}) \end{pmatrix} = \begin{pmatrix} +\partial _{{\varvec{\alpha }}_\mathrm {h}}{\texttt {s} }_0({\varvec{\alpha }}) &{} +\partial _{{\varvec{\alpha }}_\mathrm {v}}{\texttt {s} }_0({\varvec{\alpha }})\\ -\partial _{{\varvec{\alpha }}_\mathrm {h}}{\texttt {r} }_0({\varvec{\alpha }}) &{} -\partial _{{\varvec{\alpha }}_\mathrm {v}}{\texttt {r} }_0({\varvec{\alpha }}) \end{pmatrix} = \frac{1}{\pi D} \begin{pmatrix} A_z&{} B \\ B &{} A_w\end{pmatrix}. \end{aligned}$$

\(\square \)

4.3 Perturbation of finite-size correction

We now compute the effect of the \({\varvec{\alpha }}\)-perturbation on the finite-size correction. Recall the quadratic form \(g_\tau \) which was defined in (12).

Lemma 4.3

In the setting of Proposition 3.3 with (46), assuming \(|{\varvec{\alpha }}|(\det E)^{1/2}\lesssim 1\), the second factor in (50) is

$$\begin{aligned} {\mathscr {F}}({\varvec{\alpha }}) \!=\! \frac{ \sum _{\varvec{e}\in \mathbb {Z}^2} \exp \{-{\tfrac{\pi }{2}}g_{\tau _E^{\varvec{0}}}(\varvec{e}-{\varvec{\mu }_E}) \!+\! (E{\varvec{\alpha }})^t (\varvec{e} \!-\!{\varvec{\mu }_E}) \} }{ \exp \left\{ \frac{\det E}{2\pi D}{\varvec{\alpha }}^t H {\varvec{\alpha }}\right\} \sum _{\varvec{e}\in \mathbb {Z}^2} \exp \{-{\tfrac{\pi }{2}}g_{\tau _E^{\varvec{0}}}(\varvec{e}\!-\!{\varvec{\mu }_E})\}} \exp \{O(|{\varvec{\alpha }}|(\log (1/|{\varvec{\alpha }}|))^{1/2})\} \end{aligned}$$

with \({\varvec{\mu }_E}\) as in (43).


The parameter \(\tau ^{\varvec{\alpha }}_E\) varies smoothly with \({\varvec{\alpha }}\), so we find

$$\begin{aligned} {\mathscr {F}}({\varvec{\alpha }}) = e^{O(|{\varvec{\alpha }}|)} \frac{{{\textsf {FSC} }_2}(\zeta _E^{\varvec{\alpha }},\xi _E^{\varvec{\alpha }}|\tau ^{\varvec{0}}_E)}{{{\textsf {FSC} }_2}(\zeta _E^{\varvec{0}},\xi _E^{\varvec{0}}|\tau ^{\varvec{0}}_E)}. \end{aligned}$$

In the expression (11) for \({{\textsf {FSC} }_2}(\zeta _E^{\varvec{\alpha }},\xi _E^{\varvec{\alpha }}|\tau ^{\varvec{0}}_E)\), let \({\mathbf{off}}_E^{\varvec{\alpha }}\) be the “offset vector”:

$$\begin{aligned} {\mathbf{off}}_E^{\varvec{\alpha }}\equiv \begin{pmatrix} {\texttt {s} }_E^{\varvec{\alpha }}\\ -{\texttt {r} }_E^{\varvec{\alpha }}\end{pmatrix} \end{aligned}$$

where \({\texttt {r} }_E^{\varvec{\alpha }},{\texttt {s} }_E^{\varvec{\alpha }}\) are as in (10). Then

$$\begin{aligned} {\mathscr {F}}({\varvec{\alpha }}) =e^{O(|{\varvec{\alpha }}|)} \frac{ \sum _{\varvec{e}\in \mathbb {Z}^2} \exp \{ -{\tfrac{\pi }{2}}g_{\tau ^{\varvec{0}}_E}( \varvec{e}-{\mathbf{off}}_E^{\varvec{\alpha }}) \} }{ \sum _{\varvec{e}\in \mathbb {Z}^2} \exp \{ -{\tfrac{\pi }{2}}g_{\tau ^{\varvec{0}}_E}( \varvec{e}-{\mathbf{off}}_E^{\varvec{0}}) \} }. \end{aligned}$$

The above is invariant under the addition of integer vectors to \({\mathbf{off}}_E^{\varvec{\alpha }}\), so for convenience we take the unperturbed offset vector \({\mathbf{off}}_E^{\varvec{0}}\) to have norm \(\lesssim \)1, and let the \({\varvec{\alpha }}\)-perturbed offset vector be defined by

$$\begin{aligned} {\mathbf{off}}_E^{\varvec{\alpha }}-{\mathbf{off}}_E^{\varvec{0}}= (\det E) (E^t)^{-1} \begin{pmatrix} {\texttt {s} }_0^{\varvec{\alpha }}-{\texttt {s} }_0^{\varvec{0}}\\ -{\texttt {r} }_0^{\varvec{\alpha }}+{\texttt {r} }_0^{\varvec{0}}\end{pmatrix}. \end{aligned}$$

The Taylor series expansion with (52) gives

$$\begin{aligned} {\mathbf{off}}_E^{\varvec{\alpha }}-{\mathbf{off}}_E^{\varvec{0}}&= \frac{\det E}{\pi D} (E^t)^{-1} [ H{\varvec{\alpha }}+ O(|{\varvec{\alpha }}|^2) ]\nonumber \\&= \frac{\det E}{\pi D} (E^t)^{-1} H{\varvec{\alpha }}+ O(|{\varvec{\alpha }}|^2 (\det E)^{1/2}), \end{aligned}$$

where the second equation holds for well-shaped tori (5). Recall that the quadratic form \(g_\tau \) can also be expressed using (33) and (44):

$$\begin{aligned} g_{\tau ^{\varvec{0}}_E}(\varvec{e}) =\varvec{e}^t {\varvec{\Sigma }_{E}^{-1}}\varvec{e} = \varvec{e}^t \frac{E H^{-1} E^t}{(\det H)^{-1/2} \det E}\varvec{e}. \end{aligned}$$

Since \({\varvec{\Sigma }_E}\) is symmetric, we can rewrite

$$\begin{aligned} g_{\tau ^{\varvec{0}}_E}( \varvec{e}-{\mathbf{off}}_E^{\varvec{\alpha }}) -g_{\tau ^{\varvec{0}}_E}( \varvec{e}-{\mathbf{off}}_E^{\varvec{0}})&= g_{\tau ^{\varvec{0}}_E}({\mathbf{off}}_E^{\varvec{\alpha }}-{\mathbf{off}}_E^{\varvec{0}}) \\&\quad - 2({\mathbf{off}}_E^{\varvec{\alpha }}-{\mathbf{off}}_E^{\varvec{0}})^t{\varvec{\Sigma }_{E}^{-1}}(\varvec{e}-{\mathbf{off}}_E^{\varvec{0}}). \end{aligned}$$

Combining (55) and (54) and recalling that \(D=\sqrt{\det H}\), and using the well-shaped torus assumption (5), the terms on the right-hand side are

$$\begin{aligned} g_{\tau ^{\varvec{0}}_E}({\mathbf{off}}_E^{\varvec{\alpha }}-{\mathbf{off}}_E^{\varvec{0}})&= \frac{\det E}{\pi ^2 D}{\varvec{\alpha }}^t H {\varvec{\alpha }}+ O(|{\varvec{\alpha }}|^3 \det E),\\ - 2({\mathbf{off}}_E^{\varvec{\alpha }}-{\mathbf{off}}_E^{\varvec{0}})^t{\varvec{\Sigma }_{E}^{-1}}(\varvec{e}-{\mathbf{off}}_E^{\varvec{0}}) \!&=\! - \frac{2}{\pi } {\varvec{\alpha }}^t E^t (\varvec{e} \!-\! {\mathbf{off}}_E^{\varvec{0}}) \!+\! O(|{\varvec{\alpha }}|^2(\det E)^{1/2} (|\varvec{e}| \!+\! 1)). \end{aligned}$$

Combining these gives

$$\begin{aligned} \exp \{ -{\tfrac{\pi }{2}}g_{\tau ^{\varvec{0}}_E}( \varvec{e}-{\mathbf{off}}_E^{\varvec{\alpha }}) \}= & {} \frac{\exp \{-{\tfrac{\pi }{2}}g_{\tau ^{\varvec{0}}_E}(\varvec{e}-{\mathbf{off}}_E^{\varvec{0}}) + (E{\varvec{\alpha }})^t (\varvec{e} -{\mathbf{off}}_E^{\varvec{0}}) \} }{\exp \left\{ \frac{\det E}{2\pi D}{\varvec{\alpha }}^t H {\varvec{\alpha }}\right\} } \nonumber \\&\times \exp \{ |{\varvec{\alpha }}|^2 (\det E)^{1/2} [ |\varvec{e}|+1 \!+\! |{\varvec{\alpha }}|(\det E)^{1/2} ]\}.\qquad \end{aligned}$$

To apply this estimate in (53), we truncate the sum in the numerator so that \(|\varvec{e}|\) will not be too large. For convenience, we now invoke the assumption that \(|{\varvec{\alpha }}|(\det E)^{1/2}\lesssim 1\), so that \(|{\mathbf{off}}^{\varvec{\alpha }}_E-{\mathbf{off}}^{\varvec{0}}_E| \lesssim |{\varvec{\alpha }}|(\det E)^{1/2}\lesssim 1\). Then, since \(g_{\tau ^{\varvec{\alpha }}_E}(\varvec{e}) \asymp |\varvec{e}|^2\), there is an absolute constant C such that the contribution in the numerator from \(|\varvec{e} > C(\log (1/|{\varvec{\alpha }}|))^{1/2}\) will be less than \({\varvec{\alpha }}\). The numerator itself is \(\asymp 1\), so the additive error \(|{\varvec{\alpha }}|\) translates into multiplicative error \(\exp \{O(|{\varvec{\alpha }}|)\}\). Then, for \(|\varvec{e}|\le C(\log (1/|{\varvec{\alpha }}|))^{1/2}\), we apply the estimate (56). Finally we remove the truncation on \(\varvec{e}\), giving

$$\begin{aligned} {\mathscr {F}}({\varvec{\alpha }})&= \frac{\sum _{\varvec{e}\in \mathbb {Z}^2} \exp \{-{\tfrac{\pi }{2}}g_{\tau _E^{\varvec{0}}}(\varvec{e}-{\mathbf{off}}_E^{\varvec{0}}) + (E{\varvec{\alpha }})^t (\varvec{e} -{\mathbf{off}}_E^{\varvec{0}}) \} }{\exp \left\{ \frac{\det E}{2\pi D}{\varvec{\alpha }}^t H {\varvec{\alpha }}\right\} \sum _{\varvec{e}\in \mathbb {Z}^2} \exp \{-{\tfrac{\pi }{2}}g_{\tau _E^{\varvec{0}}}(\varvec{e}-{\mathbf{off}}_E^{\varvec{0}})\}}\\&\quad \times \exp \{ O( |{\varvec{\alpha }}| (\log (1/|{\varvec{\alpha }}|))^{1/2} ) \}. \end{aligned}$$

The lemma follows since \({\varvec{\mu }_E}\) is a representative of \({\mathbf{off}}_E^{\varvec{0}}\) modulo \(\mathbb {Z}^2\). \(\square \)

Proof of Theorem 4

Let \({\varvec{\theta }}\in \mathbb {R}^2\) with \(|{\varvec{\theta }}|\lesssim 1\), and set \({\varvec{\alpha }}= E^{-1}{\varvec{\theta }}\). Combining (50) with Lemmas 4.2 and 4.3 gives

$$\begin{aligned} \frac{{{\textsf {\textit{Z}}}}^{\varvec{\alpha }}_E}{{{\textsf {\textit{Z}}}}^{\varvec{0}}_E} =e^{o(1)} \frac{ \exp \{ \langle {\varvec{\ell }},{\varvec{\alpha }}\rangle \det E\}\, \sum _{\varvec{e}\in \mathbb {Z}^2} \exp \{-{\tfrac{\pi }{2}}g_\tau (\varvec{e}-{\varvec{\mu }_E}) + (E{\varvec{\alpha }})^t (\varvec{e}-{\varvec{\mu }_E}) \} }{ \exp \{ ( -{\texttt {s} }_0\alpha _\mathrm {h}+{\texttt {r} }_0\alpha _\mathrm {v})\det E \}\, \sum _{\varvec{e}\in \mathbb {Z}^2} \exp \{-{\tfrac{\pi }{2}}g_\tau (\varvec{e}-{\varvec{\mu }_E})\} }, \end{aligned}$$

with \({\varvec{\mu }_E}\) as in (43). Using the fact that

$$\begin{aligned} \langle {\varvec{\ell }},{\varvec{\alpha }}\rangle \det E + (E{\varvec{\alpha }})^t(\varvec{e}-{\varvec{\mu }_E}) - ( -{\texttt {s} }_0\alpha _\mathrm {h}+{\texttt {r} }_0\alpha _\mathrm {v})\det E = \langle {\varvec{\theta }},\varvec{e}\rangle , \end{aligned}$$

we obtain

$$\begin{aligned} \mathbb {E}\big [ e^{ \langle {{\mathrm{{{\textsf {wind}\,}}}}}{\mathfrak {m}}\ominus {\mathfrak {m}}_E,{\varvec{\theta }}\rangle }\big ] = \frac{{{\textsf {\textit{Z}}}}^{\varvec{\alpha }}_E}{{{\textsf {\textit{Z}}}}^{\varvec{0}}_E}&=e^{o(1)} \frac{\sum _{\varvec{e}\in \mathbb {Z}^2} \exp \{-{\tfrac{\pi }{2}}g_\tau (\varvec{e}-{\varvec{\mu }_E})\} \exp \{ \langle {\varvec{\theta }},\varvec{e}\rangle \} }{\sum _{\varvec{e}\in \mathbb {Z}^2} \exp \{-{\tfrac{\pi }{2}}g_\tau (\varvec{e}-{\varvec{\mu }_E})\}}. \end{aligned}$$

If a sequence of probability measures have Laplace transforms that convergence pointwise to the Laplace transform of a probability measure, then the sequence converges in distribution to that measure [3, Ex. 5.5]. We therefore find that the winding \({{\mathrm{{{\textsf {wind}\,}}}}}{\mathfrak {m}}\ominus {\mathfrak {m}}_E\) is asymptotically distributed as a discrete Gaussian on \(\mathbb {Z}^2\) with parameters \({\varvec{\mu }_E},{\varvec{\Sigma }_E}\) as in (43) and (44). \(\square \)

4.4 Dimers on the honeycomb graph

By way of example, consider the honeycomb graph with edge weights abc and bipartite fundamental domain, \({\mathfrak {m}}_0\)-oriented for the reference matching \({\mathfrak {m}}_0\) given by the a-edge (Fig. 12).

Fig. 12
figure 12

Honeycomb graph, with \(Q(z,w)=a-bz-cw\). a Fundamental domain in dashed lines; reference matching \({\mathfrak {m}}_0\) in gray; \({\mathfrak {m}}_0\)-alternating double-dimer loops (blue-gray horizontally, red-gray vertically). b For unweighted honeycomb graph: radial plot \(z\mapsto z|w(z)|\) with \(z\in \mathbb {T}\), colored according to \({{\mathrm{Im\,}}}w(z)\) (unit disk shaded) (color figure online)

The bipartite characteristic polynomial is \(Q(z,w)=a-bz-cw\). If abc do not satisfy the triangle inequality then Q is non-vanishing on \(\mathbb {T}^2\). If the weak triangle inequality is satisfied, then \(C\equiv \prod _{{\texttt {r} },{\texttt {s} }\in \{0,1\}} Q^{{\texttt {r} }{\texttt {s} }}_+\) is non-negative (see Lemma 3.4), and Q vanishes at \((z_0,w_0)\equiv (e^{\pi i {\texttt {r} }_0},e^{\pi i {\texttt {s} }_0})\) and its conjugate where

$$\begin{aligned} {\texttt {r} }_0={\tfrac{1}{\pi }}\cos ^{-1}\left( {\tfrac{a^2+b^2-c^2}{2ab}} \right) \in [0,1],\quad {\texttt {s} }_0\equiv -{\tfrac{1}{\pi }}\cos ^{-1}\left( {\tfrac{a^2+c^2-b^2}{2ac}} \right) \in [-1,0]. \end{aligned}$$

Assume now that abc satisfy the strict triangle inequality, so that \(C>0\) and the conjugate zeroes of Q are distinct. These zeroes are positive nodes of \(P(z,w)\equiv Q(z,w)\,Q({{1}/{z}},{{1}/{w}})\), with Hessian

$$\begin{aligned} H\equiv \begin{pmatrix} b^2 &{} {\tfrac{1}{2}}(a^2-b^2-c^2) \\ {\tfrac{1}{2}}(a^2-b^2-c^2) &{} c^2 \end{pmatrix},\quad \det H\equiv {{C}/{4}}. \end{aligned}$$

The following is then a direct consequence of Theorem 2b and Theorem 4 (with \({\varvec{\ell }}=(0,0)\)):

Corollary 4.4

For the \({\mathfrak {m}}_0\)-oriented honeycomb graph (Fig. 12), the characteristic polynomial has zeroes at \((z_0,w_0)=(e^{\pi i {\texttt {r} }_0},e^{\pi i {\texttt {s} }_0})\) given by (57) and its conjugate, with Hessian H given by (58). Thus

$$\begin{aligned} \log {{\textsf {\textit{Z}}}}_E =(\det E)\,\mathbf {f}_0+{{\textsf {fsc} }_2}(\zeta _E,\xi _E|\tau _E) + o(1) \end{aligned}$$

with \(\tau _E,\zeta _E,\xi _E\) as in (10). For \({\mathfrak {m}}_E\) the matching of \({\mathbb {L}}_E\) given by taking all the a-edges, \({{\mathrm{{{\textsf {wind}\,}}}}}{\mathfrak {m}}\ominus {\mathfrak {m}}_0\) is asymptotically distributed as a discrete Gaussian on \(\mathbb {Z}^2\) with parameters

$$\begin{aligned} {\varvec{\mu }_E}= \begin{pmatrix} x {\texttt {r} }_0 + y {\texttt {s} }_0 \\ -u{\texttt {r} }_0 - v {\texttt {s} }_0 \end{pmatrix},\quad {\varvec{\Sigma }_E}= \frac{(E^t)^{-1}HE^{-1}}{(\det H)^{1/2}/\det E}. \end{aligned}$$

We emphasize again that while the conformal shape \(\tau _E\) depends smoothly on the entries of the normalized matrix \((\det E)^{-1/2} E\) [which has O(1) entries for well-shaped tori (5)], the domain phase \((\zeta _E,\xi _E)\) is highly sensitive to constant-order changes in the non-normalized entries of E.

Fig. 13
figure 13

The \(4\times 3\) rectilinear torus, shown together with a skew torus

This is illustrated in Fig. 4 for the unweighted honeycomb graph (\(a=b=c=1\)). With our choice of fundamental domain (Fig. 12), the \(m\times n\) rectilinear torus (Fig. 13) studied in [2] corresponds to matrix E given by \((u,v)=(m,m)\) and \((x,y)=(-n,n)\). In the usual embedding where all hexagons are regular, the geometric aspect ratio is \(\rho \equiv n/(3^{1/2}m)\), and it is straightforward to check that the conformal shape \(\tau \) is simply \(i\rho \). From (57) we have \(({\texttt {r} }_0,{\texttt {s} }_0) = ({{1}/{3}},-{{1}/{3}})\), so there are multiple possibilities for the domain phase \((\zeta _E,\xi _E)\). Figure 12 considers the near-rectilinear case \(\tau = i\rho + o(1)\), and shows that the finite-size correction lies on one of four different limiting curves

$$\begin{aligned} \rho \mapsto {{\textsf {fsc} }_2}( (e^{\pi i/3})^j, (e^{\pi i/3})^k |i \rho ) \end{aligned}$$

depending on the phase \((\zeta _E,\xi _E)\). Three of these can arise from exactly rectilinear tori, while the fourth (the one corresponding to both \(j,k\not \equiv 0\hbox { mod }3\)) arises from almost-rectilinear tori with \(\tau =i\rho +o(1)\).

Arbitrarily many curves can be obtained by adjusting the weights: for example, if we keep \(b=c=1\) but change a, the conformal shape \(\tau \) becomes \(\tau \) becomes \(i {\tfrac{n}{m}} a(4-a^2)^{-1/2}\). If \(a={\tfrac{1}{2}}(\sqrt{5}-1)\) then \(({\texttt {r} }_0,{\texttt {s} }_0)=({{2}/{5}},-{{2}/{5}})\), and Fig. 14 shows the nine limiting curves arising for near-rectilinear tori.

Fig. 14
figure 14

(Honeycomb graph with weights \(a={\tfrac{1}{2}}(\sqrt{5}-1)\), \(b=c=1\).) Finite-size corrections \({{\textsf {fsc} }_2}(\zeta _E,\xi _E|\tau )\) for near-rectilinear (\(\tau =i\rho +o(1)\)) tori, shown as a function of logarithmic aspect ratio \(\log \rho \)

5 Odd-sized fundamental domains

In this section we briefly address the case where the fundamental domain \({\mathbb {L}}_I\) contains an odd number k of vertices. Up to now we have always assumed k to be even, which, as we review in Sect. 5.2 below, guarantees the existence of an \({\mathbb {L}}_I\)-periodic Kasteleyn orientation of \({\mathbb {L}}\). Clearly we can perform calculations with doubled versions of the domain, but if the “natural” fundamental domain of the lattice has k odd then different doublings need to be considered to access all possible toric quotients. For concreteness, in Sect. 5.1 we illustrate with the example of the unweighted square lattice, whose natural fundamental domain contains a single vertex. In Sect. 5.2 we comment on the general situation.

5.1 Odd-sized fundamental domains in the square lattice

The natural fundamental domain \({\mathbb {L}}_I\) of the unweighted square lattice is the \(1\times 1\) torus containing a single vertex, connected to itself by one horizontal edge and one vertical edge. Clearly \({\mathbb {L}}\) has no \({\mathbb {L}}_I\)-periodic Kasteleyn orientation with real weights; to find such an orientation we have to double the fundamental domain. Two possibilities are shown in Fig. 15; we note that the domain of Fig. 15a is bipartite while that of Fig. 15b is nonbipartite.

Fig. 15
figure 15

Two choices of fundamental domain for the unweighted square lattice. a Bipartite fundamental domain: \(Q(z,w)= 1-z-{{z}/{w}}-w\). b Nonbipartite fundamental domain: \(P(z,w)= 4-z-{{1}/{z}} - w^2 - {{1}/{w^2}}\)

For \(ad-bc\) positive, quotient by the (ab) and (cd) translations to form the \((a,b)\times (c,d)\) torus, which can have dimer covers for \(ad-bc\) even. The torus can be formed from copies of the \((2,0)\times (1,1)\) bipartite fundamental domain (Fig. 15a) if and only if \(a+b\) and \(c+d\) are both even. The bipartite characteristic polynomial has simple zeroes at \((1,\pm i)\), so it follows from Theorem 2b that the finite-size correction to \({{\textsf {\textit{Z}}}}\) is \({{\textsf {FSC} }_2}(i^{\texttt {r} },i^{\texttt {s} }|\tau )\) with \({\texttt {r} }\) the value of a (or b) modulo 2, and \({\texttt {s} }\) the value of c (or d) modulo 2.

The \((a,b)\times (c,d)\) torus can be formed from copies of the \(2\times 1\) nonbipartite fundamental domain \({\mathbb {L}}_{2,1}\) (Fig. 15b) if and only if a and c are both even. The characteristic polynomial has positive nodes at \((1,\pm 1)\) with the same Hessian. It follows from Theorem 2d that the finite-size correction to \({{\textsf {\textit{Z}}}}\) is \({{\textsf {FSC} }_3}( (-1)^b,(-1)^d|\tau )\).

The case of bd both even is handled by the \(1\times 2\) nonbipartite fundamental domain \({\mathbb {L}}_{1,2}\) (\(\pi /4\)-rotation of Fig. 15b). Alternatively, by the \(\pi /4\)-rotational symmetry of the square lattice, it has the same partition function as the \((b,a)\times (-d,-c)\) torus. We therefore conclude

Proposition 5.1

For the \((a,b)\times (c,d)\) torus formed from the unweighted square lattice, the dimer partition function \({{\textsf {\textit{Z}}}}\) satisfies

$$\begin{aligned}&\log {{\textsf {\textit{Z}}}}- (\det E)\,\mathbf {f}_0-o(1)\\&\quad =\begin{array}{r|llll} &{}{\texttt {0} }{\texttt {0} }&{}{\texttt {0} }{\texttt {1} }&{}{\texttt {1} }{\texttt {0} }&{}{\texttt {1} }{\texttt {1} }\\ \hline {\texttt {0} }{\texttt {0} }&{} {{\textsf {fsc} }_2}(+1,+1|\tau ) &{} {{\textsf {fsc} }_3}(+1,-1|\tau ) &{} {{\textsf {fsc} }_3}(+1,-1|\tau ) &{} {{\textsf {fsc} }_2}(+1,+i|\tau )\\ {\texttt {0} }{\texttt {1} }&{} {{\textsf {fsc} }_3}(-1,+1|\tau ) &{} {{\textsf {fsc} }_3}(-1,-1|\tau ) &{}-\infty &{}-\infty \\ {\texttt {1} }{\texttt {0} }&{} {{\textsf {fsc} }_3}( -1,+1|\tau ) &{}-\infty &{} {{\textsf {fsc} }_3}(-1,-1|\tau ) &{}-\infty \\ {\texttt {1} }{\texttt {1} }&{} {{\textsf {fsc} }_2}(+i,+1|\tau ) &{}-\infty &{}-\infty &{} {{\textsf {fsc} }_2}(+i,+i|\tau )\\ \end{array} \end{aligned}$$

where the row index is the value of (ab) modulo 2 while the column index is the value of (cd) modulo 2.

We see from Proposition 5.1 that for general \(\tau \), the finite-size correction lies on one of seven curves. Figure 16a shows the four curves coming from the bipartite fundamental domain (Fig. 15a), while Fig. 16b shows the four curves coming from the nonbipartite fundamental domain (Fig. 15b), where the case of abcd all even appears in both.

Fig. 16
figure 16

Unweighted square lattice dimers. Finite-size corrections \({\textsf {fsc}}\) for near-rectilinear toric quotients, shown as a function of logarithmic aspect ratio \(\log \rho \) and labelled according to parity of \((a,b)\times (c,d)\). a Corrections \({{\textsf {fsc} }_2}(\zeta ,\xi |\tau )\), obtained from bipartite domain Fig. 15a. b Corrections \({{\textsf {fsc} }_3}(\zeta ,\xi |\tau )\), obtained from non-bipartite domain Fig. 15b

5.2 Odd-sized fundamental domains in general graphs

The assumption of \({\mathbb {L}}_I\) even guarantees that \({\mathbb {L}}\) can be given a \({\mathbb {L}}_I\) -periodic Kasteleyn orientation, as follows (see [27]): choose a planar spanning tree T on the dual graph of \({\mathbb {L}}_I\), and give an arbitrary orientation to any edges of \({\mathbb {L}}_I\) not crossed by an edge of T. For any vertex \(f\in T\) with a single neighbor \(g\in T\), there is a unique way to orient the edge of \({\mathbb {L}}_I\) crossed by the dual edge (fg) such that the face corresponding to f is clockwise odd. By repeatedly pruning leaf vertices of T, \({\mathbb {L}}_I\) can be oriented such that all faces are clockwise odd except possibly the final face, corresponding to the root of T. For each face f let \(o_f\) count the number of clockwise-oriented edges around f: then \({\sum _f (1+o_f)}\) is even if and only if the root face is also clockwise odd. But this sum is also simply the number of faces and edges in the graph, and so by Euler’s formula must have the same parity as the number k of vertices. It follows that \({\mathbb {L}}_I\) can be oriented to give rise to a periodic Kasteleyn orientation of \({\mathbb {L}}\) if and only if k is even.

If k is odd, the above procedure produces a \({\mathbb {L}}_I\)-periodic orientation of \({\mathbb {L}}\) which is “almost” Kasteleyn, in that exactly one face per fundamental domain is clockwise even. This can be resolved by doubling the fundamental domain: for example, if we put two copies of the fundamental domain side by side to make the \(2\times 1\) torus \({\mathbb {L}}_{2,1}\), the orientation of the doubled graph can be corrected by choosing a dual path \(\gamma \) joining the two clockwise even faces, and reversing the orientation of each edge crossing the dual path \(\gamma \).

Recalling Definition 2.1, suppose further that we are given a reference matching \({\mathfrak {m}}_0\) of \({\mathbb {L}}_{2,1}\) such that its periodic extension \({\mathfrak {m}}_\infty \) does not cross any boundaries separating different copies of \({\mathbb {L}}_{2,1}\). We can choose the dual path \(\gamma \) such that its periodic extension either does or does not cross any of these boundaries, and we take the choice which results in all vertical \({\mathfrak {m}}_0\)-alternating cycles having sign \(+1\). If horizontal \({\mathfrak {m}}_0\)-alternating cycles also have sign \(+1\) then \({\mathbb {L}}\) is \({\mathfrak {m}}_0\)-oriented; otherwise reverse edges along vertical seams to complete the orientation.

Proposition 5.2

With the above orientation, the characteristic polynomial P(zw) associated to \({\mathbb {L}}_{2,1}\) is a polynomial in \((z,w^2)\). Consequently, if P(zw) has two distinct real nodes then they must be of form \((z_0,\pm 1)\) with the same associated Hessian.


Express \(P(z,w)=\det K(z,w)\) as a sum over permutations, so that each non-zero term corresponds to an oriented cycle configuration in \({\mathbb {L}}_{2,1}\). Odd powers of w correspond to cycle configurations winding an odd number of times in the vertical direction.

Consider the mapping on cycle configurations induced by switching the two copies of \({\mathbb {L}}_I\) inside \({\mathbb {L}}_{2,1}\). The sign of the corresponding permutation remains the same (regardless of the parity of k), but the product over entries of K(zw) changes sign if and only if the configuration winds vertically an odd number of times: if the two copies of \({\mathbb {L}}_I\) have the same orientation except across the dual path \(\gamma \) then this is immediate. If we also reversed edges along vertical boundaries to produce an \({\mathfrak {m}}_0\)-orientation of \({\mathbb {L}}\), the statement can be proved by considering deformations of the edge-reversal seams. \(\square \)

As demonstrated for the square lattice in Sect. 5.1, if the natural fundamental domain \({\mathbb {L}}_I\) of \({\mathbb {L}}\) has an odd number of vertices, any \((a,b)\times (c,d)\) torus containing an even number of vertices can be obtained using an even-sized fundamental domain: either the \(2\times 1\) torus \({\mathbb {L}}_{2,1}\), the \(1\times 2\) torus \({\mathbb {L}}_{1,2}\), or the \((2,0)\times (1,1)\) torus.

6 Finite-size correction for characteristic polynomials

In this section we prove Theorem 1. For simplicity let us assume that P(zw) has a positive node located at (1, 1), with Hessian expansion (7). We will make no assumptions on the locations of the other (finitely many) nodes, nor will we assume the relation \(P(z,w)=P({{1}/{z}},{{1}/{w}})\)—the theorem for a general finite collection of nodes will then follow by considering \((z,w)\mapsto P(z_0 z,w_0 w)\).

We will make use of the following standard quadrature rules (see e.g. [20, 39]) to approximate sums over discrete subsets of \(\mathbb {T}\) by contour integrals. For f a smooth \(\mathbb {C}\)-valued function on \([x-h,x+h]\subset \mathbb {R}\), write

$$\begin{aligned} \textstyle \mathbf {I}^h f(x) \equiv {\tfrac{1}{2h}} \int _{x-h}^{x+h} f(s)\,ds,\quad \mathbf {A}^h f(x) \equiv {\tfrac{1}{6}} [f(x-h) + 4f(x) + f(x+h)]. \end{aligned}$$

Lemma 6.1

(Quadrature rules) For f a \(\mathbb {C}\)-valued function smooth in a neighborhood of \([-h,h]\), the following hold:

$$\begin{aligned} \textstyle {\tfrac{1}{2h}}\int _{-h}^h f(s)\,ds \!= & {} \! {\tfrac{1}{2}}[f(-h)\!+\!f(h)] -{\tfrac{4 h^2}{12}} f''(\xi ), \quad \text {some }\xi \!\in \!(-h,h) \ \text {(trapezoid rule);}\\ \mathbf {I}^h f(0)= & {} \mathbf {A}^h f(0) - \frac{h^4}{180} f^{(4)}(\xi ), \quad \text {some } \xi \in (-h,h) \ \text {(Simpson's rule).} \end{aligned}$$

If g is a \(\mathbb {C}\)-valued function smooth in a neighborhood of \([x-h,x+h]\times [y-h,y+h]\), we write \({\mathbf {A}^h_j g(x,y)}\) to indicate \(\mathbf {A}^h\) applied to g in the j-th coordinate, and \(\mathbf {A}^h g(x,y)\) to indicate the composition of \(\mathbf {A}^h_1,\mathbf {A}^h_2\) applied to g. Similarly we write \(\mathbf {I}^h g(x,y)\equiv \mathbf {I}^h_1\mathbf {I}^h_2 g(x,y)\); Lemma 6.1 then implies

$$\begin{aligned} |\mathbf {A}^h g(x,y)-\mathbf {I}^h g(x,y)| \le h^4 \sup \{ |(\partial _x^4 + \partial _y^4 ) g(x',y')|: |x'-x|\vee |y'-y|\le h \}. \end{aligned}$$

We turn now to the computation of \(P_E(\zeta ,\xi )\) with \((\zeta ,\xi )\equiv (e^{2\pi i\phi },e^{2\pi i\psi })\). From the double product formula (6), this is the product of \(P(e^{2\pi ir},e^{2\pi is})\) over (rs) in the intersection of the unit square \(\varvec{H}\equiv {[-{\tfrac{1}{2}},{\tfrac{1}{2}})^2}\) with the grid of points \(E^{-1}[(\phi +\mathbb {Z})\times (\psi +\mathbb {Z})]\). Equivalently, define \(F\equiv n E^{-1}\) for a positive scaling parameter n within a constant factor of \((\det E)^{1/2}\), and let \(p_\natural (r,s)\equiv \log P(e^{2\pi ir'},e^{2\pi is'})\) with \((r',s')\) the vector obtained by applying the matrix F to the vector (rs): then

$$\begin{aligned}&\textstyle \log P_E(\zeta ,\xi ) = \sum _{(r,s) \in \varvec{L}} p_\natural (r,s) = \sum _{(r,s) \in \varvec{L}} \mathbf {A}^h p_\natural (r,s), \nonumber \\&\quad \text {where } h\equiv n^{-1}\text { and } \varvec{L}\equiv L^{\phi \psi }_E \equiv (F^{-1}\varvec{H}) \cap h[(\phi +\mathbb {Z})\times (\psi +\mathbb {Z})] \end{aligned}$$

(so \(\varvec{L}\) is a subset of a rectilinear lattice with spacings h).

Remark 6.2

For practical purposes the double product (6) is easily computed as follows: for \(\zeta =\xi =1\), take the product of \(P(e^{2\pi ir},e^{2\pi is})\) over

$$\begin{aligned} \begin{pmatrix} r\\ s \end{pmatrix} = (\det E)^{-1} \begin{pmatrix} yj-vk\\ -xj+uk \end{pmatrix}\quad \text { over } 0\le j < \frac{\det E}{\mathrm {gcd}(x,y)}, \ 0\le k < \mathrm {gcd}(x,y). \end{aligned}$$

(To see that this is valid, note that for each fixed \(k\in \mathbb {Z}\), all j’s map to (rs) pairs which are distinct modulo \(\mathbb {Z}^2\), since clearly \((\det E)^{-1}(yj,-xj)\in \mathbb {Z}^2\) if and only if \((\det E)^{-1}\mathrm {gcd}(x,y)j\in \mathbb {Z}^2\). As (jk) ranges over all \(\mathbb {Z}^2\), (rs) must take exactly \(\det E\) distinct values, and this would fail if any repeats occur in the stated range of k.)

For convenience we hereafter choose n to be an integer within a constant factor of \((\det E)^{1/2}\), sufficiently small such that \(\varvec{H}\) is contained in \(F^{-1}\varvec{H}\), and such that the restriction of \(p_\natural \) to \(\varvec{H}\) is non-vanishing except at the origin—for example this can be accomplished with

$$\begin{aligned} n\equiv h^{-1}\equiv \max \{ j\in \mathbb {Z}_{\ge 1}: \varvec{H}\subseteq j^{-1}E\varvec{H} \text { and } p_\natural |_{\varvec{H}\backslash (0,0)} > -\infty \},\quad F\equiv n E^{-1}. \end{aligned}$$

If P has expansion (7) at the origin with Hessian matrix H, then \(P_\natural \equiv e^{p_\natural }\) at the origin has the transformed Hessian matrix \(H_\square \equiv F^t H F\), whose entries we shall denote \(\varvec{a}_z,\varvec{b},\varvec{a}_w\), with \(\varvec{d}\equiv \sqrt{\det H_\square }=\sqrt{\varvec{a}_z\varvec{a}_w-\varvec{b}^2}>0\). A second-order approximation to \(P_\natural \) near the origin is then given by

$$\begin{aligned} \begin{array}{l} P_\square (z,w) \equiv \beta (z)w+\beta ({{1}/{z}})/w-2\gamma (z),\quad \text {where}\\ \beta (z) \equiv -\varvec{a}_w+\varvec{b}(1-z)\quad \text {and}\quad \gamma (z) \equiv (\varvec{a}_z-\varvec{b}) {\tfrac{1}{2}}(z+{{1}/{z}}) - (\varvec{a}_z+\varvec{a}_w-\varvec{b}). \end{array} \end{aligned}$$

Let \(p_\square \equiv \log P_\square \): we consider both \(p_\natural ,p_\square \) as functions of \((r,s)\in \mathbb {R}^2\); note however that \(p_\natural \) has period \(F^{-1}\varvec{H}\) while \(p_\square \) has period \(\varvec{H}\).

The polynomial \({\tfrac{1}{2}} w P_\square (z,w)\) is quadratic in w, with discriminant \(\gamma (z)^2-\beta (z)\beta ({{1}/{z}})\) which is quadratic in \({x\equiv {\tfrac{1}{2}}(z+z^{-1})}\) with real coefficients. In particular, for \(z\in \mathbb {T}\), \(x={{\mathrm{Re}}}\, z\) and the discriminant is real-valued. The discriminant is minimized over all \(x\in \mathbb {R}\) at \(x_\star = 1 + [\varvec{d}/(\varvec{a}_z-\varvec{b})]^2>1\), hence minimized over \(z\in \mathbb {T}\) at \(z=1\) where it takes value zero. The function \(\gamma \) is linear in x, and is easily checked (using \(\varvec{a}_z\varvec{a}_w>\varvec{b}\)) to be negative at \(x\in \{\pm 1\}\), therefore \(\gamma (z)<0\) for all \(z\in \mathbb {T}\). If \(z\in \mathbb {T}\) with \(\beta (z)=0\), then clearly \(P(z,w)=-2\gamma (z)>0\) for all w. Fixing z with \(\beta (z)\ne 0\), \(P_\square (z,w)\) has roots (in w) given by

$$\begin{aligned} w_\pm (z) \equiv \beta (z)^{-1}[ \gamma (z)\mp \delta (z) ],\quad \delta (z)\equiv \sqrt{\gamma (z)^2-\beta (z)\beta ({{1}/{z}})}\ge 0. \end{aligned}$$

For \(z\in \mathbb {T}\), \(w_+(z)\overline{w_-(z)} = w_+(z)w_-({{1}/{z}})=1\), and \(|w_-(z)|\le 1\le |w_+(z)|\) with strict inequality except at \(z=1\) where \(w_\pm \) both evaluate to 1. In particular, together with (60) this shows that \(P_\natural /P_\square \) is bounded and non-vanishing on \(\varvec{H}\). For \(z=e^{2\pi ir}\) with |r| small, Taylor expanding (62) gives

$$\begin{aligned} w_\pm (z) =1 - {\tfrac{\varvec{b}}{\varvec{a}_w}}(2\pi ir) \pm {\tfrac{\varvec{d}}{\varvec{a}_w}} (2\pi |r|) + O(r^2) =1+\tau _{{\mathrm {re}}}(2\pi ir) \pm \tau _{{\mathrm {im}}}(2\pi |r|) + O(r^2). \end{aligned}$$

The following lemma shows that in large toric graphs \({\mathbb {L}}_E\), any finite-size corrections in the asymptotic expansion of \(P_E(\zeta ,\xi )\) (with \(\zeta ,\xi \in \mathbb {T}\)) depend only on the second-order behavior of the fundamental domain polynomial P(zw) around its nodes—thus, for the purposes of calculating this correction, we may replace \(p_\natural \) near the node with its approximation \(p_\square \). The precise statement is as follows:

Lemma 6.3

In the above setting, let \(\mu \equiv \mu _n\equiv n^{-4/5}\) and \(\varvec{L}_\mu \equiv \varvec{L}\cap [-\mu ,\mu ]^2\). It holds for any \(\varvec{L}_\mu \subseteq \varvec{V}\subseteq \varvec{L}\cap \varvec{H}\) that

$$\begin{aligned} \textstyle \log P_E(\zeta ,\xi ) - (\det E)\,2\mathbf {f}_0+O(n^{-2/5}) = \log \Pi _{\varvec{V}} \equiv \textstyle \sum _{(r,s)\in \varvec{V}} (\mathbf {A}^h-\mathbf {I}^h) p_\square (r,s) \end{aligned}$$


The proof is an application of Simpson’s rule (Lemma 6.1).

Estimates on derivatives. For any smooth function a defined on an interval of \(\mathbb {R}\),

$$\begin{aligned} \textstyle (\log a)^{(4)} =-6 (L_1 a)^4 +12 (L_1 a)^2 (L_2 a) -3 (L_2 a)^2 -4 (L_1 a)(L_3 a) + L_4 a \end{aligned}$$

where \(L_ja\equiv a^{(j)}/a\). If we take \(a_\square ,a_\circ \) to be \(p_\natural , p_\square \) regarded as a function of r only or s only, we find \(|L_j a_\square |+|L_j a_\circ |\lesssim t^{(2-j)\vee 0}/t^2\) where \(t\equiv \Vert (r,s)\Vert \). Substituting into (64) gives

$$\begin{aligned} |\partial _s^4 p_\natural |+|\partial _t^4 p_\natural | +|\partial _s^4 p_\square |+|\partial _t^4 p_\square | \lesssim r^{-4}\quad \text {with } t\equiv \Vert (r,s)\Vert . \end{aligned}$$

Application of Simpson’s rule. From (59),

$$\begin{aligned} \textstyle \log P_E(\zeta ,\xi )-(\det E)\,2\mathbf {f}_0= \sum _{(r,s)\in \varvec{L}} (\mathbf {A}^h-\mathbf {I}^h) p_\natural (r,s). \end{aligned}$$

If P were non-vanishing on \(\mathbb {T}^2\), Simpson’s rule would give that the right-hand side is \(O(n^{-2})\). In the current setting this false, however, combining Simpson’s rule and (65) shows that the total contribution from points outside \(\varvec{L}_\mu \) is small:

$$\begin{aligned} \textstyle \sum _{(r,s)\in \varvec{L}\backslash \varvec{L}_\mu } |(\mathbf {A}^h-\mathbf {I}^h) p_\natural (r,s)| \lesssim n^{-4} \sum _{(r,s)\in \varvec{L}\backslash \varvec{L}_\mu } t^{-4} \lesssim (n\mu )^{-2} = n^{-2/5}. \end{aligned}$$

We also claim that

$$\begin{aligned} \textstyle \sum _{(r,s)\in \varvec{L}\cap \varvec{H}} |(\mathbf {A}^h-\mathbf {I}^h) (p_\natural -p_\square )(r,s)|\lesssim n^{-2/5}. \end{aligned}$$

Indeed the contribution from points outside \(\varvec{L}_\mu \) is is (crudely) \(\lesssim n^{-2/5}\) by the same reasoning as above, recalling (60) that \(\varvec{H}\subseteq F^{-1}\varvec{H}\). Near the origin we do not apply Simpson’s rule, and instead note that \(|(p_\natural -p_\square )(r,s)|\lesssim t\), so that the contribution from \(\varvec{L}_\mu \) is \(\lesssim n^2 \mu ^3 = n^{-2/5}\). Combining these estimates gives the result. \(\square \)

Write \(\varvec{L}\equiv \varvec{L}^1\times \varvec{L}^2\) with \(\varvec{L}^j\) the projection of \(\varvec{L}\) onto the j-th coordinate, and similarly \(\varvec{L}_\mu \equiv \varvec{L}^1_\mu \times \varvec{L}^2_\mu \). Hereafter we take \(\varvec{V}\equiv \varvec{V}_\mu \equiv \varvec{L}^1_\mu \times \varvec{L}^2\subset \varvec{L}\cap \varvec{H}\), and compute the quantity \(\Pi _{\varvec{V}}\) defined in the statement of Lemma 6.3. First note that since \(p_\square \) has period \(\varvec{H}\), \(\Pi _{\varvec{V}}\) may be simplified by summing over the s-coordinate: define

$$\begin{aligned} \begin{array}{rl} p^\mathrm {avg}_\square (r) &{} \equiv n^{-1}\sum \nolimits _{s\in \varvec{L}^2}p_\square (r,s)\\ p^\mathrm {int}_\square (r) &{} \equiv \int _\mathbb {T}p_\square (r,s)\,ds =\log |\beta (e^{2\pi ir})| + \log |w_+(e^{2\pi ir})|, \end{array} \end{aligned}$$

where \(p^\mathrm {int}_\square \) was evaluated by a standard contour deformation argument, recalling (62) and our choice of branch cut for the logarithm. Then

$$\begin{aligned} \begin{array}{rl} \log \Pi _{\varvec{V}} &{}= n\sum \nolimits _{ r \in \varvec{L}^1_\mu } [ \mathbf {A}^hp^\mathrm {avg}_\square (r) - \mathbf {I}^hp^\mathrm {int}_\square (r) ]\\ &{}= \underbrace{\textstyle n\sum _{ r \in \varvec{L}^1_\mu } \mathbf {A}^h (p^\mathrm {avg}_\square -p^\mathrm {int}_\square )(r)}_{\equiv \log \Pi _\vartheta } + \underbrace{\textstyle n\sum _{ r \in \varvec{L}^1_\mu } (\mathbf {A}^h-\mathbf {I}^h)p^\mathrm {int}_\square (r)}_{\equiv \log \Pi _\mathrm {cts}}. \end{array} \end{aligned}$$

Lemma 6.4

Let \(-\zeta = {e^{2\pi i\phi _\star }}\) with \(2\pi \phi _\star \in (-\pi ,\pi ]\). Then

$$\begin{aligned} \log \Pi _{\text {cts }}= (-{\tfrac{1}{6}} + 2 \phi _\star ^2)\log q + O(n^{-1}) \quad \text {with } q\equiv |q_\tau | = e^{-\pi \tau _{{\mathrm {im}}}}. \end{aligned}$$


Abbreviate \(f\equiv p^\mathrm {int}_\square \), regarded as a \(\mathbb {Z}\)-periodic function of \(s\in \mathbb {R}\). It follows from (66) that f is analytic except at \(r\in \mathbb {Z}\) where the roots \(w_+\) and \(w_-\) cross one another. Recalling (60), let \(r_\star \equiv h\phi _\star \), so that \(r_-\equiv r_\star -{\tfrac{h}{2}}\) and \(r_+\equiv r_\star + {\tfrac{h}{2}}\), are the unique pair of adjacent points in \(\varvec{L}_\mu \) with \(r_-\le 0<r_+\). Let \(t_-\equiv r_--h\), \(t_+\equiv r_++h\):

$$\begin{aligned} n^{-1} \log \Pi _\mathrm {cts}= & {} O(n^{-3}) + (\mathbf {A}^h-\mathbf {I}^h) f(r_-) + (\mathbf {A}^h-\mathbf {I}^h) f(r_+) \quad \text {(Simpson's rule)}\\= & {} O(n^{-3}) + {\tfrac{1}{6}} f(t_-) + {\tfrac{5}{6}} f(r_-) + {\tfrac{5}{6}} f(r_+) + {\tfrac{1}{6}} f(t_+)\\&- {\tfrac{1}{2h}}\int _{t_-}^{r_-} f\,ds - {\tfrac{1}{2h}}\int _{r_+}^{t_+} f\,ds - {\tfrac{1}{h}}\int _{r_-}^{r_+} f\,ds\\= & {} O(n^{-2})-{\tfrac{1}{12}} [f(t_-)+f(t_+)] + {\tfrac{7}{12}} [f(r_-)+f(r_+)]\\&- {\tfrac{|r_-|}{2h}} [ f(r_-)+f(0) ] - {\tfrac{|r_-|}{2h}} [ f(r_-)+f(0) ] \quad \text {(trapezoid rule)}. \end{aligned}$$

From (66) and (63), near \(s=0\) we have \(f(s) = \log A_w+ 2\pi \tau _{{\mathrm {im}}}|s| + O(s^2)\). Substituting into the above and simplifying gives

$$\begin{aligned} \log \Pi _\mathrm {cts}+O(n^{-1}) = 2\pi \tau _{{\mathrm {im}}}[ {\tfrac{1}{3}}- {\tfrac{1}{2h^2}}[r_-^2+r_+^2] ] = -\pi \tau _{{\mathrm {im}}}[-{\tfrac{1}{6}} +2 (r_\star /h)^2], \end{aligned}$$

concluding the proof. \(\square \)

Recall \(P_\square (z,w) = \beta (z) w^{-1} (w-w_+(z))(w-w_-(z))\), with \(w_+(z)\overline{w_-(z)}=1\) for \(z\in \mathbb {T}\) (cf. (62)). Combining with (66) gives (with \(z\equiv e^{2\pi ir}\))

$$\begin{aligned} \exp \{np^\mathrm {avg}_\square (r)\} \!= & {} \! \prod \nolimits _{w^n=\xi }P_\square (z,w) \!=\! [-\beta (z) w_+(z)]^n (1 \!-\! \xi w_+(z)^{-n}) (1 \!-\! \xi ^{-1} w_-(z)^n)\\= & {} \exp \{ np^\mathrm {int}_\square (r) \}\, (1 - \xi w_+(z)^{-n}) (1 - \xi ^{-1} w_-(z)^n), \end{aligned}$$

where we used that \(-\beta (z)w_+(z) = |\beta (z)w_+(z)|\) for \(z\in \mathbb {T}\). It is clear from (63) that \(|w_+(z)|^{-n}=|w_-(z)|^{-n} \le \exp \{ -\Omega [(\log n)^2] \}\) for \(z\in \mathbb {T}\) with \(|z-1| \gtrsim n^{-1}(\log n)^2\), so we can ignore the effect of \(\mathbf {A}^h\) in the definition (67) of \(\Pi _\vartheta \), giving

$$\begin{aligned} \textstyle \Pi _\vartheta \exp \{ o(n^{-2}) \} = \exp \{ n \sum _{r\in \varvec{L}^1_\mu } ( p^\mathrm {avg}_\square -p^\mathrm {int}_\square )(r) \} = \prod _{r\in \varvec{L}^1_\mu } |1 - \xi ^{-1} w_-(e^{2\pi ir})^n|^2. \end{aligned}$$

The following lemma computes \(\Pi _\vartheta \). Up to now the error estimates hold uniformly over \(\zeta ,\xi \in \mathbb {T}\), even allowing for dependence on n. In the following, the error blows up if \((\zeta ,\xi )\) approaches too closely to a singularity of \(P_E\).

Lemma 6.5

Let \((e^{2\pi i\phi },e^{2\pi i\psi })\equiv (\zeta ,\xi )\), \((e^{2\pi i\phi _\star },e^{2\pi i\psi _\star })\equiv (-\zeta ,-\xi )\), and write \(\varvec{r}\) for the Euclidean distance between \((\zeta ,\xi )\) and (1, 1). Then

$$\begin{aligned} \Pi _\vartheta =\exp \{ O( n^{-2/5} \varvec{r}^{-1} )\} \Big | \frac{\vartheta _{{\texttt {0} }{\texttt {0} }}( \phi _\star \tau -\psi _\star |\tau ) }{G(q_\tau )} \Big |^2 \end{aligned}$$


For \(r\equiv j/n \in \varvec{L}_\mu \) with \(\mu \equiv n^{-4/5}\), it follows from (63) that

$$\begin{aligned} w_-( e^{2\pi i r} )^n = \exp \{ 2\pi i\tau _{{\mathrm {re}}}j - 2\pi \tau _{{\mathrm {im}}}|j| + O(n^{-3/5}) \}. \end{aligned}$$

Thus the closest approach of the points \(\xi ^{-1}w_-(e^{2\pi ir})^n\) to 1 as r varies over \(\varvec{L}_\mu \) is asymptotically lower bounded by

$$\begin{aligned} \liminf _{n\rightarrow \infty } \inf _{r\in \varvec{L}_\mu } |1-\xi ^{-1}w_-(e^{2\pi ir})^n| \ge | 1-\exp \{ 2\pi i (|\psi |-|\tau _{{\mathrm {re}}}\phi |) -2\pi \tau _{{\mathrm {im}}}|\phi | \} | \gtrsim \varvec{r}. \end{aligned}$$

Combining with the preceding estimate gives

$$\begin{aligned} \textstyle \Pi _\vartheta \exp \{ O( n^{-2/5} \varvec{r}^{-1} )\} = \prod _{r\equiv j/n\in \varvec{L}_\mu } |1-\xi ^{-1} \exp \{ 2\pi i \tau _{{\mathrm {re}}}j-2\pi \tau _{{\mathrm {im}}}|j| \} |^2. \end{aligned}$$

Clearly we can replace the product over \(\varvec{L}_\mu \) by the product over \(\varvec{L}_\infty \equiv h[\phi +\mathbb {Z}]\) with no effect on the overall \(O( n^{-2/5} \varvec{r}^{-1} )\) error bound. From straightforward computation, the product over \(\varvec{L}_\infty \) is exactly the right-hand side: that is

$$\begin{aligned} \Pi _\vartheta \,\exp \{ O( n^{-2/5} \varvec{r}^{-1} )\} = |\varvec{\pi }_\vartheta |^2 \end{aligned}$$

where, writing \(\pi (j)\equiv 1-\xi ^{-1}\exp \{ 2\pi i \tau _{{\mathrm {re}}}j-2\pi \tau _{{\mathrm {im}}}|j| \}\),

$$\begin{aligned} \varvec{\pi }_\vartheta\equiv & {} \prod \nolimits _{j\in \mathbb {N}-1/2} \pi (\phi _\star +j) \overline{\pi (\phi _\star -j)} \\= & {} \prod \nolimits _{j\in \mathbb {N}-1/2} ( 1 + q_\tau ^{2j}\,\exp \{2\pi i ( \tau \phi _\star -\psi _\star )\}) ( 1 + q_\tau ^{2j}\,\exp \{-2\pi i ( \tau \phi _\star -\psi _\star )\}), \end{aligned}$$

which equals \(G(q_\tau )^{-1} \vartheta _{{\texttt {0} }{\texttt {0} }}(\tau \phi _\star -\psi _\star |\tau )\) by (27). \(\square \)

Proof of Theorem 1

Recall that we assumed throughout this section that P has a node at (1, 1). By the argument of Lemma 6.3 applied to \((z,w)\mapsto P(z_j z,w_j w)\), \(P_E(\zeta ,\xi )\) is (up to \(\exp \{O(n^{-2/5})\}\) multiplicative error) \(e^{(\det E)\,2\mathbf {f}_0}\) times a product of factors \(\Pi _{\varvec{V}}^j\), one for each node \((z_j,w_j)\) (\(1\le j\le \ell \)) of P on \(\mathbb {T}^2\). We decomposed \(\Pi _{\varvec{V}}=\Pi _{\text {cts }}\Pi _{\vartheta }\) (67); combining Lemmas 6.4 and 6.5 then gives

$$\begin{aligned} \textstyle P_E(\zeta ,\xi ) =\exp \{ O(n^{-2/5}\varvec{r}^{-1}) \}\, \exp \{(\det E)\,2\mathbf {f}_0\}\, \prod _{j=1}^\ell {\varvec{\Xi }}(\zeta ,\xi |\tau _j)^2, \end{aligned}$$

with \(\varvec{r}\equiv \min _{1\le j\le \ell } \Vert (\zeta ,\xi )-(z_j^u w_j^v,z_j^x w_j^y)\Vert \), concluding the proof. \(\square \)