Arrangements, matroids and codes

Similar documents
Application of hyperplane arrangements to weight enumeration

Solutions of Exam Coding Theory (2MMC30), 23 June (1.a) Consider the 4 4 matrices as words in F 16

3. Coding theory 3.1. Basic concepts

The extended coset leader weight enumerator

The coset leader and list weight enumerator

Orthogonal Arrays & Codes

MATH 291T CODING THEORY

Hamming codes and simplex codes ( )

MATH 291T CODING THEORY

Lecture 12: November 6, 2017

MATH Examination for the Module MATH-3152 (May 2009) Coding Theory. Time allowed: 2 hours. S = q

Code Based Cryptology at TU/e

Lecture 3: Error Correcting Codes

Vector spaces. EE 387, Notes 8, Handout #12

We saw in the last chapter that the linear Hamming codes are nontrivial perfect codes.

Error-correcting Pairs for a Public-key Cryptosystem

: Error Correcting Codes. October 2017 Lecture 1

Lecture 2 Linear Codes

Error Correcting Codes: Combinatorics, Algorithms and Applications Spring Homework Due Monday March 23, 2009 in class

MATH3302. Coding and Cryptography. Coding Theory

MATH32031: Coding Theory Part 15: Summary

ELEC 519A Selected Topics in Digital Communications: Information Theory. Hamming Codes and Bounds on Codes

Chapter 7. Error Control Coding. 7.1 Historical background. Mikael Olofsson 2005

The Hamming Codes and Delsarte s Linear Programming Bound

MT5821 Advanced Combinatorics

Coding Theory: Linear-Error Correcting Codes Anna Dovzhik Math 420: Advanced Linear Algebra Spring 2014

Cyclic Redundancy Check Codes

Finite Mathematics. Nik Ruškuc and Colva M. Roney-Dougal

: Coding Theory. Notes by Assoc. Prof. Dr. Patanee Udomkavanich October 30, upattane

The BCH Bound. Background. Parity Check Matrix for BCH Code. Minimum Distance of Cyclic Codes

On some incidence structures constructed from groups and related codes

ELEC-E7240 Coding Methods L (5 cr)

MATH3302 Coding Theory Problem Set The following ISBN was received with a smudge. What is the missing digit? x9139 9

Error-Correcting Codes

MATH 433 Applied Algebra Lecture 21: Linear codes (continued). Classification of groups.

Coding Theory and Applications. Linear Codes. Enes Pasalic University of Primorska Koper, 2013

Lecture Introduction. 2 Linear codes. CS CTT Current Topics in Theoretical CS Oct 4, 2012

Reed-Solomon codes. Chapter Linear codes over finite fields

Quantum LDPC Codes Derived from Combinatorial Objects and Latin Squares

ICT12 8. Linear codes. The Gilbert-Varshamov lower bound and the MacWilliams identities SXD

Math 512 Syllabus Spring 2017, LIU Post

Algebraic Geometry Codes. Shelly Manber. Linear Codes. Algebraic Geometry Codes. Example: Hermitian. Shelly Manber. Codes. Decoding.

7.1 Definitions and Generator Polynomials

Support weight enumerators and coset weight distributions of isodual codes

Chapter 3 Linear Block Codes

Lecture B04 : Linear codes and singleton bound

And for polynomials with coefficients in F 2 = Z/2 Euclidean algorithm for gcd s Concept of equality mod M(x) Extended Euclid for inverses mod M(x)

Lecture 19 : Reed-Muller, Concatenation Codes & Decoding problem

An Introduction to (Network) Coding Theory

FUNDAMENTALS OF ERROR-CORRECTING CODES - NOTES. Presenting: Wednesday, June 8. Section 1.6 Problem Set: 35, 40, 41, 43

5.0 BCH and Reed-Solomon Codes 5.1 Introduction

ERROR CORRECTING CODES

Linear Block Codes. Saravanan Vijayakumaran Department of Electrical Engineering Indian Institute of Technology Bombay

Some error-correcting codes and their applications

A combinatorial view on derived codes

On Weight Distributions of Homogeneous Metric Spaces Over GF (p m ) and MacWilliams Identity

Section 3 Error Correcting Codes (ECC): Fundamentals

EE 229B ERROR CONTROL CODING Spring 2005

Lecture 12. Block Diagram

The (extended) rank weight enumerator and q-matroids

