1 Overview

1.1 Notation

We first fix some notation and recall some basic facts. Let V be a Euclidean space of dimension n with inner product \(\langle \cdot ,\cdot \rangle \) and let \(\Lambda \) be a lattice in V of rank n. For a linear subspace \(S\subseteq V\), the set \(\Lambda \cap S\) is a lattice in S, called the induced lattice in S. A (strict) tiling of a set \(A\subseteq V\) is a family of subsets of A that cover A and have pairwise empty intersections. A fundamental domain for a sublattice \(L\subseteq \Lambda \) is a connected and bounded subset \(T\subseteq \text{ lin }(L)\) of the linear hull of L, such that the family of translations \(\{x+T: \ x\in L\}\) is a tiling of \(\text{ lin }(L)\). We further require the intersection of T with any affine subspace to be measurable.

The affine hull\(\text{ aff }(A)\) of a subset \(A\subseteq V\) is the smallest affine space containing A. We will mainly work with affine spaces \(x+S\) which are translates of a linear subspace S by lattice vectors \(x\in \Lambda \). Here, the sublattice \(\Lambda \cap S\) in S is assumed to be of maximal possible rank \(\dim S\). In these affine spaces the relative volume or lattice volume\(\text{ vol }(A)\) of a set A is defined as the Lebesgue measure, normalized in a way that a fundamental domain of \(\Lambda \cap S\) has volume 1.

We assume the reader to be familiar with basics about polyhedra and polytopes as, for instance, provided in Ziegler (1997). For a polyhedron \({\mathcal {P}}\), we consider its face lattice, that is, the partially ordered set consisting of all faces of \({\mathcal {P}}\) with order given by inclusion, where we consider \({\mathcal {P}}\) as a face of itself. We denote the order by \(\le \) and write \(f<g\) for faces fg of \({\mathcal {P}}\) if we want to exclude the case \(f=g\). The face lattice is a combinatorial lattice, since for every two faces fg there exist a unique least upper bound \(f\vee g\) called join and a unique greatest lower bound \(f\wedge g\) called meet. \(f\vee g\) ist the smallest face that contains both f and g, and \(f\wedge g\) is given by the intersection \(f\cap g\). Here, we formally consider the empty set as a face of \({\mathcal {P}}\). Since we never use it, we shorten notation by always implying \(f\ne \varnothing \) whenever we talk about faces \(f\le {\mathcal {P}}\).

Fig. 1
figure 1

Triangle (simplex) S with faces; normal cones of S; polar cones of certain normal cones

A rational cone is a set that is defined by finitely many homogeneous inequalities with rational coefficients with respect to a lattice basis. A cone is called pointed if it does not contain any nontrivial linear subspace. Let f be the face of a polyhedron \({\mathcal {P}}\). The (outer) normal cone\(N_f\) of P at f is defined as

$$\begin{aligned} N_f:=\{ x\in V : \langle x, y-s\rangle \le 0 \, \, \forall y\in {\mathcal {P}}\} \end{aligned}$$

for any vector s in the relative interior of f, i.e. the interior with respect to the affine hull \(\text{ aff }(f)\). It can be shown that this definition does not depend on the choice of s. If \({\mathcal {P}}\) is full dimensional, then all normal cones are pointed cones. The polar cone\(C^\vee \) of a cone C is defined as

$$\begin{aligned} C^\vee := \{ x\in V : \langle x, y\rangle \le 0 \, \, \forall y\in C\}. \end{aligned}$$

It contains the linear subspace \(C^\perp :=\{ x\in V : \langle x, y\rangle = 0 \, \, \forall y\in C\}\) that we call the orthogonal space of C. Given a face f of a polyhedron P, the polar cone \(N_f^\vee \) of the normal cone \(N_f\) is in the literature often referred to as the cone of feasible directions (cf. Barvinok 2008; Berline and Vergne 2007). An example is given in Fig. 1.

1.2 Local Ehrhart formulas

Let \({\mathcal {P}}\) be a lattice polytope, that is, \({\mathcal {P}}={{\,\mathrm{conv}\,}}(v_1, \ldots , v_m)\) for some \(v_1, \ldots , v_m\in \Lambda \). The Ehrhart polynomial\(\text{ E }_{{\mathcal {P}}}\) of \({\mathcal {P}}\) is the function that maps a nonnegative integer \(t\in {\mathbb {Z}}_{\ge 0}\) to the number of lattice points in the tth dilate \(t{\mathcal {P}}\) of \({\mathcal {P}}\). It was proven by Ehrhart (1962) that this function is indeed a polynomial of degree \(d:=\dim ({\mathcal {P}})\):

$$\begin{aligned} \text{ E }_{{\mathcal {P}}}(t):=|t{\mathcal {P}}\cap \Lambda | = e_dt^d+e_{d-1}t^{d-1}+\cdots +e_1t+e_0, \end{aligned}$$

with \(e_d, \ldots , e_0\in {\mathbb {Q}}\). The Ehrhart polynomial plays an important role in areas such as combinatorics, integer linear programming and algebraic geometry (see for instance Beck and Robins 2015). It is known that \(e_0=1\), that the highest coefficient \(e_d\) is the relative volume of \({\mathcal {P}}\) and the second highest coefficient \(e_{d-1}\) equals half the sum of relative volumes of facets of \({\mathcal {P}}\). In dimension \(d=2\), this gives a full description of the polynomial, generally known as Pick’s formula (Pick 1899). The knowledge about the remaining coefficients in higher dimensions is still very limited. In 1975, in the context of toric varieties, Danilov (1978) asked whether it is possible to determine the ith coefficient \(e_i\) as a weighted sum of relative volumes of the i-dimensional faces of \({\mathcal {P}}\), where the weights only depend on the normal cone of the faces. That such weights do indeed exist was proved by McMullen in McMullen (1983) (as a variation of his Theorem 2 with adjustments explained in Section 6 of McMullen (1983) and some of the proofs in McMullen (1978)). Ten years later this was also proved by Morelli (1993) in the context of toric varietes. We note that these existence proofs are not constructive, Morelli however also gave a construction where the weights are rational functions on certain Grassmanians (cf. Pommersheim and Thomas (2004)). The first practical construction with rational values was given by Pommersheim and Thomas in Pommersheim and Thomas (2004). In any case, the weights are far from being unique, which gives rise to the following definition.

Definition 1

A real valued function \(\mu \) on rational cones in V is called a local formula for Ehrhart coefficients (or local formula for short), if for any lattice polytope \({\mathcal {P}}\) with Ehrhart polynomial \(\text{ E }_{{\mathcal {P}}}(t)=e_d t^d+e_{d-1}t^{d-1}+\cdots + e_1t+e_0\), we have

$$\begin{aligned} e_i=\sum _{\begin{array}{c} f \le {\mathcal {P}}\\ \dim (f)=i \end{array}} \mu (N_f) \text{ vol }(f), \end{aligned}$$

for all \(i\in \{0,\ldots , d\}\).

Since he was the first one to show the existence, local formulas are also called McMullen’s formulas. The normal cones of the faces of a polytope do not change when taking a dilate by an integer \(t\in {\mathbb {Z}}_{\ge 0}\). The relative volume of a face f, however, is homogeneous of degree \(\dim (f)\), \(\text{ vol }(tf)=t^{\dim (f)} \cdot \text{ vol }(f) \). For a function \(\mu \) on rational cones in V, being a local formula for Ehrhart coefficients is thus equivalent to

$$\begin{aligned} |t{\mathcal {P}}\cap \Lambda | = \sum _{f\le {\mathcal {P}}} \mu (N_f)\text{ vol }(tf), \end{aligned}$$
(1)

for all lattice polytopes \({\mathcal {P}}\) and all \(t\in {\mathbb {Z}}_{\ge 0}\). Note that for \(t=0\) the relative volumes of the right hand side vanish for all faces except the vertices. Since both sides of this equation are polynomials, it suffices to show equality for a finite number of values for t. We will use this fact to show that a function is a local formula by showing that equality holds for all sufficiently large t.

The word ’local’ in the definition is justified, because the function \(\mu \) only depends on the normal cone of the face. That means the only information taken from the face is its affine hull, respectively the class of parallel affine spaces it belongs to. In particular, \(\mu \) does neither depend on the size or the shape of a face, nor on its boundary or other parts of the polytope. Advantages of such a local formula are immediate: Properties like positivity of the Ehrhart coefficients can be deduced from the values of \(\mu \), without computing the actual coefficients as attempted in Castillo and Liu (2015). Moreover, the values stay the same for all faces with the same normal cone, so that computations can be done for a whole class of polytopes at once. For example, the computations of \(\mu \) for the regular permutohedron give the values of all generalized permutohedra as defined in Postnikov et al. (2008).

Constructions of local formulas have been given by Pommersheim and Thomas (2004) and by Berline and Vergne (2007). While the first is obtained from an expression for the Todd class of a toric variety, the second depends on the construction of certain differential operators. We note that Pommersheim and Thomas also take the normal cone as input for their local formula, while Berline and Vergne use the transverse cone of a face, which is an affine version of the cone of feasible directions modulo its contained linear subspace.

1.3 Main results

In this paper, we develop an infinite class of local formulas for Ehrhart coefficients. In contrast to the previous constructions it is elementary in the sense that all information is attained by considering sums and differences of relative volumes. At this point it is unclear but possible that other known formulas can be reproduced using our construction. In any case, our construction does allow a greater variety. In Example 2 for instance we show that irrational values can occur, in contrast to the local formulas by Pommersheim and Thomas (2004) and by Berline and Vergne (2007). If desired, it is easily possible though to restrict our local formulas to rational values as well. A computational advantage is that our construction does not rely on simplicial (cf. Pommersheim and Thomas 2004) or even unimodular triangulations of cones (cf. Berline and Vergne 2007).

We first restrict to the case that the considered rational cones are pointed and the lattice polytopes are full dimensional. For a pointed rational cone C, we first assign a subset of V that we want to call region of C, denoted by R(C). The construction of this region is quite involved, a thorough description is given in Sect. 2.

Using the region R(C), we want to determine the value \(\mu (C)\). To give an intuition how this can be achieved, we interpret the number of lattice points in \(t{\mathcal {P}}\) as the volume of all translates of a fundamental domain T of \(\Lambda \) by the lattice points in \({\mathcal {P}}\):

$$\begin{aligned} |\Lambda \cap t{\mathcal {P}}| = \sum _{x\in \Lambda \cap t{\mathcal {P}}} \text{ vol }(x+T) = \text{ vol }\underbrace{((\Lambda \cap t{\mathcal {P}})+T)}_{=:\text{ DC }(t{\mathcal {P}})}. \end{aligned}$$
(2)

