 146

# Polar Coding Tutorial · 2017-07-19 · Polarization Encoding Decoding Construction Performance Polar Coding Tutorial Erdal Arıkan Electrical-Electronics Engineering Department Bilkent

Jun 20, 2018

## Documents

hoangtu

• Polarization Encoding Decoding Construction Performance

Polar Coding Tutorial

Erdal Arkan

Electrical-Electronics Engineering DepartmentBilkent UniversityAnkara, Turkey

Jan. 15, 2015Simons InstituteUC Berkeley

• Polarization Encoding Decoding Construction Performance

The channel

Let W : X Y be a binary-input discrete memoryless channel

WX Y

input alphabet: X = {0, 1},

output alphabet: Y,

transition probabilities:

W (y |x), x X , y Y

• Polarization Encoding Decoding Construction Performance

The channel

Let W : X Y be a binary-input discrete memoryless channel

WX Y

input alphabet: X = {0, 1},

output alphabet: Y,

transition probabilities:

W (y |x), x X , y Y

• Polarization Encoding Decoding Construction Performance

The channel

Let W : X Y be a binary-input discrete memoryless channel

WX Y

input alphabet: X = {0, 1},

output alphabet: Y,

transition probabilities:

W (y |x), x X , y Y

• Polarization Encoding Decoding Construction Performance

The channel

Let W : X Y be a binary-input discrete memoryless channel

WX Y

input alphabet: X = {0, 1},

output alphabet: Y,

transition probabilities:

W (y |x), x X , y Y

• Polarization Encoding Decoding Construction Performance

Symmetry assumption

Assume that the channel has input-output symmetry.

• Polarization Encoding Decoding Construction Performance

Symmetry assumption

Assume that the channel has input-output symmetry.

Examples:

1

1

1

0

1

0

BSC()

• Polarization Encoding Decoding Construction Performance

Symmetry assumption

Assume that the channel has input-output symmetry.

Examples:

1

1

1

0

1

0

BSC()

1

1

1

0

1

0

?

BEC()

• Polarization Encoding Decoding Construction Performance

Capacity

For channels with input-output symmetry, the capacity is given by

C (W )= I (X ;Y ), with X unif. {0, 1}

• Polarization Encoding Decoding Construction Performance

Capacity

For channels with input-output symmetry, the capacity is given by

C (W )= I (X ;Y ), with X unif. {0, 1}

Use base-2 logarithms:

0 C (W ) 1

• Polarization Encoding Decoding Construction Performance

The main idea

Channel coding problem trivial for two types of channels Perfect: C (W ) = 1 Useless: C (W ) = 0

Transform ordinary W into such extreme channels

• Polarization Encoding Decoding Construction Performance

The main idea

Channel coding problem trivial for two types of channels Perfect: C (W ) = 1 Useless: C (W ) = 0

Transform ordinary W into such extreme channels

• Polarization Encoding Decoding Construction Performance

The main idea

Channel coding problem trivial for two types of channels Perfect: C (W ) = 1 Useless: C (W ) = 0

Transform ordinary W into such extreme channels

• Polarization Encoding Decoding Construction Performance

The main idea

Channel coding problem trivial for two types of channels Perfect: C (W ) = 1 Useless: C (W ) = 0

Transform ordinary W into such extreme channels

• Polarization Encoding Decoding Construction Performance

The method: aggregate and redistribute capacity

W

W

b

b

b

W

Original channels(uniform)

• Polarization Encoding Decoding Construction Performance

The method: aggregate and redistribute capacity

W

W

b

b

b

W

Original channels(uniform)

Wvec

Vectorchannel

Combine

• Polarization Encoding Decoding Construction Performance

The method: aggregate and redistribute capacity

W

W

b

b

b

W

Original channels(uniform)

Wvec

Vectorchannel

Combine

WN

WN1

b

b

b

W1

Split

New channels(polarized)

• Polarization Encoding Decoding Construction Performance

Combining

Begin with N copies of W ,

use a 1-1 mapping

GN : {0, 1}N {0, 1}N

to create a vector channel

Wvec : UN Y N

W

W

WXN

X2

X1

YN

Y2

Y1

• Polarization Encoding Decoding Construction Performance

Combining

Begin with N copies of W ,

use a 1-1 mapping

GN : {0, 1}N {0, 1}N

to create a vector channel

Wvec : UN Y N

W

W

WXN

X2

X1

YN

Y2

Y1

GN

UN

U2

U1

• Polarization Encoding Decoding Construction Performance

Combining

Begin with N copies of W ,

use a 1-1 mapping

GN : {0, 1}N {0, 1}N

to create a vector channel

Wvec : UN Y N

W

W

WXN

X2

X1

YN

Y2

Y1

GN

UN

U2

U1

Wvec

• Polarization Encoding Decoding Construction Performance

Conservation of capacity

Combining operation is lossless:

Take U1, . . . ,UN i.i.d. unif. {0, 1}

then, X1, . . . ,XN i.i.d. unif. {0, 1}

and

C (Wvec) = I (UN ;Y N)

= I (XN ;Y N)

= NC (W )

W

W

W

GN

XN

X2

X1