Lecture 4: Linear Codes. Copyright G. Caire 88

Codes over Subfields. Chapter Basics

MAS309 Coding theory

Introduction to binary block codes

Berlekamp-Massey decoding of RS code

Lecture notes on coding theory

Know the meaning of the basic concepts: ring, field, characteristic of a ring, the ring of polynomials R[x].

A Relation Between Weight Enumerating Function and Number of Full Rank Sub-matrices

arxiv: v4 [cs.it] 14 May 2013

Combinatória e Teoria de Códigos Exercises from the notes. Chapter 1

1 Vandermonde matrices

Mathematics Department

Non-Standard Coding Theory

Codewords of small weight in the (dual) code of points and k-spaces of P G(n, q)

Decoding linear codes via systems solving: complexity issues

EE512: Error Control Coding

Hamming Codes 11/17/04

Open Questions in Coding Theory

MTH6108 Coding theory

PAijpam.eu CONVOLUTIONAL CODES DERIVED FROM MELAS CODES

An Introduction to (Network) Coding Theory

Quasi-cyclic Low Density Parity Check codes with high girth

Algebraic Codes for Error Control

Lecture 14: Hamming and Hadamard Codes

Matroids/1. I and I 2 ,I 2 > I 1

Linear Codes and Syndrome Decoding

Duadic Codes over Finite Commutative Rings

ERROR-CORRECTING CODES AND LATIN SQUARES

Coding theory: algebraic geometry of linear algebra David R. Kohel

List Decoding of Reed Solomon Codes

Lecture 8: Shannon s Noise Models

The upper bound of general Maximum Distance Separable codes

6.895 PCP and Hardness of Approximation MIT, Fall Lecture 3: Coding Theory

The extended Golay code

Quadratic forms. Here. Thus symmetric matrices are diagonalizable, and the diagonalization can be performed by means of an orthogonal matrix.

Chapter 2. Error Correcting Codes. 2.1 Basic Notions

j=1 [We will show that the triangle inequality holds for each p-norm in Chapter 3 Section 6.] The 1-norm is A F = tr(a H A).

Binary codes from rectangular lattice graphs and permutation decoding

Ma/CS 6b Class 25: Error Correcting Codes 2

11 Minimal Distance and the Parity Check Matrix

Transcription:

Arrangements, matroids and codes first lecture Ruud Pellikaan joint work with Relinde Jurrius ACAGM summer school Leuven Belgium, 18 July 2011

References 2/43 1. Codes, arrangements and matroids by Relinde Jurrius and Ruud Pellikaan, in Series on Coding Theory and Cryptology vol. 8 Algebraic geometry modelling in information theory E. Martinez-Moro Ed., World Scientific 2011 http://www.win.tue.nl/ ruudp/paper/57.pdf 2. Error-correcting codes and cryptology by R. Pellikaan, X.-W. Wu and S. Bulygin Book in preparation, February 2011 To be published by Cambridge University Press http://www.win.tue.nl/ ruudp/courses/2wc11/2wc11-book.pdf

Introduction 3/43 M A C C = error-correcting codes (extended) weight enumerator polynomial W C (X, Y), W C (X, Y, T) M = matroids generalization of linear algebra and graph theory (di)chromatic polynomial and Tutte polynomial t M (X, Y) A = arrangements of hyperplanes topology, combinatorics characteristic polynomial χ(t), coboundary polynomial χ(s, T)

Content 5 lectures 4/43 1. Error-correcting codes Weight enumerator 2. q-ary symmetric channel and the probability of undetected error Arrangements and projective systems 3. Extended weight enumerator Graph theory and colorings 4. Matroids Tutte-Whitney polynomial 5. Geometric lattices Characteristic polynomial

Content first lecture 5/43 1. Error-correcting codes: Shannon, Hamming distance 2. Linear codes: Generator and parity check matrix, inner product and dual code Hamming and simplex codes 3. Singleton bound and MDS codes: Vandermonde matrices and generalized Reed-Solomon codes 4. Weight enumerator: MacWilliams identity and examples 5. Exercises

6/43 Error-correcting codes

Shannon s block diagram 7/43 message sender source encoding 001... 011... receiver message target decoding noise Shannon s block diagram of a communication system

Hamming code 8/43 4 message bits: (m 1, m 2, m 3, m 4 ) 3 redundant bits: (r 1, r 2, r 3 ) Rule: number of ones in every circle is even r 3 m 2 m 1 m 4 r 1 m 3 r 2 Venn diagram of the Hamming code