The first equation holds, since by definition \(\text{ vol }(T)=1\) for any fundamental domain T of \(\Lambda \), and the second equation follows from \((x+T)\cap (y+T) = \varnothing \) for all \(x,y\in \Lambda \) with \(x\ne y\). We call the set \(\text{ DC }(Q) :=(\Lambda \cap Q)+T\) a (fundamental) domain complex of the polyhedron Q.

Fig. 2
figure 2

Left: the covering domain complex of the dilated triangle 4S (light and dark grey) and its domain complex (light grey); right: tiling of \(\text{ CDC }(4S)\) by regions corresponding to the normal cones of S

To determine the values of \(\mu \) properly, we will need correcting terms computed outside of the domain complex. This leads to the following definition of the covering domain complex of a polyhedron Q, short \(\text{ CDC }(Q) \) as

$$\begin{aligned} \text{ CDC }(Q) := \bigcup _{\begin{array}{c} x\in \Lambda \\ (x+T)\cap Q\ne \varnothing \end{array}} (x+T). \end{aligned}$$

It covers Q and can be seen as an upper bound of the domain complex, see Fig. 2, left.

The most important property of the regions will be the following: Let \({\mathcal {P}}\) be a full dimensional lattice polytope and \(f\le {\mathcal {P}}\) a face. For \(t\in {\mathbb {Z}}_{>0}\) we define the set \({\mathcal {X}}(tf)\) of all feasible lattice points intf as the finite set of lattice points in the dilated face tf that are ’far enough’ from its boundary (a precise definition can be found in Sect. 2). Then we have a tiling of the covering domain complex into regions:

Theorem 1

(Tiling) Let \({\mathcal {P}}\subseteq V\) be a full dimensional lattice polytope. There exists a \(t_0\in {\mathbb {Z}}_{>0}\) such that for each \(t\ge t_0\) we have a tiling of \(\text{ CDC }(t{\mathcal {P}})\) into translated regions of the form

$$\begin{aligned} \{x+R(N_f) : \; f\le {\mathcal {P}}, \, x\in {\mathcal {X}}(tf)\}. \end{aligned}$$

See Fig. 2 (right) for an example in dimension 2 (cf. Sect. 3, Example 3).

By taking the volume of the respective part of the domain complex in each region of the tiling in Theorem 1 (cf. Fig. 2, right), we get

$$\begin{aligned} |\Lambda \cap t{\mathcal {P}}|= \text{ vol }(\text{ DC }(t{\mathcal {P}})) = \sum _{f\le {\mathcal {P}}} \sum _{x\in {\mathcal {X}}(tf)}\underbrace{ \text{ vol }\big ( (x+R(N_f)) \cap \text{ DC }(t{\mathcal {P}}) \big )}_{(*)}. \end{aligned}$$
(3)

It turns out (cf. Sect. 5) that (\(*\)) can be defined only in terms of the cone \(N_f\) which leads to the definition of \(v_C\), the DC-volume in R(C), for pointed rational cones C:

$$\begin{aligned} v_{C}:= \text{ vol }\big ( R(C) \cap \text{ DC }(C^\vee ) \big ). \end{aligned}$$
(4)

For an illustration, see Fig. 3.

Fig. 3
figure 3

Values for the DC-volume \(v_C\) for normal cones \(C=N_f\) of certain faces f of the triangle S

This already looks a lot like a local formula, especially since \(|{\mathcal {X}}(tf)|\) behaves like \(\text{ vol }(t f)\) in the limit \(t\rightarrow \infty \). In fact, \(|{\mathcal {X}}(tf)|\) equals \(|\Lambda \cap tf|\) minus some lower order terms. To achieve exactness, we use \(v_C=v_{N_f}\) together with a correction volume defined by

$$\begin{aligned} w^C_K:=\text{ vol }(R(C) \cap (K^\perp \cap C^\vee )) \end{aligned}$$
(5)

for faces \(K<C\). Exemplary values with illustrations are given in Fig. 4. Note that unlike \(v_C\), the correction term \(w^C_K\) measures a volume in \(K^\perp \), which is only full-dimensional if K is the trivial cone\(C_0:=\{0\}\). Note that here \(N_{{\mathcal {P}}}=\{0\}\), since for the moment we are still assuming \({\mathcal {P}}\) to be full dimensional.

Fig. 4
figure 4

Values for the correction volume \(w^C_K\) with \(C=N_f\) and \(K=N_g\) for certain faces \(f<g\) of S

Equation (3) thus yields

$$\begin{aligned} |\Lambda \cap t{\mathcal {P}}|= \sum _{f\le {\mathcal {P}}} \sum _{x\in {\mathcal {X}}(tf)} v_{N_f} = \sum _{f\le {\mathcal {P}}} v_{N_f} \cdot |{\mathcal {X}}(tf)|. \end{aligned}$$
(6)

Using these notations, the function \(\mu \) can be defined on pointed rational cones in V. We define it by induction on the dimension of the cone, starting with the trivial cone \(C_0=~\{0\}\) by setting

$$\begin{aligned} \mu (C_0):=1. \end{aligned}$$
(7)

For a pointed rational cone \(C\subseteq V\) with \(\dim (C)\ge 1\), we define

$$\begin{aligned} \mu (C):=v_C - \sum _{K< C} w^C_K \cdot \mu (K). \end{aligned}$$
(8)

For a rational cone \(C\subseteq V\) that is not pointed, but contains a maximal nontrivial linear subspace U, we can consider the pointed cone \(C':=C\cap U^\perp \) in \(U^\perp \), where we consider \(U^\perp \) as a Euclidean space equipped with the induced inner product and the lattice \(\Lambda \cap U^\perp \). We can then construct \(R(C') \subseteq U^\perp \) and set

$$\begin{aligned} \mu (C):=\mu (C'). \end{aligned}$$

That leads us to the main result of this work:

Theorem 2

(Local Formula) The function \(\mu \) on rational cones in V as defined in Eqs. (7) and (8) is a local formula for Ehrhart coefficients.

The given construction for local formulas has several nice properties. It is more basic than previous constructions in the sense that it is based on basic notions from polyhedral geometry. In a way, it hereby also gives a geometric meaning to the coefficients of the Ehrhart polynomial.

Another nice property of the construction is the freedom of choice of a fundamental domain in each occurring sublattice. An interesting observation is, for example, that this construction also allows irrational values, which can be achieved simply by taking a fundamental domain and shifting it by an irrational vector. This shows that the range of this construction is wider than the one of others previously known. It is yet to be determined how extensive this variety actually is, whether, for example, hitherto existing constructions can be described in terms of our construction using certain fundamental domains. In Castillo and Liu (2015) it is shown that all local formulas that are invariant under the standard action of the symmetric group must agree on certain polytopes that are invariant with respect to this action themselves. As described in Sect. 2, a natural choice for fundamental domains are the so-called Dirichlet–Voronoi cells that depend on a chosen inner product. Given the lattice \({\mathbb {Z}}^n\subseteq {\mathbb {R}}^n\), and taking the Dirichlet–Voronoi cell given by the standard inner product, one gets a fundamental domain and thus a local formula that is symmetric about the origin. This principle can be extended to other symmetries and, as we will discuss in Sect. 3, it leads to new possibilities to exploit symmetries in given polytopes.

Other local formulas (McMullen 1983; Morelli 1993; Pommersheim and Thomas 2004; Berline and Vergne 2007) are known to have the nice property of being a valuation, that is, they satisfy

$$\begin{aligned} \mu (C \cup K) + \mu (C\cap K) = \mu (C) + \mu (K) \end{aligned}$$

for convex rational cones such that \(C\cup K\) is also a convex rational cone. We conjecture that our function \(\mu \) is a valuation as well. However, a proof of this property seems non-trivial at this point. In contrast to other local formulas we do not need the valuation property for our proofs or the computation of \(\mu \).

As for other known constructions of local formulas, ours can be extended to rational polytopes P: Given the normal cone \(N_f\) and the translation class \({{\,\mathrm{trl}\,}}(f)\) for each face f of P, the construction can be adjusted such that

$$\begin{aligned} |P\cap \Lambda |=\sum _{f\le P}\mu (N_f, {{\,\mathrm{trl}\,}}(f)) \text{ vol }(f), \end{aligned}$$

which yields a formula for the Ehrhart quasi-polynomials of a rational polytope. A more involved proof of this property is in progress and will be presented in Ring (2019).

Our paper is organized as follows. In Sect. 2 we give a construction of regions for pointed rational cones based on a choice of fundamental domains. We introduce an important class of examples coming from Dirichlet–Voronoi cells of lattices. In Sect. 3 we then give several descriptive, two-dimensional examples with concrete values for \(\mu \). Moreover, we describe a canonical way to exploit symmetries using certain Dirichlet–Voronoi cells. In Sect. 4, we give a proof for Theorem 1, showing that a tiling of \(\text{ CDC }({\mathcal {P}})\) can be gained from translates of regions corresponding to normal cones of a full dimensional lattice polytope \({\mathcal {P}}\). In Sect. 5 we close with a proof of Theorem 2, showing that the constructed functions \(\mu \) on rational cones are indeed local formulas.

2 Construction of regions

The construction of regions that we use to define the local formula \(\mu \) is based on the choice of fundamental domains, not only for \(\Lambda \), but for all occurring induced sublattices. Different fundamental domains form different regions and ultimately result in different local formulas.

By definition, fundamental domains (for the lattice \(\Lambda \) considered as an additive group acting on V by translation) have the property that every \(\Lambda \)-orbit of V meets T in exactly one point. Besides being bounded and connected, we further require our fundamental domains to contain 0, which we obtain by translating an arbitrary fundamental domain by the negative of the unique lattice point it contains. We make this assumption to simplify notation considerably, but it can actually be omitted, which we will briefly discuss in Sect. 3 after Example 2.

Example

An important family of examples of fundamental domains are Dirichlet–Voronoi cells. Given a space V and an inner product \(\langle \cdot ,\cdot \rangle \) with induced norm \(\Vert \cdot \Vert \), the Dirichlet–Voronoi cell of a sublattice \(L \subseteq \Lambda \) is defined as

$$\begin{aligned} {{\,\mathrm{DV}\,}}(L, \langle \cdot ,\cdot \rangle ):=\{x\in \text{ lin }(L) : \Vert x\Vert \le \Vert x-a\Vert \text{ for } \text{ all } a\in L\}. \end{aligned}$$

In this definition, it is not yet a fundamental domain of the lattice L, since it is closed and thus translates by lattice points can intersect on the boundary.

However, by considering the Dirichlet–Voronoi cell half open, it can be seen as a fundamental domain of the lattice. In Fig. 5, two different Dirichlet–Voronoi cells in \({\mathbb {R}}^2\) with lattice \({\mathbb {Z}}^2\) are given. They correspond to the standard inner product and the inner product \(\langle x,y\rangle = x^tGy\) defined by the Gram matrix \(G=\begin{pmatrix}2&{}1\\ 1&{}2\end{pmatrix}\), respectively.

Fig. 5
figure 5

Square and hexagonal Dirichlet–Voronoi cells of \({\mathbb {Z}}^2\)

For a pointed rational cone C in V, let \(L(C):=\Lambda \cap C^\perp \) be the induced lattice in \(C^\perp \) and let \(T(C)\subseteq C^\perp \) be a fundamental domain of L(C). If we consider the domain complex as illustrated in Fig. 2 on the left, we see that the structure of the domain complex is periodic with respect to lattice translations from L(C). To obtain these periodicities, we build the regions as part of the strip \(\text{ lin }(C)+T(C)\). For each face K of C, we further cut out all translates of regions R(K) that ’fit properly’ into \(C^\vee \). A thorough definition of the inductive construction of the regions is given below. The definition is somewhat technical. As an example, we give a detailed picture for two rational cones of different dimension in \({\mathbb {R}}^2\) in Fig. 6.

Construction

Let C be a pointed rational cone in V. If \(C=C_0=\{0\}\) is the trivial cone, we set

$$\begin{aligned} R(C_0):=T(C_0). \end{aligned}$$

Otherwise, if \(\dim (C)\ge 1\), we assume we have constructed all regions R(K) for faces \(K<C\). Let \(X_K^C\) be the set of all points x in L(K) that satisfy:

  1. (I)

    \(x+R(K) \subseteq {{\,\mathrm{int}\,}}(M^\vee )\)    for all rays \(M \le C\) with \(M\nleq K\) and

  2. (II)

    \(\left( x+ R(K) \right) \cap \left( x'+ R(K')\right) = \varnothing \)     for all \(K'<C\), with \(K'\) incomparable to K and \(x'\in L(K')\).