YN

Y2

Y1

UN

U2

U1

Wvec

• Polarization Encoding Decoding Construction Performance

Conservation of capacity

Combining operation is lossless:

Take U1, . . . ,UN i.i.d. unif. {0, 1}

then, X1, . . . ,XN i.i.d. unif. {0, 1}

and

C (Wvec) = I (UN ;Y N)

= I (XN ;Y N)

= NC (W )

W

W

W

GN

XN

X2

X1

YN

Y2

Y1

UN

U2

U1

Wvec

• Polarization Encoding Decoding Construction Performance

Conservation of capacity

Combining operation is lossless:

Take U1, . . . ,UN i.i.d. unif. {0, 1}

then, X1, . . . ,XN i.i.d. unif. {0, 1}

and

C (Wvec) = I (UN ;Y N)

= I (XN ;Y N)

= NC (W )

W

W

W

GN

XN

X2

X1

YN

Y2

Y1

UN

U2

U1

Wvec

• Polarization Encoding Decoding Construction Performance

Splitting

C (Wvec) = I (UN ;Y N)

Wvec

UN

Ui+1

Ui

Ui1

U1

YN

Yi

Y1

• Polarization Encoding Decoding Construction Performance

Splitting

C (Wvec) = I (UN ;Y N)

=N

i=1

I (Ui ;YN ,U i1)

Wvec

UN

Ui+1

Ui

Ui1

U1

YN

Yi

Y1

• Polarization Encoding Decoding Construction Performance

Splitting

C (Wvec) = I (UN ;Y N)

=N

i=1

I (Ui ;YN ,U i1)

Define bit-channels

Wi : Ui (YN ,U i1)

Wvec

UN

Ui+1

Ui

Ui1

U1

U1

Ui1

YN

Yi

Y1

Wi

• Polarization Encoding Decoding Construction Performance

Splitting

C (Wvec) = I (UN ;Y N)

=N

i=1

I (Ui ;YN ,U i1)

=N

i=1

C (Wi )

Define bit-channels

Wi : Ui (YN ,U i1)

Wvec

UN

Ui+1

Ui

Ui1

U1

U1

Ui1

YN

Yi

Y1

Wi

• Polarization Encoding Decoding Construction Performance

Polarization is commonplace

Polarization is the rule not theexception

A random permutation

GN : {0, 1}N {0, 1}N

is a good polarizer with highprobability

Equivalent to Shannons randomcoding approach

W

W

W

GN

XN

X2

X1

YN

Y2

Y1

UN

U2

U1

• Polarization Encoding Decoding Construction Performance

Polarization is commonplace

Polarization is the rule not theexception

A random permutation

GN : {0, 1}N {0, 1}N

is a good polarizer with highprobability

Equivalent to Shannons randomcoding approach

W

W

W

GN

XN

X2

X1

YN

Y2

Y1

UN

U2

U1

• Polarization Encoding Decoding Construction Performance

Polarization is commonplace

Polarization is the rule not theexception

A random permutation

GN : {0, 1}N {0, 1}N

is a good polarizer with highprobability

Equivalent to Shannons randomcoding approach

W

W

W

GN

XN

X2

X1

YN

Y2

Y1

UN

U2

U1

• Polarization Encoding Decoding Construction Performance

Random polarizers: stepwise, isotropic

5 10 15 20 25 300

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Bit channel index

Cap

acity

• Polarization Encoding Decoding Construction Performance

Random polarizers: stepwise, isotropic

5 10 15 20 25 300

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Bit channel index

Cap

acity

Isotropy: any redistribution order is as good as any other.

• Polarization Encoding Decoding Construction Performance

The complexity issue

Random polarizers lack structure, too complex to implement

Need a low-complexity polarizer

May sacrifice stepwise, isotropic properties of randompolarizers in return for less complexity

• Polarization Encoding Decoding Construction Performance

The complexity issue

Random polarizers lack structure, too complex to implement

Need a low-complexity polarizer

May sacrifice stepwise, isotropic properties of randompolarizers in return for less complexity

• Polarization Encoding Decoding Construction Performance

The complexity issue

Random polarizers lack structure, too complex to implement

Need a low-complexity polarizer

May sacrifice stepwise, isotropic properties of randompolarizers in return for less complexity

• Polarization Encoding Decoding Construction Performance

Basic module for a low-complexity scheme

Combine two copies of W

W

W

Y2

Y1

X2

X1

• Polarization Encoding Decoding Construction Performance

Basic module for a low-complexity scheme

Combine two copies of W

+

U2

U1

G2

W

W

Y2

Y1

X2

X1

• Polarization Encoding Decoding Construction Performance

Basic module for a low-complexity scheme

Combine two copies of W

+

U2

U1

G2

W

W

Y2

Y1

X2

X1

and split to create two bit-channels

W1 : U1 (Y1,Y2)

W2 : U2 (Y1,Y2,U1)

• Polarization Encoding Decoding Construction Performance

The first bit-channel W1

W1 : U1 (Y1,Y2)

+

random U2

U1

W

W

Y2

Y1

• Polarization Encoding Decoding Construction Performance

The first bit-channel W1