Block codes 9/43 The message words have a fixed length of k symbols the encoded words have a fixed length of n symbols both from the same alphabet Q Add redundant symbols to the message in a clever way An error-correcting code C of length n over Q is a non-empty subset of Q n The elements of C are called codewords If C contains M codewords, then M is called the size n log q (M) is called the redundancy R = log q (M)/n is the information rate

Block codes 9/43 The message words have a fixed length of k symbols the encoded words have a fixed length of n symbols both from the same alphabet Q Add redundant symbols to the message in a clever way An error-correcting code C of length n over Q is a non-empty subset of Q n The elements of C are called codewords If C contains M codewords, then M is called the size n log q (M) is called the redundancy R = log q (M)/n is the information rate

Block codes 9/43 The message words have a fixed length of k symbols the encoded words have a fixed length of n symbols both from the same alphabet Q Add redundant symbols to the message in a clever way An error-correcting code C of length n over Q is a non-empty subset of Q n The elements of C are called codewords If C contains M codewords, then M is called the size n log q (M) is called the redundancy R = log q (M)/n is the information rate

Hamming distance 10/43 The Hamming distance d(x, y) on Q n is defined by d(x, y) = {i : x i = y i } It is a metric: 1. d(x, y) 0 and equality hods if and only if x = y 2. d(x, y) = d(y, x) (symmetry) 3. d(x, z) d(x, y) + d(y, z) (triangle inequality) x y d(y,z) d(x,y) z d(x,z)

Hamming distance 10/43 The Hamming distance d(x, y) on Q n is defined by d(x, y) = {i : x i = y i } It is a metric: 1. d(x, y) 0 and equality hods if and only if x = y 2. d(x, y) = d(y, x) (symmetry) 3. d(x, z) d(x, y) + d(y, z) (triangle inequality) x y d(y,z) d(x,y) z d(x,z)

Minimum distance 11/43 The minimum (Hamming) distance of a code C is defined as d = d(c) = min{d(x, y) : x, y C, x = y} The main problem of error-correcting codes from Hamming s point of view is: to construct for a given length and number of codewords a code with the largest possible minimum distance and to find efficient encoding and decoding algorithms

Minimum distance 11/43 The minimum (Hamming) distance of a code C is defined as d = d(c) = min{d(x, y) : x, y C, x = y} The main problem of error-correcting codes from Hamming s point of view is: to construct for a given length and number of codewords a code with the largest possible minimum distance and to find efficient encoding and decoding algorithms

Examples 12/43 The triple repetition binary code has length 3 and 2 codewords its information rate is 1/3 its minimum distance is 3. The binary Hamming code has length 7 and 2 4 codewords therefore its rate is 4/7 its minimum distance is 3

13/43 Linear codes

Linear codes 14/43 If the alphabet Q is the finite field F q with q elements then Q n is a vector space Therefore it is natural to look at codes in Q n that are linear subspaces A linear code C is a linear subspace of F n q Its dimension is denoted by k = k(c) and its minimum distance by d = d(c) Then [n, k, d] q or [n, k, d] denote the parameters of the code Size: M = q k Information rate: R = k/n Redundancy: n k

Support and minimal weight 15/43 The support of x in F n q is defined by supp(x) = {j : x j = 0} The weight of x is defined by wt(x) = supp(x) that is the number of nonzero entries of x Let C be an F q -linear code, then d(c) = min{wt(c) : 0 = c C}

Support and minimal weight 15/43 The support of x in F n q is defined by supp(x) = {j : x j = 0} The weight of x is defined by wt(x) = supp(x) that is the number of nonzero entries of x Let C be an F q -linear code, then d(c) = min{wt(c) : 0 = c C}

Generator and parity check matrix 16/43 C an F q -linear code of dimension k A k n matrix G with entries in F q is called generator matrix of C if C = { xg x F k q } A (n k) n matrix H with entries in F q is called a parity check matrix of C if C = { c F n q ch T = 0 }

Generator and parity check matrix 16/43 C an F q -linear code of dimension k A k n matrix G with entries in F q is called generator matrix of C if C = { xg x F k q } A (n k) n matrix H with entries in F q is called a parity check matrix of C if C = { c F n q ch T = 0 }

