Successive Cancellation Inactivation Decoding for Modified - - PowerPoint PPT Presentation

successive cancellation inactivation decoding for
SMART_READER_LITE
LIVE PREVIEW

Successive Cancellation Inactivation Decoding for Modified - - PowerPoint PPT Presentation

International Symposium on Information Theory Los Angeles, USA June, 2020 Successive Cancellation Inactivation Decoding for Modified Reed-Muller and eBCH Codes Mustafa Cemil Cokun 1,2 Joint work with J. Neu 3 and H. D. Pfister 4 1 German


slide-1
SLIDE 1

International Symposium on Information Theory Los Angeles, USA – June, 2020

Successive Cancellation Inactivation Decoding for Modified Reed-Muller and eBCH Codes

Mustafa Cemil Coşkun1,2 Joint work with J. Neu3 and H. D. Pfister4

1German Aerospace Center 2Technical University of Munich 3Stanford University 4Duke University

slide-2
SLIDE 2

Outline

Introduction Preliminaries Successive Cancellation Inactivation Decoding Numerical Results Conclusions

slide-3
SLIDE 3

Outline

Introduction Preliminaries Successive Cancellation Inactivation Decoding Numerical Results Conclusions

slide-4
SLIDE 4

Page 1/19

  • M. C. Coşkun · · Introduction

Contributions

Successive cancellation (SC) inactivation decoding is introduced as an

efficient implementation of SC list (SCL) decoding over the binary erasure channel (BEC)

  • E.g., easy to handle more than 150 inactivations, corresponding to an SCL

decoder with L ≥ 2150, for a (8192, 4096) code

  • 1E. R. Berlekamp, “The technology of error-correcting codes,” Proc. IEEE, May 1980.
  • 2E. Arıkan, “From sequential decoding to channel polarization and back again,” Shannon Lecture, Jun. 2019.
slide-5
SLIDE 5

Page 1/19

  • M. C. Coşkun · · Introduction

Contributions

Successive cancellation (SC) inactivation decoding is introduced as an

efficient implementation of SC list (SCL) decoding over the binary erasure channel (BEC)

  • E.g., easy to handle more than 150 inactivations, corresponding to an SCL

decoder with L ≥ 2150, for a (8192, 4096) code

Analysis of the number of inactivations required for the ML decoder

  • 1E. R. Berlekamp, “The technology of error-correcting codes,” Proc. IEEE, May 1980.
  • 2E. Arıkan, “From sequential decoding to channel polarization and back again,” Shannon Lecture, Jun. 2019.
slide-6
SLIDE 6

Page 1/19

  • M. C. Coşkun · · Introduction

Contributions

Successive cancellation (SC) inactivation decoding is introduced as an

efficient implementation of SC list (SCL) decoding over the binary erasure channel (BEC)

  • E.g., easy to handle more than 150 inactivations, corresponding to an SCL

decoder with L ≥ 2150, for a (8192, 4096) code

Analysis of the number of inactivations required for the ML decoder Numerical results for various code constructions with dynamic frozen bits,

including a modified Reed–Muller (RM) code (denoted d-RM)

  • d-RM codes perform close to the Berlekamp’s random coding bound1
  • Closely related to polarization-adjusted convolutional (PAC) codes2
  • 1E. R. Berlekamp, “The technology of error-correcting codes,” Proc. IEEE, May 1980.
  • 2E. Arıkan, “From sequential decoding to channel polarization and back again,” Shannon Lecture, Jun. 2019.
slide-7
SLIDE 7

Page 2/19

  • M. C. Coşkun · · Introduction

Motivation

The BEC, while a special case, can be useful for the design of good codes

for general channels3

  • A good code with small number of inactivations on the BEC may also be

good under SCL decoding with small list size on the AWGN channel

  • 3F. Peng, W. Ryan, R. Wesel, “Surrogate-channel design of universal LDPC codes,” CL, Jun. 2006.
