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

Similar documents
Error Correcting Codes Questions Pool

Notes 3: Stochastic channels and noisy coding theorem bound. 1 Model of information communication and noisy channel

Lecture 17: Perfect Codes and Gilbert-Varshamov Bound

Lecture 12: November 6, 2017

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

Lecture 4: Codes based on Concatenation

Lecture 3: Error Correcting Codes

EE 229B ERROR CONTROL CODING Spring 2005

Lecture 19: Elias-Bassalygo Bound

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

Lecture 4: Proof of Shannon s theorem and an explicit code

Arrangements, matroids and codes

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

Lecture 12: Reed-Solomon Codes

Lecture 8: Shannon s Noise Models

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

Lecture B04 : Linear codes and singleton bound

for some error exponent E( R) as a function R,

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

: Error Correcting Codes. October 2017 Lecture 1

Error Detection and Correction: Hamming Code; Reed-Muller Code

atri/courses/coding-theory/book/

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)

Math 512 Syllabus Spring 2017, LIU Post

Introduction to Low-Density Parity Check Codes. Brian Kurkoski

Lecture Introduction. 2 Formal Definition. CS CTT Current Topics in Theoretical CS Oct 30, 2012

Coding Theory and Applications. Solved Exercises and Problems of Cyclic Codes. Enes Pasalic University of Primorska Koper, 2013

Lecture 12. Block Diagram

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

Notes 10: List Decoding Reed-Solomon Codes and Concatenated codes

Lecture 2 Linear Codes

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

MATH3302. Coding and Cryptography. Coding Theory

Lecture 14: Hamming and Hadamard Codes

Discrete Mathematics and Probability Theory Spring 2016 Rao and Walrand Discussion 6A Solution

Computability and Complexity Theory: An Introduction

5.0 BCH and Reed-Solomon Codes 5.1 Introduction

Notes for the Hong Kong Lectures on Algorithmic Coding Theory. Luca Trevisan. January 7, 2007

Proof: Let the check matrix be

Lecture 4 Noisy Channel Coding

Sphere Packing and Shannon s Theorem

COMPSCI 650 Applied Information Theory Apr 5, Lecture 18. Instructor: Arya Mazumdar Scribe: Hamed Zamani, Hadi Zolfaghari, Fatemeh Rezaei

An Introduction to Low Density Parity Check (LDPC) Codes

Physical Layer and Coding

Lecture 6: Expander Codes

MTAT : Introduction to Coding Theory. Lecture 1

Section 3 Error Correcting Codes (ECC): Fundamentals

Notes 7: Justesen codes, Reed-Solomon and concatenated codes decoding. 1 Review - Concatenated codes and Zyablov s tradeoff

EE512: Error Control Coding

00000, 01101, 10110, Find the information rate and the minimum distance of the binary code 0000, 0101, 0011, 0110, 1111, 1010, 1100, 1001.

MATH32031: Coding Theory Part 15: Summary

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

Lecture 03: Polynomial Based Codes

ECEN 604: Channel Coding for Communications

Lecture 18: Shanon s Channel Coding Theorem. Lecture 18: Shanon s Channel Coding Theorem

National University of Singapore Department of Electrical & Computer Engineering. Examination for

Lecture 8: Channel and source-channel coding theorems; BEC & linear codes. 1 Intuitive justification for upper bound on channel capacity

(each row defines a probability distribution). Given n-strings x X n, y Y n we can use the absence of memory in the channel to compute

MATH/MTHE 406 Homework Assignment 2 due date: October 17, 2016

Error-Correcting Codes

MT361/461/5461 Error Correcting Codes: Preliminary Sheet

Introduction to binary block codes

2. Polynomials. 19 points. 3/3/3/3/3/4 Clearly indicate your correctly formatted answer: this is what is to be graded. No need to justify!

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

Chapter 6 Reed-Solomon Codes. 6.1 Finite Field Algebra 6.2 Reed-Solomon Codes 6.3 Syndrome Based Decoding 6.4 Curve-Fitting Based Decoding

Optimum Soft Decision Decoding of Linear Block Codes

MATH 291T CODING THEORY

1 Vandermonde matrices

Questions Pool. Amnon Ta-Shma and Dean Doron. January 2, Make sure you know how to solve. Do not submit.