Example 17/43 The binary Hamming code with parameters [7, 4, 3] has generator matrix G: G = and parity check matrix H: H = 1 0 0 0 0 1 1 0 1 0 0 1 0 1 0 0 1 0 1 1 0 0 0 0 1 1 1 1 0 1 1 1 1 0 0 1 0 1 1 0 1 0 1 1 0 1 0 0 1

Example 17/43 The binary Hamming code with parameters [7, 4, 3] has generator matrix G: G = and parity check matrix H: H = 1 0 0 0 0 1 1 0 1 0 0 1 0 1 0 0 1 0 1 1 0 0 0 0 1 1 1 1 0 1 1 1 1 0 0 1 0 1 1 0 1 0 1 1 0 1 0 0 1

Proposition 18/43 Suppose C is a [n, k] code Let I k be the k k identity matrix Let P be a k (n k) matrix Then (I k P) is a generator matrix of C if and only if ( P T I n k ) is a parity check matrix of C

Proposition 18/43 Suppose C is a [n, k] code Let I k be the k k identity matrix Let P be a k (n k) matrix Then (I k P) is a generator matrix of C if and only if ( P T I n k ) is a parity check matrix of C

Inner product and dual code 19/43 The inner product on F n q is defined by x y = x 1 y 1 + + x n y n This inner product is bilinear, symmetric and nondegenerate but the notion of positive definite makes no sense over a finite field For an [n, k] code C we define the dual or orthogonal code C as C = {x F n q : c x = 0 for all c C}.

Inner product and dual code 19/43 The inner product on F n q is defined by x y = x 1 y 1 + + x n y n This inner product is bilinear, symmetric and nondegenerate but the notion of positive definite makes no sense over a finite field For an [n, k] code C we define the dual or orthogonal code C as C = {x F n q : c x = 0 for all c C}.

Generator and parity check matrix of dual code 20/43 Proposition If C has length n, then dim(c) + dim(c ) = n Furthermore G is a generator matrix of C if and only if G is a parity check matrix of C H is a parity check matrix of C if and only if H is a generator matrix of C

Generator and parity check matrix of dual code 20/43 Proposition If C has length n, then dim(c) + dim(c ) = n Furthermore G is a generator matrix of C if and only if G is a parity check matrix of C H is a parity check matrix of C if and only if H is a generator matrix of C

Parity check matrix and minimum distance 21/43 Proposition Let H be a parity check matrix of a code C Then the minimum distance d of C is the smallest integer d such that d columns of H are linearly dependent Proof H parity check matrix with entries h i,j c a codeword of weight d with nonzero entries c ji Hc T = 0 c j1 c jd h 1,j1 h 1,jd.. h (n k),j1 h (n k),jd

Parity check matrix and minimum distance 21/43 Proposition Let H be a parity check matrix of a code C Then the minimum distance d of C is the smallest integer d such that d columns of H are linearly dependent Proof H parity check matrix with entries h i,j c a codeword of weight d with nonzero entries c ji Hc T = 0 c j1 c jd h 1,j1 h 1,jd.. h (n k),j1 h (n k),jd

Nondegenerate codes 22/43 Let G be a generator matrix of C C is called nondegenerate if for every position j there is codeword c such that c j = 0 The following statements are equivalent: 1. C is nondegenerate 2. G has no zero column 3. d(c ) 2

Nondegenerate codes 22/43 Let G be a generator matrix of C C is called nondegenerate if for every position j there is codeword c such that c j = 0 The following statements are equivalent: 1. C is nondegenerate 2. G has no zero column 3. d(c ) 2

q-ary Hamming and simplex codes 23/43 Let n = (q r 1)/(q 1) Let H r (q) be a r n matrix over F q such that no two columns are dependent The code H r (q) with H r (q) as parity check matrix is called a q-ary Hamming code The code with H r (q) as generator matrix is called a q-ary simplex code and is denoted by S r (q) S r (q) and H r (q) are dual codes

q-ary Hamming and simplex codes 23/43 Let n = (q r 1)/(q 1) Let H r (q) be a r n matrix over F q such that no two columns are dependent The code H r (q) with H r (q) as parity check matrix is called a q-ary Hamming code The code with H r (q) as generator matrix is called a q-ary simplex code and is denoted by S r (q) S r (q) and H r (q) are dual codes

