Click here to load reader

Jun 20, 2018

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