Article and note
A Series Learning through the MacWilliams IdentityPart 8 of 12
An Introduction to Group Actions and Cycle Indices through the MacWilliams Identity
- Published:
- Updated:
- Reading time:
- 35 min (about 7,631 words)
Introduction
One of the fundamental theorems in coding theory is the MacWilliams identity. Let be the coordinate set, let , and, for a linear code over the finite field , consider its dual code
where
For a codeword , write its support and Hamming weight as
Define the weight enumerator of the linear code by
The MacWilliams identity is the formula saying that the weight enumerator of the dual code can be computed from the weight enumerator of as follows:
This is the MacWilliams identity.
In this series, I use proofs of the MacWilliams identity as a guide to an introduction to neighbouring areas and concepts. Accordingly, this series is aimed at readers who already know the following basic material in coding theory:
We assume familiarity, at least at a basic level, 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.
(There is no problem if you do not know a proof of the MacWilliams identity.)
This note does not assume Parts 1–7. In the latter half, we use a calculation corresponding to the orthogonality of additive characters and the complete weight enumerator, but the necessary definitions and facts are introduced inside this note. Also, this note does not go deeply into the motivation, across the whole series, for separating the proofs into these five families; it is organised so that the proof in this part can be read using only the language of group actions and cycle indices.
In this series, I look at proof methods for the MacWilliams identity under the following five broad families. However, this classification is a map for the series as a whole, and is not necessary in order to read the proof in this note:
Fourier, character, and Poisson methods.
Möbius inversion, lattice-theoretic, and shortening/puncturing methods.
Orthogonal-polynomial and association-scheme methods.
Matroid and Tutte-polynomial methods.
Moment and double-counting methods.
The proof treated in this note is written, on the surface, in the language of
group actions, Burnside's lemma, Pólya enumeration, and cycle indices.
If compressed into the five families, it is close to the Fourier, character, and Poisson methods. This is because, at the final stage where the dual code is extracted, the additive characters of the finite field , or equivalently the character table of the additive group , appear. However, the main subject of this note is not character theory. The aim here is to use a proof of the MacWilliams identity as a guide to an introduction to group actions and cycle indices.
A group action is a language for describing a situation where the elements of a group behave as symmetries of a set. When a group acts on a finite set, that set decomposes into orbits. The formula that counts the number of orbits as an average of numbers of fixed points is Burnside's lemma. Furthermore, if we view group elements as permutations, the object that records their cycle decompositions is the cycle index. In Pólya enumeration, by substituting variables into this cycle index, one can count colourings while taking symmetries into account.
In coding theory, a codeword can be viewed, at each coordinate, as a translation
In other words, one can construct a permutation group from the code . The cycle index of this permutation group records almost exactly the weight enumerator of . Moreover, if we refine the cycle index slightly and record the translation amount at each coordinate itself, then the complete weight enumerator appears. The viewpoint of this note is to look at the MacWilliams identity through this refined cycle index.
The flow of the note is as follows.
group actions → orbits and fixed points → Burnside's lemma → cycle indices → Pólya enumeration → permutation groups constructed from codes → complete cycle indices → the MacWilliams identity
For the relation between cycle indices and weight enumerators of codes, Cameron [Cam02] states that the cycle index of the permutation group associated with a linear code becomes the weight enumerator, up to normalisation. For the relation between complete cycle indices and complete weight enumerators, see Miezaki–Oura [MO19]. For classical treatments of Pólya enumeration and cycle indices, see Pólya [Ply37], Harary–Palmer [HP73], and others. Cameron [Cam95] is also a standard reference for the basic theory of permutation groups.
Group Actions
We begin with the definition of a group action. Here we treat only finite groups. In coding theory, the letter is often used to denote a generator matrix, but in this note, following the general language of group actions, denotes a group. Please note that it is not notation for a generator matrix.
Definition 2.1.
Let be a group and let be a set. We say that acts on if, for each and each , an element is defined, and the following two conditions hold:
For the identity element , for every ,
holds.
For all and ,
holds.
In this case, is called a -set.
A group action is a way to "realise the elements of a group as symmetries of a set". Indeed, for each , we obtain a map
This map is a bijection. Its inverse is . Thus each element of defines a permutation of .
Example 2.2 (Natural action of a symmetric group).
Let . Write for the group consisting of all permutations of . Then acts naturally on . More concretely, for a permutation and a point , it is enough to define
Example 2.3 (Action of a cyclic group on a regular polygon).
Label the vertex set of a regular -gon as
The cyclic group acts on by rotations. Concretely,
Let us also look at an example close to coding theory.
Example 2.4 (Translation action by a code).
Let , and let be a linear code. If we regard as an additive group, then acts on by translations:
The orbits of this action are the cosets of ,
In this example, the group action decomposes into cosets. This is the feeling that "a group action quotients an object by symmetries".
Orbits, Fixed Points, and Stabilisers
The first things to look at for a group action are orbits and fixed points.
Definition 3.1.
Suppose that acts on a set . For , define
This is called the orbit of . Also define
This is called the stabiliser of . Furthermore, for , define
This is called the fixed point set of .
The orbit is the set of all points that can be reached by moving the point by elements of the group. The stabiliser is the set of all group elements that do not move the point . The fixed point set is the set of all points not moved by the group element . Note that is indeed a subgroup of . This is because the identity fixes , the product of two elements fixing also fixes , and the inverse of an element fixing also fixes . There is a basic relation between orbits and stabilisers.
Theorem 3.2 (Orbit–stabiliser theorem).
Suppose that a finite group acts on a finite set . Then, for every ,
holds.
Proof
Consider the map
The condition is equivalent to
In other words, it is equivalent to . Therefore, the inverse image of each point of has the same number of elements as . Hence
We shall use this theorem later when proving Burnside's lemma. Intuitively, it expresses the fact that the larger the orbit of a point is, the fewer symmetries fix that point.
Burnside's Lemma
When a group action decomposes a set into several orbits, Burnside's lemma is the formula that gives the number of these orbits as an average of numbers of fixed points. It is also called the Cauchy–Frobenius lemma.
Theorem 4.1 (Burnside's lemma).
Suppose that a finite group acts on a finite set . Then the number of orbits is given by
Here denotes the set of all orbits.
Proof
Count the set
in two ways.
First, fixing , the number of satisfying is . Hence
Next, fixing , the number of satisfying is . Hence
Now split into orbits. Fix one orbit . For any , the orbit–stabiliser theorem gives
Therefore the contribution from this orbit is
Since each orbit contributes , we obtain
Comparing the two expressions and dividing by gives the claim.
The point of Burnside's lemma is summed up in the sentence
the number of orbits is the average number of fixed points.
This idea of "averaging along a group action" leads to cycle indices and Pólya enumeration. Averaging also appears in the proof of the MacWilliams identity. However, Burnside's lemma itself does not directly give the dual code . In Burnside's lemma, one averages the number of fixed points over group elements . On the other hand, in the proof of the MacWilliams identity later on, one averages the character values over elements of as an additive group, and uses their orthogonality to determine whether . What is common is that averaging over group elements acts as a device for extracting symmetry or orthogonality. For this reason, the averaging operation appearing in Burnside's lemma is the entrance to the viewpoint of this note.
Cycle Decompositions of Permutations and Cycle Indices
We now turn to cycle indices. A permutation of a finite set can be decomposed as a product of disjoint cycles. For example, if
then there is one -cycle and one -cycle. Fixed points are regarded as -cycles.
Definition 5.1.
Let be a finite set and let . For , write
for the number of cycles of length appearing in the cycle decomposition of . The sequence is called the cycle type of .
Of course, since is finite, for all sufficiently large . Also,
Definition 5.2 (Cycle index).
Suppose that a finite group acts on a finite set . Since each determines a permutation of , we can consider its cycle numbers . Define the cycle index of by
In this note, we define the cycle index as an average over the group elements. Strictly speaking, the cycle index is not determined by the abstract group alone; it depends on how acts on which finite set . Even for the same group, different actions can give different cycle indices. Some references use the unnormalised version without the factor . Either convention has the same substance, but in Pólya enumeration the averaged version corresponds directly to Burnside's lemma.
Example 5.3 (Rotation group of a triangle).
Let be the set of the three vertices of a triangle, and suppose that acts on by rotations. The identity transformation fixes the three points, so its cycle type is . The two non-trivial rotations each rotate the three vertices in one -cycle, so their cycle type is . Therefore
For example, if one colours the vertices of the triangle with two colours, one may substitute , into the variables of the cycle index. This corresponds, in the Pólya enumeration we shall see later, to reading that there are two choices of colour both for cycles of length and for cycles of length . Then the number of orbits is
In other words, substituting into the cycle index shows that there are four two-colourings up to rotation.
The cycle index does not record all the information of the group action. However, it compresses the information needed for counting colourings very efficiently. We shall see this point in the next section.
Pólya Enumeration
Pólya enumeration is a method for counting colourings considered the same under a group action. Here we state the weighted form.
Let the finite set be the set of "places", and let the finite set be the set of "colours". A colouring means a map . If acts on , then also acts on the set of all colourings . The action is defined by
This definition means that we first move the place back by and then look at the colour. It can be thought of as constructing a pullback action on functions from an action on places. We use here so that the action on the set of colourings is also a left action. With this definition, holds.
Assign a weight variable to each colour . Define the weight monomial of a colouring by
This weight monomial does not change under the action of . Indeed, is only permuting the order of the factors in the product. Thus, for an orbit of colourings, its weight monomial is well-defined.
Theorem 6.1 (Pólya's enumeration theorem).
Suppose that a finite group acts on a finite set . Let be the colour set, and assign a weight variable to each colour . For , set
Then the sum of the orbit weight monomials of colourings is given by
Proof
Use Burnside's lemma in weighted form. Since the weight monomial is constant on each orbit, the sum of the orbit weight monomials is equal to
Indeed, fixing one orbit , for each in that orbit the number of group elements fixing it is . By the orbit–stabiliser theorem, the contribution from the whole orbit is
Next fix and count the colourings fixed by . A colouring satisfies if and only if is constant on each cycle of . If one colours a cycle of length with a colour , the contribution to the weight monomial is . Therefore the contribution from one cycle of length is
Since has cycles of length , the sum of the weight monomials of all colourings fixed by is
Averaging this over gives
What this theorem shows is that the cycle index records all at once the "sum of the weight monomials of the colourings fixed" by the group elements. On a cycle of a permutation , a fixed colouring must be constant. Therefore the term appears for a cycle of length . This idea of "multiplying the contributions cycle by cycle and averaging over the whole group" is the core of the cycle index.
Burnside's lemma and Pólya enumeration up to this point are preparation for understanding what the cycle index used later records as an "average over the group elements". In the proof of the MacWilliams identity below, we do not directly apply Pólya's enumeration theorem itself. Rather, we apply a cycle-index-like average expression to the permutation group constructed from a code, and finally extract the dual code using the orthogonality of additive characters.
Constructing a Permutation Group from a Code
We now return to coding theory. We construct a permutation group from a linear code . Write , and let be the characteristic.
In the earlier example, acted by translations on the whole space . Here we consider a different action. The previous action was for decomposing the whole space into cosets of . The action used here is for looking at the cycle type of the permutation obtained on each coordinate fibre . Since the purpose is different, the set acted on is also changed from to , defined below. For each coordinate , prepare one copy of , and on that copy translate by . With this construction, whether each coordinate of a codeword is zero or non-zero, and hence the Hamming weight, becomes visible as the cycle type of a permutation. To distinguish the non-zero values themselves, we shall need the complete cycle index introduced later.
Consider the set
This is the set obtained by placing one copy of for each coordinate . If desired, one can also view the fibre above under the projection
as . Below, however, for readers meeting this for the first time, we shall call it the "-th copy". For a codeword , define a permutation of by
Thus, on the -th copy , we translate by .
Proposition 7.1.
The map
is an injective homomorphism from , as an additive group, to a permutation group. Therefore
is a permutation group isomorphic to .
Proof
Let . For any ,
Hence , so the map is a homomorphism.
Also, if is the identity permutation, then for every and every we have . Therefore for all , so . Thus the map is injective.
In what follows, we use this injection to index the elements of by codewords , and write averages over as averages over .
Computing the cycle index of this permutation group gives the weight enumerator. First look at one coordinate. If , then the map is the identity map, so it has -cycles on . On the other hand, if , then is a non-trivial translation. In the additive group of the finite field , the additive order of a non-zero element is . Therefore each orbit of this translation has length , and decomposes into -cycles. Here it is important that the cycle length is , not . As an additive group, is an -dimensional vector space over , so for any non-zero element we get a cycle of length of the form
Thus the whole of splits into -cycles. For example, when , the characteristic is . Therefore a non-zero translation does not make the four points of into a single -cycle, but splits them into two -cycles.
Theorem 7.2 (Cycle index of the permutation group of a code).
Let be a linear code, and let . The cycle index of the permutation group defined above is
Proof
Fix . At a coordinate with , the set contains -cycles. The number of such coordinates is . Therefore the total number of -cycles is .
On the other hand, at a coordinate with , the translation on splits into -cycles. The number of such coordinates is , so the total number of -cycles is . No cycles of any other length appear.
Hence the cycle-index monomial of is
Averaging this over gives (7.1).
This viewpoint, in which the ordinary cycle index of the permutation group obtained from a code records the Hamming weight enumerator, appears in Cameron [Cam02]. In this note, we later refine this viewpoint by adding translation amounts so that it corresponds to the complete weight enumerator.
From Theorem 7.2, we see that the cycle index of essentially contains the weight enumerator of . To read this without using fractional powers, set
Then (7.1) can be written as
Thus, in the ordinary cycle index, and are the ingredients for and respectively, and we obtain
Here we read not and themselves, but their powers as the variables of the weight enumerator.
In other words, the Hamming weight of a codeword can be read as the cycle type of the corresponding permutation. Zero coordinates produce fixed points, and non-zero coordinates produce -cycles. In this sense, the weight enumerator is a specialisation of the cycle index.
From the Ordinary Cycle Index to the Complete Cycle Index
The ordinary cycle index seen in the preceding section is enough to record the Hamming weight enumerator. However, the ordinary cycle index has one weakness. It regards permutations simply as permutations and records only their cycle lengths. For this reason, it does not distinguish which value each non-zero component has.
For example, when , both and give a translation that is a -cycle. Thus the ordinary cycle index alone cannot see the difference between and . This is not a problem for the Hamming weight enumerator, since all non-zero values are identified there, but to write the MacWilliams identity more naturally in the language of cycle indices, it is useful to refine the record so that it remembers the translation amount at each coordinate.
What we want to retain here is the additional labelled information consisting of the coordinate fibre of and the translation amount used on it. This information cannot be recovered from the cycle type of the permutation alone. In the special situation of the translation permutation group constructed from a code, we record this labelled information so that it corresponds to the complete weight enumerator.
Thus, for each , prepare a variable . Here is a variable of the complete weight enumerator, and is different notation from , which denotes the ordinary cycle index. To a codeword , associate the monomial
This records which translation is used on each coordinate fibre .
Definition 8.1 (Complete weight enumerator).
The complete weight enumerator of a linear code is defined by
For a standard treatment of the MacWilliams identity itself for complete weight enumerators, see MacWilliams–Sloane [MS77, Chapters 5 and 19]. What this note emphasises, however, is the point that this identity can be read as an identity for the complete cycle index of the translation permutation group constructed from a code.
Definition 8.2 (Complete cycle index).
For a linear code , define
In this note, we call this the complete cycle index of .
With this definition,
Thus the complete cycle index is the complete weight enumerator normalised as an average over the group elements. One should note that the complete cycle index in this note is not the ordinary cycle index itself that is defined standardly for a general permutation group. Whereas the ordinary cycle index looks only at cycle lengths of permutations, the of this note is a record that retains the labels coming from the code, namely the coordinate fibre and the translation amount . Thus is not determined by the cycle type of the permutation alone, but depends on the expression involving the coordinate values of the codeword . What is called a complete cycle index in the literature is sometimes defined as a larger polynomial recording the cycle lengths of permutations together with information about the group element, using variables such as . In this note, we use only for translation permutation groups coming from codes, specialised to the form that corresponds directly to the complete weight enumerator, and then averaged by dividing by . This viewpoint is in line with the relation between complete cycle indices and complete weight enumerators treated by Miezaki–Oura [MO19]. Here we extract only the part needed for the variable transformation in the MacWilliams identity.
The Hamming weight enumerator is a specialisation of the complete weight enumerator. Indeed, if we set
then, for any ,
Hence
The important point here is that the variable transformation
in the MacWilliams identity comes from a more symmetric transformation at the level of complete weight enumerators. That transformation is given by the character table of the additive group of the finite field . We shall see this in the next section.
The Character-Table Transform in One Coordinate
From here on, we transform variables on the finite set as in a finite Fourier transform. The basis describing that transform is given by the characters of the additive group .
To prove the MacWilliams identity at the level of complete weight enumerators, fix a non-trivial additive character of the finite field . That is, take a map satisfying
and not identically equal to . In particular, when , one may think of . For a general , one obtains such an additive character by using the trace map from to and defining
Here is an element of , but inside the exponential function we represent it by one of and read it as an integer.
For the standard background on Fourier analysis on finite groups and character tables, see Terras [Ter99]. For the trace map and additive characters of finite fields, Lidl–Niederreiter [LN83] is standard.
We shall use only the following property.
Lemma 9.1.
For ,
holds.
Proof
If , then for all , so the sum is .
Suppose that . Then the map is a bijection of , so
Write the right-hand side as . Since is non-trivial, there exists such that . As runs over all of , so does , and hence
Since , we get .
Next, define a one-coordinate transform of the variables . For each , set
This is the result of multiplying the variable vector by the character table of the additive group of . Indeed, for , if we set
then is an additive character of , and as runs over all of , all additive characters appear exactly once. The placement of the indices is a matter of convention, but in this note we define the new -th variable by . Some references use conventions involving or the transpose matrix. With the convention in this note, we define so that, when expanded later, the sum appears. If we consider the matrix indexed by rows and columns ,
then (9.1) can be written as
In Pólya enumeration, we substituted
into the cycle index. Here, for the complete cycle index, we substitute the variable transformation given by the character table of the additive group . This transformation produces the complete weight enumerator of the dual code.
The Complete-Weight-Enumerator MacWilliams Identity and the Complete Cycle Index
We prove the MacWilliams identity for complete weight enumerators. This is also a formula for a variable transformation of the complete cycle index.
Theorem 10.1 (Complete-weight-enumerator MacWilliams identity).
Let be a linear code. For each , define
Then
holds.
Proof
Expand the numerator on the right-hand side.
By the property of an additive character,
Therefore, interchanging the order of summation gives
Now examine the inner sum. If , then for every , so
On the other hand, if , then there exists such that . Put , so that . Consider the sum
Choose later. Since is a linear code, , and as runs over all of , so does , exactly once. Hence
Since , the map is a bijection, and since is non-trivial, there exists such that . Therefore .
Thus
Substituting this into (10.2), we get
Dividing both sides by gives the claim.
The equality obtained at the end of the proof is, for the unnormalised complete weight enumerator,
On the other hand, since , applying the character-table transform to the complete cycle index gives
Thus what appears at this stage is the complete weight enumerator of the dual code.
If we want to write the formula between complete cycle indices, we must also use . Since the standard inner product is non-degenerate, we have , and therefore . Hence
is the resulting form. Therefore one must distinguish the statement that, with the normalisation in this note, applying the character-table transform to the complete cycle index gives the complete weight enumerator of the dual code, from the statement that, when written between complete cycle indices, a factor appears.
This proof is very close to the usual character-theoretic proof. However, here we regard each codeword as a "monomial of the complete cycle index", and transform the complete cycle index using the character table. In this sense, the MacWilliams identity can be read as
a character-table transform of the complete cycle index of the translation permutation group constructed from a code.
Specialisation to the Hamming Weight Enumerator
Finally, we derive the usual MacWilliams identity from the complete-weight- enumerator version. Specialise the variables by setting
Then, if ,
On the other hand, if , then by Lemma 9.1,
and hence
Therefore, when the complete-weight-enumerator MacWilliams identity
is read under this specialisation, the left-hand side becomes , and the right-hand side becomes
Thus we obtain the following.
Theorem 11.1 (MacWilliams identity).
Let be a linear code. Then
holds.
Proof
This follows from Theorem 10.1 by the specialisation described above.
We have now reached the MacWilliams identity from the viewpoint of group actions and cycle indices. If one looks only at the end of the proof, it may look like a calculation with character sums, but the viewpoint of this note lies in the preceding step: codewords are viewed as translation permutations and embedded into a cycle index.
A Small Example: the Binary Repetition Code of Length
Let us check this in a concrete example. Let , and consider the binary repetition code
Its dual code is the binary even-weight code of length ,
First, construct the permutation group from . The set is
The zero word is the identity permutation, so it has fixed points. On the other hand, swaps and on each copy , so it has three -cycles. Therefore the ordinary cycle index is
Since we are in the binary case, if we set
then
After that, reading , gives
Next, looking at the complete weight enumerator, we have
Therefore the complete cycle index in the sense of this note is
The non-trivial additive character of is , so the character-table transform is
Therefore
On the other hand, the complete weight enumerator of the even-weight code is
Thus the complete-weight-enumerator MacWilliams identity indeed holds.
Specialising to the Hamming weight enumerator gives
The MacWilliams identity is
In this example, the ordinary cycle index records information which, after removing the normalisation and specialising appropriately, becomes . Also, the complete cycle index itself is , and removing the normalisation gives the complete weight enumerator . With the normalisation in this note, applying the character-table transform to that complete cycle index gives the complete weight enumerator of the dual code. To write the formula between complete cycle indices, one further adjusts the normalisation by adding a factor.
What Were Group Actions and Cycle Indices Doing in This Proof?
Let us organise the roles played by group actions and cycle indices in this proof.
First, group actions allowed us to view codewords as permutations. A codeword gives, at each coordinate, the translation
By placing these translations on all coordinate copies , we constructed the permutation group from the code .
Second, the ordinary cycle index recorded the Hamming weight. At a zero coordinate, fixed points appear; at a non-zero coordinate, -cycles appear. Therefore, from the cycle type of the permutation, one can read off the number of zero coordinates and the number of non-zero coordinates of the codeword. For this reason, the cycle index of essentially contains the weight enumerator of .
Third, the complete cycle index recorded the types of non-zero values as well. In the ordinary cycle index, non-zero translations have the same cycle type and so are not distinguished. Therefore, in addition to the cycle type of the permutation, we recorded the labelled information of the translation amount on each coordinate fibre as the variable . This record is the complete weight enumerator, and after dividing by it becomes what this note calls the complete cycle index.
Fourth, Pólya enumeration gave meaning to "averaging along a group action". In Burnside's lemma, the number of orbits appeared as an average of numbers of fixed points. In Pólya enumeration, substituting variables into the cycle index counted colourings with symmetries taken into account. In the coding-theoretic proof here as well, averaging the character values over extracted the dual code .
Fifth, the character-table transform extracted the dual code. When we put the transform
into the variables of the complete cycle index, the expansion contains
This sum is only when , and is otherwise. Thus, with the normalisation in this note, the transform of the complete cycle index becomes the complete weight enumerator of the dual code. To write the formula between complete cycle indices, one further includes the factor .
In one sentence, the point is as follows.
The MacWilliams identity is the formula saying that, when one applies the character-table transform of the additive group of the finite field to the complete cycle index of the translation permutation group constructed from a code, the complete weight enumerator of the dual code appears, with a difference in normalisation.
Concepts Seen in This Part
In this part, while aiming for a proof of the MacWilliams identity, we introduced the basic tools of group actions and cycle indices. They can be organised as follows.
- Group action
A structure realising group elements as permutations of a set. In coding theory, group actions appeared by viewing codewords as translations on the coordinate copies .
- Orbit
The set of all points that can be reached by moving one point by group elements. A group action decomposes a set into orbits.
- Stabiliser
The set of all group elements fixing a given point. By the orbit–stabiliser theorem, the product of the size of an orbit and the size of a stabiliser is the order of the group.
- Fixed point
A point not moved by a given group element. In Burnside's lemma, the number of orbits was computed as an average of numbers of fixed points.
- Burnside's lemma
A formula counting the number of orbits as the average number of fixed points. It is the basis of Pólya enumeration.
- Cycle type
The numbers of cycles of each length when a permutation is decomposed into disjoint cycles.
- Cycle index
A polynomial obtained by recording the cycle type of each group element as a monomial and averaging over the whole group. In Pólya enumeration, one counts orbits of colourings by substituting suitable variables into the cycle index.
- Pólya enumeration
A method for counting colourings while taking symmetries into account. Since colouring a cycle of length with one colour contributes , one substitutes into the cycle index.
- Permutation group constructed from a code
The permutation group obtained by viewing a codeword as the permutation of . Its cycle index essentially records the weight enumerator.
- Complete cycle index
Not the ordinary cycle index itself, but a labelled record that keeps, as the variable , the translation amount on each coordinate fibre coming from the code. The complete cycle index in this note is this record divided by as a normalisation, and apart from this normalisation it is the complete weight enumerator.
- Character-table transform
The variable transformation coming from the character table of the additive group of the finite field . With the normalisation in this note, applying this transform to the complete cycle index gives the complete weight enumerator of the dual code. To write the formula between complete cycle indices, one further includes the factor .
Looking Back at This Proof Family
On the surface, the proof in this note is a proof using group actions, Burnside's lemma, Pólya enumeration, and cycle indices. On the other hand, if compressed into the five families, it is close to
Fourier, character, and Poisson methods.
The reason is that the principle ultimately extracting the dual code is the character orthogonality
However, the viewpoint in this note has a different appearance from the usual character-theoretic proof. In the usual character-theoretic proof, is extracted directly as the annihilator subgroup of the characters. By contrast, in this note, we first represented the code as a permutation group, interpreted its cycle index as a weight enumerator, and then applied the character-table transform to the complete cycle index.
Thus, at a deep level this proof contains a Fourier-theoretic principle, but its surface-level tools are group actions and cycle indices. This difference is the phenomenon this series aims to look at: the same theorem can be seen in the languages of different areas.
Next Time
Finally, let us give the next preview in the series. The mathematical body of this note is complete at this point. Next time, we shall look at the MacWilliams identity from the side of factor graphs and partition functions.
In the proof in this note, we viewed codewords as permutations and understood the MacWilliams identity in the language of averages along group actions and cycle indices. Next time, we shall view a code as a collection of local constraints. That is, rather than treating all codewords as one large set, we shall decompose them into coordinates, check equations, and state variables, and express them as a partition function on a graph.
The main characters next time will be
local constraints → factor graphs → partition functions → dual graphs → the MacWilliams identity.
Even among proofs belonging to the same Fourier, character, and Poisson family, next time the viewpoint will be not to "transform all at once", but to glue local transformations together over the whole graph.
References
- [Cam02] Peter J. Cameron. Cycle index, weight enumerator, and Tutte polynomial. Electron. J. Combin., vol. 9, no. 1, pp. Note 2, 10, 2002. doi:10.37236/1663 ↩1 ↩2
- [MO19] Tsuyoshi Miezaki and Manabu Oura. On the cycle index and the weight enumerator. Des. Codes Cryptogr., vol. 87, no. 6, pp. 1237–1242, 2019. doi:10.1007/s10623-018-0518-x ↩1 ↩2
- [Ply37] G. Pólya. Kombinatorische Anzahlbestimmungen für Gruppen, Graphen und chemische Verbindungen. Acta Math., vol. 68, no. 1, pp. 145–254, 1937. doi:10.1007/BF02546665 ↩
- [HP73] Frank Harary and Edgar M. Palmer. Graphical enumeration. Academic Press, New York-London, pp. xiv+271, 1973 ↩
- [Cam95] Peter J. Cameron. Permutation groups. Handbook of combinatorics, Vol.\ 1,\ 2, pp. 611–645, 1995 ↩
- [MS77] F. J. MacWilliams and N. J. A. Sloane. The theory of error-correcting codes. II. North-Holland Publishing Co., Amsterdam-New York-Oxford, vol. Vol. 16, pp. i–ix and 370–762, 1977 ↩
- [Ter99] Audrey Terras. Fourier analysis on finite groups and applications. Cambridge University Press, Cambridge, vol. 43, pp. x+442, 1999. doi:10.1017/CBO9780511626265 ↩
- [LN83] Rudolf Lidl and Harald Niederreiter. Finite fields. Addison-Wesley Publishing Company, Advanced Book Program, Reading, MA, vol. 20, pp. xx+755, 1983 ↩
This series
A Series Learning through the MacWilliams Identity · Part 8 of 12
Disclaimer
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.