slide-8
SLIDE 8

Page 2/19

  • M. C. Coşkun · · Introduction

Motivation

The BEC, while a special case, can be useful for the design of good codes

for general channels3

  • A good code with small number of inactivations on the BEC may also be

good under SCL decoding with small list size on the AWGN channel

The number of inactivations quantifies the average complexity for an ML

decoder, implemented via SC inactivation (or SCL) decoding

  • 3F. Peng, W. Ryan, R. Wesel, “Surrogate-channel design of universal LDPC codes,” CL, Jun. 2006.
slide-9
SLIDE 9

Outline

Introduction Preliminaries Successive Cancellation Inactivation Decoding Numerical Results Conclusions

slide-10
SLIDE 10

Page 3/19

  • M. C. Coşkun · · Preliminaries

Polar Codes and Density Evolution4

xn

1 = un 1 K⊗m 2

where K2

  • 1

1 1

  • and

n = 2m

  • 4E. Arıkan, “Channel polarization: A method for constructing capacity-achieving codes for symmetric binary-input memoryless

channels,” T-IT, Jul. 2009.

slide-11
SLIDE 11

Page 3/19

  • M. C. Coşkun · · Preliminaries

Polar Codes and Density Evolution4

xn

1 = un 1 K⊗m 2

where K2

  • 1

1 1

  • and

n = 2m

BEC(0.5) y1 BEC(0.5) y2 BEC(0.5) y3 BEC(0.5) y4 BEC(0.5) y5 BEC(0.5) y6 BEC(0.5) y7 BEC(0.5) y8

  • x1

x2 x3 x4 x5 x6 x7 x8 u1 u2 u3 u4 u5 u6 u7 u8

  • 4E. Arıkan, “Channel polarization: A method for constructing capacity-achieving codes for symmetric binary-input memoryless

channels,” T-IT, Jul. 2009.

slide-12
SLIDE 12

Page 3/19

  • M. C. Coşkun · · Preliminaries

Polar Codes and Density Evolution4

xn

1 = un 1 K⊗m 2

where K2

  • 1

1 1

  • and

n = 2m

BEC(0.5) y1 BEC(0.5) y2 BEC(0.5) y3 BEC(0.5) y4 BEC(0.5) y5 BEC(0.5) y6 BEC(0.5) y7 BEC(0.5) y8

  • x1

x2 x3 x4 x5 x6 x7 x8 ǫ1 = 0.9961 ǫ2 = 0.8789 ǫ3 = 0.8086 ǫ4 = 0.3164 ǫ5 = 0.6836 ǫ6 = 0.1914 ǫ7 = 0.1211 ǫ8 = 0.0039 frozen frozen frozen info frozen info info info F = {1, 2, 3, 5} A = {4, 6, 7, 8}

  • 4E. Arıkan, “Channel polarization: A method for constructing capacity-achieving codes for symmetric binary-input memoryless

channels,” T-IT, Jul. 2009.

slide-13
SLIDE 13

Page 4/19

  • M. C. Coşkun · · Preliminaries

Dynamic Frozen Bits

The value of a frozen bit can also be set to a linear combination of

previous information bits (rather than 0)

A frozen bit whose value depends on past inputs is called dynamic The SC/SCL decoders are easily modified to decode polar codes with

dynamic frozen bits5

Any binary linear block code can be represented as a polar code with

dynamic frozen bits5 (e.g., PAC code)

  • 5P. Trifonov, V. Miloslavskaya, “Polar subcodes,” J-SAC, Feb. 2016.
slide-14
SLIDE 14

Outline

Introduction Preliminaries Successive Cancellation Inactivation Decoding Numerical Results Conclusions

slide-15
SLIDE 15

Page 5/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

Linear Codes over Erasure Channels

For linear codes on the BEC, any uncertainty in the information bits