W1 : U1 (Y1,Y2)

+

random U2

U1

W

W

Y2

Y1

C (W1) = I (U1;Y1,Y2)

• Polarization Encoding Decoding Construction Performance

The second bit-channel W2

W2 : U2 (Y1,Y2,U1)

+

U2

U1

W

W

Y2

Y1

• Polarization Encoding Decoding Construction Performance

The second bit-channel W2

W2 : U2 (Y1,Y2,U1)

+

U2

U1

W

W

Y2

Y1

C (W2) = I (U2;Y1,Y2,U1)

• Polarization Encoding Decoding Construction Performance

Capacity conserved but redistributed unevenly

+

U2

U1

W

W

Y2

Y1

X2

X1

Conservation:

C (W1) + C (W2) = 2C (W )

Extremization:

C (W1) C (W ) C (W2)

with equality iff C (W ) equals 0 or 1.

• Polarization Encoding Decoding Construction Performance

Capacity conserved but redistributed unevenly

+

U2

U1

W

W

Y2

Y1

X2

X1

Conservation:

C (W1) + C (W2) = 2C (W )

Extremization:

C (W1) C (W ) C (W2)

with equality iff C (W ) equals 0 or 1.

• Polarization Encoding Decoding Construction Performance

Notation

The two channels created by the basic transform

(W ,W ) (W1,W2)

will be denoted also as

W = W1 and W+ = W2

• Polarization Encoding Decoding Construction Performance

Notation

The two channels created by the basic transform

(W ,W ) (W1,W2)

will be denoted also as

W = W1 and W+ = W2

Likewise, we write W, W+ for descendants of W; and W+,W++ for descendants of W+.

• Polarization Encoding Decoding Construction Performance

For the size-4 construction

+

W

W

• Polarization Encoding Decoding Construction Performance

... duplicate the basic transform

+

+

W

W

W

W

• Polarization Encoding Decoding Construction Performance

... obtain a pair of W and W + each

W+

W+

W

W

• Polarization Encoding Decoding Construction Performance

... apply basic transform on each pair

+

+

W+

W+

W

W

• Polarization Encoding Decoding Construction Performance

... decode in the indicated order

+

+

W+

W+

W

W

U4

U2

U3

U1

• Polarization Encoding Decoding Construction Performance

... obtain the four new bit-channels

W++

W+

W+

W

U4

U2

U3

U1

• Polarization Encoding Decoding Construction Performance

Overall size-4 construction

+

+

+

+

W

W

W

W

U4

U2

U3

U1

Y4

Y2

Y3

Y1

X4

X2

X3

X1

• Polarization Encoding Decoding Construction Performance

Rewire for standard-form size-4 construction

+

+

+

+

W

W

W

W

U4

U3

U2

U1

Y4

Y3

Y2

Y1

X4

X3

X2

X1

• Polarization Encoding Decoding Construction Performance

Size 8 construction

+

+

+

+

+

+

+

+

+

+

+

+

W

W

W

W

W

W

W

W

Y8

Y7

Y6

Y5

Y4

Y3

Y2

Y1

U8

U7

U6

U5

U4

U3

U2

U1

X8

X7

X6

X5

X4

X3

X2

X1

• Polarization Encoding Decoding Construction Performance

Demonstration of polarization

Polarization is easy to analyze when W is a BEC.

If W is a BEC(), then so are W

and W+, with erasure probabili-ties

= 2 2

and+

= 2

respectively.1

1

1

0

1

0

?

W

• Polarization Encoding Decoding Construction Performance

Demonstration of polarization

Polarization is easy to analyze when W is a BEC.

If W is a BEC(), then so are W

and W+, with erasure probabili-ties

= 2 2

and+

= 2

respectively.1

1

1

0

1

0

?

W

• Polarization Encoding Decoding Construction Performance

Demonstration of polarization

Polarization is easy to analyze when W is a BEC.

If W is a BEC(), then so are W

and W+, with erasure probabili-ties

= 2 2

and+

= 2

respectively.1 +

1 +

+

+

1

0

1

0

?

W+

• Polarization Encoding Decoding Construction Performance

Polarization for BEC(12): N = 16

2 4 6 8 10 12 14 160

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Bit channel index

Cap

acity

Capacity of bit channels

N=16

• Polarization Encoding Decoding Construction Performance

Polarization for BEC(12): N = 32

5 10 15 20 25 300

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Bit channel index

Cap

acity

Capacity of bit channels

N=32

• Polarization Encoding Decoding Construction Performance

Polarization for BEC(12): N = 64

10 20 30 40 50 600

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Bit channel index

Cap

acity

Capacity of bit channels

N=64

• Polarization Encoding Decoding Construction Performance

Polarization for BEC(12): N = 128

20 40 60 80 100 1200

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Bit channel index

Cap

acity

Capacity of bit channels

N=128

• Polarization Encoding Decoding Construction Performance

Polarization for BEC(12): N = 256

50 100 150 200 2500

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Bit channel index

Cap

acity

Capacity of bit channels

N=256

• Polarization Encoding Decoding Construction Performance

Polarization for BEC(12): N = 512