Then we define the region R(C) of C as

$$\begin{aligned} R(C):=\left( V\backslash \bigcup _{K<C} \left( X_K^C+R(K)\right) \right) \cap \left( T(C) + \text{ lin }(C)\right) \cap \text{ CDC }(C^\vee ). \end{aligned}$$
(9)
Fig. 6
figure 6

Construction of the regions \(R(N_{f_1})\) and \(R(N_{v_2})\) for the 1-dim. cone \(N_{f_1}\) (above) and the 2-dim. cone \(N_{v_2}\) (below)

Note that R(C) is a piecewise linear set, respectively a union of finitely many convex polyhedra (a polyhedral complex). Therefore the values \(v_C\) and \(w^C_K\) (cf. (4) and (5)) in the definition of \(\mu (C)\) in (8) are obtained from volume computations of finitely many convex polyhedra. In a sense, we hereby also obtain a kind of geometric interpretation for the Ehrhart coefficients.

3 Computations, symmetry and examples

In this section we will go into computational considerations, give some easy examples that illustrate our construction of local formulas and show how symmetries can be taken advantage of.

3.1 Computation

Our constructions rely heavily on the computation of volumes. Given either a vertex- or a halfspace-representation of the polytope, the theoretical complexity of the volume computation problem is known to be \(\#P\)-hard, see Dyer and Frieze (1988). The complexity is unknown in the case that both, the vertex- and the halfspace-representation are provided (cf. Büeler et al. 2000). Nevertheless, for practical applications there are a lot of elaborated implementations for computing volumes using triangulations and signed decompositions, respectively as in Cohen and Hickey (1979), Lasserre (1983), Lawrence (1991). For a practical realization of our construction it is also necessary to compute shortest vectors, cf. Micciancio and Goldwasser (2002). At this point, we have a working prototype implementation in SageMath (2016). By default it computes values of \(\mu \) based on Dirichlet–Voronoi cells (definition see Section Symmetry below) and performs well up to dimension 4. The program does not yet fully utilize the optimized algorithms and is handling the operations on non-convex regions in a rather naive way, such that there is a lot of room for improvement. As mentioned before, a beneficial property of our construction is that it does not rely on simplicial (cf. Pommersheim and Thomas 2004) or even unimodular triangulations of cones (cf. Berline and Vergne 2007). However, for the construction of Berline and Vergne (2007), it can be shown that the \(\mu \)-values can be computed in polynomial time with respect to the dimension d of the polytope as long as the codimension \(\dim (P)-\dim (f)\) for the face f is fixed (cf. Barvinok 1994 and Barvinok 2008). As our construction is based on volume computations of d-dimensional polytopes we do not expect such a complexity result to hold.

Fig. 7
figure 7

Tiling by regions from Examples 12 and 4, respectively

In the following examples, a lattice polytope \({\mathcal {P}}\) is given as the convex hull of specific lattice points. But since translation by lattice points and dilation by a positive integer do not change the values of \(\mu \), we will not show a coordinate system in our figures. In fact, since the tiling from Theorem 1 demands a certain dilation and since the structure of the tiling becomes clearer for larger dilations, in the following examples we give all figures of \({\mathcal {P}}\) dilated by a factor of at least 3.

Example 1

Let \(V={\mathbb {R}}^2\), \(\Lambda ={\mathbb {Z}}^2\) and \({\mathcal {P}}=H:={{\,\mathrm{conv}\,}}\{(0,0),(1,0),(1,1),(0,1)\}\), the unit square. Let \(\langle \cdot , \cdot \rangle \) be the standard inner product. We take a Dirichlet–Voronoi cell as a fundamental domain of \({\mathbb {Z}}^2\) and also of all sublattices. Then \(D:={{\,\mathrm{DV}\,}}({\mathbb {Z}}^2, \langle \cdot , \cdot \rangle )\) is a square as shown on the left of Fig. 5 and for a one dimensional subspace \(U\subseteq {\mathbb {R}}^2\), \(D(U):={{\,\mathrm{DV}\,}}(U\cap {\mathbb {Z}}^2, \langle \cdot , \cdot \rangle )\) is the segment with vertices being midpoints between the origin and its two neighboring lattice points. From Theorem 1 we get the regions as shown on the left of Fig. 7. Since the symmetries of the Dirichlet–Voronoi cell and of H are the same, we get the same values for all faces with the same dimension for reasons that are discussed below. The values of \(\mu \) for the normal cones \(N_f\) of faces \(f\le H\) are then:

$$\begin{aligned} \begin{array}{ c | c c c c c c c } \dim (f) &{} 2 &{} 1 &{} 0 \\ \hline \mu (N_f) &{} 1 &{} \frac{1}{2} &{} \frac{1}{4} \\ \end{array} \end{aligned}$$
(10)

That yields the Ehrhart coefficients \(e_2 = 1\), \(e_1= 2\) and \(e_0=1\).

Example 2

As above, let \(V={\mathbb {R}}^2\), \(\Lambda ={\mathbb {Z}}^2\) and \({\mathcal {P}}=H\) be the unit square. We again take the standard inner product, but as a fundamental domain we take \(D_\eta \) instead of D, which is a translate by \((\eta , 0)\) of the fundamental domain from the previous example, \(D_\eta :=D+(\eta ,0)\), where \(\eta \in {\mathbb {R}}\) is any real number with \(-\frac{1}{2}<\eta <\frac{1}{2}\). For the sublattice \(\text{ lin }((0,1))\cap {\mathbb {Z}}^2\) we take the usual Dirichlet–Voronoi cell and for the sublattice \(\text{ lin }((1,0)) \cap {\mathbb {Z}}^2\) we again take the translate of the Dirichlet–Voronoi cell by \((\eta ,0)\). We then get a tiling by regions as shown in the middle of Fig. 7. The resulting (possible irrational) values for \(\mu \) are:

$$\begin{aligned} \begin{array}{ l || c | c | c | c | c } \text{ face } f &{} T &{} f_1 , f_2 &{} f_3 , f_4 &{} v_1 , v_2 &{} v_3 , v_4 \\ \hline \mu (N_f) &{} 1 &{} \frac{1}{2}+\eta &{} \frac{1}{2}-\eta &{} \frac{1}{4}+\frac{1}{2}\eta &{} \frac{1}{4}-\frac{1}{2}\eta \\ \end{array} \end{aligned}$$
(11)

This example shows that irrational values are actually possible, showing a difference to all previous constructions of local formulas which have rational values only.

Remark

It is actually possible to drop the assumption made in Sect. 2, that 0 is contained in each fundamental domain. The parts that change in the proofs are mainly that \({\mathcal {X}}(tf)\) is not necessarily contained in tf, but only in the affine span \(\text{ aff }(tf)\) and the chosen radii in the proof of Lemma 3 might get larger, but are still finite.

The values for \(\mu \) in Example 2 are therefore also applicable for \(\eta \in {\mathbb {R}}\) arbitrary, which in particular allows the values to be negative even for the easy example of the unit square.

Example 3

Let \(V={\mathbb {R}}^2\), \(\Lambda ={\mathbb {Z}}^2\) and \({\mathcal {P}}=S\), the triangle (simplex) shown on the left of Fig. 1. We can think of S as the triangle that is the convex hull of the vertices \(v_1=(1,0)\), \(v_2=(2,1)\) and \(v_3=(0,2)\). On the right hand side of Fig. 2, one can see the tiling of \(4\cdot S\) by regions that we get if we choose the Dirichlet–Voronoi cell with respect to the standard inner product in \({\mathbb {R}}^2\). Figures 3 and 4 show some values for the DC-volume and the correction volume which determine the values for \(\mu \):

$$\begin{aligned} \begin{array}{ l | c c c c c c c } \text{ face } f &{} S &{} f_1 &{} f_2 &{} f_3 &{} v_1 &{} v_2 &{} v_3 \\ \hline \mu (N_f) &{} 1 &{} \frac{1}{2} &{} \frac{1}{2} &{} \frac{1}{2} &{} \frac{3}{8} &{} \frac{3}{8} &{} \frac{1}{4} \\ \end{array} \end{aligned}$$
(12)

3.2 Symmetry

In Example 1 it was possible to use the standard inner product and get the same values for each face in the same dimension. This principle can easily be generalized using suitable Dirichlet–Voronoi cells.

Let \({\mathcal {P}}\) be a lattice polytope and \({\mathcal {G}}\) a subgroup of all lattice symmetries of \({\mathcal {P}}\), i.e. \({\mathcal {G}}\) is a finite matrix group with \(A\cdot {\mathcal {P}}:=\{A\cdot x: x\in {\mathcal {P}}\}={\mathcal {P}}\) and \(A\cdot \Lambda = \Lambda \) for all \(A\in {\mathcal {G}}\). Then we can define a \({\mathcal {G}}\)-invariant inner product by taking

$$\begin{aligned} \langle x,y\rangle _{\mathcal {G}}:=x^t G y \quad \text{ for } \text{ all } x,y\in V, \end{aligned}$$
(13)

with the Gram matrix G given by

$$\begin{aligned} G:= \frac{1}{|{\mathcal {G}}|} \sum _{A\in {\mathcal {G}}} A^tA. \end{aligned}$$
(14)

Let \(\Vert \cdot \Vert _{\mathcal {G}}\) be the induced norm and let D be the Dirichlet–Voronoi cell for \(\Lambda \) given by the inner product,

$$\begin{aligned} D:={{\,\mathrm{DV}\,}}(\Lambda , \langle \cdot ,\cdot \rangle _{\mathcal {G}})=\{x\in V : \Vert x\Vert _{\mathcal {G}}\le \Vert x-p\Vert _{\mathcal {G}} \text{ for } \text{ all } p\in \Lambda \}. \end{aligned}$$

Then D is invariant under the action of \({\mathcal {G}}\): Let \(x\in D\), then for \(A\in {\mathcal {G}}\) we have

$$\begin{aligned} \Vert Ax\Vert _{\mathcal {G}}= \Vert x\Vert _{\mathcal {G}}\le \Vert x- p\Vert _{\mathcal {G}}= \Vert A x - A p\Vert _{\mathcal {G}}\qquad \text{ for } \text{ all } p \in \Lambda . \end{aligned}$$

Since \( A \Lambda = \Lambda \), we get \(AD\subseteq D\) for all \(A\in {\mathcal {G}}\). Substituting A by \(A^{-1}\), we get \(A^{-1} D\subseteq D \) which yields \( D\subseteq AD\) and hence \(AD=D\). Similarly, we see that for all faces f in the same \({\mathcal {G}}\)-orbit the normal cones and Dirichlet–Voronoi cells in \(\Lambda \cap N_f^\perp \) are mapped onto each other. Hence, the used regions are invariant under the action of \({\mathcal {G}}\) and \(\mu \) is constant on \({\mathcal {G}}\)-orbits.

Example 4

Again, let \(V={\mathbb {R}}^2\), \(\Lambda ={\mathbb {Z}}^2\) and \({\mathcal {P}}=S\) as in the previous example. One might notice that S is invariant under the action of the group \({\mathcal {G}}=\langle \begin{pmatrix} 0&{}1\\ -1 &{} -1\end{pmatrix}\rangle \) of order 3. An invariant inner product \(\langle x,y\rangle _{\mathcal {G}}= x^tGy\) is defined by the Gram matrix \(G= \begin{pmatrix}2&{}1 \\ 1&{}2\end{pmatrix}\). The Dirichlet–Voronoi cell corresponding to \(\langle \cdot ,\cdot \rangle _{\mathcal {G}}\) is the hexagon shown on the right of Fig. 5 and the resulting tiling is given on the right of Fig. 7. Since all faces of the same dimension lie in the same orbit, the computation of \(\mu \) can be reduced:

$$\begin{aligned} \begin{array}{ c | c c c } \dim (f) &{} 2 &{} 1 &{} 0 \\ \hline \mu (N_f) &{} 1 &{} \frac{1}{2} &{} \frac{1}{3} \end{array} \end{aligned}$$

4 Proof of Theorem 1 (tiling)

Given a full dimensional lattice polytope \({\mathcal {P}}\), we can choose fundamental domains for all relevant sublattices of \(\Lambda \) and construct all regions \(R(N_f)\) for the normal cones \(N_f\) of faces \(f\le {\mathcal {P}}\). We want to show that it is possible to take translated copies of the regions to form a tiling of \(\text{ CDC }({\mathcal {P}})\), where the region \(R(N_f)\) is translated by lattice points x in a dilation of the face f. The set \({\mathcal {X}}(tf) \subseteq tf \cap \Lambda \) of these lattice points in tf for some sufficiently large integer \(t\in {\mathbb {Z}}_{>0}\) is yet to be defined, it stands in strong relation to the sets \(X^C_K\) that we used in the construction of regions in Sect. 2. The aim of this section is to find the right definition of the sets \({\mathcal {X}}(tf)\) and to prove Theorem 1, which we recall here:

Theorem 1 (Tiling). Let \({\mathcal {P}}\subseteq V\) be a full dimensional lattice polytope. There exists a \(t_0\in {\mathbb {Z}}_{>0}\) such that for each \(t\ge t_0\) we have a tiling of \(\text{ CDC }(t{\mathcal {P}})\) into translated regions of the form

$$\begin{aligned} \{x+R(N_f) : \; f\le {\mathcal {P}}, \, x\in {\mathcal {X}}(tf)\}. \end{aligned}$$

For an example of such a tiling, see the right of Fig. 2. An intermediate result of the proof is the following: If we start with just one pointed rational cone C, we get a tiling of \(\text{ CDC }(C^\vee )\) by taking translates of the regions R(K) for all \(K\le C\). This result is given in Lemma 2. But before we start with that, we need another technical observation about a certain periodicity in the construction of the regions, namely Lemma 1.

As in the preceding section, for a pointed rational cone C, we write \(L(C):=\Lambda \cap C^\perp \) for the induced lattice in the orthogonal space of C and let T(C) be an arbitrary but fixed fundamental domain of L(C).

Lemma 1

Let C be a pointed rational cone in V. Then for all \(y\in L(C)\) we have

$$\begin{aligned} y+\left( V\backslash \bigcup _{K<C} \left( X_K^C+R(K)\right) \right) = V\backslash \bigcup _{K<C} \left( X_K^C +R(K)\right) . \end{aligned}$$

In other words, the construction of the region R(C) in Eq. (9) is invariant under translation of points in the lattice L(C).

Proof

Let \(y\in L(C)\). Since translation by y is a bijection, it commutes with unions and complements:

$$\begin{aligned} y+\left( V\backslash \bigcup _{K<C} \left( X_K^C +R(K)\right) \right) =\left( V\backslash \bigcup _{K<C} \left( X_K^C +y+R(K)\right) \right) \end{aligned}$$

In order to prove the lemma, we only need to show that \( X_K^C\) is invariant under translation by y, i.e. \(y+ X_K^C= X_K^C\) for all faces \(K<C\).

Let \( K<C\) be a face of C and \(x\in X_K^C= X_K^C\), i.e. x meets conditions (I) and (II). We want to show that \(x+y\in X_K^C\). Since \(y \in C^\perp \) and \(C^\perp + M^\vee = M^\vee \), for all rays \(M<C\), we have

$$\begin{aligned} x+R(K) \subseteq {{\,\mathrm{int}\,}}( M^\vee ) \, \Leftrightarrow \, x+y+R(K) \subseteq {{\,\mathrm{int}\,}}( M^\vee ) \end{aligned}$$

which in particular means that \(x+y\) meets condition (I).

Now let \(K'<C\) be a face of C such that K and \(K'\) are incomparable and let \(x'\in L(K')\) (cf. condition (II)). Since \(y\in L(C)\subseteq L(K')\), we get:

$$\begin{aligned} \left( x+y+ R(K) \right) \cap \left( x'+R(K') \right)&= \left( x+y+R(K) \right) \cap \left( x'+y-y+R(K') \right) \\&=y+ \left( \left( x+ R(K) \right) \cap ( \underbrace{x'-y}_{\in L(K')} )+R(K') \right) \\&= \; \varnothing . \end{aligned}$$

The last step follows from the fact that x meets Condition (II) and the whole equation shows that \(x+y\) also meets condition (II). Altogether, we have shown that \(x+y \in X_K^C\) for all \(x\in X_K^C\) and all \(y\in L(C)\). That means \(y+ X_K^C \subseteq X_K^C\). Conversely, let \(x\in X_K^C\), then \(x=x-y+y\). As with \(y\in L(C)\) we also have \(-y\in L(C)\), we can use that \(x-y \in X_K^C\) and hence \(x\in y+X_K^C\). We thus get \( X_K^C \subseteq y+X_K^C\) which finishes the proof. \(\square \)

Lemma 2

For any pointed rational cone C we have a tiling

$$\begin{aligned} \{x+R(C) : \ x\in L(C)\} \ \cup \ \{x+ R(K): \ K<C, \ x\in X^C_K\} \end{aligned}$$

of \(\text{ CDC }({\mathcal {P}})\) consisting of lattice point translates of regions corresponding to C and its faces.

Proof

In general, for a lattice L in V (not necessarily of full rank) and subsets \(A, B\subseteq V\) with the properties that \(B+L=V\) and \(A+L=A\) we have that

$$\begin{aligned} L+(A\cap B)=A. \end{aligned}$$
(15)

We show both inclusions:

$$\begin{aligned} \subseteq :\; \; \;&L+(A\cap B) \subseteq L+A=A. \\ \supseteq : \; \; \;&\text{ Let } x\in A. \text{ Since } V=L+B, \text{ we } \text{ can } \text{ write } x=l+b \text{ with } l\in L \text{ and } b\in B. \\&\text{ Then } b=x-l\in A+L=A \text{ and } \text{ hence } x\in L+(A\cap B). \end{aligned}$$

We have that \(C^\vee \) is invariant under \(C^\perp \), thus so is \(\text{ CDC }(C^\vee )\).

From (15) and Lemma 1 we deduce

$$\begin{aligned} L(C)+R(C)&=\, \underbrace{L(C)}_{L} \nonumber \\&\quad + \left[ \underbrace{ \left( V \backslash \bigcup _{K< C}( X_K^C+ R(K))\right) \cap \text{ CDC }(C^\vee )}_{A} \cap \underbrace{ \left( T(C)+\text{ lin }(C)\right) }_{B} \right] \nonumber \\&= \; \; \left( V \backslash \bigcup _{K < C}( X_K^ C+ R(K)) \right) \cap \text{ CDC }(C^\vee ) . \end{aligned}$$
(16)

Thus, we get

$$\begin{aligned} \text{ CDC }({\mathcal {P}})= \left( L(C)+R(C) \right) \cup \left( \bigcup _{K<C} \left( X_K^C + R(K) \right) \cap \text{ CDC }(C^\vee )\right) . \end{aligned}$$

Since \(R(C)\subseteq T(C)+\text{ lin }(C)\), we know that the translates of R(C) by points in L(C) do not intersect. For each \(K<C\), the set \( X_K^C\) is a subset of L(K), so the same argument shows that the sets \(\{x+R(K): \ x\in X_K^C\}\) have pairwise empty intersections. Now we only need to show that for two faces \(K, K'<N\) the sets of the form \(x+R(K)\) and \(y+R(K')\) with \(x\in X_K^C\) and \(y \in X_{K'}^C\) do not intersect. If K or \(K'\) is a face of the other one, say \(K'<K\), we have

$$\begin{aligned} X_K^C+R(K)&\subseteq L(K) +R(K) \\&\overset{(16)}{=} V \backslash \left( \bigcup _{M < K}( X_M^K+ R(M))\right) \\&\subseteq V\backslash \left( X_{K'}^K+R(K') \right) \\&\subseteq V\backslash \left( X_{K'}^C+R(K')\right) . \end{aligned}$$

The last inclusion follows from the property that \(X^K_{K'} \subseteq X^K_{K'}\) whenever \(K'<K<C\). If K and \(K'\) are incomparable in the face lattice, then \(X_K^C+ R(K)\) and \(X_{K'}^C+R(K')\) do not intersect by construction of \(X_K^C\), Property II. \(\square \)

For a pointed rational cone C, Lemma 2 yields a tiling of \(\text{ CDC }(C)\) into copies of translated regions R(K), for \(K\le C\). In particular, given a full dimensional lattice polytope \({\mathcal {P}}\), we have a tiling of \(\text{ CDC }({\mathcal {P}})\) for each normal cone \(N_{v}\) with v a vertex of \({\mathcal {P}}\). In Fig. 8, these tilings are given for the triangle S that is shown in Fig. 1 and was formally introduced in Sect. 3. Comparing these tilings to the tiling in Fig. 2 on the right, which we want to construct for Theorem 1, one might already get an idea of how to achieve this goal: for all vertices v of \({\mathcal {P}}\), we take the tilings from Lemma 2 applied to all \(N_v\) and translate each by tv. In this joint tiling, we disregard all translates of regions \(R(N_f)\), with \(f\le {\mathcal {P}}\) not a vertex, that do not fit.

Fig. 8
figure 8

Tiling for the triangle tS according to Theorem 1 as a connection of the tilings for its normal cones (Lemma 2)

Hence, for a face \(f\le {\mathcal {P}}\), the correct way of defining \({\mathcal {X}}(tf)\subseteq \Lambda \cap tf\), the set of all feasible lattice points in tf, is the following:

$$\begin{aligned} {\mathcal {X}}(tf):= \bigcap _{v \text{ vertex } \text{ of } f} X^{N_v}_{N_f} +tv. \end{aligned}$$
(17)

By setting \(X^{N_v}_{N_v}=\{0\}\) for a vertex v of \({\mathcal {P}}\), this definition is also valid for \({\mathcal {X}}(tv)\) and yields \({\mathcal {X}}(tv)=tv\) as desired.

Before we start with the proof of Theorem 1, we need the following lemma:

Lemma 3

Let C be a pointed rational cone in V and R(C) the corresponding region. Then R(C) is bounded.

This property is very important for the proof of Theorem 1, since without \(R(N_{v_i})\) being bounded, there is no chance to fit the tilings from Lemma 2 into one tiling. Though the statement of Lemma 3 might seem rather apparent, its proof is quite technical. Assuming Lemma 3 for the moment, we now give the proof of Theorem 1. To shorten notation, we will write R(f) and \(X^f_g\) instead of \(R(N_f)\) and \(X^{N_f}_{N_g}\), respectively, but keep in mind that these sets do not depend on the faces, but only the normal cones.

Proof of Theorem 1

Let \({\mathcal {P}}\) be a full-dimensional lattice polytope with vertices \(v_1,\dots ,v_m\in \Lambda \). We start by specifying \(t_0\). Lemma 3 yields that R(f) is bounded for each \(f \le {\mathcal {P}}\). Thus, for any \(f,g \le {\mathcal {P}}\) that do not intersect, there is a \(t_{fg} \in {\mathbb {Z}}_{>0}\) such that \((R(f)+t_{fg}\cdot f) \cap (R(g)+t_{fg}\cdot g) = \varnothing \). We set

$$\begin{aligned} t_0=\max \{t_{fg} : f,g\le {\mathcal {P}} \text{ and } f\cap g = \varnothing \}. \end{aligned}$$

This yields that \((R(f)+t\cdot f) \cap (R(g)+t\cdot g) = \varnothing \) for non-intersecting \(f,g \le {\mathcal {P}}\) and all \(t\ge t_0\).

First, we show that the translated regions

$$\begin{aligned} \{x+R(f) : \; f\le {\mathcal {P}}, \, x\in {\mathcal {X}}(tf)\} \end{aligned}$$
(18)

are pairwise disjoint, and in a second step we prove that they cover the whole space. Let \(f,g \le {\mathcal {P}}\) be arbitrary faces of \({\mathcal {P}}\), let \(t\in {\mathbb {Z}}_{\ge 0}\) with \(t\ge t_0\) and let \(x\in {\mathcal {X}}(tf)\) and \(y\in {\mathcal {X}}(tg)\). For \(f \cap g = \varnothing \) it follows from the construction of \(t_0\) that \((x+R(f)) \cap (y+R(g)) = \varnothing \). Otherwise, we find \(j\in \{ 1, \dots , m\}\) such that \(v_j\in f \cap g\). Then, since \(x\in {\mathcal {X}}(tf)\) and \(y\in {\mathcal {X}}(tg)\), we have \((x- t v_j)\in X^{v_j}_f\) and \((y- t v_j)\in X^{v_j}_g\). By Lemma 2 for \(N_{v_j}\) the sets \((x-t v_j)+R(f)\) and \((y-t v_j)+R(g)\) do not intersect, which then also holds for the translations \( x+R(f)\) and \( y+R(g)\).

It remains to show that (18) is indeed a covering of \(\text{ CDC }({\mathcal {P}})\) . To this end, let \(p\in \text{ CDC }({\mathcal {P}})\) be an arbitrary point. Lemma 2 yields that

$$\begin{aligned} \text{ CDC }(N_{v_i}^\vee )&= \bigcup _{\begin{array}{c} f \le {\mathcal {P}}\\ v_i \in f \end{array}} \left( X^{v_i}_f + t v_i+ R(f) \right) \end{aligned}$$

for each vertex \(v_i\) of \({\mathcal {P}}\). Hence, for each \(i\in \{1, \dots , m\}\) we find \(f_i \le {\mathcal {P}}\) with \(v_i \in f_i\) and \(x_i\in X^{v_i}_{f_i}\) such that \(p \in (x_i + t v_i+ R(f_i))\).

Let \(v_i\) be a vertex, such that \(f_i\) is smallest in dimension. Without loss of generality we can assume \(i=1\), hence, \(p \in (x_1 + tv_1 + R(f_1))\). We want to show that \(x_1 +tv_1\in {\mathcal {X}}(tf_1)\), because then \(x_1+tv_1+R(f_1)\) is an element of the set in (18) and contains p.

Let’s assume this is not the case. After possibly renumbering, we can assume that \((x_1 +t v_1) \notin (X^{v_2}_{f_1}+t v_2)\). In particular, we have \(v_2 \in f_1\).

But then we can find \(f_2 \le {\mathcal {P}}\) with \(v_2 \in f_2\) and \(x_2 \in X^{v_2}_{f_2}\) such that \(p\in (x_2+t v_2+R(f_2))\). This yields

$$\begin{aligned} p\in \left( x_2 + t v_2+ R(f_2) \right) \cap \left( x_1 + t v_1+ R(f_1) \right) , \end{aligned}$$

and thus

$$\begin{aligned} \left( x_2 + R(f_2) \right) \cap ( \underbrace{ x_1 + t v_1 - t v_2}_{\in L(f_1)}+ R(f_1) ) \ne \varnothing , \end{aligned}$$
(19)

which contradicts \(x_2\in X^{v_2}_{f_2}\) by property (II), unless \(f_1\) and \(f_2\) are comparable.

The case \(f_2 \subsetneq f_1\) is not possible, since \(\dim (f_2)\ge \dim (f_1)\) by assumption on the minimality of the dimension of \(f_1\). The case \(f_1 = f_2\) is not possible either, since \(x_2+tv_2+R(f_1)\) and \(x_1+tv_1+R(f_1)\) can only intersect if \(x_2+tv_2=x_1+tv_1\), in which case \(x_1+tv_1\in (X^{v_2}_{f_2}+tv_2)\).

We are left with the case \(f_1 \subseteq f_2\) to be excluded. We now can consider \(X^{f_1}_{f_2}\) and have the inclusion \(X^{v_2}_{f_2} \subseteq X^{f_1}_{f_2}\) (since we only add conditions when going from \(X^{f_1}_{f_2} \) to \( X^{v_2}_{f_2}\)). Since \(x_2 \in X^{v_2}_{f_2}\), we also have \(x_2 \in X^{f_1}_{f_2}\). Then the sets \( (x_1 + t v_1 - t v_2+R(f_1))\) and \( \left( x_2 + R(f_2) \right) \) are part of the tiling that we get by applying Lemma 2 to \(N_{f_1}\). But, as we see in Eq. (19), the two sets do intersect, which is a contradiction. \(\square \)

For proving Lemma 3, we use the following linear algebra fact by which we can assume a certain distance between points on faces of a cone. Its proof is straightforward using standard arguments and is omitted here.

Lemma 4

Let \(V_1, V_2\subseteq V\) be subspaces of V with intersection \(U:=V_1\cap V_2\). Then for all \(r>0\) there exists \(\delta >0\) such that for all \(x\in V_1\)

$$\begin{aligned} \text{ dist }(x,U)> \delta \;\;\Rightarrow \;\; \text{ dist }(x,V_2) >r. \end{aligned}$$

We prove Lemma 3 inductively. The idea is easy: The regions are constructed by cutting something off. So a rather obvious approach to show that R(C) is bounded is to show that every point in V that is far enough away from the oririn is contained in a region that is in the complement of R(C). The complement consists of all regions corresponding to faces \(K<C\) and translated by a lattice point in L(K) that fulfills the properties (I) and (II) for being in \(X^C_K\). Therefore, we consider two cases, the first being that a point is away from the boundary of \(C^\vee \). Then it will be easy to see that there is a fundamental domain \(T(C_0)=R(C_0)\) of \(\Lambda \) whose translate contains the point and is in the complement of R(C). If a point p is close to the boundary and far enough away from \(C^\perp \), we can show that close to that point we find a lattice point x on the boundary and a region R(K), \(K<C\), such that \(x+R(K)\) is in the complement of R(C). We then face the obstacle that it is still unclear whether p is in that particular region, since our regions are not even convex. The solution is to ensure that not only \(x+R(K)\) is in the complement, but also all regions that cover the area around it.

Proof of Lemma 3

Let C be a rational pointed cone. We prove the lemma by induction on \(n:=\dim (C)\). We want to show that there exists a certain bounded set that contains R(C). The bounded sets we want to consider are cylinders around the linear space \(C^\perp \) with radius \(r_C\in {\mathbb {R}}_{>0}\):

$$\begin{aligned} {{\,\mathrm{Cyl}\,}}(r_C, C):= \left( C^\perp + B_{r_C}(0)\right) \cap \left( T(C) + \text{ lin }(C) \right) , \end{aligned}$$

where \(B_r(x)\) is the open ball around \(x\in V\) with radius \(r\in {\mathbb {R}}_{>0}\). Since \(T(C)\subseteq C^\perp \), we can alternatively describe \({{\,\mathrm{Cyl}\,}}(r_C,C)\) as

$$\begin{aligned} {{\,\mathrm{Cyl}\,}}(r_C, C)=T(C)+(B_{r_C}(0) \cap \text{ lin }(C)). \end{aligned}$$

The case \(n=0\) is simply noticing that \(R(C_0)\) is a fundamental domain of the lattice \(\Lambda =L(C_0)\) and as such it is by definition bounded.

For \(n>0\), let \(C\subseteq V\) be a pointed rational cone of dimension \(n>0\) and we assume that \(R(K)\subseteq {{\,\mathrm{Cyl}\,}}(r_K, K)\) for all faces \(K<C\) with suitable \(r_K\in {\mathbb {R}}_{>0}\).

By construction, \(R(C) \subseteq (T(C)+\text{ lin }(C))\). What we now need to show is that \(R(C) \subseteq \left( C^\perp + B_{r_C}(0)\right) \) for some \(r_C\in {\mathbb {R}}_{>0}\). We choose \(r_C\) defined by the following constraints that might seem technical, but it has the advantage of being constructive.

4.1 Construction of \(r_C\)

For each face \(K<C\) we have \(R(K) \subseteq {{\,\mathrm{Cyl}\,}}(r_K, K)\) by the inductive hypothesis. We define a second radius \(r'_K\) by

$$\begin{aligned} r_K'=r_K+2 \cdot \max _{M<K} r_M. \end{aligned}$$

We recall that by Lemma 2 we have a tiling of \(\text{ CDC }(K^\vee )\) such that

$$\begin{aligned} \text{ CDC }(K^\vee )= \left( L(K)+R(K) \right) \cup \bigcup _{M<K} \left( X_M^K + R(M) \right) . \end{aligned}$$

So there exists an \(s\in {\mathbb {R}}_{>0}\) such that

$$\begin{aligned} U(K):= R(K) \cup \bigcup _{M<K} \; \bigcup _{x\in X^K_M \cap B_s(0) } x+R(M) \end{aligned}$$
(20)

contains \({{\,\mathrm{Cyl}\,}}(r_K', K)\cap \text{ CDC }(K^\vee )\). Since U(K) is a finite union of bounded sets, U(K) itself is bounded and we can find \(u_K\in {\mathbb {R}}_{>0}\) such that \(U(K)\subseteq B_{u_K}(0)\).

Then \(K_1, K_2<C\) with \(K_1 \vee K_2 =C\) implies \(K_1^\perp \cap ~K_2^\perp = C^\perp \) and we can apply Lemma 4: we find \(\lambda _C\in {\mathbb {R}}_{>0}\) such that \(\text{ dist }(x,K_2^\perp )>u_{K_1}+u_{K_2}\) for all \(x\in K_1^\perp \) with \(\text{ dist }(x,C^\perp )>\lambda _C\). Let \(t_K\in {\mathbb {R}}_{>0}\) be a radius such that the fundamental domain \(T(K)\subset B_{t_K}(0)\) and set

$$\begin{aligned} h_C:=\lambda _C + \max _{K<C} \{2t_K\}. \end{aligned}$$
(21)

Then we define

$$\begin{aligned} r_C:= \max _{K<C} \sqrt{h_C^2+ (r_K')^2}. \end{aligned}$$
(22)

To show that \(R(C)\subseteq \left( C^\perp + B_{r_C}(0)\right) \), we show that for each point \(p\in V\) with \(\text{ dist }(p, C^\perp )>r_C\) we have either \(p\notin \text{ CDC }(C^\vee )\) or there are a face \(K<C\) and a lattice point \(x\in X^C_K\) such that \(p\in ( x+R(K))\subseteq V\backslash R(C)\).

So let \(p\in \text{ CDC }(C^\vee )\) with \(\text{ dist }(p, C^\perp ) \ge r_C\). We consider two cases. Figuratively speaking, we consider the case of p being far away from the boundary of \(C^\vee \) (in which case we can just find a translate of \(R(C_0)\) that covers it), and the case p being close to the boundary (where we use a translate of U(K) as defined in (20) to cover it by a translated region).

Case 1

\(\forall K<C\) with \(\dim (K)\ge 1\), we have \(\text{ dist }(p,K^\perp )\ge r_{K}'\).

Let \(x\in \Lambda \) with \(p\in x+R(C_0)\). Since \(R(C_0)=T(C_0) \subseteq B_{r_{C_0}}(0)\), we get

$$\begin{aligned} \text{ dist }(x+T(C_0),K^\perp )\ge r_K'-2r_{C_0} \ge r_K >0 \end{aligned}$$

for all \( K<C\) with \(\dim (K)\ge 1\). Hence, \((x+T(C_0)) \cap {{\,\mathrm{bd}\,}}(C^\vee )=\varnothing \). If \(x+T(C_0) \subseteq V\backslash C^\vee \), we have \(x+T(C_0) \subseteq V\backslash \text{ CDC }(C^\vee )\). If \(x+T(C_0) \in C^\vee \), then \(x\in X^C_{C_0}\) and \(p \in (x+R(C_0)) \subseteq V\backslash R(C)\).

Case 2

\(\exists K<C\), \(\dim (K)\ge 1\) with \(\text{ dist }(p,K^\perp )<r_K'\).

Let \(K<C\) be the face of C with maximal dimension such that \(\text{ dist }(p,K^\perp )<r_K'\). Define \(y:=p|_{K^\perp }\) to be the orthogonal projection of p onto \(K^\perp \) and let \(x\in L(K)\) with \(y\in x+T(K)\).

As first step we want to show that \(x\in X^C_K\).

From \(\text{ dist }(p,K^\perp )<r_K'\) by the Pythagorean theorem we can deduce

$$\begin{aligned} \text{ dist }(y,C^\perp )^2+\text{ dist }(p,K^\perp )^2 = \text{ dist }(p,C^\perp )^2 \end{aligned}$$

and thus

$$\begin{aligned} \text{ dist }(y,C^\perp )^2&= \text{ dist }(p,C^\perp )^2 - \text{ dist }(p,K^\perp )^2 \\&>r_C^2 - r_K' > h_C^2 + (r_K')^2 -(r_K')^2= h_C^2. \end{aligned}$$

The last line follows from the premise that \(\text{ dist }(p, C^\perp ) \ge r_C\) and from the definition of \(r_C\) in Equation (22). Since we have now shown that \( \text{ dist }(y,C^\perp ) > h_C\), we have by definition of \(h_C\) in (21) that \(\text{ dist }(x,C^\perp )>\lambda _C\) and thus by definition of \(\lambda _C\)

$$\begin{aligned} \text{ dist }(x, M^\perp ) > u_K + u_M \end{aligned}$$
(23)

for all \( M<C\) with \(K\vee M =C\).

We now want to show the same result holds for all \(M<C\) such that K and M are incomparable and \(K \vee M < C\). By maximality of K we get

$$\begin{aligned} \text{ dist }(p,(K \vee M)^\perp )>r_{K \vee M }'>r_{K \vee M }. \end{aligned}$$

With exactly the same computations as above (with \(K \vee M\) instead of C) we get

$$\begin{aligned} \begin{aligned}&\text{ dist }(y,(K \vee M)^\perp )^2> h_{K \vee M} \\&\quad \Rightarrow \;\; \text{ dist }(x,(K \vee M)^\perp )> \lambda _{K \vee M} \\&\quad \Rightarrow \;\; \text{ dist }(x,M^\perp )>u_K+u_{M}. \end{aligned} \end{aligned}$$
(24)

That means

$$\begin{aligned} \text{ dist }(x, M^\perp ) > u_K + u_M \end{aligned}$$
(25)

for all \(M<C\) incomparable to K. Since \(u_M>0\) and \(x+R(K)\subseteq B_{u_K}(x)\) (in other words \(x+R(K)\) has a positive distance to all other faces of \(C^\vee \)), we immediately get that x fulfills Property (I) for being in \(X^C_K\): \(x+R(K) \subseteq {{\,\mathrm{int}\,}}(M^\vee )\) for all rays \(M<C\) that are no rays of K.

Regarding property (II) of \(X^C_K\), from Eq. (25) we get

$$\begin{aligned} (x+R(K)) \cap (x'+R(K')) = \varnothing \end{aligned}$$

for all \(K'<C\) incomparable to K and all \(x'\in L(K')\). Hence, x also has property (II) for being in \(X^C_K\) and we have \(x\in X^C_K\), which finishes step one.

Now \(x+U(K)\) covers \(x+({{\,\mathrm{Cyl}\,}}(r_K', K)\cap \text{ CDC }(K^\vee ))\), where the latter contains p. If \(p\in (x+R(K))\), we are done, since we have just shown that \(x\in X^C_K\) and hence \((x+R(K))\subseteq V\backslash R(C)\). Otherwise, we have \(p\in (a+R(K_1))\) for some \(K_1<K\) and \(a \in X^K_{K_1}\).

The second step is to show that then \(a \in X^C_{K_1}\) which yields \((a+R(K_1)) \subseteq V\backslash R(C)\).

Since \(a+R(K_1)\subseteq x+B_{u_K}\) and by Eq. (25) the distance of x to \(M^\perp \) in particular for all rays \(M<C\) that are no rays of K, we see that a has Property I for being in \(X^C_{K_1}\).

Again, we need to consider different cases. Firstly, we observe that

$$\begin{aligned} \big (a+R(K_1)\big )\cap \big (b+R(M)\big ) = \varnothing \end{aligned}$$

for all M incomparable to K (both for \(K \vee M < C\) and \(K \vee M = C\)) and all \(b\in L(M)\): We have \((a+R(K_1)) \subseteq B_{u_K}(x)\) and \((b+R(M)) \subseteq B_{u_{M}}(b)\) and as we have seen in (25), we have \(\text{ dist }(x,M^\perp ))>u_K+u_{M}\).

Secondly, we are left with the case \(M<K\) and \(M, K_1\) incomparable. But since we have \(a\in X^K_{K_1}\), we get from property (II) that \((a+R(K_1))\cap (b+(M)) = \varnothing \) for all \(M<K\) with \(M, K_1\) incomparable and all \(b\in L(M)\). Hence, \(a\in X^C_{K_1}\) and \(p \in (a+R(K_1))\subseteq V\backslash R(C)\) as we wanted to show.

Hence, we have shown that R(C) is bounded. \(\square \)

5 Proof of Theorem 2 (Local formula)

Assume we have chosen fixed fundamental domains for all sublattices \(L\subseteq \Lambda \). We recall the definition of the function \(\mu \) on rational cones that was given in Sect. 1. We first set

$$\begin{aligned} \mu (C_0):=v_{C_0}=1 \end{aligned}$$
(26)

for the trivial cone \(C_0=\{0\}\). For a pointed rational cone \(C\subseteq V\) with \(\dim (C)\ge 1\) we then define by induction on the dimension

$$\begin{aligned} \mu (C):=v_C - \sum _{K< C} w^C_K \cdot \mu (K). \end{aligned}$$
(27)

Here, \(v_C\) is the DC-volume defined in (4) and \(w^C_K\) is the correction volume from (5).

For a rational cone \(C\subseteq V\) that is not pointed but contains a maximal nontrivial linear subspace U, we can consider the pointed cone \(C':=C\cap U^\perp \) in \(U^\perp \), where we consider \(U^\perp \) as a Euclidean space equipped with the induced inner product and the lattice \(\Lambda \cap U^\perp \). We can then construct \(R(C') \subseteq U^\perp \) and set

$$\begin{aligned} \mu (C):=\mu (C'). \end{aligned}$$

Theorem 2

The function \(\mu \) on rational cones in V as defined in (26) and (27) is a local formula for Ehrhart coefficients.

That is, for every lattice polytope \({\mathcal {P}}\) with Ehrhart polynomial \(\text{ E }_{{\mathcal {P}}}(t)=e_d t^d+e_{d-1}t^{d-1}+\dots + e_1t+e_0\), \(t\in {\mathbb {Z}}_{\ge 0}\), we have

$$\begin{aligned} e_i=\sum _{\begin{array}{c} f \le {\mathcal {P}}\\ \dim (f)=i \end{array}} \mu (N_f) \text{ vol }(f), \end{aligned}$$

for all \(i\in \{0,\dots , d\}\).

As discussed in Sect. 1, this is equivalent to

$$\begin{aligned} |\Lambda \cap t{\mathcal {P}}| = \sum _{f\le {\mathcal {P}}} \mu (N_f)\text{ vol }(tf) \end{aligned}$$

for all lattice polytopes \({\mathcal {P}}\).

Before we prove Theorem 2, we make some simplifications. Since neither the Ehrhart polynomial, nor the function \(\mu \), nor the relative volumes of faces change when we translate \({\mathcal {P}}\) by a lattice point, we can without loss of generality assume that \(0\in {\mathcal {P}}\). Then \(\text{ lin }({\mathcal {P}})=\text{ aff }({\mathcal {P}})\) and each normal cone \(N_f\) with f a face of \({\mathcal {P}}\) contains the orthogonal space \({\mathcal {P}}^\perp \) as a maximal linear subspace. The definition thus yields \(\mu (N_f)=\mu (N_f\cap \text{ lin }({\mathcal {P}}))\) for all faces f of \({\mathcal {P}}\). By considering \({\mathcal {P}}\subseteq \text{ lin }({\mathcal {P}})\), we can hence assume, without loss of generality, that \({\mathcal {P}}\) is full dimensional and that all normal cones are pointed. As before, to shorten notation, for faces \(f\le {\mathcal {P}}\) we henceforth write R(f) instead of \(R(N_f)\), also L(f) instead of \(L(N_f)\) for the sublattice \(\Lambda \cap N_f^\perp \subseteq \Lambda \) and T(f) for the fundamental domain \(T(N_f)\) in L(f). We also write \(v_f\) and \(w_f^g\) instead of \(v_{N_f}\) and \(w^{N_g}_{N_f}\) for faces \(g<f\le {\mathcal {P}}\). But we keep in mind that these objects do not depend on the face f itself, but only on the normal cone \(N_f\). Note that \(N_f\le N_g\) if and only if \(g\le f\).

Proof of Theorem 2

To make the structure of the proof easier to grasp, we delay some steps into lemmas, which we will state and prove afterwards.

Let \({\mathcal {P}}\) be a full dimensional lattice polytope. Recall that T is a fundamental domain of \(\Lambda \). Since the relative volume is normalized, such that every fundamental domain has volume 1, we have the following equation for every \(t\in {\mathbb {Z}}_{\ge 0}\):

$$\begin{aligned} | t{\mathcal {P}}\cap \Lambda | = \text{ vol }(\text{ DC }(t{\mathcal {P}})) = \text{ vol }((t{\mathcal {P}}\cap \Lambda ) + T). \end{aligned}$$
(28)

Instead of counting the (discrete) number of lattice points in \(t{\mathcal {P}}\), we thus can compute the (continuous) volume of fundamental domains around each lattice point in \(t{\mathcal {P}}\). Following the notation of Sect. 1, the right hand side of Eq. (28) is the volume of the domain complex of \(t{\mathcal {P}}\).

Let \({\mathcal {P}}\) be a polytope and \(t\in {\mathbb {Z}}_{>0}\) big enough, such that we have a tiling of \(\text{ CDC }({\mathcal {P}})\) by regions as in Theorem 1:

$$\begin{aligned} \{x+R(N_f) : \; f\le {\mathcal {P}}, \, x\in {\mathcal {X}}(tf)\}, \end{aligned}$$

with \({\mathcal {X}}(tf)\) the set of feasible lattice points in tf as defined in Sect. 4, Eq. (17). Then, as we will show in Lemma 5 below, we can divide the volume of the domain complex into the parts in each region, which equals \(v_f\) (the DC-volume in R(F)):

$$\begin{aligned} \text{ vol }( \text{ DC }(t{\mathcal {P}}))= \sum _{f \le {\mathcal {P}}} \left| {\mathcal {X}}(tf) \right| \cdot v_{f}. \end{aligned}$$

Thus with the definition of \(\mu (N_f)\) solved for \(v_f\) we get

$$\begin{aligned} | \Lambda \cap t{\mathcal {P}}|&= \sum _{f \le {\mathcal {P}}} \left| {\mathcal {X}}(tf) \right| \cdot v_f \\&= \sum _{f \le {\mathcal {P}}} \left[ \left| {\mathcal {X}}(tf) \right| \cdot \left( \mu (f) + \sum _{h>f} w^f_h \cdot \mu (h) \right) \right] . \\ \end{aligned}$$

We can now expand the product and combinatorially rearrange the sum to get

$$\begin{aligned} | \Lambda \cap t{\mathcal {P}}|&=\sum _{f \le {\mathcal {P}}} \left[ \left| {\mathcal {X}}(tf) \right| \cdot \mu (f) + \left| {\mathcal {X}}(tf) \right| \cdot \sum _{h>f} w^f_h \cdot \mu (h) \right] \\&= \sum _{f \le {\mathcal {P}}} \underbrace{\left[ \sum _{g\le f} \left| {\mathcal {X}}(tg) \right| \cdot w^g_f \right] }_{=:V(tf)} \cdot \mu (f) . \end{aligned}$$

In the last line the expression \(w^f_f\) for the correction volume technically has not been defined yet—we simply set \(w^f_f:=1\) for faces \(f\le {\mathcal {P}}\).

By Lemma 8 below we can now use that

$$\begin{aligned} V(tf)=\text{ vol }(tf), \end{aligned}$$

which yields

$$\begin{aligned} | t{\mathcal {P}}\cap \Lambda | = \sum _{f \le {\mathcal {P}}} \text{ vol }(tf) \cdot \mu (f) \end{aligned}$$
(29)

for all \(t\in {\mathbb {Z}}_{\ge 0}\) with \(t>t_0\) for a certain \(t_0\in {\mathbb {Z}}_{\ge 0}\). By Ehrhart’s Theorem Ehrhart (1962), we know that \(\text{ E }_{{\mathcal {P}}}(t)=| t{\mathcal {P}}\cap \Lambda |\) is a polynomial in t, as is the right hand side of Eq. (29). Since these polynomials agree for infinitely many t, we have equality and get

$$\begin{aligned} \text{ E }_{{\mathcal {P}}}(t)= \sum _{f \le {\mathcal {P}}} \mu (N_f) \text{ vol }(tf) \end{aligned}$$

for all \(t\in {\mathbb {Z}}_{\ge 0}\). That shows that for each choice of fundamental domains, the resulting function \(\mu \) is a local formula for Ehrhart coefficients. \(\square \)

Lemma 5

We have

$$\begin{aligned} \text{ vol }( \text{ DC }(t{\mathcal {P}}))= \sum _{f \le {\mathcal {P}}} \left| {\mathcal {X}}(tf) \right| \cdot v_f \end{aligned}$$

for all \(t\in {\mathbb {Z}}_{\ge 0}\) big enough in the sense of Theorem 1.

Proof

We recall the definition of \({\mathcal {X}}(tf)\) as

$$\begin{aligned} {\mathcal {X}}(tf):= \bigcap _{v \text{ vertex } \text{ of } f} X^{N_v}_{N_f} +tv, \end{aligned}$$

where \( X^{N_v}_{N_f}\) is the set of lattice points that we constructed in Sect. 2. For an illustration of the sets \( X^{N_v}_{N_f}\) in a triangle see Fig. 6 and for \({\mathcal {X}}(tf)\) see Fig. 8.

Let \(t\in {\mathbb {Z}}_{\ge 0}\) be big enough, such that by Theorem 1 we have a tiling of \(\text{ CDC }({\mathcal {P}})\), which covers the domain complex, into regions:

$$\begin{aligned} \{x+R(N_f) : \; f\le {\mathcal {P}}, \, x\in {\mathcal {X}}(tf)\}. \end{aligned}$$

To compute \( \text{ DC }(t{\mathcal {P}}) = \text{ vol }((t{\mathcal {P}}\cap \Lambda ) + T)\) we can thus compute the volume in each region and add everything up:

$$\begin{aligned} \text{ vol }( \text{ DC }(t{\mathcal {P}}))= \sum _{f \le {\mathcal {P}}} \sum _{x\in {\mathcal {X}}(tf)} \text{ vol }\big (\left( x+R(f)\right) \cap \text{ DC }(t{\mathcal {P}}) \big ). \end{aligned}$$
(30)

Hence, for \(f\le {\mathcal {P}}\) it suffices to show that the volume on the right hand side of the equation equals the DC-volume of \(N_f\), namely that

$$\begin{aligned} \text{ vol }\big (\left( x+R(f)\right) \cap \text{ DC }(t{\mathcal {P}})\big ) = v_f \end{aligned}$$

for all \(x\in {\mathcal {X}}(tf)\). Then Eq. (30) yields

$$\begin{aligned} \text{ vol }((t{\mathcal {P}}\cap \Lambda ) + T)&= \sum _{f\le {\mathcal {P}}} \sum _{x\in {\mathcal {X}}(tf)} v_f\\&= \sum _{f \le {\mathcal {P}}} \left| {\mathcal {X}}(tf) \right| \cdot v_f \end{aligned}$$

as desired.

We recall the definition of the DC-volume \(v_f\) as

$$\begin{aligned} v_f= \text{ DC }(N_f^\vee )= \text{ vol }\big (R(f) \cap ((N_f^\vee \cap \Lambda ) + T)\big ). \end{aligned}$$

Let \(x\in {\mathcal {X}}(tf)\). Since \((t{\mathcal {P}}\cap \Lambda ) \subseteq (x+N_f^\vee ) \cap \Lambda \), we have

$$\begin{aligned} (x+R(f))\cap \text{ DC }(t{\mathcal {P}}) \subseteq \big (x+R(f)\big ) \cap \text{ DC }(x+N_f^\vee ) \end{aligned}$$
(31)

We first want to show that we have equality in (31). To do so, we show that

$$\begin{aligned} (x+R(f)) \cap (y +T)=\varnothing \end{aligned}$$
(32)

for all \(y\in ((x+N_f^\vee ) \cap \Lambda )\backslash (t{\mathcal {P}}\cap \Lambda )\). \(y\notin (t{\mathcal {P}}\cap \Lambda )\) means there is a vertex v of \({\mathcal {P}}\) with \(y\notin (N_v^\vee + tv)\) . By considering t large enough, we can ensure that Eq. (32) holds for all y with \( y\in \bigcap _{v\in f} (N_v^\vee +tv)\) and \(y\notin (N_v^\vee +tv)\) for a vertex \(v \in {\mathcal {P}}\) that is not a vertex of f. So let \(y\in ((x+N_f^\vee ) \cap \Lambda )\) with \(y\notin (N_v^\vee + tv)\) for a vertex v of f. Then there is a facet F of \({\mathcal {P}}\) with \(v\in F\) and \(y \notin (N_F^\vee +tv)\). But then \((y-tv)+T \nsubseteq {{\,\mathrm{int}\,}}(N_F^\vee )\) and hence, \((y-tv+T)\subseteq L(F)+R(F)\) (cf. Eq. (16) in the proof of Lemma 2). Since \(x\in {\mathcal {X}}(tf)\), we have \((x-tv)\in X^{N_v}_{N_f}\) and thus \((x-tv+R(f))\cap (y-tv+T)\ne \varnothing \), which is equivalent to (32). Hence, equality in Eq. (31) follows.

Since \(x\in {\mathcal {X}}(tf) \subseteq \Lambda \), we have \((x+N_f^\vee ) \cap \Lambda =x+(N_f^\vee \cap \Lambda )\) and hence,

$$\begin{aligned} \text{ vol }\big ((x+R(f))\cap \text{ DC }(t{\mathcal {P}})\big )&= \text{ vol }\big ((x+R(f)) \cap \text{ DC }(x+N_f^\vee )\big )\\&=\text{ vol }\big (R(f) \cap \text{ DC }(N_f^\vee ) \big )\\&= v_f, \end{aligned}$$

as we wanted to show. \(\square \)

Lemma 6 gives a general property of the regions and independent of a concrete polytope, so we use the general notation of cones.

Lemma 6

For each pointed cone C the fundamental domain T(C) in the linear space \(C^\perp \) is contained in the region R(C).

Proof

We show the statement inductively. Let \(C_0=\{0\}\) be the 0-dimensional cone. Then by construction \(R(C_0)=T(C_0)\) and the assertion holds. Now, let C be a 1-dimensional pointed cone. Then the corresponding region R(C) is given by

$$\begin{aligned} R(C)=\big (V\backslash \left( X^C_{C_0}+ R(C_0)\right) \big )\cap \left( T(C)+\text{ lin }(C) \right) \cap \text{ CDC }(C^\vee ). \end{aligned}$$

Since \(T(C) \subseteq \left( T(C)+\text{ lin }(C) \right) \) and also \(T(C)\subseteq \text{ CDC }(C^\vee )\), we only need to show that \(T(C)\subseteq V\backslash \left( X^C_{C_0}+ R(C_0)\right) \). Therefore, let \(p\in T(C)\). Then there is exactly one \(x\in \Lambda \) with \(p\in (x+R(C_0))\). Since \(p\in {{\,\mathrm{bd}\,}}(C^\vee )\), we have \((x+R(C_0)) \cap {{\,\mathrm{bd}\,}}(C^\vee )\ne \varnothing \) and thus \(x\notin X^C_{C_0}\). Hence,

$$\begin{aligned} p\in (x+T(C_0))\subseteq \big (V\backslash \left( X^C_{C_0}+ R(C_0)\right) \big ). \end{aligned}$$

Now, let C be any pointed cone with \(\dim (C)>1\). We now have

$$\begin{aligned} R(C)=\left( V\backslash \bigcup _{K<C} \left( X_K^C+R(K)\right) \right) \cap \left( T(C) + \text{ lin }(C)\right) \cap \text{ CDC }(C^\vee ). \end{aligned}$$

Again, \(T(C)\subseteq \left( T(C) + \text{ lin }(C)\right) \) and \(T(C)\subseteq \text{ CDC }(C^\vee )\). Let \(p\in T(C)\). Assume we have a face \(K<C\) and a lattice point \(x\in L(K)\) with \(p\in x + R(K)\). We again want to show that then \(x\notin X^C_K\). Since \(\dim (C)>1\) we find a ray \(M<C\) incomparable with K. The inclusion \(T(C)\subseteq C^\perp \subseteq M^\perp \) yields \(T(C)\subseteq L(M)+T(M)\). By induction we can assume \(T(M)\subseteq R(M)\) and hence, \(T(C) \subseteq L(M)+R(M)\). So for \(p\in T(C)\), if \(p\in (x+R(K))\) for some \(x\in L(K)\), then there exists \(y\in L(M)\), such that \(p\in (x+R(K)) \cap (y+R(M))\) and hence, \(x\notin X^C_K\) by Property (II) in the construction of \(X^C_K\). Hence, we have shown, that \(\displaystyle p\in \left( V\backslash \bigcup \nolimits _{K<C} \left( X_K^C+R(K)\right) \right) \) for any \(p\in T(C)\) and thus \(T(C)\subseteq R(C)\). \(\square \)

Lemma 7

There exists a \(t_0\in {\mathbb {Z}}_{>0}\) such that for each \(t\ge t_0\) the dilation of a face \(f<{\mathcal {P}}\) by t satisfies

$$\begin{aligned} tf\subseteq \bigcup _{g\le f}\left( {\mathcal {X}}(tg)+R(g) \right) . \end{aligned}$$

Proof

For \(t_0\) big enough, Theorem 1 yields that

$$\begin{aligned} tf\subseteq \bigcup _{g \le {\mathcal {P}}} \left( {\mathcal {X}}(tg) +R(g) \right) \end{aligned}$$
(33)

for all \(t\ge t_0\). We need to show that in (33) the translated regions of faces g of \( {\mathcal {P}}\) with \(g\nleq f\) do not intersect with tf. We can divide these faces into four groups: the faces g with \(f\cap g =\varnothing \); the faces g with \(f\cap g \ne \varnothing \) and fg are incomparable; the face \(g={\mathcal {P}}\); and the faces g with \(f<g<P\).

By choosing \(t_0\) big enough (cf. proof of Theorem 1), we can ensure that \((x+R(g))\cap tf = \varnothing \) for all \(g\le {\mathcal {P}}\) that do not intersect f and all \(\displaystyle x\in {\mathcal {X}}(tg)\).

For the second case, let \(g\le {\mathcal {P}}\) with fg incomparable and there exists a vertex v of \({\mathcal {P}}\) with \(v\in f\cap g\). Let \(x\in {\mathcal {X}}(tg)\). Then \((x-tv)\in X^v_g\). In particular (by property (I)), that means \(((x-tv)+R(g))\subseteq {{\,\mathrm{int}\,}}(N_F^\vee )\) for all facets F that contain v but not g. But since \(tf-tv\) is on the boundary of \(N_F^\vee \) and for at least one facet F containing v that does not contain g, we get that \((x-tv+R(g)) \cap (tf-tv) = \varnothing \) and hence, \((x+R(g)) \cap tf = \varnothing \).

For the case \(g={\mathcal {P}}\) we note that \(R(g)=T\) and then \((x+R(g)) \cap tf = \varnothing \) follows by exactly the same arguments as in the second case.

In the fourth case, we consider g with \(f< g< {\mathcal {P}}\). Then there exists a facet F of \({\mathcal {P}}\) with \(f\subseteq g\cap F\) and gF incomparable. By Lemma 6 we have that \(T(F)\subseteq R(F)\). Let v be a vertex of \({\mathcal {P}}\) with \(v\in f\) and let \(x\in {\mathcal {X}}(tg)\). Then \((x-tv)\in X^v_g\) and thus, by property (II) we have \((y+R(F))\cap (x-tv+R(g))=\varnothing \) for all \(y\in L(F)\) and in particular

$$\begin{aligned} (y+T(N_F))\cap (x-tv+R(g))=\varnothing \end{aligned}$$
(34)

for all \(y\in L(N_F)\). Since \(f\subseteq F\), we have \(tf\subseteq tv+L(F)+T(F)\) which, together with (34) shows that \((x+R(g)) \cap tf = \varnothing \).

Hence, we have shown that for all faces g with \(g\nleq f\) the intersection \(tf \cap ({\mathcal {X}}(tg)+R(g))\) is empty and hence, \( tf\subseteq \bigcup _{g\le f}\left( {\mathcal {X}}(tg)+R(g) \right) \) as we wanted to show. \(\square \)

Lemma 8

There exists a \(t_0\in {\mathbb {Z}}_{>0}\) such that for each \(t\ge t_0\) and every face \(f<{\mathcal {P}}\)

$$\begin{aligned} \text{ vol }(tf)=\sum _{g\le f} \left| {\mathcal {X}}(tg) \right| \cdot w^g_f . \end{aligned}$$

In other words, the volume of tf is given by the number of feasible lattice points in tf, \({\mathcal {X}}(tf)\), plus the correction volumes for each face \(g<f\).

Proof

We recall that \(w^g_f\) is defined in (5) by

$$\begin{aligned} w^g_f := \text{ vol }\left( R(g) \cap N_f^\perp \cap N_g^\vee \right) . \end{aligned}$$

From Lemma 7 we deduce

$$\begin{aligned} \text{ vol }(tf)&= \text{ vol }\left( \bigcup _{g\le f} \left( ({\mathcal {X}}(tg)+R(g))\cap tf \right) \right) \\&=\sum _{g\le f} \sum _{x\in {\mathcal {X}}(tg)} \text{ vol }\left( (x+R(g))\cap tf \right) . \end{aligned}$$

For \(g\le f\) we have

$$\begin{aligned} \text{ vol }\left( (x+R(g))\cap tf \right) = \text{ vol }\left( R(g)\cap (-x+tf) \right) \end{aligned}$$

and since \((-x+tf)\subseteq (N_f^\perp \cap N_g^\vee )\) and \( [( N_f^\perp \cap N_g^\vee )\backslash (-x+tf)] \cap R(g) = \varnothing \), we get

$$\begin{aligned} \text{ vol }\left( R(g)\cap (-x+tf) \right) = w^g_f \end{aligned}$$

and hence

$$\begin{aligned} \text{ vol }(tf)&= \sum _{g\le f} \sum _{x\in {\mathcal {X}}(tg)} \text{ vol }\left( (x+R(g))\cap tf \right) \\&= \sum _{g\le f} \left| {\mathcal {X}}(tg) \right| \cdot w^g_f \end{aligned}$$

as we wanted to show. \(\square \)