Graphic Art

A variable length moment balancing template

Description
A variable length moment balancing template
Categories
Published
of 5
All materials on our website are shared by users. If you have any questions about copyright issues, please report us to resolve them. We are always happy to assist you.
Related Documents
Share
Transcript
  A Variable Length Moment Balancing Template Filip Palunˇci´c Department of Electrical and ElectronicEngineering Science,University of Johannesburg,Auckland Park, 2006, South AfricaEmail: fpaluncic@postgrad.uj.ac.za Hendrik C. Ferreira Department of Electrical and ElectronicEngineering Science,University of Johannesburg,Auckland Park, 2006, South AfricaEmail: hcferreira@uj.ac.za Willem A. Clarke Department of Electrical and ElectronicEngineering Science,University of Johannesburg,Auckland Park, 2006, South AfricaEmail: willemc@uj.ac.za  Abstract —Moment balancing templates have been proposedfor channels with a small probability of an insertion/deletion(several orders smaller than additive errors) that add a min-imal amount of redundancy. These templates are essentially asystematic way of encoding number-theoretic codes (primarilyLevenshtein’s  s  = 1 insertion/deletion code). Moment balancingtemplates proposed up to this point have been fixed length. Inthis paper, it is shown, that by using variable length templates,it is possible to obtain better performance than the optimal fixedlength moment balancing template. Here, performance is definedas the amount of redundancy that needs to be added. I. I NTRODUCTION Systematic encoding of number-theoretic codes have beenproposed in a number of papers [1]–[5]. This approachremoves the need for lookup tables and allows for easierextraction of the information bits.Levenshtein, in [6] showed that all the codewords  x n  =( x 1 x 2  ...x n )  satisfying: n  i =1 ix i  ≡  a ( mod  m )  (1)for a particular  0  ≤  a  ≤  n  and  m  ≥  n  + 1  form a singleinsertion/deletion correcting codebook.In [3], Abdel-Ghaffar and Ferreira proved that the optimaltemplate, for the Varshamov-Tenengol’ts code, is obtainedwhen the moment balancing bits are placed at indices  { 2 j :  j  = 0 , 1 ,..., ⌈ log 2 ( n +1) ⌉− 1 } . Varshamov-Tenengol’ts code[7] is used to correct a single asymmetric error. Levenshtein[6] noticed that by extending the Varshamov-Tenengol’ts’construction, a single insertion/deletion can be corrected. For m  =  n +1 , a Levenshtein code is identical to the Varshamov-Tenengol’ts code. Since, the moment balancing template pro-posed in [3] is optimum for  m  =  n +1 , the optimum momentbalancing template for the Levenshtein code is identical to thatfor the Varshamov-Tenengol’ts code.Using the template from [3], Ferreira  et al.  [5] proposedoptimal moment balancing templates that added a single inser-tion/deletion capability to arbitrary error correcting codes. Theinformation set of the template is used for the error correctingcodeword, while the moment balancing bits (parity bits) adda single insertion/deletion capability. They are proposed forinsertion/deletion channels with low probabilities of inser-tion/deletion errors. The rate of the moment balancing templateimproves as  n  increases. By using long length templates,a single insertion/deletion capability can be added with arelatively minimal amount of redundancy. In this paper, wewill likewise assume that the information set of the variablelength moment balancing template contains bits from an errorcorrecting coded stream. By using a variable length momentbalancing template, we will show that it is possible to improveon the performance of the optimal fixed length momentbalancing template proposed in [5]. In this paper, we will onlyconsider templates for the Levenshtein code. Theoretically, thevariable length template can then be extended to any number-theoretic code.II. V ARIABLE  L ENGTH  A PPROACH Let  y ∞  = ( y 1 y 2  ... )  represent a random binary sequenceof theoretically infinite length. If the set  B n  represents all thepossible binary sequences of length  n , then  y ∞  ∈  B ∞ . Let y ij  = ( y i y i +1  ...y j ) . Starting with  x n  =  y 1 n , we wish to finda codeword  x n  that satisfies (1). We also specify two variables n min  and  n max , where it is desired that  n min  ≤  n  ≤  n max . Firstcalculate the partition  a  of   x n min  according to (1). For  x n min  tobe a Levenshtein codeword, it needs to be part of a particularpartition  a . If   x n min  doesn’t belong to the desired partition,increment  n  by one. Then determine the partition of   x n min +1 .This process is repeated until a Levenshtein codeword is found.Assume that the first Levenshtein codeword is found at length n . Then the search for the second Levenshtein codeword startswith  x n min  =  y ( n +1)( n + n min ) .Define  P  ( n )  as the probability that (1) is satisfied for  x n  forthe smallest  n  ≥  n min . It is possible to give an approximationfor  P  ( n ) . Before we do that, we need to provide a fewdefinitions. Define  C  ( n,m,a )  as: C  ( n,m,a ) =  ( x 1 x 2  ...x n )  ∈ { 0 , 1 } n : n  i =1 ix i  ≡  a ( mod  m )  (2)where  m  ≥  n +1 . Then  | C  ( n,m,a ) |  represents the cardinalityof the set  C  ( n,m,a ) . Results regarding  | C  ( n,m,a ) |  can befound in [8], [9]. Define the average partition cardinality  µ n,m of   | C  ( n,m,a ) |  as: µ n,m  = 1 m m − 1  a =0 | C  ( n,m,a ) |  = 2 n m.  (3) ISIT 2008, Toronto, Canada, July 6 - 11, 2008 1557978-1-4244-2571-6/08/$25.00 ©2008 IEEE  The partition distribution is defined as the values of  | C  ( n,m,a ) |  for  0  ≤  a  ≤  m  −  1 . We will assume that | C  ( n,m,a ) |  =  µ n,m  for all  a . The justification for thisapproximation will be considered later in this paper. Proposition 1:  For  m  =  n +1  and  | C  ( n,n +1 ,a ) |  =  µ n,n +1 for all  0  ≤  a  ≤  nP  ( n ) =   n min n ( n +1)  for  n  ≥  n min 0  for  n < n min Proof:  Since  | C  ( n,n  + 1 ,a ) |  =  µ n,n +1 , the probabilitythat  x n  belongs to a particular partition  a  is  1 / ( n  + 1) . For n  =  n min , the probability that  x n  satisfies (1) for a particular a  is  1 / ( n min  + 1) . For  n  =  n min  + 1 ,  P  ( n )  is given by theprobability that (1) is not satisfied for  n  =  n min  and that (1)is satisfied for  n  =  n min  + 1 . This is given by n min n min  + 11 n min  + 2 . Repeating this for all  n  ≥  n min ,  P  ( n ) =  ( n − 1)!( n min − 1)!( n min )!( n +1)!  = n min n ( n +1) .For  x n  = ( x 1 x 2  ...x n ) , by incrementing  n  by one, themoment  ni =1  ix i  is changed by  n  + 1  if   x n +1  = 1  or  0 if   x n +1  = 0 . Since  m  ≥  n  + 1 , the value of   a  can onlychange by a certain value, which quickly grows large. Letthe term index refer to the position of a bit in a binarysequence (the first bit has the index 1) and let the term momentweight refer to the integer value associated with each indexthat is used in calculating the moment. Then, by defining ˜x n  = ( x n x n − 1  ...x 1 ) , where the subscript for each bit refersto its moment weight, the change in the moment is not onlydetermined by the bit at the index  n  + 1 , but also by theHamming weight  w ( ˜x n )  of   ˜x n . If   x 1  = 1 , then the momentchanges by  1+ w ( ˜x n )  and if   x 1  = 0 , the moment changes by w ( ˜x n ) .Accordingly, define  C   ( n,m,a )  as: C   ( n,m,a ) =  ( x n x n − 1  ...x 1 )  ∈ { 0 , 1 } n : n  i =1 ix i ≡  a ( mod  m )  .  (4)Note that  | C  ( n,m,a ) |  =  | C   ( n,m,a ) |  and that only themoment weights are reversed and not the codewords. Themoment balancing templates are used to add a single inser-tion/deletion capability to an arbitrary error correcting code.For purposes of concept elucidation, we will use a (7,3) LDPCcode to provide an additive error correcting capability. Let  v  =( v 1 v 2  ...v 7 )  represent a LDPC codeword and if   v i  representsthe  i th LDPC codeword, then  y  =  v 1 | v 2 | ... | v i | ... . The sign |  is used to indicate codeword concatenation. Then we wishto find  ˜x n  =  v 1 | v 2 | ... | v i | ... | v  pl  for the smallest  n  ≥  n min such that  ˜x n  ∈  C   ( n,m,a )  for a particular  a  and  m . Thesubscript  p  refers to  p th LPDC codeword in x n  and  l  representsan index inside  v  p . Therefore,  v  pl  = ( v  p 1 v  p 2  ...v  pl ) , where 1  ≤  l  ≤  7 . Hence,  ˜x n  need not correspond to the boundary of  0 20 40 60 80 100020040060080010001200                                                                                                     Fig. 1. Partition distribution  | C  ′ LDPC ( n,m,a ) |  for  m  =  n  + 1  where  n  =100 . The distribution was obtained by randomly generating  10 5 codewords ˜x n . v  p . Define  C   LDPC ( n,m,a )  as: C   LDPC ( n,m,a ) =  ˜x n  =  v 1 | v 2 | ... | v i | ... | v  pl  : n  i =1 ix i  ≡  a ( mod  m )  .  (5)Consider the case where  n min  = 100  and  n max  = 1000 .Fig. 1 shows the simulated partition distribution of theset  C   LDPC (100 , 101 ,a ) . The partition distribution for  n  = { 101 , 102 ,... }  is similar to  n  = 100 . As with  C   ( n,m,a ) ,we will use the approximation  | C   LDPC ( n,m,a ) |  =  µ n,m  forall  a , where  µ n,m  = 1 /m  m − 1 a =0  | C   LDPC ( n,m,a ) | .For  n min  = 100 ,  P  ( n ) = 100 /n ( n  + 1) . Define  P  ( n min  ≤ n  ≤  n max )  as: P  ( n min  ≤  n  ≤  n max ) = n max  n = n min P  ( n ) .  (6)Then  P  (100  ≤  n  ≤  1000) = 0 . 9001 . By generating  10 4 random codewords  ˜x n ,  90 . 34%  codewords  ˜x n  had  n  ≤  n max .It is desired that  P  ( n min  ≤  n  ≤  n max ) = 1 , or that  P  ( n >n max ) = 0 . Since  P  ( n )  >  0  ∀  n  ≥  n min , it follows that P  ( n > n max ) = 0  for a finite  n max  doesn’t exist. Therefore, theproblem becomes that of minimizing  P  ( n > n max ) . However,for a fixed  n min  and  n max , we have no control over  P  ( n min  ≤ n  ≤  n max ) . This is where moment balancing bits assume theirrole.III. V ARIABLE  L ENGTH  T EMPLATE By adding moment balancing bits, it is possible to minimize P  ( n > n max )  to an arbitrarily small value. Assume that  k b moment balancing bits are added at indices with momentweights  { 2 0 , 2 1 ,..., 2 k b − 1 } . Let  ˆ k b  denote the maximumvalue that the  k b  moment balancing bits can add to themoment. Then  ˆ k b  = 2 k b −  1 . Then the information set is ISIT 2008, Toronto, Canada, July 6 - 11, 2008 1558  given by  { 1 , 2 ,...,n }\{ 2 j :  j  = 0 , 1 ,...,k b  −  1 } . Let c n  = ( c n c n − 1  ...c 1 ) =  v 1 | v 2 | ... | v i | ... | v  pl  represent theinformation set and  p k b  = (  p k b  p k b − 1  ...p 1 )  represent theparity set (moment balancing bits). Then, ˜x n + k b  = ( x n + k b x n + k b − 1  ...x 1 )= ( c n  ...p k b  ...c 5  p 4 c 4 c 3 c 2  p 3 c 1  p 2  p 1 )  (7)represents the moment balancing template and it is desired that ˜x n + k b  ∈  C   ( n  +  k b ,m,a )  for particular values of   a  and  m .This is the same template as proposed in [5]. Note that for  c n and  p k b , the subscripts for the bits  c i  and  p i  do not correspondto the moment weights used in the moment balancing template.For example, the weight for  p i  is  2 i − 1 . Consider the case when m  =  n  +  k b  + 1 . Define  ˜ C   LDPC ( n  +  k b ,n  +  k b  + 1 ,a )  as: ˜ C   LDPC ( n  +  k b ,n  +  k b  + 1 ,a ) =  ˜x n + k b , p k b  =  0  : n + k b  i =1 ix i  ≡  a ( mod  n  +  k b  + 1)  .  (8)With the addition of the  k b  moment balancing bits, thevariable length approach is as follows. Start with  c n min . Obtain ˜x n + k b  according to (7), with  p k b  =  0 . Assume that thedesired partition for  ˜x n + k b  is some arbitrary  a . If   ˜x n + k b  ∈ ˜ C   LDPC ( n  +  k b ,n  +  k b  + 1 , ˘ a ) , where  ˘ a  ∈ { a  −  ˆ k b ,a  − ˆ k b  − 1 ,...,a − 1 ,a } ( mod  n  +  k b  + 1) , then by appropriatelyselecting  p k b ,  ˜x n + k b  ∈  C   ( n  +  k b ,n  +  k b  + 1 ,a ) . Otherwise,increment  n  by one, and repeat the above process until ˜x n + k b  ∈  C   ( n  +  k b ,n  +  k b  + 1 ,a ) .Define  P  ( n, ˆ k b )  as the probability that  ˜x n + k b  ∈  C   ( n  + k b ,n  +  k b  + 1 ,a )  for the smallest  n  ≥  n min  by using thevariable length moment balancing template. The partitiondistribution of   ˜ C   LDPC ( n + k b ,n + k b  +1 ,a )  closely resemblesthat of   C   LDPC ( n,n  + 1 ,a ) . Then, we use the approximation |  ˜ C   LDPC ( n + k b ,n + k b +1 ,a ) |  =  µ n + k b ,n + k b +1  for all  a , where µ n + k b ,n + k b +1  = 1 / ( n  +  k b  + 1)  n + k b a =0  |  ˜ C   LDPC ( n  +  k b ,n  + k b  + 1 ,a ) | . Proposition 2:  For  m  =  n + k b +1  and  |  ˜ C   LDPC ( n + k b ,n + k b  + 1 ,a ) |  =  µ n + k b ,n + k b +1  for all  0  ≤  a  ≤  n  +  k b , P  ( n, ˆ k b ) =   (ˆ k b  + 1)  ( n + k b − 1 − ˆ k b )!( n min + k b − 1 − ˆ k b )!( n min + k b )!( n + k b +1)!  for  n  ≥  n min 0  for  n < n min Proof:  Since  |  ˜ C   LDPC ( n  +  k b ,n  +  k b  + 1 ,a ) |  = µ n + k b ,n + k b +1 , the probability that  ˜x n + k b , with  p k b  added,belongs to a particular partition  a  is  (ˆ k b  + 1) / ( n  +  k b  + 1) .Repeating the same process as in Proposition 1,  P  ( n, ˆ k b )  canbe obtained.Note that  P  ( n ) =  P  ( n, 0) . Fig. 2 shows  P  ( n, 0)  and P  ( n, 7)  for  100  ≤  n  ≤  1000 . The rate of decay of   P  ( n, 7) is much greater than that of   P  ( n, 0) . Let  P  ( n min  ≤  n  ≤ n max , ˆ k b )  denote the probability that  n  lies in the specifiedbounds by adding  k b  moment balancing bits. Then,  P  (100  ≤ n  ≤  1000 , 7) =   1000 n =100  P  ( n, 7) = 0 . 9999999904515 , oralternatively  P  ( n >  1000 , 7) = 9 . 55 ×  10 − 9 .Fig. 3 shows the distribution for  10 5 randomly generatedcodewords  c n . Note that this plot is a close non-normalizedapproximation of   P  ( n, 7)  shown in Fig. 2. 200 400 600 800 100000.020.040.060.08                                                                      Fig. 2. A comparison of   P  ( n, 0)  and  P  ( n, 7) .  P  ( n, 0)  is obtained when k b  = 0  and  P  ( n, 7)  when  k b  = 3 . 100 200 300 400 500 60002000400060008000  Fig. 3. A plot of the distribution of the number of codewords  c n  with alength  n , where  k b  = 3 ,  ˆ k b  = 7  and  n min  = 100 .  10 5 codewords  c n  weregenerated such that  ˜x n + k b  ∈  C  ′ ( n + k b ,n + k b +1 , 0) .  c n  is a concatenationof (7,3) LDPC codewords.TABLE IC OMPARISON OF  P  ( n, ˆ k b )  AND  P  MEASURED ( n, ˆ k b )  WHERE  c n  IS ACONCATENATION OF  (7,3) LDPC  CODEWORDS . n min  n max  k b  ˆ k b  P  ( n > n max , ˆ k b )  P  measured ( n > n max , ˆ k b ) 10 100 2 3  1 . 12 × 10 − 4 2 . 24 × 10 − 6 100 1000 2 3  1 . 01 × 10 − 4 7 . 78 × 10 − 5 100 2000 2 3  6 . 36 × 10 − 6 4 . 64 × 10 − 6 500 1000 3 7  3 . 86 × 10 − 3 2 . 97 × 10 − 3 500 2000 3 7  1 . 51 × 10 − 5 8 . 91 × 10 − 6 1000 2000 3 7  3 . 38 × 10 − 3 2 . 81 × 10 − 3 1000 5000 3 7  2 . 55 × 10 − 6 2 . 02 × 10 − 6 ISIT 2008, Toronto, Canada, July 6 - 11, 2008 1559  Let  P  actual ( n, ˆ k b )  denote the actual probability that  ˜x n + k b  ∈ C   ( n + k b ,n + k b  +1 ,a )  for a particular partition  a .  P  ( n, ˆ k b ) only represents an approximation of   P  actual ( n, ˆ k b ) , since weassume that  |  ˜ C   C  add ( n,m,a ) |  is the same for all  a , where C  add  represents an additive-error-correcting codebook. Let P  measured ( n, ˆ k b )  represent the measurement of   P  actual ( n, ˆ k b ) by randomly generating  100 /P  ( n, ˆ k b )  codewords  c n . TableI shows a comparison between  P  ( n, ˆ k b )  and  P  measured ( n, ˆ k b ) for some values of   n min ,  n max  and  k b . Note that for the con-catenated (7,3) LDPC codewords,  P  measured ( n, ˆ k b )  is slightlyless than  P  ( n, ˆ k b )  for large  n min .It is possible to give an upper and lower bound for P  actual ( n > n max , ˆ k b ) . Let  max {|  ˜ C   C  add ( n + k b ,n + k b  +1 ,a ) |} denote the maximum partition cardinality. Similarly, the min-imum partition cardinality is represented by  min {|  ˜ C   C  add ( n  + k b ,n  +  k b  + 1 ,a ) |} . For a particular additive-error-correctingcodebook   C  add , let  max {|  ˜ C   C  add ( n  +  k b ,n  +  k b  + 1 ,a ) |} ≤ γ  2 µ n + k b ,n + k b +1  for all  n  ≥  n min , where  γ  2  ≥  1 . Similarly, let min {|  ˜ C   C  add ( n + k b ,n + k b  +1 ,a ) |} ≥  γ  1 µ n + k b ,n + k b +1  for all n  ≥  n min , where  γ  1  ≤  1 . Let  P  lower ( n, ˆ k b )  represent the proba-bility that  ˜x n + k b  ∈  C   ( n + k b ,n + k b +1 ,a )  for a particular  a ,assuming that  |  ˜ C   C  add ( n + k b ,n + k b +1 , ˘ a ) |  =  γ  2 µ n + k b ,n + k b +1 if   ˘ a  ∈ { a −  ˆ k b ,a −  ˆ k b  −  1 ,...,a −  1 ,a } ( mod  n  +  k b  + 1) . Proposition 3:  For  m  =  n  +  k b  + 1 , P  lower ( n, ˆ k b ) = (ˆ k b  + 1) γ  2 n min  +  k b  + 1 −  (ˆ k b  + 1) γ  2 n min  +  k b  + 1 n min  +  k b  + 2 −  (ˆ k b  + 1) γ  2 n min  +  k b  + 2  ...n  +  k b  −  (ˆ k b  + 1) γ  2 n  +  k b  + 1  .  (9) Proof:  The proof follows the same principle as inProposition 2.Define  P  upper ( n, ˆ k b )  in the same way as  P  lower ( n, ˆ k b ) , onlyreplacing  γ  2  with  γ  1 . Then,  P  lower ( n > n max , ˆ k b )  ≤  P  actual ( n >n max , ˆ k b )  ≤  P  upper ( n > n max , ˆ k b ) . Table II shows values for P  lower ( n > n max , ˆ k b )  and  P  upper ( n > n max , ˆ k b )  for selectedvalues of   n min ,  n max ,  γ  1  and  γ  2 . The bounds diverge for largervalues of   γ  2  and smaller values for  γ  1 . It is important to notethat  P  actual ( n, ˆ k b )  is generally closer to  P  ( n, ˆ k b )  than eitherbounds. This is because the partition cardinalities change as n  changes, so that the cardinality of the desired partition  a fluctuates across different  n .Up to now, we have only used a (7,3) LDPC code as  C  add .Table III shows values of   γ  1  and  γ  2  for various  C  add . Thevalues of   γ  1  and  γ  2  indicate the precision with which  P  ( n, ˆ k b ) predicts the behavior of the coding scheme. For  γ  1  =  γ  2  = 1 , P  lower ( n, ˆ k b )  and  P  upper ( n, ˆ k b )  reduce to  P  ( n, ˆ k b ) . Note thatthe values of   γ  1  and  γ  2  are influenced by the number of randomly generated codewords  c n . Generally, by generatingmore random codewords  c n , the value of   γ  1  increases and  γ  2 decreases.By adding  k b  moment balancing bits, it is possible to reduce P  ( n > n max , ˆ k b )  to an arbitrarily small value. Since  P  ( n <n min , ˆ k b ) +  P  ( n min  ≤  n  ≤  n max , ˆ k b ) +  P  ( n > n max , ˆ k b ) = 1 TABLE IIC OMPARISON OF VALUES FOR  P  LOWER ( n > n MAX , ˆ k b ) ,  P  ( n > n MAX , ˆ k b ) AND  P  UPPER ( n > n MAX , ˆ k b )  FOR VARIOUS VALUES OF  n MIN ,  n MAX ,  γ  1  AND γ  2 . I N THE TABLE ,  P  LOWER  STANDS FOR  P  LOWER ( n > n MAX , ˆ k b ) ,  P   FOR P  ( n > n MAX , ˆ k b )  AND  P  UPPER  FOR  P  UPPER ( n > n MAX , ˆ k b ) . F OR n MIN  = 10 ,  n MAX  = 100  AND  n MIN  = 100 ,  n MAX  = 1000 ,  k b  = 3  AND FOR n MIN  = 500 ,  n MAX  = 2000 ,  k b  = 4 . n min  n max  γ  1  γ  2  P  lower  P P  upper 10 100 0.9 1.1  4 . 77 × 10 − 10 5 × 10 − 9 4 . 69 × 10 − 8 0.8 1.2  4 × 10 − 11 5 × 10 − 9 4 × 10 − 7 0.6 1.4  1 . 69 × 10 − 13 5 × 10 − 9 2 . 28 × 10 − 5 100 1000 0.9 1.1  1 . 46 × 10 − 9 9 . 55 × 10 − 9 6 . 21 × 10 − 8 0.8 1.2  2 . 21 × 10 − 10 9 . 55 × 10 − 9 4 . 02 × 10 − 7 0.6 1.4  5 . 01 × 10 − 12 9 . 55 × 10 − 9 1 . 65 × 10 − 5 500 2000 0.9 1.1  2 . 24 × 10 − 11 2 . 12 × 10 − 10 2 × 10 − 9 0.8 1.2  2 . 35 × 10 − 12 2 . 12 × 10 − 10 1 . 88 × 10 − 8 0.6 1.4  2 . 43 × 10 − 14 2 . 12 × 10 − 10 1 . 65 × 10 − 6 TABLE IIIV ALUES OF  γ  1  AND  γ  2  FOR VARIOUS ADDITIVE - ERROR - CORRECTINGCODEBOOKS  C  ADD . T HE VALUES FOR  γ  1  AND  γ  2  ARE OBTAINED BYRANDOMLY GENERATING  10 5 CODEWORDS  c n . C  add  n k b  γ  1  γ  2 Hamming (15,11) 100 2 0.89 1.06Hamming (63,57) 1000 4 0.66 1.31BCH (127,113) 500 4 0.73 1.21Conv.  R  = 2 / 3 , Constraint Length [5 4], 100 2 0.90 1.08Generator Poly. (octal) ✧  23 35 00 5 13 ★  RS (31,21) GF( 2 5 ) 100 2 0.91 1.06RS (63,43) GF( 2 6 ) 100 2 0.90 1.05 and  P  ( n < n min , ˆ k b ) = 0 ,  P  ( n > n max , ˆ k b ) = 1  −  P  ( n min  ≤ n  ≤  n max , ˆ k b ) . The value of   k b  is selected so that the inequality P  ( n > n max , ˆ k b )  <   is true, where    defines an acceptableprobability that  n  is larger than  n max .IV. P ERFORMANCE Unlike fixed length moment balancing constructions, thereis no closed form equation that defines  k b  as a function of   n .Furthermore, for the variable length construction,  k b  is also afunction of    . Therefore, the comparison between the fixed andvariable constructions will be considered only for particularvalues of   n min  and  n max . In order to evaluate the performanceof the variable length construction, there needs to be a methodto compare  n  of the fixed length template with  n  of the variablelength template. Therefore, we need to calculate the averageof   n  for the variable length template. This is given by: E  [ n ] = ∞  n = n min nP  ( n, ˆ k b ) .  (10)For  n > n max ,  P  ( n, ˆ k b )  is extremely small, so that the averagevalue of   n  can be estimated by  E  [ n ]  ≈  n max n = n min nP  ( n, ˆ k b ) . ISIT 2008, Toronto, Canada, July 6 - 11, 2008 1560  TABLE IVC OMPARISON OF PERFORMANCE  ( IN TERMS OF  k b )  BETWEEN THEVARIABLE LENGTH TEMPLATE AND THE OPTIMUM FIXED LENGTHTEMPLATE FOR    = 10 − 9 Variable FixedLength Length n min  n max  k b  E  [ n ]  k b 10 100 3 10.8 410 1000 3 10.9 5100 1000 4 105.9 7100 2000 3 113.7 7500 1000 5 515.3 10500 2000 4 532.6 101000 2000 5 1031.4 111000 5000 4 1065.9 11 Table IV shows a comparison, in terms of   k b , between thevariable length template and the optimum fixed length templatefor    = 10 − 9 . It can be seen that for most values of   n min  and n max , the number of moment balancing bits needed is half thenumber needed for the optimum fixed length template.The reason why the variable length approach results inbetter performance is simple. With the fixed length template,the number of moment balancing bits,  k b , needed is deter-mined by  n . With the variable length template,  n  is constantlyincremented until a codeword is found whose partition issufficiently close to the desired partition.V. S IMULATION For the purpose of simulations,  c n  is a concatenation of  (7 , 4)  Hamming codewords. As before,  n min  = 100  and n max  = 1000 , which means that  k b  = 4 . Since the Levenshteincodewords are variable length, there needs to be a method todelimit the boundaries of the codewords. As markers, we use3 PN (Pseudo-Noise) sequences, because these have propertiesof random noise and hence limited correlation with the codedsequence. The three PN sequences used are 111101011001000100100011110101001001101011110 . Three PN sequences are needed because we also need toidentify the type of synchronisation error that occurred. Giventhe length  n  +  k b  of the Levenshtein codeword, apply toit the operation modulo 3. Depending on the residue (0,1,or 2), send one of the PN sequences after the Levenshteincodeword. At the receiver, by comparing the received length of the Levenshtein codeword with the received PN sequence, onecan determine whether a single insertion or deletion occurred.A simple channel model is used. With each bit sent acrossthe channel is associated a value  p add , probability of an additiveerror,  p i , probability of an insertion, and  p d , probability of adeletion. It is assumed that  p i  =  p d  and that  p id  =  p i  +  p d . TABLE VC OMPARISON OF  BER  OBTAINED BY CALCULATION AND SIMULATION  p add  p id  BER calc.  BER sim. 10 − 2 10 − 3 0.138 0.155 10 − 2 10 − 4 0.101 0.106 10 − 2 10 − 5 0.098 0.124 10 − 2 10 − 6 0.097 0.13 10 − 3 10 − 4 0.012 0.016 10 − 3 10 − 5 0.0101 0.022 10 − 3 10 − 6 0.0099 0.014 10 − 4 10 − 5 0.0011 0.0041 10 − 4 10 − 6 0.001 0.0016 Table V shows a comparison between BER (Bit Error Rate)obtained by calculation and simulation. It is possible to givean estimation on the BER based on the method used forsimulation. Due to space limitations, these formulas are leftout, but their derivation is relatively simple.VI. C ONCLUSION It is shown that by using a variable length moment bal-ancing template, fewer balancing bits (parity bits) are neededcompared to the optimum fixed length moment balancingtemplate. Since moment balancing templates are used to adda single insertion/deletion capability to an arbitrary additive-error-correcting code, it is shown, for some additive-error-correcting codes, that they possess a relatively flat partitiondistribution.R EFERENCES[1] G. M. Tenengol’ts, “Class of codes correcting bit loss and errors in thepreceding bit,”  Avtomatika i Telemekhanika , no. 5, pp. 174–179, May1976.[2] G. M. Tenegol’ts, “Nonbinary codes, correcting single deletion or inser-tion,”  IEEE Trans. Inform. Theory , vol. 30, no. 5, pp. 766–769, Sept.1984.[3] K. A. S. Abdel-Ghaffar and H. C. Ferreira, “Systematic encoding of the Varshamov-Tenengol’ts codes and the Constantin-Rao codes,”  IEEE Trans. Inform. Theory , vol. 44, no. 1, pp. 340–345, Jan. 1998.[4] K. Saowapa, H. Kaneko, and E. Fujiwara, “Systematic deletion/insertionerror correcting codes with random error correction capability,” in  In-ternational Symposium on Defect and Fault Tolerance in VLSI Systems ,Albuquerque, NM, Nov. 1999, pp. 284–292.[5] H. C. Ferreira, K. A. S. Abdel-Ghaffar, L. Cheng, and T. G. Swart,“Moment balancing templates: Universal constructions to add inser-tion/deletion correction capability to arbitrary error correcting or con-strained codes,” in  Proceedings of the IEEE International Symposium in Information Theory , Nice, France, June 24–29 2007, pp. 1676–1680.[6] V. I. Levenshtein, “Binary codes capable of correcting deletions, inser-tions, and reversals,”  Soviet Physics-Doklady , vol. 10, no. 8, pp. 707–710,Feb. 1966.[7] R. R. Varshamov and G. M. Tenengol’ts, “Correction code for singleasymmetric errors,”  Avtomatika i Telemekhanika , vol. 26, no. 2, pp. 288–292, 1965.[8] B. D. Ginzburg, “A number-theoretic function with an application in thetheory of coding,”  Problemy Kibernetiki , vol. 19, pp. 249–252, 1967.[9] N. J. A. Sloane, “On single-deletion-correcting codes,” in  Codes and  Designs , K. T. Arasu and A. Seress, Eds. Walter de Gruyter, Berlin:Ray-Chaudhuri Festschrift, 2002, pp. 273–291. [Online]. Available:http://www.research.att.com/ njas/  ISIT 2008, Toronto, Canada, July 6 - 11, 2008 1561
Search
Tags
Related Search
We Need Your Support
Thank you for visiting our website and your interest in our free products and services. We are nonprofit website to share and download documents. To the running of this website, we need your help to support us.

Thanks to everyone for your continued support.

No, Thanks