always takes the form of an affine subspace

  • 6T. J. Richardson, R. L. Urbanke, “Efficient encoding of low-density parity-check codes,” T-IT, Feb. 2001.
  • 7H. Pishro-Nik, F. Fekri, “On decoding of low-density parity-check codes over the binary erasure channel,” T-IT, Mar. 2004.
  • 8C. Méasson, A. Montanari, R. Urbanke, “Maxwell construction: The hidden bridge between iterative and maximum a posteriori

decoding,” T-IT, Dec. 2008.

  • 9A. Shokrollahi, “Raptor codes,” T-IT, Dec. 2008.
  • 10A. Eslami, H. Pishro-Nik, “On bit error rate performance of polar codes in finite regime,” 48th Annu. Allerton Conf. on

Commun., Control, and Comput., Sep. 2010.

slide-16
SLIDE 16

Page 5/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

Linear Codes over Erasure Channels

For linear codes on the BEC, any uncertainty in the information bits

always takes the form of an affine subspace

The SCL decoder on the BEC lists all valid paths in this subspace The SC inactivation decoder stores a basis instead of listing all valid paths

  • 6T. J. Richardson, R. L. Urbanke, “Efficient encoding of low-density parity-check codes,” T-IT, Feb. 2001.
  • 7H. Pishro-Nik, F. Fekri, “On decoding of low-density parity-check codes over the binary erasure channel,” T-IT, Mar. 2004.
  • 8C. Méasson, A. Montanari, R. Urbanke, “Maxwell construction: The hidden bridge between iterative and maximum a posteriori

decoding,” T-IT, Dec. 2008.

  • 9A. Shokrollahi, “Raptor codes,” T-IT, Dec. 2008.
  • 10A. Eslami, H. Pishro-Nik, “On bit error rate performance of polar codes in finite regime,” 48th Annu. Allerton Conf. on

Commun., Control, and Comput., Sep. 2010.

slide-17
SLIDE 17

Page 5/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

Linear Codes over Erasure Channels

For linear codes on the BEC, any uncertainty in the information bits

always takes the form of an affine subspace

The SCL decoder on the BEC lists all valid paths in this subspace The SC inactivation decoder stores a basis instead of listing all valid paths Similar methods have been proposed for low-density parity-check6 7 8 and

raptor9 codes

For polar codes, a BP decoder with inactivations was proposed,10

improving bit-error rate, but it does not use SC decoding schedule

  • 6T. J. Richardson, R. L. Urbanke, “Efficient encoding of low-density parity-check codes,” T-IT, Feb. 2001.
  • 7H. Pishro-Nik, F. Fekri, “On decoding of low-density parity-check codes over the binary erasure channel,” T-IT, Mar. 2004.
  • 8C. Méasson, A. Montanari, R. Urbanke, “Maxwell construction: The hidden bridge between iterative and maximum a posteriori

decoding,” T-IT, Dec. 2008.

  • 9A. Shokrollahi, “Raptor codes,” T-IT, Dec. 2008.
  • 10A. Eslami, H. Pishro-Nik, “On bit error rate performance of polar codes in finite regime,” 48th Annu. Allerton Conf. on

Commun., Control, and Comput., Sep. 2010.

slide-18
SLIDE 18

Page 6/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

The Algorithm

The SC inactivation decoder has the same message passing schedule as

the SC decoder

Whenever an information bit is decoded as erased, it is replaced by a

dummy variable (i.e., inactivated)

slide-19
SLIDE 19

Page 6/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

The Algorithm

The SC inactivation decoder has the same message passing schedule as

the SC decoder

Whenever an information bit is decoded as erased, it is replaced by a

dummy variable (i.e., inactivated)

It continues decoding using SC decoding for the BEC, where the message

values are allowed to be functions of all inactivated variables

The inactivated bits are resolved, later, using linear equations derived from

decoding frozen bits

slide-20
SLIDE 20

Page 7/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

Successive Cancellation Inactivation Decoding