50 100 150 200 250 300 350 400 450 5000

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Bit channel index

Cap

acity

Capacity of bit channels

N=512

• Polarization Encoding Decoding Construction Performance

Polarization for BEC(12): N = 1024

100 200 300 400 500 600 700 800 900 10000

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

Bit channel index

Cap

acity

Capacity of bit channels

N=1024

• Polarization Encoding Decoding Construction Performance

Polarization martingale

0

1

C(W )

• Polarization Encoding Decoding Construction Performance

Polarization martingale

0

1

1

C(W )

C(W2)

C(W1)

• Polarization Encoding Decoding Construction Performance

Polarization martingale

0

1

1 22

C(W )

C(W2)

C(W1)

C(W++)

C(W+)

C(W+)

C(W)

• Polarization Encoding Decoding Construction Performance

Polarization martingale

0

1

1 22

C(W )

C(W2)

C(W1)

C(W++)

C(W+)

C(W+)

C(W)

• Polarization Encoding Decoding Construction Performance

Polarization martingale

0

1

1 22 3333

C(W )

C(W2)

C(W1)

C(W++)

C(W+)

C(W+)

C(W)

• Polarization Encoding Decoding Construction Performance

Polarization martingale

0

1

1 22 3333 44444444

C(W )

C(W2)

C(W1)

C(W++)

C(W+)

C(W+)

C(W)

• Polarization Encoding Decoding Construction Performance

Polarization martingale

0

1

1 22 3333 44444444 5555555555555555

C(W )

C(W2)

C(W1)

C(W++)

C(W+)

C(W+)

C(W)

• Polarization Encoding Decoding Construction Performance

Polarization martingale

0

1

1 22 3333 44444444 5555555555555555 66666666666666666666666666666666

C(W )

C(W2)

C(W1)

C(W++)

C(W+)

C(W+)

C(W)

• Polarization Encoding Decoding Construction Performance

Polarization martingale

0

1

1 22 3333 44444444 5555555555555555 66666666666666666666666666666666 7777777777777777777777777777777777777777777777777777777777777777

C(W )

C(W2)

C(W1)

C(W++)

C(W+)

C(W+)

C(W)

• Polarization Encoding Decoding Construction Performance

Polarization martingale

0

1

1 22 3333 44444444 5555555555555555 66666666666666666666666666666666 7777777777777777777777777777777777777777777777777777777777777777 88888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888888

C(W )

C(W2)

C(W1)

C(W++)

C(W+)

C(W+)

C(W)

• Polarization Encoding Decoding Construction Performance

Theorem (Polarization, A. 2007)

The bit-channel capacities {C (Wi )} polarize: for any (0, 1), as the construction size N grows

[

no. channels with C (Wi ) > 1

N

]

C (W )

and[

no. channels with C (Wi ) <

N

]

1 C (W )

Theorem (Rate of polarization, A. and Telatar (2008))

Above theorem holds with 2

N . 0

1

1

• Polarization Encoding Decoding Construction Performance

Theorem (Polarization, A. 2007)

The bit-channel capacities {C (Wi )} polarize: for any (0, 1), as the construction size N grows

[

no. channels with C (Wi ) > 1

N

]

C (W )

and[

no. channels with C (Wi ) <

N

]

1 C (W )

Theorem (Rate of polarization, A. and Telatar (2008))

Above theorem holds with 2

N . 0

1

1

• Polarization Encoding Decoding Construction Performance

Polar code example: W = BEC(12), N = 8, rate 1/2

I (Wi )

0.0039

0.1211

0.1914

0.6836

0.3164

0.8086

0.8789

0.9961

+

+

+

+

+

+

+

+

+

+

+

+

W

W

W

W

W

W

W

W

Y8

Y7

Y6

Y5

Y4

Y3

Y2

Y1

U8

U7

U6

U5

U4

U3

U2

U1

• Polarization Encoding Decoding Construction Performance

Polar code example: W = BEC(12), N = 8, rate 1/2

I (Wi )

0.0039

0.1211

0.1914

0.6836

0.3164

0.8086

0.8789

0.9961

Rank

8

7

6

4

5

3

2

1

+

+

+

+

+

+

+

+

+

+

+

+

W

W

W

W

W

W

W

W

Y8

Y7

Y6

Y5

Y4

Y3

Y2

Y1

U8

U7

U6

U5

U4

U3

U2

U1

• Polarization Encoding Decoding Construction Performance

Polar code example: W = BEC(12), N = 8, rate 1/2

I (Wi )

0.0039

0.1211

0.1914

0.6836

0.3164

0.8086

0.8789

0.9961

Rank

8

7

6

4

5

3

2

1

+

+

+

+

+

+

+

+

+

+

+

+

W

W

W

W

W

W

W

W

Y8

Y7

Y6

Y5

Y4

Y3

Y2

Y1

U8

U7

U6

U5

U4

U3

U2

U1

data

• Polarization Encoding Decoding Construction Performance

Polar code example: W = BEC(12), N = 8, rate 1/2

I (Wi )

0.0039

0.1211

0.1914

0.6836

0.3164

0.8086

0.8789

0.9961

Rank

8

7

6

4

5

3

2