ECEN 655: Advanced Channel Coding

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

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

Regenerating Codes and Locally Recoverable. Codes for Distributed Storage Systems

Orthogonal Arrays & Codes

1 Ex. 1 Verify that the function H(p 1,..., p n ) = k p k log 2 p k satisfies all 8 axioms on H.

Lecture 11: Polar codes construction

EE376A: Homework #3 Due by 11:59pm Saturday, February 10th, 2018

Lecture 28: Generalized Minimum Distance Decoding

Lecture 7 September 24

Guess & Check Codes for Deletions, Insertions, and Synchronization

Name (print): Question 4. exercise 1.24 (compute the union, then the intersection of two sets)

List Decoding of Reed Solomon Codes

7.1 Definitions and Generator Polynomials

ERROR CORRECTING CODES

CS 151 Complexity Theory Spring Solution Set 5

Error-correcting codes and applications

X 1 : X Table 1: Y = X X 2

1 The Low-Degree Testing Assumption

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

An introduction to basic information theory. Hampus Wessman

Reed-Solomon codes. Chapter Linear codes over finite fields

Lecture 12: November 6, 2013

Decoding Reed-Muller codes over product sets

18.310A Final exam practice questions

Electrical and Information Technology. Information Theory. Problems and Solutions. Contents. Problems... 1 Solutions...7

Quasi-cyclic Low Density Parity Check codes with high girth

Shannon s noisy-channel theorem

REED-SOLOMON CODE SYMBOL AVOIDANCE

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

Capacity of a channel Shannon s second theorem. Information Theory 1/33

Transcription:

Error Correcting Codes: Combinatorics, Algorithms and Applications Spring 2009 Homework Due Monday March 23, 2009 in class You can collaborate in groups of up to 3. However, the write-ups must be done individually, that is, your group might have arrived at the solution of a problem together but everyone in the group has to write up the solution in their own words. Further, you must state at the beginning of your homework solution the names of your collaborators. Just to be sure that there is no confusion, the group that you pick has to be for all problems [i.e. you cannot pick different groups for different problems :-)] You are only allowed to use notes from the course: this includes any notes that you might have taken in class or any scribed notes from Fall 07 version or the current version of the course. Doing otherwise will be considered cheating. Note that if your collaborator cheats and you use his solution, then you have cheated too (ignorance is not a valid excuse). I encourage you to start thinking on the problems early. Also note that March 23 is the deadline to let me know which Wikipedia entry you will create/update. A one page report is due a week after March 23. 1. (Systematic Codes) (4 + 6 = 10 points) In the class I alluded to the fact that there is a way to easily obtain the parity check matrix of a linear code from its generator matrix. In this problem, we will look at this conversion procedure. (a) Prove that any generator matrix G of an [n, k] 2 code C (recall that G is a k n matrix) can be converted into another equivalent generator matrix of the form G = [I k A], where I k is the k k identity matrix and A is some k (n k) matrix. By equivalent, I mean that the code generated by G has a linear bijective map to C. Note that the code generated by G has the message bits as its first k bits in the corresponding codeword. Such codes are called systematic codes. In other words, every linear code can be converted into a systematic code. (b) Given an k n generator matrix of the form [I k A], give a corresponding (n k) n parity check matrix. Briefly justify why your construction of the parity check matrix is correct. (Hint: Try to think of a parity check matrix that can be decomposed into two submatrices: one will be closely related to A and the other will be an identity matrix, though the latter might not be a k k matrix). 2. (Operations on Codes) (1 + 2 + 2 + 1 + 4 = 10 points) In class we have seen some examples of how one can modify one code to get another code with interesting properties (for example, the construction of the Hadamard code from the Simplex code and the construction of codes with smaller block lengths in the proof of the Singleton bound). In this problem you will need to come up with various ways of constructing new codes from existing ones. 1