Example (Cont’d): u1 = u2 = u3 = 0, u5 = u4 (frozen bits) g total number of inactivations during a decoding attempt

BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) ? ? ? ?

  • u1 = 0

u2 = 0 u3 = 0 u4 = info u5 = u4 u6 = info u7 = info u8 = info

slide-21
SLIDE 21

Page 7/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

Successive Cancellation Inactivation Decoding

Example (Cont’d): u1 = u2 = u3 = 0, u5 = u4 (frozen bits) g total number of inactivations during a decoding attempt

BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) ? ? ? ?

  • ˆ

u1 = 0 (frozen) ˆ u1 = ? ? ? ? ? ? ? ?

slide-22
SLIDE 22

Page 7/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

Successive Cancellation Inactivation Decoding

Example (Cont’d): u1 = u2 = u3 = 0, u5 = u4 (frozen bits) g total number of inactivations during a decoding attempt

BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) ? ? ? ?

  • ˆ

u1 = 0 g = 0 ˆ u2 = 0 (frozen) ˆ u2 = ? ? ? ? ? ? ?

slide-23
SLIDE 23

Page 7/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

Successive Cancellation Inactivation Decoding

Example (Cont’d): u1 = u2 = u3 = 0, u5 = u4 (frozen bits) g total number of inactivations during a decoding attempt

BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) ? ? ? ?

  • ˆ

u1 = 0 ˆ u2 = 0 g = 0 ˆ u3 = 0 (frozen) ˆ u3 = ? ? ? ? ? ?

slide-24
SLIDE 24

Page 7/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

Successive Cancellation Inactivation Decoding

Example (Cont’d): u1 = u2 = u3 = 0, u5 = u4 (frozen bits) g total number of inactivations during a decoding attempt

BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) ? ? ? ?

  • ˆ

u1 = 0 ˆ u2 = 0 ˆ u3 = 0 g = 0 ˆ u4 = ? ? ? ? ?

slide-25
SLIDE 25

Page 7/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

Successive Cancellation Inactivation Decoding

Example (Cont’d): u1 = u2 = u3 = 0, u5 = u4 (frozen bits) g total number of inactivations during a decoding attempt

BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) ? ? ? ?

  • ˆ

u1 = 0 ˆ u2 = 0 ˆ u3 = 0 g = 0 ˆ u4 = x ? ? ? ?

slide-26
SLIDE 26

Page 7/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

Successive Cancellation Inactivation Decoding

Example (Cont’d): u1 = u2 = u3 = 0, u5 = u4 (frozen bits) g total number of inactivations during a decoding attempt

BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) ? ? ? ?

  • ˆ

u1 = 0 ˆ u2 = 0 ˆ u3 = 0 ˆ u4 = x g = 1 ˆ u5 = ˆ u4 (frozen) ˆ u5 = 0 ? ? ?

slide-27
SLIDE 27

Page 7/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

Successive Cancellation Inactivation Decoding

Example (Cont’d): u1 = u2 = u3 = 0, u5 = u4 (frozen bits) g total number of inactivations during a decoding attempt

BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) ? ? ? ?

  • ˆ

u1 = 0 ˆ u2 = 0 ˆ u3 = 0 ˆ u4 = x ˆ u5 = 0 x = 0 g = 1 ˆ u6 = 0 ? ?

slide-28
SLIDE 28

Page 7/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

Successive Cancellation Inactivation Decoding

Example (Cont’d): u1 = u2 = u3 = 0, u5 = u4 (frozen bits) g total number of inactivations during a decoding attempt

BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) ? ? ? ?

  • ˆ

u1 = 0 ˆ u2 = 0 ˆ u3 = 0 ˆ u4 = x ˆ u5 = 0 x = 0 ˆ u6 = 0 g = 1 ˆ u7 = 0 ?

slide-29
SLIDE 29

Page 7/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

Successive Cancellation Inactivation Decoding