1

+

+

+

+

+

+

+

+

+

+

+

+

W

W

W

W

W

W

W

W

Y8

Y7

Y6

Y5

Y4

Y3

Y2

Y1

U8

U7

U6

U5

U4

U3

U2

U1

data

data

• Polarization Encoding Decoding Construction Performance

Polar code example: W = BEC(12), N = 8, rate 1/2

I (Wi )

0.0039

0.1211

0.1914

0.6836

0.3164

0.8086

0.8789

0.9961

Rank

8

7

6

4

5

3

2

1

+

+

+

+

+

+

+

+

+

+

+

+

W

W

W

W

W

W

W

W

Y8

Y7

Y6

Y5

Y4

Y3

Y2

Y1

U8

U7

U6

U5

U4

U3

U2

U1

data

data

data

• Polarization Encoding Decoding Construction Performance

Polar code example: W = BEC(12), N = 8, rate 1/2

I (Wi )

0.0039

0.1211

0.1914

0.6836

0.3164

0.8086

0.8789

0.9961

Rank

8

7

6

4

5

3

2

1

+

+

+

+

+

+

+

+

+

+

+

+

W

W

W

W

W

W

W

W

Y8

Y7

Y6

Y5

Y4

Y3

Y2

Y1

U8

U7

U6

U5

U4

U3

U2

U1

data

data

data

data

• Polarization Encoding Decoding Construction Performance

Polar code example: W = BEC(12), N = 8, rate 1/2

I (Wi )

0.0039

0.1211

0.1914

0.6836

0.3164

0.8086

0.8789

0.9961

Rank

8

7

6

4

5

3

2

1

+

+

+

+

+

+

+

+

+

+

+

+

W

W

W

W

W

W

W

W

Y8

Y7

Y6

Y5

Y4

Y3

Y2

Y1

U8

U7

U6

U5

U4

U3

U2

U1

data

data

data

frozen

data

frozen

frozen

frozen

• Polarization Encoding Decoding Construction Performance

Polar code example: W = BEC(12), N = 8, rate 1/2

I (Wi )

0.0039

0.1211

0.1914

0.6836

0.3164

0.8086

0.8789

0.9961

Rank

8

7

6

4

5

3

2

1

+

+

+

+

+

+

+

+

+

+

+

+

W

W

W

W

W

W

W

W

Y8

Y7

Y6

Y5

Y4

Y3

Y2

Y1

U8

U7

U6

0

U4

0

0

0

data

data

data

frozen

data

frozen

frozen

frozen

• Polarization Encoding Decoding Construction Performance

Encoding complexity

Theorem

Encoding complexity for polar coding is O(N logN).

Proof:

Polar coding transform can be represented as a graph withN[1 + log(N)] variables.

The graph has (1 + log(N)) levels with N variables at eachlevel.

Computation begins at the source level and can be carried outlevel by level.

Space complexity O(N), time complexity O(N logN).

• Polarization Encoding Decoding Construction Performance

Encoding complexity

Theorem

Encoding complexity for polar coding is O(N logN).

Proof:

Polar coding transform can be represented as a graph withN[1 + log(N)] variables.

The graph has (1 + log(N)) levels with N variables at eachlevel.

Computation begins at the source level and can be carried outlevel by level.

Space complexity O(N), time complexity O(N logN).

• Polarization Encoding Decoding Construction Performance

Encoding complexity

Theorem

Encoding complexity for polar coding is O(N logN).

Proof:

Polar coding transform can be represented as a graph withN[1 + log(N)] variables.

The graph has (1 + log(N)) levels with N variables at eachlevel.

Computation begins at the source level and can be carried outlevel by level.

Space complexity O(N), time complexity O(N logN).

• Polarization Encoding Decoding Construction Performance

Encoding complexity

Theorem

Encoding complexity for polar coding is O(N logN).

Proof:

Polar coding transform can be represented as a graph withN[1 + log(N)] variables.

The graph has (1 + log(N)) levels with N variables at eachlevel.

Computation begins at the source level and can be carried outlevel by level.

Space complexity O(N), time complexity O(N logN).

• Polarization Encoding Decoding Construction Performance

Encoding: an example

+

+

+

+

+

+

+

+

+

+

+

+

W

W

W

W

W

W

W

W

Y8

Y7

Y6

Y5

Y4

Y3

Y2

Y1

1

0

1

0

1

0

0

0

free

free

free

frozen

free

frozen

frozen

frozen

• Polarization Encoding Decoding Construction Performance

Encoding: an example

+

+

+

+

+

+

+

+

+

+

+

+

W

W

W

W

W

W

W

W

Y8

Y7

Y6

Y5

Y4

Y3

Y2

Y1

1

0

1

0

1

0

0

0

1

1

1

1

1

1

0

0

free

free

free

frozen

free

frozen

frozen

frozen

• Polarization Encoding Decoding Construction Performance

Encoding: an example

+

+

+

+

+

+

+

+

+

+

+

+

W

W

W

W

W

W

W

W

Y8

Y7

Y6

Y5

Y4

Y3

Y2

Y1

1

0

1

0

1

0

0

0

1

1

1

1

1