Parameters of Hamming and Simplex codes 24/43 Let r 2 The q-ary Hamming code H r (q) has parameters [(q r 1)/(q 1), (q r 1)/(q 1) r, 3] The q-ary simplex code S r (q) is a constant weight code with parameters [(q r 1)/(q 1), r, q r 1 ]

Parameters of Hamming and Simplex codes 24/43 Let r 2 The q-ary Hamming code H r (q) has parameters [(q r 1)/(q 1), (q r 1)/(q 1) r, 3] The q-ary simplex code S r (q) is a constant weight code with parameters [(q r 1)/(q 1), r, q r 1 ]

Example S 3 (3) 25/43 Consider the ternary Hamming code S 3 (3) of redundancy 3 of length 13 with parity check matrix H 3 (3) = 1 1 1 1 1 1 1 1 1 0 0 0 0 2 2 2 1 1 1 0 0 0 1 1 1 0 2 1 0 2 1 0 2 1 0 2 1 0 1 The code H 3 (3) has parameters [13, 10, 3] The code S 3 (3) has parameters [13, 3, 9] All rows of H 3 (3) have weight 9 In fact all nonzero codewords have weight 9.

Example S 3 (3) 25/43 Consider the ternary Hamming code S 3 (3) of redundancy 3 of length 13 with parity check matrix H 3 (3) = 1 1 1 1 1 1 1 1 1 0 0 0 0 2 2 2 1 1 1 0 0 0 1 1 1 0 2 1 0 2 1 0 2 1 0 2 1 0 1 The code H 3 (3) has parameters [13, 10, 3] The code S 3 (3) has parameters [13, 3, 9] All rows of H 3 (3) have weight 9 In fact all nonzero codewords have weight 9.

26/43 Singleton bound and MDS codes

Singleton bound 27/43 Theorem If C is an [n, k, d] code, then d n k + 1 Proof Let H be a parity check matrix of C This is an (n k) n matrix There exist n k + 1 dependent columns in fact every (n k + 1)-tuple of columns is dependent Now d(c) is the smallest integer d such that H has d linearly dependent columns So d n k + 1

Singleton bound 27/43 Theorem If C is an [n, k, d] code, then d n k + 1 Proof Let H be a parity check matrix of C This is an (n k) n matrix There exist n k + 1 dependent columns in fact every (n k + 1)-tuple of columns is dependent Now d(c) is the smallest integer d such that H has d linearly dependent columns So d n k + 1

MDS codes 28/43 Definition Let C be a [n, k, n k + 1] code Then C is called a maximum distance separable (MDS) code From the Singleton bound, an MDS code achieves the maximum possible value for the minimum distance given its length and dimension Examples The minimum distance of the zero code of length n is n + 1, by definition Hence the zero code has parameters [n, 0, n + 1] and is MDS Its dual is the whole space F n q with parameters [n, n, 1] and is also MDS The n-fold repetition code has parameters [n, 1, n] and its dual is an [n, n 1, 2] code and both are MDS

MDS codes 28/43 Definition Let C be a [n, k, n k + 1] code Then C is called a maximum distance separable (MDS) code From the Singleton bound, an MDS code achieves the maximum possible value for the minimum distance given its length and dimension Examples The minimum distance of the zero code of length n is n + 1, by definition Hence the zero code has parameters [n, 0, n + 1] and is MDS Its dual is the whole space F n q with parameters [n, n, 1] and is also MDS The n-fold repetition code has parameters [n, 1, n] and its dual is an [n, n 1, 2] code and both are MDS

MDS codes 28/43 Definition Let C be a [n, k, n k + 1] code Then C is called a maximum distance separable (MDS) code From the Singleton bound, an MDS code achieves the maximum possible value for the minimum distance given its length and dimension Examples The minimum distance of the zero code of length n is n + 1, by definition Hence the zero code has parameters [n, 0, n + 1] and is MDS Its dual is the whole space F n q with parameters [n, n, 1] and is also MDS The n-fold repetition code has parameters [n, 1, n] and its dual is an [n, n 1, 2] code and both are MDS

Dual of an MDS code 29/43 Proposition Let C be an [n, k, d] code over F q Then the following statements are equivalent: 1. C is an MDS code, 2. every n k columns of a parity check matrix H of C are linearly independent, 3. every k columns of a generator matrix G of C are linearly independent. Corollary The dual of an MDS code is again MDS