Example (Cont’d): u1 = u2 = u3 = 0, u5 = u4 (frozen bits) g total number of inactivations during a decoding attempt

BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) ? ? ? ?

  • ˆ

u1 = 0 ˆ u2 = 0 ˆ u3 = 0 ˆ u4 = x ˆ u5 = 0 x = 0 ˆ u6 = 0 ˆ u7 = 0 g = 1 ˆ u8 = 0

slide-30
SLIDE 30

Page 7/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

Successive Cancellation Inactivation Decoding

Example (Cont’d): u1 = u2 = u3 = 0, u5 = u4 (frozen bits) g total number of inactivations during a decoding attempt

BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) ? ? ? ?

  • ˆ

u1 = 0 ˆ u2 = 0 ˆ u3 = 0 ˆ u4 = x ˆ u5 = 0 x = 0 ˆ u6 = 0 ˆ u7 = 0 ˆ u8 = 0 g = 1

slide-31
SLIDE 31

Page 8/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

Successive Cancellation Inactivation Decoding

Assume that the SC inactivation decoder inactivates g bits in total during

a decoding attempt

The final step of SC inactivation decoding is to solve a system of linear

equations in g unknowns

This will have a unique solution only if the equations obtained from frozen

bits have rank g

slide-32
SLIDE 32

Page 9/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

SC Inactivation Decoding with Consolidations

An inactivated bit may be resolved right after decoding a frozen bit

whenever it provides an informative equation

  • This event is referred to as consolidation
slide-33
SLIDE 33

Page 9/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

SC Inactivation Decoding with Consolidations

An inactivated bit may be resolved right after decoding a frozen bit

whenever it provides an informative equation

  • This event is referred to as consolidation

The SC inactivation decoder with consolidations mimics the path pruning

stage of SCL decoding

slide-34
SLIDE 34

Page 10/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

SC Inactivation Decoding with Consolidations

Example (Cont’d): u1 = u2 = u3 = 0, u5 = u4 (frozen bits) gi number of unresolved inactivations at i-th decoding stage

BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) ? ? ? ?

  • u1 = 0

u2 = 0 u3 = 0 u4 = info u5 = u4 u6 = info u7 = info u8 = info

slide-35
SLIDE 35

Page 10/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

SC Inactivation Decoding with Consolidations

Example (Cont’d): u1 = u2 = u3 = 0, u5 = u4 (frozen bits) gi number of unresolved inactivations at i-th decoding stage

BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) ? ? ? ?

  • ˆ

u1 = 0 (frozen) ˆ u1 = ? ? ? ? ? ? ? ?

slide-36
SLIDE 36

Page 10/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

SC Inactivation Decoding with Consolidations

Example (Cont’d): u1 = u2 = u3 = 0, u5 = u4 (frozen bits) gi number of unresolved inactivations at i-th decoding stage

BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) ? ? ? ?

  • ˆ

u1 = 0 g1 = 0 ˆ u2 = 0 (frozen) ˆ u2 = ? ? ? ? ? ? ?

slide-37
SLIDE 37

Page 10/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

SC Inactivation Decoding with Consolidations

Example (Cont’d): u1 = u2 = u3 = 0, u5 = u4 (frozen bits) gi number of unresolved inactivations at i-th decoding stage

BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) ? ? ? ?

  • ˆ

u1 = 0 ˆ u2 = 0 g2 = 0 ˆ u3 = 0 (frozen) ˆ u3 = ? ? ? ? ? ?

slide-38
SLIDE 38

Page 10/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

SC Inactivation Decoding with Consolidations

Example (Cont’d): u1 = u2 = u3 = 0, u5 = u4 (frozen bits) gi number of unresolved inactivations at i-th decoding stage

BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) ? ? ? ?

  • ˆ

u1 = 0 ˆ u2 = 0 ˆ u3 = 0 g3 = 0 ˆ u4 =? ? ? ? ?