1

0

0

1

1

0

0

1

1

1

1

free

free

free

frozen

free

frozen

frozen

frozen

• Polarization Encoding Decoding Construction Performance

Encoding: an example

+

+

+

+

+

+

+

+

+

+

+

+

W

W

W

W

W

W

W

W

Y8

Y7

Y6

Y5

Y4

Y3

Y2

Y1

1

0

1

0

1

0

0

0

1

1

1

1

1

1

0

0

1

1

0

0

1

1

1

1

1

1

0

0

0

0

1

1

free

free

free

frozen

free

frozen

frozen

frozen

• Polarization Encoding Decoding Construction Performance

Successive Cancellation Decoding (SCD)

Theorem

The complexity of successive cancellation decoding for polar codesis O(N logN).

Proof: Given below.

• Polarization Encoding Decoding Construction Performance

SCD: Exploit the x = |a|a+ b| structure

+

+

+

+

+

+

+

+

+

+

+

+

W

W

W

W

W

W

W

W

y8

y7

y6

y5

y4

y3

y2

y1

u8

u7

u6

u5

u4

u3

u2

u1

x8

x7

x6

x5

x4

x3

x2

x1

a4

a3

a2

a1

b4

b3

b2

b1

• Polarization Encoding Decoding Construction Performance

First phase: treat a as noise, decode (u1, u2, u3, u4)

+

+

+

+

+

+

+

+

W

W

W

W

W

W

W

W

u4

u3

u2

u1

x8

x7

x6

x5

x4

x3

x2

x1

y8

y7

y6

y5

y4

y3

y2

y1

noise a4

noise a3

noise a2

noise a1

b4

b3

b2

b1

• Polarization Encoding Decoding Construction Performance

End of first phase

+

+

+

+

+

+

+

+

+

+

+

+

W

W

W

W

W

W

W

W

y8

y7

y6

y5

y4

y3

y2

y1

u8

u7

u6

u5

u4

u3

u2

u1

x8

x7

x6

x5

x4

x3

x2

x1

a4

a3

a2

a1

b4

b3

b2

b1

• Polarization Encoding Decoding Construction Performance

Second phase: Treat b as known, decode (u5, u6, u7, u8)

+

+

+

+

+

+

+

+

W

W

W

W

W

W

W

W

u8

u7

u6

u5

y8

y7

y6

y5

y4

y3

y2

y1

a4

a3

a2

a1

known b4

known b3

known b2

known b1

• Polarization Encoding Decoding Construction Performance

First phase in detail

+

+

+

+

+

+

+

+

W

W

W

W

W

W

W

W

u4

u3

u2

u1

x8

x7

x6

x5

x4

x3

x2

x1

y8

y7

y6

y5

y4

y3

y2

y1

noise a4

noise a3

noise a2

noise a1

b4

b3

b2

b1

• Polarization Encoding Decoding Construction Performance

Equivalent channel model

+

+

+

+

W

W

W

W

W

W

W

W

x8

x7

x6

x5

x4

x3

x2

x1

y8

y7

y6

y5

y4

y3

y2

y1

noise a4

noise a3

noise a2

noise a1

b4

b3

b2

b1

• Polarization Encoding Decoding Construction Performance

First copy of W

+

+

+

+

W

W

W

W

W

W

W

W

W

W

x8

x7

x6

x5

x4

x3

x2

x1

y8

y7

y6

y5

y4

y3

y2

y1

noise a4

noise a3

noise a2

noise a1

b4

b3

b2

b1

• Polarization Encoding Decoding Construction Performance

Second copy of W

+

+

+

+

W

W

W

W

W

W

W

W

W

W

x8

x7

x6

x5

x4

x3

x2

x1

y8

y7

y6

y5

y4

y3

y2

y1

noise a4

noise a3

noise a2

noise a1

b4

b3

b2

b1

• Polarization Encoding Decoding Construction Performance

Third copy of W

+

+

+

+

W

W

W

W

W

W

W

W

W

W

x8

x7

x6

x5

x4

x3

x2

x1

y8

y7

y6

y5

y4

y3

y2

y1

noise a4

noise a3

noise a2

noise a1

b4

b3

b2

b1

• Polarization Encoding Decoding Construction Performance

Fourth copy of W

+

+

+

+

W

W

W

W

W

W

W

W

W

W

x8

x7

x6

x5

x4

x3

x2

x1

y8

y7

y6

y5

y4

y3

y2

y1

noise a4

noise a3

noise a2

noise a1

b4

b3

b2

b1

• Polarization Encoding Decoding Construction Performance

Decoding on W

+

+

+

+

W

W

W

W

u4

u3

u2

u1

(y4, y8)

(y3, y7)

(y2, y6)

(y1, y5)

b4

b3

b2

b1

• Polarization Encoding Decoding Construction Performance

b = |t|t+w|

+

+

+

+

W

W

W

W

u4

u3

u2

u1

(y4, y8)

(y3, y7)

(y2, y6)

(y1, y5)

b4

b3

b2

b1

t2

t1

w2

w1

• Polarization Encoding Decoding Construction Performance

Decoding on W

+

W

W

u2

u1