Dual of an MDS code 29/43 Proposition Let C be an [n, k, d] code over F q Then the following statements are equivalent: 1. C is an MDS code, 2. every n k columns of a parity check matrix H of C are linearly independent, 3. every k columns of a generator matrix G of C are linearly independent. Corollary The dual of an MDS code is again MDS

Vandermonde matrices and MDS codes 30/43 Proposition Let n q Let a = (a 1,..., a n ) be an n-tuple of mutually distinct elements of F q Let k be an integer such that 0 k n Define the matrix G k (a) by 1 1 a 1 a n G k (a) =..... a1 k 1 an k 1 The code with generator matrix G k (a) is MDS Proof All k k submatrices are Vandermonde matrices and their determinants are not zero

Vandermonde matrices and MDS codes 30/43 Proposition Let n q Let a = (a 1,..., a n ) be an n-tuple of mutually distinct elements of F q Let k be an integer such that 0 k n Define the matrix G k (a) by 1 1 a 1 a n G k (a) =..... a1 k 1 an k 1 The code with generator matrix G k (a) is MDS Proof All k k submatrices are Vandermonde matrices and their determinants are not zero

Reed-Solomon codes 31/43 f(x) = f 0 + f 1 X + + f i X i + + f k 1 X k 1 F q [X] a 1 a n f 0 1 1 1 f 1 a 1 a n X....... f i a1 i an i X i....... f k 1 a1 k 1 an k 1 f(a 1 ) f(a n ) f(x) X k 1 The linear combination of the rows of G k (a) is equal to the evaluation of f(x) at a 1,..., a n

Reed-Solomon codes 31/43 f(x) = f 0 + f 1 X + + f i X i + + f k 1 X k 1 F q [X] a 1 a n f 0 1 1 1 f 1 a 1 a n X....... f i a1 i an i X i....... f k 1 a1 k 1 an k 1 f(a 1 ) f(a n ) f(x) X k 1 The linear combination of the rows of G k (a) is equal to the evaluation of f(x) at a 1,..., a n

Generalized Reed-Solomon codes 32/43 a = (a 1,..., a n ) an n-tuple of mutually distinct elements of F q b = (b 1,..., b n ) an n-tuple of nonzero elements of F q GRS k (a, b) = { (f(a 1 )b 1,..., f(a n )b n ) f(x) F q [X], deg(f(x)) < k } Generator matrix: G k (a, b) = b 1 b j b n a 1 b 1 a j b j a n b n... a1 k 1 b 1 a k 1 j b j an k 1 b n MDS code with parameters: [n, k, n k + 1] if k n

Generalized Reed-Solomon codes 32/43 a = (a 1,..., a n ) an n-tuple of mutually distinct elements of F q b = (b 1,..., b n ) an n-tuple of nonzero elements of F q GRS k (a, b) = { (f(a 1 )b 1,..., f(a n )b n ) f(x) F q [X], deg(f(x)) < k } Generator matrix: G k (a, b) = b 1 b j b n a 1 b 1 a j b j a n b n... a1 k 1 b 1 a k 1 j b j an k 1 b n MDS code with parameters: [n, k, n k + 1] if k n

33/43 Weight enumerator

Weight enumerator 34/43 Let C be a code of length n The weight spectrum or weight distribution is the set {(w, A w ) : w = 0, 1,..., n} where A w denotes the number of codewords in C of weight w The weight enumerator is the polynomial: W C (Z) = n A w Z w. w=0 The homogeneous weight enumerator is: n W C (X, Y) = A w X n w Y w. w=0

Weight enumerator 34/43 Let C be a code of length n The weight spectrum or weight distribution is the set {(w, A w ) : w = 0, 1,..., n} where A w denotes the number of codewords in C of weight w The weight enumerator is the polynomial: W C (Z) = n A w Z w. w=0 The homogeneous weight enumerator is: n W C (X, Y) = A w X n w Y w. w=0

Example: trivial codes 35/43 The zero code has one codeword and its weight is zero Hence W {0} (X, Y) = X n The number of words of weight w in the trivial code F n q is So W F n q (X, Y) = n w=0 A w = ( ) n (q 1) w w ( ) n (q 1) w X n w Y w = (X + (q 1)Y) n w

Example: trivial codes 35/43 The zero code has one codeword and its weight is zero Hence W {0} (X, Y) = X n The number of words of weight w in the trivial code F n q is So W F n q (X, Y) = n w=0 A w = ( ) n (q 1) w w ( ) n (q 1) w X n w Y w = (X + (q 1)Y) n w