slide-39
SLIDE 39

Page 10/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

SC Inactivation Decoding with Consolidations

Example (Cont’d): u1 = u2 = u3 = 0, u5 = u4 (frozen bits) gi number of unresolved inactivations at i-th decoding stage

BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) ? ? ? ?

  • ˆ

u1 = 0 ˆ u2 = 0 ˆ u3 = 0 g3 = 0 ˆ u4 = x ? ? ? ?

slide-40
SLIDE 40

Page 10/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

SC Inactivation Decoding with Consolidations

Example (Cont’d): u1 = u2 = u3 = 0, u5 = u4 (frozen bits) gi number of unresolved inactivations at i-th decoding stage

BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) ? ? ? ?

  • ˆ

u1 = 0 ˆ u2 = 0 ˆ u3 = 0 ˆ u4 = x g4 = 1 ˆ u5 = ˆ u4 (frozen) ˆ u5 = 0 ? ? ?

slide-41
SLIDE 41

Page 10/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

SC Inactivation Decoding with Consolidations

Example (Cont’d): u1 = u2 = u3 = 0, u5 = u4 (frozen bits) gi number of unresolved inactivations at i-th decoding stage

BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) ? ? ? ?

  • ˆ

u1 = 0 ˆ u2 = 0 ˆ u3 = 0 ˆ u4 = 0 ˆ u5 = 0 g5 = 0 ˆ u6 = 0 ? ?

slide-42
SLIDE 42

Page 10/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

SC Inactivation Decoding with Consolidations

Example (Cont’d): u1 = u2 = u3 = 0, u5 = u4 (frozen bits) gi number of unresolved inactivations at i-th decoding stage

BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) ? ? ? ?

  • ˆ

u1 = 0 ˆ u2 = 0 ˆ u3 = 0 ˆ u4 = 0 ˆ u5 = 0 ˆ u6 = 0 g6 = 0 ˆ u7 = 0 ?

slide-43
SLIDE 43

Page 10/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

SC Inactivation Decoding with Consolidations

Example (Cont’d): u1 = u2 = u3 = 0, u5 = u4 (frozen bits) gi number of unresolved inactivations at i-th decoding stage

BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) ? ? ? ?

  • ˆ

u1 = 0 ˆ u2 = 0 ˆ u3 = 0 ˆ u4 = 0 ˆ u5 = 0 ˆ u6 = 0 ˆ u7 = 0 g7 = 0 ˆ u8 = 0

slide-44
SLIDE 44

Page 10/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

SC Inactivation Decoding with Consolidations

Example (Cont’d): u1 = u2 = u3 = 0, u5 = u4 (frozen bits) gi number of unresolved inactivations at i-th decoding stage

BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) BEC(0.5) ? ? ? ?

  • ˆ

u1 = 0 ˆ u2 = 0 ˆ u3 = 0 ˆ u4 = 0 ˆ u5 = 0 ˆ u6 = 0 ˆ u7 = 0 ˆ u8 = 0 g8 = 0

slide-45
SLIDE 45

Page 11/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

Expected Number of Inactivations for ML Decoding

Corollary Let G be a r.v. equal to the total number of inactivations made by the decoder during a decoding attempt. Then, E[G] =

i∈A ǫi.

  • 11B. Li, H. Shen, and D. Tse, “A RM-polar codes,” arXiv, Jul. 2014.
  • 12M. Mondelli, S. H. Hassani, and R. L. Urbanke, “From polar to Reed-Muller codes: A technique to improve the finite-length

performance,” T-COM, Sep. 2014.

slide-46
SLIDE 46

Page 11/19

  • M. C. Coşkun · · Successive Cancellation Inactivation Decoding

Expected Number of Inactivations for ML Decoding

Corollary Let G be a r.v. equal to the total number of inactivations made by the decoder during a decoding attempt. Then, E[G] =

i∈A ǫi.

