Quantum Error-Correcting Codes

advertisement
The Math Behind the Compact Disc
Linear Algebra and Error-Correcting Codes
william j. martin. mathematical sciences. wpi
wednesday december 3. 2008
fairfield university
How the device works
The compact disc is a complex
system incorporating interesting
ideas from engineering, physics,
CS and math. We will focus only on
the mathematics of the errorcorrection strategy.
For more info on the CD, see Kelin
Kuhn’s book “Laser Engineering”:
3/23/2016
W J Martin Mathematical Sciences WPI
Borrowed from K J Kuhn’s book
“Laser Engineering”
3/23/2016
W J Martin Mathematical Sciences WPI
The Pits
Each pit is 0.5 microns wide…
and 0.83 to 3.56 microns long.
Tracks are separated by 1.6
microns of “land”
Wavelength of green light is
about 0.5 micron
40 tracks under one strand of
human hair
3/23/2016
W J Martin Mathematical Sciences WPI
Modelling a
CommunicationsChannel
Linear algebra model:
r = m+e (vector add.)
3/23/2016
W J Martin Mathematical Sciences WPI
Channel with Error Correction
3/23/2016
W J Martin Mathematical Sciences WPI
Turn it into an algebra problem!
A number system that
the computer can
understand:
F = { 0, 1 }
Ordinary multiplication
Addition: 1+1=0
3/23/2016
Now music is turned into
binary vectors!
W J Martin Mathematical Sciences WPI
A bit (or a nibble?) of graph theory
The n-cube is a type of
Hamming graph
Vertices are all binary ntuples
n-tuples are adjacent if
they differ in only one
coordinate
Nice ‘eigenvalues’!
3/23/2016
W J Martin Mathematical Sciences WPI
Binary Vector Spaces
The vectors are all possible binary n-tuples
001011101011000
+
001111000000001
=
000100101011001
3/23/2016
W J Martin Mathematical Sciences WPI
Hamming Distance
The distance between two binary n-tuples x and y is the
number of coordinates in which they differ
dist( 001100, 001011 ) = 3
This is a metric:
dist( x, y )  0 with dist( x, y ) = 0 iff x=y
dist( x, y ) = dist( y, x )
Triangle inequality
dist( x, z )  dist( x, y ) + dist( y, z )
3/23/2016
W J Martin Mathematical Sciences WPI
Theorem
Let C (the “code”) be a subset of F n with
minimum distance between any two codewords
equal to d.
Then there exists an algorithm which corrects up to
t errors per transmitted codeword if and only if
d  2t + 1.
3/23/2016
W J Martin Mathematical Sciences WPI
Proof
If x and y are distinct
codewords, then the
balls of radius t around
them are disjoint. So if
the received vector is
within distance t of x, it
must be at distance > t
from any other
codeword. So decoding
is unique.
3/23/2016
W J Martin Mathematical Sciences WPI
A Useful Extension of the Theorem
The above (computationally infeasible)
decoding algorithm also correctly recovers from
any t symbol errors and any s symbol erasures
provided d > 2t+s.
transmit: 0 1 1 2 2 3 0
receive:
0133???
(here, t=2 errors and s=3 erasures)
3/23/2016
W J Martin Mathematical Sciences WPI
Small Example
Let C denote the “rowspace” of the matrix
Then C = { 000000, 110100, 011010, 101110,
001101, 111001, 010111, 100011 }
and C has minimum distance 3 so C allows correction of
any single-bit error in any transmitted codeword.
3/23/2016
W J Martin Mathematical Sciences WPI
The binary Hamming code
Codewords: 0 0 0 0 0 0 0
1101000
0110100
Quadratic Residues!
In ZZ 7
we have
0011010
2
12 = 1
6 = 1
2
2
0001101
2
= 4
5 = 4
2
2
3
= 2
4 = 2
1000110
0100011
1010001
3/23/2016
W J Martin Mathematical Sciences WPI
1111111
0010111
1001011
1100101
1110010
0111001
1011100
0101110
The Fano projective plane
Vector Space: F
3
2
“Poynts”: 1-dim. subspaces
“Lynes”:
3/23/2016
2-dim. subspaces
W J Martin Mathematical Sciences WPI
C = nullsp(H) where
All codewords:
3/23/2016
0000000
1111111
0001111
1110000
0110011
1001100
0111100
1000011
1010101
0101010
1011010
0100101
1100110
0011001
1101001
0010110
W J Martin Mathematical Sciences WPI
Codes from polynomials
Let’s replace F={0,1} with F={0,1,…,6} (with
modular arithmetic). Now consider the vector
space F[z] of all polynomials in z with
coefficients in F. For any subset N of F, we
have a linear transformation
N
L: F[z]  F
via f(z)  [ f(0), f(1), f(2), f(3), f(4), f(5) ]
(Here, we use, N={0,1,2,3,4,5}.)
This is a Reed-Solomon code.
3/23/2016
W J Martin Mathematical Sciences WPI
Polynomials to Codewords
Example:
Let the message be [1, 2, 2] (working mod 7)
2
Polynomial is f(z) = z + 2 z + 2
Codeword is
[f(0), f(1), f(2), f(3), f(4), f(5)] = [ 2, 5, 3, 3, 5, 2]
3/23/2016
W J Martin Mathematical Sciences WPI
Reed-Solomon Codes
FACT: Two polynomials of
degree less than k
having k points of
intersection must be
equal.
SO: Reed-Solomon code of
length n<q and dim k has
min. dist. n-k+1
3/23/2016
W J Martin Mathematical Sciences WPI
Compact Disc Parameters
SONY/Philips design (1980)
Music is sampled 44,100 times per second
Each sample consists of 32 bits, representing
left and right channel signal magnitude
0—65535 (Pulse Code Modulation – PCM)
So chip must process 1,411,200 raw data bits
per second
But it gets much worse!
3/23/2016
W J Martin Mathematical Sciences WPI
Cross-Interleaved RS Codes
Inner code is a 28-dimensional subspace of a
32-dimensional vector space over a finite field of
size 256.
Outer code is a 24-dimensional subspace of a
28-dimensional vector space.
Six 32-bit samples make up a 192-bit frame
which is encoded as a 224-bit codeword.
(Eventually, codewords have length 588 bits!)
3/23/2016
W J Martin Mathematical Sciences WPI
Encoding – The numbers
The codewords from the first code are
interleaved into a virtually infinite array of 28
rows of symbols over GF(256).
We pull out 8 binary columns (one symbol) to
obtain a 28x8=224-bit frame which is then
encoded using another Reed-Solomon code to
obtain a codeword of length 256 bits.
3/23/2016
W J Martin Mathematical Sciences WPI
Interleaving to disperse errors
Codewords of first code
are stacked like bricks
28 rows of vectors over
GF(256)
Extract columns and reencode using second
Reed-Solomon code
3/23/2016
W J Martin Mathematical Sciences WPI
Splitting Odd and Even Bits
3/23/2016
W J Martin Mathematical Sciences WPI
Back to the Pits
Each pit is 0.5 microns
wide…
and 0.83 to 3.56 microns
long.
Tracks are separated by
1.6 microns of “land”
Not all 01-sequences
can be recorded
3/23/2016
W J Martin Mathematical Sciences WPI
EFM: Eight-to-Fourteen Modulation
This encoding scheme can only store sequences
where each consecutive pair of ones is
separated by at least 2 and at most 10 zeros
8
14
This is achieved by a mapping F2  F2
which is given by a lookup table.
3/23/2016
W J Martin Mathematical Sciences WPI
Further Processing
Three more ‘merge bits’ are added to each of
these 14
So 256+8=264=33x8 bits, carrying six samples,
or 192 information bits, gets encoded as 588
channel bits on the disk
This represents 0.000136 seconds of music
3/23/2016
W J Martin Mathematical Sciences WPI
What actually goes on the disc?
We must do this 7,350 times per second
So CD player reads 4,321,800 bits per second of
music produced
To get 74 minutes of music, we must store
74x60x4321800 = 19,188,792,000
bits of data on the compact disc!
3/23/2016
W J Martin Mathematical Sciences WPI
When in doubt, erase
Inner code has minimum
distance 5 (over
GF(256))
Rather than correct twosymbol errors, the CD
just erases the entire
received vector.
3/23/2016
W J Martin Mathematical Sciences WPI
So…how good is it?
The two Reed-Solomon codes team up to correct
‘burst’ errors of up to 4000 consecutive data bits (2.5
mm scratch on disc)
If signal at time t cannot be recovered, interpolate
With smart data distribution, this allows for recovery
from burst errors of up to 12,000 data bits (7.5 mm track
length on disc)
If all else fails, mute, giving 0.00028 sec of silence.
3/23/2016
W J Martin Mathematical Sciences WPI
Other Applications
Space communications (Mariner,Voyager,etc.)
DVD, CD-R, CD-ROM
Cell phones, internet packets
Memory: chips, hard drives, USB sticks
RAID disk arrays
Quantum computing
3/23/2016
W J Martin Mathematical Sciences WPI
The Last Slide
Thank You All!
3/23/2016
W J Martin Mathematical Sciences WPI
Download