(y2, y4, y6, y8)

(y1, y3, y5, y7)

w2

w1

• Polarization Encoding Decoding Construction Performance

Decoding on W

Wu1 (y1, y2, . . . , y8)

• Polarization Encoding Decoding Construction Performance

Decoding on W

Wu1 (y1, y2, . . . , y8)

Compute

L=

W(y1, . . . , y8 | u1 = 0)

W(y1, . . . , y8 | u1 = 1).

• Polarization Encoding Decoding Construction Performance

Decoding on W

Wu1 (y1, y2, . . . , y8)

Compute

L=

W(y1, . . . , y8 | u1 = 0)

W(y1, . . . , y8 | u1 = 1).

Set

u1 =

u1 if u1 is frozen

0 else if L > 0

1 else

• Polarization Encoding Decoding Construction Performance

Decoding on W

Wu1 (y1, y2, . . . , y8)

Compute

L=

W(y1, . . . , y8 | u1 = 0)

W(y1, . . . , y8 | u1 = 1).

Set

u1 =

u1 if u1 is frozen

0 else if L > 0

1 else

• Polarization Encoding Decoding Construction Performance

Decoding on W

Wu1 (y1, y2, . . . , y8)

Compute

L=

W(y1, . . . , y8 | u1 = 0)

W(y1, . . . , y8 | u1 = 1).

Set

u1 =

u1 if u1 is frozen

0 else if L > 0

1 else

• Polarization Encoding Decoding Construction Performance

Decoding on W +

+

W

W

u2

known u1

(y2, y4, y6, y8)

(y1, y3, y5, y7)

• Polarization Encoding Decoding Construction Performance

Decoding on W +

W+u2 (y1, . . . , y8, u1)

• Polarization Encoding Decoding Construction Performance

Decoding on W +

W+u2 (y1, . . . , y8, u1)

Compute

L+=

W+(y1, . . . , y8, u1 | u2 = 0)

W+(y1, . . . , y8, u1 | u2 = 1).

• Polarization Encoding Decoding Construction Performance

Decoding on W +

W+u2 (y1, . . . , y8, u1)

Compute

L+=

W+(y1, . . . , y8, u1 | u2 = 0)

W+(y1, . . . , y8, u1 | u2 = 1).

Set

u2 =

u2 if u2 is frozen

0 else if L+ > 0

1 else

• Polarization Encoding Decoding Construction Performance

Decoding on W +

W+u2 (y1, . . . , y8, u1)

Compute

L+=

W+(y1, . . . , y8, u1 | u2 = 0)

W+(y1, . . . , y8, u1 | u2 = 1).

Set

u2 =

u2 if u2 is frozen

0 else if L+ > 0

1 else

• Polarization Encoding Decoding Construction Performance

Decoding on W +

W+u2 (y1, . . . , y8, u1)

Compute

L+=

W+(y1, . . . , y8, u1 | u2 = 0)

W+(y1, . . . , y8, u1 | u2 = 1).

Set

u2 =

u2 if u2 is frozen

0 else if L+ > 0

1 else

• Polarization Encoding Decoding Construction Performance

Complexity for successive cancelation decoding

Let CN be the complexity of decoding a code of length N

Decoding problem of size N for W reduced to two decodingproblems of size N/2 for W and W+

SoCN = 2CN/2 + kN

for some constant k

This gives CN = O(N logN)

• Polarization Encoding Decoding Construction Performance

Complexity for successive cancelation decoding

Let CN be the complexity of decoding a code of length N

Decoding problem of size N for W reduced to two decodingproblems of size N/2 for W and W+

SoCN = 2CN/2 + kN

for some constant k

This gives CN = O(N logN)

• Polarization Encoding Decoding Construction Performance

Complexity for successive cancelation decoding

Let CN be the complexity of decoding a code of length N

Decoding problem of size N for W reduced to two decodingproblems of size N/2 for W and W+

SoCN = 2CN/2 + kN

for some constant k

This gives CN = O(N logN)

• Polarization Encoding Decoding Construction Performance

Complexity for successive cancelation decoding

Let CN be the complexity of decoding a code of length N

Decoding problem of size N for W reduced to two decodingproblems of size N/2 for W and W+

SoCN = 2CN/2 + kN

for some constant k

This gives CN = O(N logN)

• Polarization Encoding Decoding Construction Performance

Performance of polar codes

Theorem

For any rate R < I (W ) and block-length N, the probability offrame error for polar codes under successive cancelation decoding isbounded as

Pe(N,R) = o(

2

N+o(

N))

Proof: Given in the next presentation.

• Polarization Encoding Decoding Construction Performance

Construction complexity

Theorem

Given W and a rate R < I (W ), a polar code can be constructed inO(Npoly(log(N))) time that achieves under SCD the performance

Pe = o(

2

N+o(

N))

Proof: Given in the next presentation.

• Polarization Encoding Decoding Construction Performance

Polar coding summary

Summary

Given W , N = 2n, and R < I (W ), a polar code can be constructedsuch that it has

construction complexity O(Npoly(log(N))),

encoding complexity N logN,

successive-cancellation decoding complexity N logN,