The performance improvement under ML decoding when interpolating

from polar to RM codes is driven by the weight spectrum improvement, e.g., the minimum distance increases.11 12

  • This comes at the cost of a higher ML decoding complexity

The quantity E[G] quantifies this complexity increase

  • 11B. Li, H. Shen, and D. Tse, “A RM-polar codes,” arXiv, Jul. 2014.
  • 12M. Mondelli, S. H. Hassani, and R. L. Urbanke, “From polar to Reed-Muller codes: A technique to improve the finite-length

performance,” T-COM, Sep. 2014.

slide-47
SLIDE 47

Outline

Introduction Preliminaries Successive Cancellation Inactivation Decoding Numerical Results Conclusions

slide-48
SLIDE 48

Page 12/19

  • M. C. Coşkun · · Numerical Results

Analyzed Codes

We first consider the following codes with parameters (n = 128, k = 64):

  • 1. A polar code designed for ǫ = 0.4
  • 2. The RM code
  • 3. The eBCH code
  • 4. A uniform random linear code: A = {1, 2, . . . , 64}, where each frozen bit

is a uniform random linear combination of bits ui, i ∈ A

slide-49
SLIDE 49

Page 13/19

  • M. C. Coşkun · · Numerical Results

(128, 64) Codes - Performance

0.2 0.25 0.3 0.35 0.4 0.45 0.5 10−6 10−5 10−4 10−3 10−2 10−1 100 Erasure Probability ǫ BLER Berlekamp’s Random Coding Bound (BRCB) Singleton Bound (SB)

slide-50
SLIDE 50

Page 13/19

  • M. C. Coşkun · · Numerical Results

(128, 64) Codes - Performance

0.2 0.25 0.3 0.35 0.4 0.45 0.5 10−6 10−5 10−4 10−3 10−2 10−1 100 Erasure Probability ǫ BLER polar RM eBCH random BRCB SB

slide-51
SLIDE 51

Page 14/19

  • M. C. Coşkun · · Numerical Results

(128, 64) Codes - Expected Number of Inactivations E[G]

0.2 0.25 0.3 0.35 0.4 0.45 0.5 3 6 9 12 15 Erasure Probability ǫ Inactivations E[G] E[GeBCH] E[GRM] E[Gpolar]

slide-52
SLIDE 52

Page 15/19

  • M. C. Coşkun · · Numerical Results

(128, 64) Codes - Expected Number of Unresolved Inactivations E[Gi] for BEC(ǫ = 0.4)

10 20 30 40 50 60 70 80 90 100 110 120 1 2 3 4 5 6 7 8 9 10 Decoding stage i Unresolved Inactivations E[Gi] (128, 64) eBCH (128, 64) RM (128, 64) polar

110 120

slide-53
SLIDE 53

Page 16/19

  • M. C. Coşkun · · Numerical Results

A Proposed Code

Since the (n = 128, k = 64) RM code provides a good complexity performance trade-off, we propose a variant of it:

d-RM code

  • Adopt the A of the RM code
  • Set each frozen bit to a random linear combination of all previous

information bit(s)

  • 2E. Arıkan, “From sequential decoding to Channel Polarization and Back Again,” Shannon Lecture, Jun. 2019.
  • 13H. Yao, A. Fazeli, A. Vardy, “List Decoding of Arıkan’s PAC Codes,” ISIT, Jun. 2020.
  • 14M. Rowshan, A. Burg, E. Viterbo, “Polarization-adjusted convolutional codes: Fano decoding vs list decoding,” ISIT, Jun.

2020.

slide-54
SLIDE 54

Page 16/19

  • M. C. Coşkun · · Numerical Results

A Proposed Code

Since the (n = 128, k = 64) RM code provides a good complexity performance trade-off, we propose a variant of it:

d-RM code

  • Adopt the A of the RM code
  • Set each frozen bit to a random linear combination of all previous

information bit(s)