Prove the following statements (recall that the notation (n, k, d) q code is used for general codes with q k codewords where k need not be an integer, whereas the notation [n, k, d] q code stands for a linear code of dimension k): (a) If there exists an (n, k, d) q code, then there also exists an (n 1, k, d d 1) q code. (b) If there exists an (n, k, d) 2 code with d odd, then there also exists an (n + 1, k, d + 1) 2 code. (c) If there exists an (n, k, d) 2 m (d) If there exists an [n, k, d] 2 m code, then there also exists an (nm, km, d d) 2 code. code, then there also exists an [nm, km, d d] 2 code. (e) If there exists an [n, k, d] q code, then there also exists an [n d, k 1, d d/q ] q code. (Note: This one is a bit tricky!) 3. (Distance of General Random Codes) (5 points) In class, we saw Varshamov s proof that random linear code meets the GV bound. It is natural to as the question for general random codes (i.e., the random codes considered by Shannon in his proof for the capacity of BSC p ). We will do so in this problem. (a) Prove that a random binary code with rate R > 0 with high probability has relative distance δ H 1 (1 2R ɛ). 1 Note that this is worse than the bound we proved in class for random linear codes. (Hint: Proceed with the proof as in the random linear case: what events do you now need to take care of in the union bound?) (b) (For your cognitive pleasure only; no need to turn this part in in) Prove that with high probability the relative distance of a random code of rate R is at most H 1 (1 2R) + ɛ. In other words, general random codes are worse than random linear codes in terms of their distance. 4. (Toeplitz Matrix) (1 + 10 + 2 + 2 = 15 points) In class I mentioned that the Varshamov proof can be converted (using standard derandomization tricks) into a q O(n) deterministic algorithm to construct a q-ary code that lies on the GV bound. In this problem, we will look at another way to arrive at an exponential time construction. (a) (A warmup) Argue that Varshamov s proof gives a q O(kn) time algorithm that constructs an [n, k] q code on the GV bound. (Thus, the goal of this problem is to shave off a factor of k from the exponent.) (b) A k n Toeplitz Matrix A = {A i,j } k, n i=1, j=1 satisfies the property that A i,j = A i 1,j 1. In other words, any diagonal has the same value. For example, the following is a 4 6 Toeplitz matrix: 1 2 3 4 5 6 7 1 2 3 4 5 8 7 1 2 3 4 9 8 7 1 2 3 1 I forgot to mention this in class but generally H( ) is used to denote H 2( ). Further the inverse function H 1 ( ) is defined as follows. For every y [0, 1], H 1 (y) = x iff H(x) = y and x [0, 1/2]. 2

A random k n Toeplitz matrix T F k n q is chosen by picking the entries in the first row and column uniformly (and independently) at random. Prove the following claim: For any non-zero m F k q, the vector m T is uniformly distributed over F n q. (Hint: Write down the expression for the value at each of the n positions in the vector m T in terms of the values in the first row and column of T. Think of the values in the first row and column as variables. Then divide these variables into two sets (this division will depend on m) say S and S. Then argue the following: for every fixed y F n q and for every fixed assignment to variables in S, there is a unique assignment to variables in S such that mt = y.) (c) Briefly argue why the claim in part (b) implies that a random code defined by picking its generator matrix as a random Toeplitz matrix with high probability lies on the GV bound. (d) Conclude that an [n, k] q code on the GV bound can be constructed in time 2 O(k+n). 5. (Shannon s Capacity theorem for BSC p ) (4+6 = 10 points) In class, we proved Shannon s capacity theorem by choosing general random codes. I mentioned that a similar result can be proved using random linear codes. Also, we saw that a code with relative distance slightly more than 2p can have reliable communication over BSC p. It turns out that the converse needs to be true. We revisit these two issues in this problem. (a) Briefly argue (full proof not required) why the proof of Shannon s theorem for the binary symmetric channel that we did in class holds even if the encoding function E is restricted to be linear. (Hint: The proof for the linear case does not need the expurgation part of the proof for the general random code case. Argue why this is the case and then make use of it.) (b) Prove that for communication on BSC p, if an encoding function E achieves a maximum decoding error probability (taken over all messages) that is exponentially small, i.e., at most 2 γn for some γ > 0, then there exists a δ = δ(γ, p) > 0 such that the code defined by E has relative distance at least δ. In other words, good distance is necessary for exponentially small maximum decoding error probability. (Hint: Analyze the probability that the BSC p noise converts one codeword into another.) 6. (Shannon s Capacity theorem for Erasure Channels) (6 + 4 + 4 + 1 = 15 points) The binary erasure channel with erasure probability α has capacity 1 α. In this problem, you will prove this result (and its generalization to larger alphabets) via a sequence of smaller results. (a) For positive integers k n, show that less than a fraction q k n of the k n matrices G over F q fail to generate a linear code of block length n and dimension k. (Or equivalently, except with probability less than q k n, the rank of a random k n matrix G over F q is k.) (b) Consider the q-ary erasure channel with erasure probability α (qec α, for some α, 0 α 1): the input to this channel is a field element x F q, and the output is x with 3