Example: repetition and even weight code 36/43 The n-fold repetition code C has homogeneous weight enumerator W C (X, Y) = X n + (q 1)Y n In the binary case its dual is the even weight code Hence it has homogeneous weight enumerator: W C (X, Y) = n/2 t=0 ( ) n X n 2t Y 2t = 1 ( (X + Y) n + (X Y) n) 2t 2

Example: repetition and even weight code 36/43 The n-fold repetition code C has homogeneous weight enumerator W C (X, Y) = X n + (q 1)Y n In the binary case its dual is the even weight code Hence it has homogeneous weight enumerator: W C (X, Y) = n/2 t=0 ( ) n X n 2t Y 2t = 1 ( (X + Y) n + (X Y) n) 2t 2

Example: [7, 4, 3] binary Hamming code 37/43 The nonzero entries of the weight distribution are A 0 = 1, A 3 = 7, A 4 = 7, A 7 = 1 by inspection of all the 16 codewords Hence its homogeneous weight enumerator is X 7 + 7X 4 Y 3 + 7X 3 Y 4 + Y 7

Example: [7, 4, 3] binary Hamming code 37/43 The nonzero entries of the weight distribution are A 0 = 1, A 3 = 7, A 4 = 7, A 7 = 1 by inspection of all the 16 codewords Hence its homogeneous weight enumerator is X 7 + 7X 4 Y 3 + 7X 3 Y 4 + Y 7

Example: simplex code S r (q) 38/43 This is a constant weight code with parameters [(q r 1)/(q 1), r, q r 1 ] Hence its homogeneous weight enumerator is W Sr (q)(x, Y) = X n + (q r 1)X n qr 1 Y qr 1

Example: simplex code S r (q) 38/43 This is a constant weight code with parameters [(q r 1)/(q 1), r, q r 1 ] Hence its homogeneous weight enumerator is W Sr (q)(x, Y) = X n + (q r 1)X n qr 1 Y qr 1

MacWilliams identity 39/43 Theorem Let C be a [n, k] code over F q Then W C (X, Y) = q k W C (X + (q 1)Y, X Y) Proof Several proofs are known One will be given at the end by means of the Tutte polynomial

MacWilliams identity 39/43 Theorem Let C be a [n, k] code over F q Then W C (X, Y) = q k W C (X + (q 1)Y, X Y) Proof Several proofs are known One will be given at the end by means of the Tutte polynomial

Example: dual repetition code 40/43 The n-fold repetition code C has homogeneous weight enumerator W C (X, Y) = X n + (q 1)Y n Using MacWilliams identity gives the homogeneous weight enumerator of its dual: W C (X, Y) = q 1 W C (X + (q 1)Y, X Y) = q 1 ((X + (q 1)Y) n + (q 1)(X Y) n ) n ( ) n (q 1) w + (q 1)( 1) w = X n w Y w w q w=0

Example: dual repetition code 40/43 The n-fold repetition code C has homogeneous weight enumerator W C (X, Y) = X n + (q 1)Y n Using MacWilliams identity gives the homogeneous weight enumerator of its dual: W C (X, Y) = q 1 W C (X + (q 1)Y, X Y) = q 1 ((X + (q 1)Y) n + (q 1)(X Y) n ) n ( ) n (q 1) w + (q 1)( 1) w = X n w Y w w q w=0

41/43 Exercises

Exercises first lecture 42/43 1. Check MacWilliams identity for the binary [7, 4, 3] Hamming code and its dual the [7, 3, 4] simplex code. 2. Compute the weight enumerators of the ternary Hamming H 3 (3) code and its dual the Simplex S 3 (3) code. Show that MacWilliams identity holds. 3. Compute the weight spectrum of the dual of the q-ary n-fold repetition code directly, without using MacWilliams identity. Compare this result as given in the lecture. 4. Consider the code with generator matrix (I k I k ). Show that its weight enumerator is equal (X 2 + (q 1)Y 2 ) k. Show that the code is self dual if and only if q is even. Verify that this code is formally self-dual, that is the code and its dual have the same weight enumerator.

Exercises first lecture 43/43 5. Let C be the code over F q with generator matrix G given by G = 0 1 1 1 1 0 0 1 0 1 1 0 1 0 1 1 0 1 0 0 1 Determine the finite fields F q such that the code C contains a word of weight 7?