Processing math: 100%

Exercise 1.14: Bhattacharyya Bound for BEC

From LNTwww

Possible received vectors for the  (5,2) code and BEC

In this exercise,  we consider the systematic  (5,2)  code

  • with the  2×5 generator matrix
G(5,2)=(1011001011),
  • the  3×5 parity-check matrix
H(5,2)=(101001101001001),
  • and the  2k=4  code words
x_0 = (0,0,0,0,0),x_1=(0,1,0,1,1),x_2 = (1,0,1,1,0),x_3=(1,1,1,0,1).

At the output of the digital channel defined by the  "BEC model"  ("Binary Erasure Channel")  with the erasure probability  λ=0.001,  the received vector

y_=(y1,y2,y3,y4,y5)

occurs,  where for  i=1, ... ,5  holds:  

yi{0,1,E}.

The BEC channel is characterized by the fact that

  • falsifications  (01, 10)  are excluded,
  • but erasures  (0E, 1E)  may occur.


The graph explicitly shows all possible received vectors   y_   with three or more erasures (E)  assuming that the all-zero vector   (0,0,0,0,0)  was sent.

  • For less than three erausures,  for the considered  (5,2)  code,  the  "code word finder"  always returns the correct decision:   z_=x_.
  • On the other hand,  if there are three or more erasures,  wrong decisions may occur.  In this case,  the following applies to the block error probability:
Pr(blockerror)=Pr(z_x_)=Pr{[x_0x_1][x_0x_2][x_0x_3]}.

Please note:

  • The event  [x_0x_1]  does not necessarily say that at the received vector under consideration  y_  is actually decided for the code word  x_1,  but only that the decision for  x1  would be more reasonable than the decision for  x_0  due to statistics.


Computing the block error probability is difficult because the events  [x_0x_1][x_0x_2]  and  [x_0x_3]  are not necessarily  "disjoint" . An upper bound is provided by the  "Union Bound":

Pr(UnionBound)=Pr[x_0x_1]+Pr[x_0x_2]+Pr[x_0x_3]Pr(blockerror).

Another bound was given by Bhattacharyya:

Pr(Bhattacharyya)=W(β)1Pr(UnionBound)Pr(blockerror),

where for the binary erasure channel,  the Bhattacharyya parameter  β=λ  and the  "weight enumerator function"  W(X)  where the pseudo-variable  X  is to be replaced here by the Bhattacharyya parameter  λ.

  • The  "Bhattacharyya Bound"  is more or less far above the  "Union Bound"  depending on the channel.
  • Its importance lies in the fact that the bound can be specified in the same way for different channels.



Hints:  The exercise belongs to the chapter  "Bounds on block error probability".



Questions

1

What is the pairwise error probability between the code words   x_0=(0,0,0,0,0)   and   x_1=(0,1,0,1,1)?

Pr[x_0x_1] = 

 103

2

Which statements are true regarding  Pr[x_0x_i]  with index  i=1, ... ,3?   dH,i  denotes here the Hamming distance between  x0  and  xi.

It holds  Pr[x_0x_i] = λdH,i · (1λ)ndH,i.
It holds  Pr[x_0x_i] = 1/2·λdH,i.
Pr[x_0x_i]  is the falsification probability from  x0  to  xi.

3

What are the following probabilities?

 Pr[x_0x_2] = 

 103
 Pr[x_0x_3] = 

 103

4

Specify the  "Union Bound"  for the block error probability.

 Pr(Union Bound) = 

 103

5

What is the  "Bhattacharyya Bound"  in the present case?

 Pr(Bhattacharyya) = 

 103


Solution

(1)  The code words   x_0   and   x_1  differ in bit 2, 4  and 5.  If only one of these three binary values is transmitted correctly,  the entire code word is thus uniquely determined.  No information about the code word is obtained for the following received vectors  (see table in the information section):

  • y_=(0,E,0,E,E)  with probability  λ3 · (1λ)2,
  • y_=(0,E,E,E,E)  with probability  λ4 · (1λ),
  • y_=(E,E,0,E,E)  with probability λ4 · (1λ),
  • y_=(E,E,E,E,E) with probability  λ5.


The probability that due to the specific received vector  y_,  the code word  x_1  is just as likely as  x_0,  is given by

 Pr [x_0andx_1areequallyprobable]=λ3(1λ)2+2λ4(1λ)+λ5=λ3[(1λ)2+2λ(1λ)+λ2]=λ3.

In this case,  one decides at random for  x_0  (would be correct)  or for  x_1  (unfortunately wrong),  with equal probability.  From this follows:

Pr[x_0x_1]=1/2λ3=0.5103_.


(2)  According to subtask  (1)only answer 2  is correct:

  • Pr[x_0x_1]  does not state that with this probability the code word  x_0  actually transitions to the incorrect code word  x_1,  but only that it could transition to  x_1  with this probability.
  • Pr[x_0x_1]  also includes constellations where the decision is actually for  x_2  or  x_3.



(3)  Because of  dH(x_0,x_2)=3  and  dH(x_0,x_3)=4  it follows that

Pr[x_0x_2]=1/2λ3=0.5103_,
Pr[x_0x_3]=1/2λ4=0.05103_.


(4)  The block error probability is never larger  (with a certain probability rather smaller)  than the so-called  "Union Bound":

Pr(UnionBound) = Pr[x_0x_1]+Pr[x_0x_2]+Pr[x_0x_3]=2λ3/2+λ4/2=0.001+0.00005=1.05103_.


(5)  Generally speaking:

Pr(blockerror)Pr(UnionBound)Pr(Bhattacharyya)=W(β)1.
  • For the distance spectrum or the enumerator weight function,  we obtain in the present case:
W0=1,W3=2,W4=1W(X)=1+2X3+X4.
  • For the BEC channel,  β=λ  also applies.  From this follows as a final result for  λ=0.001:
Pr(Bhattacharyya)=2λ3+λ4=2.1103_.
  • Note that with the BEC model,  the  "Bhattacharyya Bound"  is always twice as large as the  "Union Bound",  which is itself an upper bound on the block error probability.