frame error probability Pe(N,R) = o(

2

N+o(

N))

.

• Polarization Encoding Decoding Construction Performance

Polar coding summary

Summary

Given W , N = 2n, and R < I (W ), a polar code can be constructedsuch that it has

construction complexity O(Npoly(log(N))),

encoding complexity N logN,

successive-cancellation decoding complexity N logN,

frame error probability Pe(N,R) = o(

2

N+o(

N))

.

• Polarization Encoding Decoding Construction Performance

Polar coding summary

Summary

Given W , N = 2n, and R < I (W ), a polar code can be constructedsuch that it has

construction complexity O(Npoly(log(N))),

encoding complexity N logN,

successive-cancellation decoding complexity N logN,

frame error probability Pe(N,R) = o(

2

N+o(

N))

.

• Polarization Encoding Decoding Construction Performance

Polar coding summary

Summary

Given W , N = 2n, and R < I (W ), a polar code can be constructedsuch that it has

construction complexity O(Npoly(log(N))),

encoding complexity N logN,

successive-cancellation decoding complexity N logN,

frame error probability Pe(N,R) = o(

2

N+o(

N))

.

• Polarization Encoding Decoding Construction Performance

List decoder for polar codes

Developed by Tal and Vardy (2011); similar to Dumers listdecoder for Reed-Muller codes.

First produce L candidate decisions

Pick the most likely word from the list

Complexity O(LN logN)

• Polarization Encoding Decoding Construction Performance

List decoder for polar codes

Developed by Tal and Vardy (2011); similar to Dumers listdecoder for Reed-Muller codes.

First produce L candidate decisions

Pick the most likely word from the list

Complexity O(LN logN)

• Polarization Encoding Decoding Construction Performance

List decoder for polar codes

Developed by Tal and Vardy (2011); similar to Dumers listdecoder for Reed-Muller codes.

First produce L candidate decisions

Pick the most likely word from the list

Complexity O(LN logN)

• Polarization Encoding Decoding Construction Performance

Tal-Vardy list decoder performanceLength n = 2048, rate R = 0.5, BPSK-AWGN channel, list-size L.

• Polarization Encoding Decoding Construction Performance

Tal-Vardy list decoder performanceLength n = 2048, rate R = 0.5, BPSK-AWGN channel, list-size L.

• Polarization Encoding Decoding Construction Performance

Tal-Vardy list decoder performanceLength n = 2048, rate R = 0.5, BPSK-AWGN channel, list-size L.

• Polarization Encoding Decoding Construction Performance

Tal-Vardy list decoder performanceLength n = 2048, rate R = 0.5, BPSK-AWGN channel, list-size L.

• Polarization Encoding Decoding Construction Performance

Tal-Vardy list decoder performance

Length n = 2048, rate R = 0.5, BPSK-AWGN channel, list-size L.

• Polarization Encoding Decoding Construction Performance

Tal-Vardy list decoder performance

Length n = 2048, rate R = 0.5, BPSK-AWGN channel, list-size L.

• Polarization Encoding Decoding Construction Performance

Tal-Vardy list decoder performance

Length n = 2048, rate R = 0.5, BPSK-AWGN channel, list-size L.

List-of-L performance quickly approaches ML performance!

• Polarization Encoding Decoding Construction Performance

List decoder with CRC

Same decoder as before but data contains a built-in CRC

Selection made by CRC and relative likelihood

• Polarization Encoding Decoding Construction Performance

List decoder with CRC

Same decoder as before but data contains a built-in CRC

Selection made by CRC and relative likelihood

• Polarization Encoding Decoding Construction Performance

Tal-Vardy list decoder with CRC

Length n = 2048, rate R = 0.5, BPSK-AWGN channel, list-size L.

• Polarization Encoding Decoding Construction Performance

Tal-Vardy list decoder with CRC

Length n = 2048, rate R = 0.5, BPSK-AWGN channel, list-size L.

• Polarization Encoding Decoding Construction Performance

Tal-Vardy list decoder with CRC

Length n = 2048, rate R = 0.5, BPSK-AWGN channel, list-size L.

Polar codes (+CRC) achieve state-of-the-art performance!

• Polarization Encoding Decoding Construction Performance

Summary

Polarization is a commonplace phenomenon almostunavoidable

Polar codes are low-complexity methods designed to exploitpolarization for achieving Shannon limits

Polar codes with some help from other methods performcompetitively with the state-of-the-art codes in terms ofcomplexity and performance

• Polarization Encoding Decoding Construction Performance

Summary

Polarization is a commonplace phenomenon almostunavoidable

Polar codes are low-complexity methods designed to exploitpolarization for achieving Shannon limits

Polar codes with some help from other methods performcompetitively with the state-of-the-art codes in terms ofcomplexity and performance

• Polarization Encoding Decoding Construction Performance

Summary

Polarization is a commonplace phenomenon almostunavoidable

Polar codes are low-complexity methods designed to exploitpolarization for achieving Shannon limits

Polar codes with some help from other methods performcompetitively with the state-of-the-art codes in terms ofcomplexity and performance

PolarizationEncodingDecodingConstructionPolar coding performance

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Related Documents