Note the similarity of the Arıkan’s PAC code2 and d-RM code:

  • PAC codes are defined by a information index set A and an upper-triangular

Toeplitz matrix T

  • 2E. Arıkan, “From sequential decoding to Channel Polarization and Back Again,” Shannon Lecture, Jun. 2019.
  • 13H. Yao, A. Fazeli, A. Vardy, “List Decoding of Arıkan’s PAC Codes,” ISIT, Jun. 2020.
  • 14M. Rowshan, A. Burg, E. Viterbo, “Polarization-adjusted convolutional codes: Fano decoding vs list decoding,” ISIT, Jun.

2020.

slide-55
SLIDE 55

Page 16/19

  • M. C. Coşkun · · Numerical Results

A Proposed Code

Since the (n = 128, k = 64) RM code provides a good complexity performance trade-off, we propose a variant of it:

d-RM code

  • Adopt the A of the RM code
  • Set each frozen bit to a random linear combination of all previous

information bit(s)

Note the similarity of the Arıkan’s PAC code2 and d-RM code:

  • PAC codes are defined by a information index set A and an upper-triangular

Toeplitz matrix T

  • PAC codes are polar codes with dynamic frozen bits, where information

index set is A (Arıkan chooses A of the RM code) and dynamic frozen bits are specified by T 13 14

  • 2E. Arıkan, “From sequential decoding to Channel Polarization and Back Again,” Shannon Lecture, Jun. 2019.
  • 13H. Yao, A. Fazeli, A. Vardy, “List Decoding of Arıkan’s PAC Codes,” ISIT, Jun. 2020.
  • 14M. Rowshan, A. Burg, E. Viterbo, “Polarization-adjusted convolutional codes: Fano decoding vs list decoding,” ISIT, Jun.

2020.

slide-56
SLIDE 56

Page 17/19

  • M. C. Coşkun · · Numerical Results

(128, 64) Codes - Performance

0.2 0.25 0.3 0.35 0.4 0.45 0.5 10−6 10−5 10−4 10−3 10−2 10−1 100 Erasure Probability ǫ BLER RM d-RM BRCB SB

slide-57
SLIDE 57

Page 18/19

  • M. C. Coşkun · · Numerical Results

(512, 256) Codes - Performance

0.37 0.38 0.39 0.4 0.41 0.42 0.43 0.44 0.45 0.46 0.47 0.48 0.49 0.5 10−7 10−6 10−5 10−4 10−3 10−2 10−1 100 Erasure Probability ǫ BLER RM d-RM BRCB SB

slide-58
SLIDE 58

Outline

Introduction Preliminaries Successive Cancellation Inactivation Decoding Numerical Results Conclusions

slide-59
SLIDE 59

Page 19/19

  • M. C. Coşkun · · Conclusions

Summary

An inactivation decoder is proposed using the schedule of the SC decoding

for transmisson over the BEC

Using density evolution, the expected number of inactivations is computed

analytically

The expected number of unresolved inactivations quantifies the

performance vs. complexity trade-off for the SC inactivation or SCL decoder to achieve ML decoding performance

  • 15M. C. Coşkun, H. D. Pfister, “Bounds on the list size of successive cancellation list decoding,” SPCOM, Jul. 2020.
slide-60
SLIDE 60

Page 19/19

  • M. C. Coşkun · · Conclusions

Summary

An inactivation decoder is proposed using the schedule of the SC decoding

for transmisson over the BEC

Using density evolution, the expected number of inactivations is computed

analytically

The expected number of unresolved inactivations quantifies the

performance vs. complexity trade-off for the SC inactivation or SCL decoder to achieve ML decoding performance

Future work: Can we generalize the analysis for the SCL decoder over

general BMS channels? Does the analysis also help for code design?15

  • 15M. C. Coşkun, H. D. Pfister, “Bounds on the list size of successive cancellation list decoding,” SPCOM, Jul. 2020.