probability 1 α, and an erasure? with probability α. For a linear code C generated by an k n matrix G over F q, let D : (F q {?}) n C {fail} be the following decoder: { c if y agrees with exactly one c C on the unerased entries in Fq D(y) = fail otherwise For a set J {1, 2,..., n}, let P err (G J) be the probability (over the channel noise and choice of a random message) that D outputs fail conditioned on the erasures being indexed by J. Prove that the average value of P err (G J) taken over all G F k n q is less than q k n+ J. (c) Let P err (G) be the decoding error probability of the decoder D for communication using the code generated by G on the qec α. Show that when k = Rn for R < 1 α, the average value of P err (G) over all k n matrices G over F q is exponentially small in n. (d) Conclude that one can reliably communicate on the qec α at any rate less than 1 α using a linear code. 7. (Alternate definition of RS codes) (10 points) We have defined Reed-Solomon in class. In this problem you will prove that a certain alternate definition also suffices. Consider the Reed-Solomon code over a field F of size q and block length n = q 1 defined as RS F [n, k, n k + 1] = {(p(1), p(α),..., p(α n 1 )) p(x) F[X] has degree k 1} where α is the generator of the multiplicative group F of F. 2 Prove that RS F [n, k, n k + 1] = {(c 0, c 1,..., c n 1 ) F n c(α l ) = 0 for 1 l n k, where c(x) = c 0 + c 1 X + + c n 1 X n 1 }. (1) (Hint: Prove that the identity n 1 i=0 αji = 0 holds for all j, 1 j n 1, and then make use of it.) (Hint on hint: Convince yourself that the formula for geometric series also holds over finite fields.) 8. (Rate of linear list-decodable codes) (6 + 4 = 10 points) (a) Let v 1,..., v l F a q be linearly-independent vectors. Then prove that for a random a b matrix M F a b q, the vectors v i M (1 i l) are random independent vectors in F b q. (b) For 0 < p < 1 and a positive integer L, call a code C Σ n to be (p, L)-list decodable if every Hamming ball of radius pn (in the space Σ n ) has at most L codewords of C. Prove that for every finite field F q, 0 < p < 1 1/q, integer L 1, and large enough n, there is a (p, L)-list decodable linear code C F n q that has rate at least 1 H q (p) 1 log q (L+1) o(1). (Hint: Apply the usual random coding method of picking a generator matrix at random. In estimating the probability that L nonzero messages all get mapped into a ball of radius pn, these L events are not all independent (and this is the difference compared to picking a general random code). But at least how many of these events are independent of one another? Part (a) will be useful in answering this question.) 2 This means that F = F \ {0} = {1, α,..., α n 1 }. Further, α n = 1. 4

9. (Intractability of Maximum Likelihood Decoding) I have mentioned a few times in class that MLD is a notoriously hard to implement any faster than exponential time. In this problem we will show that doing MLD for linear codes in general is NP-hard. (This problem is for your cognitive pleasure only; no need to turn this problem in) Given an undirected graph G = (V, E), consider the binary code C G {0, 1} E, where every codeword in C G corresponds to a cut in G. More precisely, every position in any vector in {0, 1} E is associated with an edge in E. Let c C G be a codeword. Let E c = {i E c i = 1}. Then E c must correspond to exactly the edges in some cut of G. (a) Prove that C G is a linear code. (b) Prove that if one can do MLD on G in polynomial time then one can solve the Max-Cut problem 3 on G in polynomial time. Conclude that solving the MLD problem on linear codes in general is NP-hard. (Hint: Try to think of a vector y {0, 1} E such that solving MLD with received word y for C G is equivalent to solving the Max-Cut problem on G.) 3 Given a graph G = (V, E), a cut is a partition of the vertices into sets S V and S = V \ S. The size of the cut is the number of edges that have exactly one end-point in S and the other in S. The Max-Cut of G is a cut with the maximum possible size. Max-Cut is a well known NP-hard problem. 5