A Series Learning through the MacWilliams IdentityPart 11 of 12
An Introduction to Lattices and Theta Functions through the MacWilliams Identity
Among the five proof systems for the MacWilliams identity, this note focuses on the proof that appears through lattices and theta functions, and introduces lattices in Euclidean space, dual lattices, covolume, Poisson summation, lattice theta functions, and Construction A. In the main text, after explicitly stating the analytic standard facts that are needed, we mainly prove the case of linear codes over prime fields, and finally outline extensions to general finite fields.
One of the fundamental theorems in coding theory is the MacWilliams identity. Let E be the coordinate set, put n:=#E, and, for a linear code C≤FqE over the finite field Fq, consider its dual code
C⊥:={u∈FqE:u⋅c=0 for all c∈C}
where
u⋅c=e∈E∑uece.
For a codeword c∈FqE, write its support and Hamming weight as
supp(c):={e∈E:ce=0},wt(c):=#supp(c).
Define the weight enumerator of the linear code C by
WC(X,Y):=c∈C∑Xn−wt(c)Ywt(c).
The MacWilliams identity is the formula saying that the weight enumerator of the dual code can be computed from the weight enumerator of C as follows:
WC⊥(X,Y)=#C1WC(X+(q−1)Y,X−Y).
This is the MacWilliams identity.
In this series, we use proofs of the MacWilliams identity as a guide to introductions to neighbouring areas and concepts. For that reason, the series is aimed at readers with the following background:
We assume basic familiarity with elementary coding theory, namely with
what a (finite) field is,
what a linear code over a finite field is,
what the Hamming weight is,
what the dual code is.
(It is not necessary to know a proof of the MacWilliams identity.)
In the sections on lattices, we use first-year university linear algebra, especially bases, determinants, transposes, and inverse matrices. For indices of sublattices, we use elementary facts about quotient groups and finite-index subgroups. Readers who do not know Smith normal form may accept the formulae for indices of sublattices and for covolumes as standard facts.
This note does not presuppose Parts 1–10. In the series as a whole, we compare several proofs of the MacWilliams identity, but the content of the previous parts is not needed in order to read this note. The necessary material on lattices, dual lattices, covolumes, Fourier transforms, Poisson summation, theta functions, and Construction A is introduced in the text. However, to follow the proofs of the basic properties of the Fourier transform and of the Poisson summation formula themselves, one uses multivariable calculus, Lebesgue integration, the dominated convergence theorem, the Fubini–Tonelli theorem, and basic Fourier series. This is not dependence on previous parts, but additional background for reading the analytic proofs inside this note in detail. If you only want to follow the main line of the article, you may skip the analytic proofs. In that case, it is enough to accept the following as standard facts used later:
the definition of Schwartz functions and their basic rapid decrease,
the fact that one can construct smooth compactly supported functions, namely bump functions, supported in a sufficiently small neighbourhood of any prescribed point and taking a prescribed value at that point,
the Fourier transform of the Gaussian function,
the fact that the Fourier transform is an automorphism of the Schwartz space,
the fact that the Fourier transform of a product-type function decomposes as a product of the one-coordinate Fourier transforms,
the Poisson summation formula for lattices,
the translated one-dimensional Poisson summation formula.
In this series, we view the proof methods for the MacWilliams identity as falling roughly into the following five families. However, this classification is a map of the whole series, and is not required for reading the proof in this note:
Orthogonal-polynomial and association-scheme proofs.
Matroid and Tutte-polynomial proofs.
Moment and double-counting proofs.
The proof treated in this note is written, on the surface, in the language of
lattices, dual lattices, Construction A, theta functions, and Poisson summation.
Compressed into the five families above, it belongs to the Fourier, character, and Poisson family. This is because the transformation formula for lattice theta functions comes from the Poisson summation formula, and that Poisson summation formula is a basic formula in continuous Fourier analysis. That said, character theory on finite abelian groups is not the main actor in this note. The aim here is to use a proof of the MacWilliams identity as a guide to an introduction to lattices in Euclidean space and theta functions.
There is one point to keep in mind. Construction A using the standard integer lattice is most naturally connected with the congruence map Z→Z/pZ≅Fp. Therefore, in the main text of this note, we first treat the case where q=p is prime, that is, the MacWilliams identity for C≤FpE. For general q=pd, the same idea can also be realised by viewing Fq as a d-dimensional vector space over Fp and passing to blocks, or by using residue fields of rings of integers in number fields. However, as an introduction to lattices and theta functions, it is clearer to see the essence first for p-ary codes. Thus the main line of this note is the prime-field case, and we briefly touch on extensions to general finite fields at the end.
The route of the note is as follows. First, from a p-ary linear code C≤FpE, Construction A produces the lattice
Λ(C)={pm∈RE:m∈ZE,mmodp∈C}
inside the Euclidean space RE. The dual lattice of this lattice is the lattice constructed from the dual code, Λ(C)∗=Λ(C⊥). We apply the Poisson summation formula to this lattice. When the Gaussian function x↦e−πt∥x∥2 is summed over the lattice points, lattice theta functions and their transformation formula appear. We then go beyond Gaussian functions and use arbitrary Schwartz functions, specifying the one-coordinate sums over residue classes independently. This freedom allows us to extract the complete-weight-enumerator MacWilliams identity as a polynomial identity. Finally, by merging all non-zero symbols into one variable, we obtain the usual Hamming-weight MacWilliams identity.
For the relation between Construction A, codes, and lattices, Conway–Sloane [CS99] and Ebeling [Ebe94] are standard references. For lattices, theta functions, and Poisson summation, Serre [Ser73] is also a classical and readable reference. A pioneering reference on the relation between weight enumerators of binary codes and lattice theta functions is Broué–Enguehard [BE72]. For an analytic proof of the Hamming-weight MacWilliams identity for p-ary linear codes from theta functions, see Keyes [Key12]. In this note, we do not develop all these general theories, but instead state the analytic standard facts that are needed and extract only the part required for the case of linear codes over Fp. The case over general Fpd is described at the end as an outline of an extension.
A subset Λ of Rn is called a lattice if there exist linearly independent vectors in Rn, b1,b2,…,br∈Rn such that
Λ=Zb1+Zb2+⋯+Zbr={m1b1+⋯+mrbr∣m1,…,mr∈Z}.
In this case, r is called the rank of Λ. In particular, when r=n, Λ is called a full-rank lattice.
The linearly independent vectors b1,…,br appearing in the definition are called a lattice basis of Λ. By linear independence, the expression of each lattice point m1b1+⋯+mrbr by integer coefficients is unique. When we later mention another lattice basis or a basis matrix, we mean a tuple of such generating vectors and the matrix having those vectors as its columns.
It follows from this definition that a lattice has only finitely many points in any bounded set. Put B=(b1⋯br) and write
Λ=BZr.
The linear independence of b1,…,br means that the linear map B:Rr→Rn is injective. Therefore the minimum of ∥Bu∥ on the unit sphere is positive, and hence there is a constant c>0 such that
∥Bu∥≥c∥u∥(u∈Rr).
Thus the integer vectors m satisfying
∥Bm∥≤R(m∈Zr)
are restricted to the finitely many vectors satisfying ∥m∥≤R/c. By this local finiteness, there are only finitely many lattice points in a bounded ball, and the numbers NΛ(s) defined later will also be finite. We will also use this fact when regrouping a theta series according to squared lengths.
In this note, we mainly deal with full-rank lattices in RE. Here E is a finite set, and we put n:=#E. If necessary, you may think of E={1,2,…,n}.
Example 2.2 (Standard integer lattice).
The most basic lattice is the standard integer latticeZn⊆Rn. Using the standard basis e1,…,en, the lattice Zn can be written as
Zn=Ze1+⋯+Zen.
Example 2.3 (One-dimensional lattice).
In R, for any α>0,
αZ={αm∣m∈Z}
is a lattice. The lattice αZ is an equally spaced set of points whose spacing is α.
When studying lattices, fundamental domains and their volumes are important. For a full-rank lattice Λ=Zb1+⋯+Zbn⊆Rn, consider the half-open parallelepiped
P(b1,…,bn)={t1b1+⋯+tnbn∣0≤ti<1}.
This is one fundamental domain that tiles Rn by translations by the lattice. Indeed, if B=(b1⋯bn), then P=B[0,1)n. For any x∈Rn, writing u=B−1x and separating each coordinate into its integer and fractional parts gives a unique expression
x=Bm+Bt,m∈Zn,t∈[0,1)n.
Thus the family of sets
{P+λ:λ∈Λ}
partitions Rn disjointly.
Definition 2.4.
Let b1,…,bn be a basis of a full-rank lattice Λ⊆Rn. Write B=(b1⋯bn) for the matrix with these vectors as columns. The number
vol(Rn/Λ):=∣detB∣
is called the covolume of Λ.
The space Rn/Λ is the quotient space obtained by identifying two points whose difference is a lattice vector. Geometrically, it can be regarded as a torus obtained by gluing opposite faces of a fundamental domain. The covolume is defined as the Euclidean volume of that fundamental domain. The average density of lattice points may be thought of as the reciprocal of the covolume, and this intuition is also connected with the fact that the reciprocal of the covolume appears as the coefficient in the Poisson summation formula.
If another lattice basis is chosen and its basis matrix is denoted by B′, then for some invertible integer matrix U we have
B′=BU,U∈GLn(Z),detU=±1.
Therefore
∣detB′∣=∣detB∣∣detU∣=∣detB∣,
and the covolume does not depend on the choice of basis.
Example 2.5.
The covolume of Zn is 1. Also, the covolume of the one-dimensional lattice αZ⊆R is α.
Intuitively, the smaller the covolume, the more densely the lattice points are packed. For lattices constructed from codes, the larger the code C is, the weaker the congruence condition becomes and the more lattice points appear. For that reason, the covolume will appear in a form inversely proportional to #C.
Proposition 2.6 (Covolumes of sublattices and scalar multiples).
Let L′⊆L⊆Rn be full-rank lattices of finite index. Here [L:L′] is the number of cosets, equivalently the order of the quotient group L/L′. Then
vol(Rn/L′)=[L:L′]vol(Rn/L).
Also, for γ∈R∖{0},
vol(Rn/γL)=∣γ∣nvol(Rn/L).
Proof
Write L=BZn. If L′⊆L has finite index, then there exists an integer matrix A such that
L′=BAZn.
In this case, L/L′≅Zn/AZn, and by Smith normal form its order is ∣detA∣. Hence [L:L′]=∣detA∣, and
We next introduce dual lattices. Just as dual codes are important in coding theory, dual lattices are important in lattice theory.
The standard inner product on Rn is
⟨x,y⟩=x1y1+⋯+xnyn.
If we use the coordinate set E, this is written as
⟨x,y⟩=e∈E∑xeye.
The norm defined by this inner product is written as
∥x∥=⟨x,x⟩.
Definition 3.1.
For a full-rank lattice Λ⊆Rn, define its dual lattice by
Λ∗:={y∈Rn:⟨x,y⟩∈Z for all x∈Λ}.
For the dual of a code, the condition is that the inner product is 0 over Fp. For the dual of a lattice, the condition is that the real inner product is an integer. In Construction A, reducing the latter integrality condition modulo p gives the former orthogonality condition. This is natural when one looks at the exponential function exp(2π−1⟨x,y⟩) used in the Poisson summation formula. The condition for this function to be invariant under translation by every λ∈Λ is
exp(2π−1⟨λ,y⟩)=1,
and this is equivalent to ⟨λ,y⟩∈Z. Thus the definition of the dual lattice fits naturally with the Poisson summation formula.
Example 3.2.
The dual lattice of Zn is Zn itself. Indeed, for y∈Rn to have integer-valued inner product with all x∈Zn is equivalent to
⟨ei,y⟩=yi∈Z
for each standard basis vector ei.
Example 3.3.
The dual lattice of the one-dimensional lattice αZ⊆R is
(αZ)∗=α−1Z.
Indeed, for y∈R to have integer-valued product with every αm (m∈Z) is equivalent to αy∈Z.
Dual lattices and covolumes are related as follows.
Proposition 3.4.
For a full-rank lattice Λ⊆Rn,
vol(Rn/Λ∗)=vol(Rn/Λ)−1.
Proof
Let b1,…,bn be a basis of Λ, and let B be the matrix having these vectors as columns. Then Λ=BZn. The condition y∈Λ∗ is equivalent to
⟨Bm,y⟩=m⊤B⊤y∈Z
for every m∈Zn. This is equivalent to B⊤y∈Zn, and therefore
Λ∗=(B⊤)−1Zn.
This is not just a matrix calculation; it also expresses the correspondence between a basis and its dual basis. Indeed, if the columns of (B⊤)−1 are written as b1∗,…,bn∗, then they satisfy
⟨bi,bj∗⟩=δij
with respect to the original basis b1,…,bn. Here δij is the Kronecker delta, namely 1 if i=j and 0 otherwise. Thus (B⊤)−1Zn is the set of all integer combinations of the dual basis. Hence
vol(Rn/Λ∗)=det((B⊤)−1)=∣detB∣−1=vol(Rn/Λ)−1.
End of proof□
The dual lattice appears on the right-hand side of the Poisson summation formula. In the proof of the MacWilliams identity in this note, the flow is:
duality of codes becomes duality of lattices, and the Poisson summation formula connects sums over a lattice and over its dual lattice.
§4Construction A: From Codes to Lattices
We now return to coding theory. In the main text of this note, p is a prime number and we identify the finite field with Fp=Z/pZ. Let E be the coordinate set, and put n:=#E. From now on, when an element a of Fp is inserted into a real expression such as an exponential function or a/p, we use the standard representative 0,1,…,p−1. This convention will be used for residue-class theta functions and for the one-coordinate Poisson summation formula.
Consider the natural reduction map
ρ:ZE→FpE,x↦xmodp.
For a p-ary linear code C≤FpE, first consider
L(C):=ρ−1(C)={m∈ZE:mmodp∈C}.
This is a sublattice of ZE. Indeed, since L(C) is the inverse image under the reduction map, it is an additive subgroup of ZE. Since
pZE⊆L(C)⊆ZE,
the quotient group ZE/L(C) is finite. Therefore L(C) is a finite-index subgroup of ZE. As a standard fact following from Smith normal form, any finite-index subgroup of ZE is a free abelian group of rank n. Thus L(C) has a lattice basis consisting of n linearly independent integer vectors, and is a full-rank lattice in RE. The lattice L(C) is the unnormalised lattice obtained by lifting the code C into the standard integer lattice ZE. In some references, this unnormalised lattice L(C) itself is called the Construction A lattice. In this note, in order to make the correspondence with the dual lattice clean, we multiply further by 1/p and make the following definition.
Definition 4.1 (Construction A).
Let C≤FpE be a p-ary linear code. The Construction A lattice obtained from C is defined by
Λ(C):=p1L(C)={pm∈RE:m∈ZE,mmodp∈C}.
Let us make clear the difference between L(C) and Λ(C). The lattice L(C) is the unnormalised lattice obtained by lifting the code C into the standard integer lattice ZE, and
Λ(C)=p−1/2L(C)
is the Construction A lattice obtained from it by a normalisation suited to duality. A lattice in this note is a discrete set of points in Euclidean space, and its coordinates need not be integers. Therefore, for a general C, the normalised lattice Λ(C) is not necessarily a subset of ZE. Also, in lattice theory, an integral lattice means a lattice for which the inner product of any two lattice points is an integer, namely Λ⊆Λ∗. This is a different concept from the standard integer lattice, which means ZE itself. The factor p−1/2 is a normalisation for making the correspondence with the dual lattice concise. The reason we adopt this normalisation in this note is that the dual lattice takes the very clean form
Λ(C)∗=Λ(C⊥).
Without multiplying by 1/p, the dual lattice would be written in a slightly less transparent form such as (1/p)L(C⊥).
Example 4.2 (Two extreme examples).
When C={0}≤Fpn,
L(C)=pZn,Λ(C)=pZn.
On the other hand, when C=Fpn,
L(C)=Zn,Λ(C)=p1Zn.
These two lattices are dual to each other, and their covolumes are respectively
pn/2,p−n/2.
Example 4.3 (Binary repetition code of length two).
Let p=2, and consider
C={00,11}≤F22.
Then
L(C)=Z(1,1)+Z(1,−1).
Hence Λ(C)=2−1/2L(C) has the orthonormal basis
21(1,1),21(1,−1).
Thus Λ(C) is a lattice obtained from Z2 by an orthogonal transformation, has covolume 1, and is self-dual. This corresponds to C=C⊥.
We first compute the covolume.
Proposition 4.4.
Let C≤FpE be a k-dimensional Fp-linear code. Then
vol(RE/Λ(C))=pn/2−k.
Proof
The reduction map ρ:ZE→FpE is surjective, and L(C)=ρ−1(C). The map
m+L(C)↦(mmodp)+C
is well-defined and gives a group isomorphism ZE/L(C)≅FpE/C. Therefore
We next check the most important duality. Here we use the fact that, for any full-rank lattice L and α∈R∖{0},
(αL)∗=α−1L∗.
Indeed, y∈(αL)∗ is equivalent to ⟨αx,y⟩∈Z, that is, to ⟨x,αy⟩∈Z, for all x∈L.
Theorem 4.5 (Construction A and duality).
Let C≤FpE be a linear code. Then
Λ(C)∗=Λ(C⊥).
Proof
First write L(C)=ρ−1(C). Since Λ(C)=p−1/2L(C), we have
Λ(C)∗=p1/2L(C)∗.
It is therefore enough to show that L(C)∗=p−1L(C⊥).
Let y∈L(C)∗. Since pej belongs to L(C) for every standard basis vector ej (j∈E), we have
⟨y,pej⟩∈Z.
Hence pyj∈Z for every coordinate. Thus there exists z∈ZE such that y=pz.
Moreover, for every m∈L(C),
⟨y,m⟩=p1e∈E∑zeme∈Z.
This means that
e∈E∑(zemodp)(memodp)=0in Fp.
Since mmodp runs over all of C, this is equivalent to zmodp∈C⊥. Thus z∈L(C⊥), and hence y∈p−1L(C⊥).
Conversely, let z∈L(C⊥) and put y=z/p. For any m∈L(C), we have zmodp∈C⊥ and mmodp∈C, so
e∈E∑zeme≡0(modp).
Therefore
⟨y,m⟩=p1e∈E∑zeme∈Z,
and y∈L(C)∗. Hence
L(C)∗=p−1L(C⊥)
has been shown. Multiplying this by p1/2 gives
Λ(C)∗=p1/2p−1L(C⊥)=p−1/2L(C⊥)=Λ(C⊥).
End of proof□
This theorem is the reason for using Construction A. The duality of codes C↔C⊥ is transformed into the duality of lattices Λ(C)↔Λ(C)∗. Therefore, when the Poisson summation formula, which deals with dual lattices, is used, the dual code appears naturally.
This theorem also translates self-orthogonality and self-duality to the lattice side. The inclusion relation between Construction A lattices corresponds to the inclusion relation between the original codes, so
C⊆C⊥⟺Λ(C)⊆Λ(C)∗.
Indeed, in Construction A, C⊆D is equivalent to Λ(C)⊆Λ(D). One direction follows from the definition, and the other follows by taking an integer representative m∈ZE of c∈C and observing that m/p∈Λ(C)⊆Λ(D). Thus the equivalence above follows from Λ(C)∗=Λ(C⊥). Similarly,
C=C⊥⟺Λ(C)=Λ(C)∗.
§5Summary of the Fourier Transform and Poisson Summation Formula
Here we collect only the definitions and theorem statements for the analytic facts used later, after making explicit the convention for the Fourier transform that we adopt. The detailed proofs are deferred to Appendix: Proofs of the Fourier Transform and Poisson Summation Formula. For the main line, it is enough to accept the contents of this section as standard facts.
Here ∣α∣1 denotes the total degree α1+⋯+αn of the multi-index α. We continue to use ∣⋅∣ for absolute values of numbers and determinants.
Definition 5.1.
A smooth function f:Rn→C is called a Schwartz function if, for all multi-indices α,β∈Z≥0n,
x∈Rnsupxα∂βf(x)<∞.
This is a precise way of saying that f and all its partial derivatives tend to 0 at infinity faster than any polynomial. Indeed, for every non-negative integer N and every multi-index β, there exists a constant AN,β such that
∂βf(x)≤AN,β(1+∥x∥)−N.
This follows from the fact that, for some constant CN>0,
(1+∥x∥)N≤CN∣α∣1≤N∑∣xα∣
can be bounded by finitely many monomials. In particular, if N>n, then f and all its partial derivatives are absolutely integrable. Moreover, the product of a polynomial and a Schwartz function is again a Schwartz function. One can also construct, in the standard way, smooth compactly supported functions supported in a sufficiently small neighbourhood of any prescribed point and taking a prescribed value at that point; such functions are called bump functions. A typical example of a Schwartz function is the Gaussian function
ft(x)=e−πt∥x∥2(t>0).
Definition 5.2.
For a Schwartz function f:Rn→C, define its Fourier transform by
f(y):=∫Rnf(x)e−2π−1⟨x,y⟩dx.
Here we adopt the convention for the Fourier transform in which the exponent contains 2π. This convention is well suited to writing the Poisson summation formula compactly. Under this convention, the Fourier transform of the Gaussian function has the following form.
Theorem 5.3 (Fourier transform of the Gaussian function).
Let t>0, and put ft(x)=e−πt∥x∥2. Then
ft(y)=t−n/2e−π∥y∥2/t.
Proposition 5.4 (Fourier transform on the Schwartz space).
The following hold for the Fourier transform.
If f is a Schwartz function, then f is also a Schwartz function.
Under the convention for the Fourier transform adopted above,
f(x)=f(−x)
holds.
Consequently, the Fourier transform is a linear automorphism of the space of Schwartz functions.
For a one-variable Schwartz function f:R→C and
fE(x)=e∈E∏f(xe),
the function fE is a Schwartz function on RE, and
fE(y)=e∈E∏f(ye)
holds.
The next theorem is the central Poisson summation formula for this note.
Theorem 5.5 (Poisson summation formula).
Let Λ⊆Rn be a full-rank lattice, and let f:Rn→C be a Schwartz function. Then
x∈Λ∑f(x)=vol(Rn/Λ)1y∈Λ∗∑f(y)(5.1)
holds.
This formula transforms a sum over a lattice into a sum over the dual lattice. The reciprocal of the covolume appears on the right-hand side as a correction for the difference in lattice densities. For example, when Λ=Zn, we have Λ∗=Zn and the covolume is 1, so the formula takes the form
m∈Zn∑f(m)=m∈Zn∑f(m).
For later use with one-coordinate residue-class sums, we also record the form for a translated one-dimensional lattice.
The Poisson summation formula is the principle underlying this part. The MacWilliams identity over finite abelian groups can be viewed as a finite Poisson summation formula, but in this note we use the Poisson summation formula on Euclidean space. Thus, even though the proof belongs to the same Fourier, character, and Poisson family, it is written in the language of continuous analysis and lattices.
§6Lattice Theta Functions
Substituting the Gaussian function into the Poisson summation formula gives the transformation formula for lattice theta functions. This is one reason why lattices and theta functions appear in a proof of the MacWilliams identity. From here on, we accept the Poisson summation formula as a tool and return to the main line concerning codes and lattices.
Definition 6.1.
For a full-rank lattice Λ⊆Rn, define its theta function or theta series by
ΘΛ(t):=x∈Λ∑e−πt∥x∥2(t>0).
The theta series is the sum of the Gaussian function over the lattice points, and it converges absolutely. It is a Laplace-type generating function recording the discrete distribution of squared lengths of lattice points. Short vectors contribute more, and long vectors contribute less. For a general Euclidean lattice, ∥x∥2 need not be an integer. Thus put
RΛ:={∥x∥2:x∈Λ},
and for s∈RΛ define
NΛ(s):=#{x∈Λ:∥x∥2=s}.
By the local finiteness checked in Lattices in Euclidean Space, there are only finitely many lattice points in a bounded ball, so each NΛ(s) is finite. Since the theta series is an absolutely convergent series with non-negative terms, we may regroup it according to squared length and write
ΘΛ(t)=s∈RΛ∑NΛ(s)e−πts.
In other words, the theta function packages the distribution of squared lengths of lattice points. In standard references, one often uses a complex variable τ on the upper half-plane
{τ∈C:Imτ>0}
and writes the theta function in the form
x∈Λ∑exp(π−1τ∥x∥2).
The definition using t>0 in this note is the restriction of that theta function to the imaginary axis τ=−1t. When t is large, the contribution of the origin and short vectors dominates. When t is small, more lattice points make a significant contribution. The transformation formula obtained from Poisson summation connects information about Λ at t with information about the dual lattice Λ∗ at 1/t, matching these two viewpoints.
Example 6.2 (Theta function of the standard integer lattice).
The theta function of the one-dimensional standard integer lattice Z is
ΘZ(t)=m∈Z∑e−πtm2=1+2e−πt+2e−4πt+2e−9πt+⋯.
The coefficient 2 records that the two lattice points m and −m have the same squared length. For Zn, the sum decomposes coordinate by coordinate, giving
ΘZn(t)=(m∈Z∑e−πtm2)n.
The Poisson summation formula gives the basic transformation formula for theta functions.
Theorem 6.3 (Transformation formula for lattice theta functions).
Let Λ⊆Rn be a full-rank lattice. Then, for every t>0,
This theorem is a duality in the world of theta functions. Viewing the theta function of a lattice Λ at t corresponds to viewing the theta function of the dual lattice Λ∗ at 1/t. In this note, we combine this duality with Construction A. Since Λ(C)∗=Λ(C⊥), the duality of theta functions is translated into the duality of codes.
§7Complete Weight Enumerators
The theta function of a Construction A lattice is naturally connected with the complete weight enumerator of a code. The usual Hamming weight enumerator only sees whether a coordinate value is 0 or non-zero. The complete weight enumerator, on the other hand, also distinguishes the types of non-zero values.
Definition 7.1.
Let C≤FpE be a linear code. For each a∈Fp, prepare a variable Ta. The complete weight enumerator of C is defined by
cweC((Ta)a∈Fp):=c∈C∑e∈E∏Tce.
The usual Hamming weight enumerator is a specialisation of the complete weight enumerator. Indeed, if
T0=X,Ta=Y(a=0),
then
cweC((Ta)a∈Fp)=WC(X,Y).
Each term of the complete weight enumerator chooses one variable from each coordinate of the coordinate set E, so it is a homogeneous polynomial of total degree n.
Let us see why the complete weight enumerator appears. A point of the Construction A lattice is written as x=m/p. The residue class in each coordinate is determined not by the real coordinate xe itself, but by the corresponding integer me. Thus, for each congruence class me≡a(modp), the set of integers a+pZ appears. When a lattice-point sum is separated coordinate by coordinate, a different one-coordinate sum appears for each a∈Fp. The natural polynomial recording this is the complete weight enumerator.
We formulate this point using an arbitrary one-variable Schwartz function. Let f:R→C be a Schwartz function, and for each a∈Fp set
Sa(f):=m≡a(modp)∑f(pm).(7.1)
Here S stands for sum. The set of points in the summation index is
pa+pZ,
which is a translate of the lattice pZ, namely a lattice coset. By the rapid decrease of Schwartz functions, this series converges absolutely. Also consider the function on RE given by
fE(x):=e∈E∏f(xe).
Proposition 7.2.
Let C≤FpE be a linear code, and let f:R→C be a Schwartz function. Consider the function on RE given by
fE(x)=e∈E∏f(xe).
Then
x∈Λ(C)∑fE(x)=cweC((Sa(f))a∈Fp)(7.2)
holds.
Proof
An element of Λ(C) can be written as x=pm, where m∈ZE and mmodp∈C. First,
m∈ZE∑e∈E∏f(pme)=(r∈Z∑f(pr))n<∞.
The right-hand side is finite by the rapid decrease of Schwartz functions. This absolute convergence justifies the rearrangements of sums and the decomposition into coordinatewise products below by Tonelli's theorem. Separating the sum according to residue classes c=mmodp∈C, we get
This proposition shows that a sum over a Construction A lattice can be written as a complete weight enumerator. In particular, when f is a Gaussian function, the left-hand side is a lattice theta function.
§8Residue-Class Theta Functions
The capital ΘΛ denotes the theta function of the whole n-dimensional lattice, while the lower-case ϑa denotes the theta function for a residue class in one coordinate. In this section, we connect the two through the complete weight enumerator.
Using the Gaussian function
gt(x)=e−πtx2(t>0),
the one-coordinate sum over a residue class becomes a theta function.
Definition 8.1.
For a∈Fp, define the residue-class theta function by
ϑa(t):=m≡a(modp)∑e−πtm2/p(t>0).
The same sum can also be written as a sum over a coset of the lattice pZ:
ϑa(t)=r∈Z∑exp(−πt(pa+rp)2).
In other words, ϑa(t) is the sum of the Gaussian function over a coset of the lattice pZ.
For p=2, ϑ0(t) sums over even integers, while ϑ1(t) sums over odd integers. The first few terms are
ϑ0(t)=1+2e−2πt+2e−8πt+⋯,
and
ϑ1(t)=2e−πt/2+2e−9πt/2+⋯.
The terms m=0,±2,±4,… contribute to the former, and m=±1,±3,… contribute to the latter.
This formula is the specialisation of the complete weight enumerator obtained by substituting
Ta=ϑa(t).
In general, it does not embed the complete weight enumerator injectively into the usual one-variable lattice theta function. Indeed, for every a∈Fp,
ϑa(t)=ϑ−a(t)
holds. This follows by replacing the summation index by m↦−m. In particular, for p=3 we have ϑ1(t)=ϑ2(t), so the usual one-variable lattice theta function cannot fully distinguish the non-zero symbols. Indeed, consider
C={(0,0),(1,1),(2,2)}≤F32.
The dual code is
C⊥={(0,0),(1,2),(2,1)}.
The complete weight enumerators are
cweC=T02+T12+T22,cweC⊥=T02+2T1T2,
and these two are different. However, after substituting ϑ1(t)=ϑ2(t), both become
ϑ0(t)2+2ϑ1(t)2.
This example shows that the usual one-variable lattice theta function obtained from the Gaussian function cannot distinguish the symbols 1 and 2=−1. To extract the complete-weight-enumerator identity, we need to be able to specify residue-class sums independently using arbitrary Schwartz functions. The one-variable family of Gaussian functions alone also does not have enough freedom to vary the p variables of the complete weight enumerator independently. Passing to arbitrary Schwartz functions is a way of extracting the polynomial identity behind the special family of theta functions. The viewpoint of pointing out that residue-class theta functions are not algebraically independent in general, replacing them by formal variables, and then passing to the complete-weight-enumerator identity also appears in Nishimura [Nis01]. In this note, we make this passage to formal variables concrete as the construction of Schwartz functions realising arbitrary evaluation points. Thus it is accurate to regard the theta transformation formula for Gaussian functions as a specialisation of the complete-weight-enumerator MacWilliams identity proved later.
for the Construction A lattice. This is precisely the theta transformation formula.
The same transformation is visible in the one-coordinate residue-class theta functions. From now on, put
ψ(a)=exp(2π−1a/p).
The element a appearing in the exponential is read as the standard representative 0,1,…,p−1, according to the convention above. Changing the representative by an integer multiple of p does not change the value, so this is well-defined as a function on Fp. Here C×=C∖{0}. The function ψ is a homomorphism from the additive group of Fp to C×, namely an additive character. Indeed,
The sum and difference appearing here are the Gaussian specialisations of the change of variables that later become
X+Y,X−Y
in the Hamming-weight MacWilliams identity.
What we have obtained so far is the transformation formula for lattice theta functions coming from Gaussian functions. However, residue-class theta functions are special functions depending on a single real variable t, and they do not allow the p variables of the complete weight enumerator to vary independently. In the next section, we therefore use arbitrary Schwartz functions and specify the residue-class sums independently, thereby extracting the polynomial identity behind this transformation.
§9One-Coordinate Poisson Summation Formula
To extract the MacWilliams change of variables, it is enough to look at how the one-coordinate residue-class sums change under the Fourier transform. From here on, we use arbitrary Schwartz functions, not just Gaussian functions. This generalisation lets us treat the p formal variables of the complete weight enumerator independently. Write Fp×:=Fp∖{0}.
For a Schwartz function f:R→C, we defined
Sa(f)=m≡a(modp)∑f(pm).
Lemma 9.1 (Orthogonality of additive characters).
For every a∈Fp,
b∈Fp∑ψ(ab)={p,0,a=0,a=0
holds.
Proof
If a=0, each term is 1, so the sum is p. If a=0, the map b↦ab is a permutation of Fp. Therefore
b∈Fp∑ψ(ab)=u∈Fp∑ψ(u)=u=0∑p−1exp(2π−1u/p).
This is a geometric series of p-th roots of unity whose ratio is not 1, so it is 0.
This formula is precisely the one-coordinate Fourier transform over the finite field. It is the result of reading the continuous Poisson summation formula residue class by residue class, and the character table (ψ(ab))a,b∈Fp of the finite group Fp appears. In other words, the finite Fourier transform is extracted from the continuous Poisson summation formula.
For later use with formal variables, we also check that residue-class sums can be prescribed arbitrarily.
Lemma 9.3.
For any sequence of complex numbers (za)a∈Fp, there exists a Schwartz function g:R→C such that
m≡a(modp)∑g(pm)=za(a∈Fp).
Proof
The support of a function is the closure of the set on which the function is non-zero. This uses the same word support as for codewords, but here it means the support of a function. For each representative a∈{0,1,…,p−1}, choose a smooth compactly supported function ϕa supported in a neighbourhood of a/p. Choose the support so that it contains no point of
{pm:m∈Z}
other than a/p. For example, it is enough to make the support contained in an interval of radius less than 1/(3p) centred at a/p. Normalise further so that
ϕa(a/p)=1.
Such functions can be constructed by translating and rescaling bump functions used standardly in analysis. Then
g(x)=a=0∑p−1zaϕa(x)
is smooth and compactly supported, hence a Schwartz function, and each residue-class sum is the prescribed value za. Indeed, by the choice of support, among the sample points belonging to the residue class b, only b/p contributes, and at that point ϕb(b/p)=1 while the other ϕa take the value 0. Thus
§10From the Poisson Summation Formula to the Complete MacWilliams Identity
Using the preparation so far, we prove the complete-weight-enumerator MacWilliams identity. What we obtain here is not merely the theta transformation formula for Gaussian functions, but a polynomial identity extracted from arbitrary Schwartz functions and the freedom of residue-class sums. In the proof, we first show the equality for an arbitrary evaluation point z=(zb)b∈Fp∈Cp. Then, since both sides are polynomials in the formal variables Tb, we conclude that it is an identity in those formal variables.
The complete weight enumerator is a homogeneous polynomial of total degree n, so the factor 1/p on the left-hand side contributes an overall factor p−n/2. Hence
The obtained equality holds for every z∈Cp. On the other hand, both sides are complex-coefficient polynomials in the formal variables (Tb)b∈Fp. Therefore the equality also holds as a polynomial identity. This uses the fact that a complex-coefficient multivariable polynomial that vanishes at every point of Cp by taking the value 0 is the zero polynomial.
End of proof□
The theta transformation formula for Construction A lattices obtained from Gaussian functions comes back as a specialisation of this complete-weight- enumerator identity. Substitute
Let us organise where the coefficients come from. From the one-coordinate Poisson summation formula, a factor p−1/2 appears in each coordinate. Since the complete weight enumerator is a homogeneous polynomial of total degree n, this becomes p−n/2 over all coordinates. On the other hand, the covolume of the Construction A lattice gives the coefficient pk−n/2 in the lattice Poisson summation formula. Putting these together, the final coefficient left over is p−k=1/#C.
Let us also check the roles played by lattice theory and analysis in this proof. By Construction A, the code C was turned into the lattice Λ(C). By the Poisson summation formula, the sum over Λ(C) was turned into a sum over the dual lattice Λ(C)∗. Since Λ(C)∗=Λ(C⊥), the dual code appeared there. The Poisson summation formula for one-coordinate residue-class sums gave the change of variables for the complete weight enumerator.
§11Hamming-Weight MacWilliams Identity
From the complete-weight-enumerator version, we obtain the usual Hamming-weight MacWilliams identity. Here q=p, so the target is
Since C is a k-dimensional Fp-linear space, pk=#C, and the claim follows.
End of proof□
This derives the MacWilliams identity from Construction A and the Poisson summation formula. In the usual character-theoretic proof, finite sums over the finite set FpE are computed. By contrast, in the proof in this note, the code is first lifted to a lattice, which is an infinite set, and the Poisson summation formula over that lattice is used. After that, by reading off the one-coordinate sums over residue classes, we return to the MacWilliams identity over the finite field.
§12A Small Example: The Binary Repetition Code of Length Three
Finally, let us check the formula in a small example. Let p=2 and E={1,2,3}, and consider the binary repetition code
C={000,111}≤F23.
The weight enumerator of this code is
WC(X,Y)=X3+Y3.
The dual code is the even-weight code
C⊥={000,110,101,011},
and its weight enumerator is
WC⊥(X,Y)=X3+3XY2.
Computing the right-hand side of the MacWilliams identity gives
#C1WC(X+Y,X−Y)=21((X+Y)3+(X−Y)3)=X3+3XY2,
which indeed agrees with WC⊥(X,Y).
Looking at the Construction A lattice, we have
Λ(C)={2x∈R3:x1≡x2≡x3(mod2)}.
The unnormalised lattice can be written as
L(C)=Z(2,0,0)+Z(0,2,0)+Z(1,1,1).
The elements of the right-hand side have all three coordinates of the same parity. Also,
(0,0,2)=2(1,1,1)−(2,0,0)−(0,2,0),
so all three even-coordinate directions can also be generated. Conversely, if the three coordinates have the same parity, subtracting an integer multiple of (1,1,1) makes all coordinates even, and the remainder can be expressed as an integer combination of (2,0,0), (0,2,0), and (0,0,2). On the other hand, the lattice obtained from C⊥ is
Λ(C⊥)={2y∈R3:y1+y2+y3≡0(mod2)}.
The unnormalised lattice can be written as
L(C⊥)=Z(1,1,0)+Z(1,0,1)+Z(0,1,1).
The elements of the right-hand side have even coordinate sum. Conversely, if y=(y1,y2,y3)∈Z3 has even coordinate sum, then
Since the coordinate sum is even, all three coefficients are integers. The absolute values of the determinants of the basis matrices are 4 and 2, respectively. Taking into account also the change in volume caused by multiplying by 1/2, we get
vol(R3/Λ(C))=2,vol(R3/Λ(C⊥))=21.
This example also concretely confirms that the covolumes of dual lattices are reciprocals. By Theorem 4.5 (Construction A and duality).Let C≤FpE be a linear code. ThenΛ(C)∗=Λ(C⊥).Theorem 4.5, these two lattices are dual to each other. The Poisson summation formula connects the Gaussian-weighted lattice sums over these two lattices. In the Gaussian case, what appears in one coordinate is the sum and difference of residue-class theta sums,
ϑ0(1/t)+ϑ1(1/t),ϑ0(1/t)−ϑ1(1/t).
When we pass to arbitrary Schwartz functions and prescribe the residue-class sums after the Fourier transform as the formal variables X,Y, these become X+Y and X−Y. In this example, the only non-zero residue class is 1, so there is no difference between the complete weight enumerator and the Hamming weight enumerator.
§13What Lattices and Theta Functions Did in This Proof
Let us organise the roles played by lattices and theta functions in the proof in this note.
First, Construction A lifted a code to a lattice. The code C≤FpE is a finite set, but the Construction A lattice Λ(C)⊆RE is an infinite set. Nevertheless, its lattice points are controlled by the residue classes in C. That is, for x∈Λ(C), we have px∈ZE, and reducing this modulo p gives a codeword of C.
Second, the dual code appeared as the dual lattice.
Λ(C)∗=Λ(C⊥)
is the equality connecting duality in coding theory with duality in lattice theory. Without this equality, the dual code would not appear even if we used the Poisson summation formula.
Third, decomposition into residue classes expressed a lattice-point sum as a substitution into the complete weight enumerator. When the lattice points are separated by residue class, the complete weight enumerator appears. Using a Gaussian function, that sum is a lattice theta function. Using a general Schwartz function, the variables of the complete weight enumerator can be varied freely.
Fourth, the Poisson summation formula gave the MacWilliams transform. When the Poisson summation formula, which transforms a sum over a lattice into a sum over the dual lattice, is read as a statement about one-coordinate residue-class sums, the character table of the finite field Fp appears. The change of variables given by that character table is the complete-weight- enumerator MacWilliams identity. For the Hamming weight enumerator, specialising all non-zero variables to the same variable Y produces
X+(p−1)Y,X−Y.
In one sentence, the key point is as follows.
With Gaussian functions, the theta transformation formula appears; with arbitrary Schwartz functions, the complete-weight-enumerator MacWilliams identity behind it appears.
§14Concepts Seen in This Part
In this part, while aiming at a proof of the MacWilliams identity, we introduced basic tools concerning lattices and theta functions. They can be organised as follows.
Euclidean lattice
A discrete set of points in Rn obtained as integer linear combinations of finitely many linearly independent vectors. In this note, we mainly treated full-rank lattices.
Covolume
The volume of a fundamental domain of a lattice. For a Construction A lattice, if C≤FpE has dimension k, then
vol(RE/Λ(C))=pn/2−k.
Dual lattice
The set of vectors having integer-valued inner product with every lattice point. In Construction A,
Λ(C)∗=Λ(C⊥)
holds, and duality of codes appeared as duality of lattices.
Poisson summation formula
The formula connecting a sum over a lattice with the sum of the Fourier transform over the dual lattice. This is the deeper principle behind the proof in this note.
Theta function
The function obtained by summing the Gaussian function over lattice points. By the Poisson summation formula, the theta function is connected with the theta function of the dual lattice by a transformation formula.
Construction A
A method for constructing a lattice from a code C≤FpE by using integer vectors satisfying the congruence condition mmodp∈C. It is the most basic construction connecting codes and lattices.
Complete weight enumerator
A weight enumerator that records each symbol a∈Fp by a separate variable Ta. The residue-class sums of a Construction A lattice were expressed as a complete weight enumerator.
§15Looking Back at This Family of Proofs
As stated at the beginning, the proof in this note belongs to the family
Fourier, character, and Poisson-type proofs.
However, the tools appearing on the surface were not character theory of finite abelian groups, but lattices, theta functions, and the Poisson summation formula.
The correspondence in this part can be organised as follows.
Code side
Lattice and analytic side
Code C
Construction A lattice Λ(C)
Dual code C⊥
Dual lattice Λ(C)∗
Substitution of residue-class sums into the complete weight enumerator
Sum of product-type functions over the Construction A lattice
MacWilliams change of variables
Finite Fourier transform arising from the one-coordinate Poisson summation formula
At a deeper level, the proof in this note points in the same direction as the character-theoretic proof over finite fields. However, by viewing it not as a character sum over a finite set but as the Poisson summation formula over a continuous space, the Gaussian case gives a theta transformation formula, and the arbitrary Schwartz-function case gives the complete-weight-enumerator MacWilliams identity. This difference is the phenomenon we want to see in this series: the same theorem appearing in the languages of different areas.
§16The Case of General q=pd
This section is an advanced supplement and is an outline of extensions not used in the main proof. You may skip it on a first reading.
In this note, the main text treated codes over Fp because we used the standard integer lattice Zn and congruences modp. How should one think about a general finite field Fq, where q=pd?
One method is to regard Fq as a d-dimensional vector space over Fp and express each symbol as a block of dp-ary coordinates. In this case, the lattice is constructed inside RE×[d], namely inside a real space of dimension dn. However, one must be careful about duality. Below we write
[d]:={1,…,d}
and explicitly regard the coordinate set as E×[d]. When q=pd, the trace of finite fields is defined by
TrFq/Fp(z)=z+zp+⋯+zpd−1.
As a standard fact, the trace pairing
(x,y)⟼TrFq/Fp(xy)
is non-degenerate. Therefore, for any Fp-basis, there is a trace-dual basis. If β1,…,βd is an Fp-basis of Fq, its trace-dual basis β1∨,…,βd∨ is the basis satisfying
TrFq/Fp(βiβj∨)=δij.
Here δij is the Kronecker delta mentioned above.
We use these two bases separately. For c=(ce)e∈E∈FqE, expand
ce=j=1∑dce,jβj(ce,j∈Fp)
and define
Φβ(c):=(ce,j)(e,j)∈E×[d]∈FpE×[d].
Similarly, expand u=(ue)e∈E∈FqE as
ue=j=1∑due,jβj∨(ue,j∈Fp)
and define
Φβ∨(u):=(ue,j)(e,j)∈E×[d]∈FpE×[d].
The dot product on FpE×[d] is the standard inner product
v⋅w=(e,j)∈E×[d]∑ve,jwe,j.
With this notation, for c,u∈FqE,
Φβ(c)⋅Φβ∨(u)=TrFq/Fp(u⋅c)
holds. Indeed, in each coordinate,
TrFq/Fp(uece)=j=1∑due,jce,j.
Here the ⊥ in
Φβ(C)⊥
denotes the Fp-dual with respect to the standard inner product on FpE×[d].
Then
Φβ∨(C⊥)=Φβ(C)⊥
follows. It is important here that the basis β is used on the C side, while the trace-dual basis β∨ is used on the C⊥ side. In general, the same basis is not being used on both sides. Therefore, even if C=C⊥, the subspaces Φβ(C) and Φβ∨(C⊥) need not be literally the same under the chosen coordinate representations. Indeed, if u⋅c=0, then of course its trace is also 0, so Φβ∨(u) is orthogonal to Φβ(C). Conversely, suppose that TrFq/Fp(u⋅c)=0 for all c∈C. Since C is Fq-linear, we have λc∈C for every λ∈Fq. Therefore
TrFq/Fp(λ(u⋅c))=0(λ∈Fq)
holds. By non-degeneracy of the trace pairing, this implies u⋅c=0. Thus u∈C⊥.
From here, we can apply the duality theorem for Construction A proved in the main text to the p-ary linear code over FpE×[d]. In other words, when applying Construction A, we regard the coordinate set as E×[d]. The choice of an ordering of the real coordinates changes only a coordinate permutation of the lattice. Here Φβ(C) and Φβ∨(C⊥) are p-ary linear codes inside FpE×[d]. Therefore
Λ(Φβ(C))∗=Λ(Φβ(C)⊥)=Λ(Φβ∨(C⊥)).
This formula is the basic correspondence for viewing the dual code as the dual lattice even over a general finite field.
For the one-coordinate Fourier transform over a general finite field, additive characters are also written using the trace. For example, for a∈Fq, if
χa(b)=exp(p2π−1TrFq/Fp(ab)),
then b↦χa(b) is a character of the additive group of Fq.
However, the usual Hamming weight counts whether a block is zero or non-zero, and does not agree with the Hamming weight of the dnp-ary coordinates. Thus one must introduce variables that distinguish, block by block, the zero vector from the non-zero vectors. In this viewpoint, one Fq coordinate is regarded as one block of Fpd. For each block, one uses a Schwartz function on Rd, rather than a one-dimensional Schwartz function. Then one independently specifies the sums over the pd=q residue classes of (1/p)Zd. This makes it possible to treat independently the variables of the complete weight enumerator corresponding to each a∈Fq. Finally, by merging variables according to whether the block is zero or non-zero, one specialises to the Hamming-weight version over Fq.
Another method is to use the ring of integers OK of a number field and a prime ideal p to realise
OK/p≅Fq
and perform Construction A inside OKn. In this case, OKn is moved to a real Euclidean space by the Minkowski embedding, and the image gives a lattice. Thus the contrast “not a Euclidean lattice, but a lattice obtained from an embedding of a number field” would not be accurate. After the Minkowski embedding, it is still a lattice inside a real Euclidean space. Trace forms and inverse differents appear in the description of the dual lattice. For CM fields, descriptions using Hermitian forms are also natural. This direction is deeply connected with theta functions, modular forms, and algebraic number theory.
Therefore, the proof using lattices and theta functions is most straightforward when q=p. The same idea also exists for general q=pd, but for that one must go one step beyond the standard integer lattice Zn and deal with block lattices or lattices over number fields. Since the purpose of this note is to provide an entry point to lattices and theta functions, the main text was restricted to p-ary codes.
§17Appendix: Proofs of the Fourier Transform and Poisson Summation Formula
In this appendix, we collect proofs of the analytic facts whose statements were given in Summary of the Fourier Transform and Poisson Summation Formula. The details of this section are not used in the main proof. They are included for readers who want to check uniform convergence of Schwartz series over lattices, Fourier expansions of lattice-periodic functions, Fourier inversion, and related points. In the Fourier expansion of lattice-periodic functions, we use as a standard theorem the uniform convergence of multivariable Fejér means.
Lemma 17.1 (Uniform convergence of Schwartz series over lattices).
Let Λ=BZn be a full-rank lattice, and let K⊆Rn be a compact set. Let f be a Schwartz function. Then, for every multi-index β, the series
m∈Zn∑∂βf(x+Bm)
converges absolutely and uniformly with respect to x∈K. In particular, the lattice sum
λ∈Λ∑∣f(λ)∣
converges. Moreover, the periodised series
λ∈Λ∑f(x+λ)
is smooth and may be differentiated term by term.
Proof
Since B is invertible, there exists c>0 such that
∥Bm∥≥c∥m∥(m∈Zn).
Also, since K is bounded, there is M>0 such that ∥x∥≤M (x∈K). Hence
∥x+Bm∥≥c∥m∥−M(x∈K).
By the rapid decrease of Schwartz functions, for every N there is a constant Aβ,N such that, after absorbing finitely many small m into the constant, we have the estimate
x∈Ksup∂βf(x+Bm)≤Aβ,N(1+∥m∥)−N.
If N>n, the right-hand side is summable over m∈Zn. By the Weierstrass test, the series converges absolutely and uniformly on K. The same argument applies to all partial derivatives, so the periodised series is smooth and can be differentiated term by term.
End of proof□
This lemma shows that the series obtained by summing a Schwartz function over a lattice converges absolutely. Intuitively, the number of lattice points grows only polynomially, while a Schwartz function decreases faster than any polynomial. Since the Gaussian function is a Schwartz function, theta series also converge absolutely.
For a multi-index β∈Z≥0n, the function xβf(x) is absolutely integrable. Therefore, by the dominated convergence theorem, we may differentiate under the integral sign any number of times, obtaining
∂yβf(y)=((−2π−1x)βf)(y).(17.1)
Here
(−2π−1x)β=j=1∏n(−2π−1xj)βj.
On the other hand, for a Schwartz function h and a multi-index α, integration by parts in each coordinate gives
∂αh(y)=(2π−1)∣α∣1yαh(y).(17.2)
Since a Schwartz function decreases rapidly together with all its partial derivatives, all boundary terms in the integrations by parts are 0.
By the first assertion, f is a Schwartz function, and in particular is absolutely integrable. Since also 0<Gε(y)≤1, the dominated convergence theorem gives
ε↓0limIε(x)=∫Rnf(y)e2π−1⟨x,y⟩dy.(17.3)
Substituting the definition of the Fourier transform gives
With the change of variables u=x+εv, this becomes
Iε(x)=∫Rnf(x+εv)e−π∥v∥2dv.
The Schwartz function f is bounded, and e−π∥v∥2 is absolutely integrable, so the dominated convergence theorem applies again. Also, by Fubini's theorem and the one-dimensional Gaussian integral ∫Re−πu2du=1, we have ∫Rne−π∥v∥2dv=1. Hence
The boundary terms cancel by periodicity. The right-hand side is uniformly bounded by a constant independent of m, so there is a constant AN such that
c(B⊤)−1m≤AN(1+∥m∥2)−N.
If N>n/2, the right-hand side is summable over m∈Zn. By the Weierstrass test, the Fourier series converges absolutely and uniformly.
It remains only to check that this uniformly convergent series agrees with the original function. Here we use the standard theorem on Fourier series on the standard torus that the multivariable Fejér kernel made as a product of one-variable Fejér kernels is an approximate identity, and that the Fejér means of a continuous periodic function converge uniformly. On the other hand, Fejér means are finite sums made from Fourier coefficients. Since the Fourier coefficients are absolutely summable, the Fejér means also converge uniformly to the ordinary Fourier series. Therefore the Fourier series converges uniformly to h. Returning to x=Bu gives the claim.
Put g(x)=f(x+x0). By the definition of the Fourier transform and the change of variables u=x+x0,
g(y)=exp(2π−1x0y)f(y).
Applying the usual Poisson summation formula to the lattice hZ gives
r∈Z∑g(rh)=h1s∈Z∑g(s/h).
The left-hand side is ∑r∈Zf(x0+rh), and substituting the formula above into the right-hand side gives the claim.
End of proof□
§18Next Time
At this point, the derivation of the MacWilliams identity from the viewpoint of lattices and theta functions, which is the main claim of this note, is complete. What follows is a preview within the series.
Next time, we look at the MacWilliams identity from the viewpoints of zeta functions and Riemann–Roch-type formulae. In the proof in this note, we constructed a lattice from a code, obtained the transformation formula for lattice theta functions in the Gaussian case, and extracted the complete-weight-enumerator MacWilliams identity in the arbitrary Schwartz-function case. Next time, we attach a zeta function to a code, and view the MacWilliams identity from the side of its functional equation and a Riemann–Roch-type dimension formula.
The main actors next time are
zeta functions of codes → Riemann–Roch-type formulae → functional equations → the MacWilliams identity
. Even though it is the same MacWilliams identity, next time it will appear not as the Poisson summation formula for lattices, but in the form of an arithmetic functional equation.
Footnotes
The terminology around this point collides quite heavily. In Japanese, the two meanings of lattice can be distinguished by using “格子” and “束”, but the Japanese word “束” can also refer both to a lattice in order theory and to a bundle, as in a vector bundle. In fact, when the author was first learning matroid theory, he mistakenly thought that the lattice appearing there was a lattice of points in space. ↩
Articles on this site are based on the operator's personal understanding, investigation, and research notes. I try to keep the content accurate, but it may contain errors or incomplete explanations. I do not guarantee its accuracy, completeness, usefulness, or currentness.
Please use the information on this site at your own judgment and responsibility. To the extent permitted by law, the operator is not liable for damages, losses, or disadvantages arising from using, or being unable to use, information on this site.
If you notice an error, unclear explanation, broken link, or insufficient citation, please contact the operator. I will review the content and, when appropriate, correct, update, or remove it.