math 312: class meeting 10 - some applicationskazdan/312f12/jj/error-corr-slides.pdf · math 312:...
TRANSCRIPT
![Page 1: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/1.jpg)
Error-correcting codesComputer graphics
Math 312: Class meeting 10Some applications
Jeff Jauregui
September 26, 2012
Linear systems
![Page 2: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/2.jpg)
Error-correcting codesComputer graphics
Errors in transmission
Situation: transmitting a binary data signal (0’s and 1’s)across some (noisy) channel.
Errors (0s and 1s being randomly swapped) will occur.
Examples: WiFi, cell phones, lasers reading DVDs, etc.
Problem: devise a scheme for errors to be detected, correctedautomatically by receiver.
Linear systems
![Page 3: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/3.jpg)
Error-correcting codesComputer graphics
Errors in transmission
Situation: transmitting a binary data signal (0’s and 1’s)across some (noisy) channel.
Errors (0s and 1s being randomly swapped) will occur.
Examples: WiFi, cell phones, lasers reading DVDs, etc.
Problem: devise a scheme for errors to be detected, correctedautomatically by receiver.
Linear systems
![Page 4: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/4.jpg)
Error-correcting codesComputer graphics
Errors in transmission
Situation: transmitting a binary data signal (0’s and 1’s)across some (noisy) channel.
Errors (0s and 1s being randomly swapped) will occur.
Examples: WiFi, cell phones, lasers reading DVDs, etc.
Problem: devise a scheme for errors to be detected, correctedautomatically by receiver.
Linear systems
![Page 5: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/5.jpg)
Error-correcting codesComputer graphics
Errors in transmission
Situation: transmitting a binary data signal (0’s and 1’s)across some (noisy) channel.
Errors (0s and 1s being randomly swapped) will occur.
Examples: WiFi, cell phones, lasers reading DVDs, etc.
Problem: devise a scheme for errors to be detected, correctedautomatically by receiver.
Linear systems
![Page 6: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/6.jpg)
Error-correcting codesComputer graphics
Naive solution 1
One idea: sender repeats each bit (0 or 1) in segments of two.
Data [0 1 0] would be encoded as [0 0 : 1 1 : 0 0],etc.
If recipient gets [0 0 : 1 1 : 1 0], for instance, they knowan error occurred in third segment of message.
But they can’t correct the error!
We’ll ignore possibility of multiple errors.
Linear systems
![Page 7: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/7.jpg)
Error-correcting codesComputer graphics
Naive solution 1
One idea: sender repeats each bit (0 or 1) in segments of two.
Data [0 1 0] would be encoded as [0 0 : 1 1 : 0 0],etc.
If recipient gets [0 0 : 1 1 : 1 0], for instance, they knowan error occurred in third segment of message.
But they can’t correct the error!
We’ll ignore possibility of multiple errors.
Linear systems
![Page 8: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/8.jpg)
Error-correcting codesComputer graphics
Naive solution 1
One idea: sender repeats each bit (0 or 1) in segments of two.
Data [0 1 0] would be encoded as [0 0 : 1 1 : 0 0],etc.
If recipient gets [0 0 : 1 1 : 1 0], for instance, they knowan error occurred in third segment of message.
But they can’t correct the error!
We’ll ignore possibility of multiple errors.
Linear systems
![Page 9: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/9.jpg)
Error-correcting codesComputer graphics
Naive solution 1
One idea: sender repeats each bit (0 or 1) in segments of two.
Data [0 1 0] would be encoded as [0 0 : 1 1 : 0 0],etc.
If recipient gets [0 0 : 1 1 : 1 0], for instance, they knowan error occurred in third segment of message.
But they can’t correct the error!
We’ll ignore possibility of multiple errors.
Linear systems
![Page 10: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/10.jpg)
Error-correcting codesComputer graphics
Naive solution 1
One idea: sender repeats each bit (0 or 1) in segments of two.
Data [0 1 0] would be encoded as [0 0 : 1 1 : 0 0],etc.
If recipient gets [0 0 : 1 1 : 1 0], for instance, they knowan error occurred in third segment of message.
But they can’t correct the error!
We’ll ignore possibility of multiple errors.
Linear systems
![Page 11: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/11.jpg)
Error-correcting codesComputer graphics
Naive solution 2
Next idea: sender repeats each bit (0 or 1) in segments ofthree.
Data [0 1 0] would be encoded as[0 0 0 : 1 1 1 : 0 0 0], etc., and sent.
If recipient gets [0 0 0 : 1 1 0 : 0 0 0], for instance,they know an error occurred in second segment.
Second segment should have been 1 1 1, so message can becorrected.
The cost: requires 3 times as much data to send.
Linear systems
![Page 12: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/12.jpg)
Error-correcting codesComputer graphics
Naive solution 2
Next idea: sender repeats each bit (0 or 1) in segments ofthree.
Data [0 1 0] would be encoded as[0 0 0 : 1 1 1 : 0 0 0], etc., and sent.
If recipient gets [0 0 0 : 1 1 0 : 0 0 0], for instance,they know an error occurred in second segment.
Second segment should have been 1 1 1, so message can becorrected.
The cost: requires 3 times as much data to send.
Linear systems
![Page 13: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/13.jpg)
Error-correcting codesComputer graphics
Naive solution 2
Next idea: sender repeats each bit (0 or 1) in segments ofthree.
Data [0 1 0] would be encoded as[0 0 0 : 1 1 1 : 0 0 0], etc., and sent.
If recipient gets [0 0 0 : 1 1 0 : 0 0 0], for instance,they know an error occurred in second segment.
Second segment should have been 1 1 1, so message can becorrected.
The cost: requires 3 times as much data to send.
Linear systems
![Page 14: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/14.jpg)
Error-correcting codesComputer graphics
Naive solution 2
Next idea: sender repeats each bit (0 or 1) in segments ofthree.
Data [0 1 0] would be encoded as[0 0 0 : 1 1 1 : 0 0 0], etc., and sent.
If recipient gets [0 0 0 : 1 1 0 : 0 0 0], for instance,they know an error occurred in second segment.
Second segment should have been 1 1 1, so message can becorrected.
The cost: requires 3 times as much data to send.
Linear systems
![Page 15: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/15.jpg)
Error-correcting codesComputer graphics
Naive solution 2
Next idea: sender repeats each bit (0 or 1) in segments ofthree.
Data [0 1 0] would be encoded as[0 0 0 : 1 1 1 : 0 0 0], etc., and sent.
If recipient gets [0 0 0 : 1 1 0 : 0 0 0], for instance,they know an error occurred in second segment.
Second segment should have been 1 1 1, so message can becorrected.
The cost: requires 3 times as much data to send.
Linear systems
![Page 16: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/16.jpg)
Error-correcting codesComputer graphics
(7, 4) Hamming code
Hamming codes: Richard Hamming 1950
“(7, 4) Hamming code” takes a 4 bit message, encodes it as 7bits, requiring only 7/4 = 1.75 times as much data.
Can detect and correct single errors.
Setup: say the senders message is x1, x2, x3, x4 (each 0 or 1).Denote by the vector:
~x =
x1
x2
x3
x4
.
Linear systems
![Page 17: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/17.jpg)
Error-correcting codesComputer graphics
(7, 4) Hamming code
Hamming codes: Richard Hamming 1950
“(7, 4) Hamming code” takes a 4 bit message, encodes it as 7bits, requiring only 7/4 = 1.75 times as much data.
Can detect and correct single errors.
Setup: say the senders message is x1, x2, x3, x4 (each 0 or 1).Denote by the vector:
~x =
x1
x2
x3
x4
.
Linear systems
![Page 18: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/18.jpg)
Error-correcting codesComputer graphics
(7, 4) Hamming code
Hamming codes: Richard Hamming 1950
“(7, 4) Hamming code” takes a 4 bit message, encodes it as 7bits, requiring only 7/4 = 1.75 times as much data.
Can detect and correct single errors.
Setup: say the senders message is x1, x2, x3, x4 (each 0 or 1).Denote by the vector:
~x =
x1
x2
x3
x4
.
Linear systems
![Page 19: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/19.jpg)
Error-correcting codesComputer graphics
(7, 4) Hamming code
Hamming codes: Richard Hamming 1950
“(7, 4) Hamming code” takes a 4 bit message, encodes it as 7bits, requiring only 7/4 = 1.75 times as much data.
Can detect and correct single errors.
Setup: say the senders message is x1, x2, x3, x4 (each 0 or 1).Denote by the vector:
~x =
x1
x2
x3
x4
.
Linear systems
![Page 20: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/20.jpg)
Error-correcting codesComputer graphics
Parity
We’ll use addition “mod 2”, meaning:
0 + 0 = 0
0 + 1 = 1
1 + 0 = 1
1 + 1 = 0,
Linear systems
![Page 21: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/21.jpg)
Error-correcting codesComputer graphics
How it works
Write the bits in a Venn diagram:
... then fill in the 3 circles with the sum of the bits inside thatcircle, taken mod 2.
Linear systems
![Page 22: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/22.jpg)
Error-correcting codesComputer graphics
How it works
Write the bits in a Venn diagram:
... then fill in the 3 circles with the sum of the bits inside thatcircle, taken mod 2.
Linear systems
![Page 23: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/23.jpg)
Error-correcting codesComputer graphics
Example
If original message is [0 1 0 1], we have
... filled in as?
The sender sends 7 bits: the original four, plus the additional3 “parity bits” (starting at top left, moving clockwise):
[0 1 0 1 1 0 0] gets sent.
Linear systems
![Page 24: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/24.jpg)
Error-correcting codesComputer graphics
Example
If original message is [0 1 0 1], we have
... filled in as?
The sender sends 7 bits: the original four, plus the additional3 “parity bits” (starting at top left, moving clockwise):
[0 1 0 1 1 0 0] gets sent.
Linear systems
![Page 25: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/25.jpg)
Error-correcting codesComputer graphics
Example
If original message is [0 1 0 1], we have
... filled in as?
The sender sends 7 bits: the original four, plus the additional3 “parity bits” (starting at top left, moving clockwise):
[0 1 0 1 1 0 0] gets sent.
Linear systems
![Page 26: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/26.jpg)
Error-correcting codesComputer graphics
Example
If original message is [0 1 0 1], we have
... filled in as?
The sender sends 7 bits: the original four, plus the additional3 “parity bits” (starting at top left, moving clockwise):
[0 1 0 1 1 0 0] gets sent.
Linear systems
![Page 27: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/27.jpg)
Error-correcting codesComputer graphics
Correcting errors
Now, recipient gets 7 bits, and fills out the picture in order.Example:
They check the validity of each parity bit to locate errors.In which position did error occur?Corrected message is?
Linear systems
![Page 28: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/28.jpg)
Error-correcting codesComputer graphics
Correcting errors
Now, recipient gets 7 bits, and fills out the picture in order.Example:
They check the validity of each parity bit to locate errors.
In which position did error occur?Corrected message is?
Linear systems
![Page 29: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/29.jpg)
Error-correcting codesComputer graphics
Correcting errors
Now, recipient gets 7 bits, and fills out the picture in order.Example:
They check the validity of each parity bit to locate errors.In which position did error occur?
Corrected message is?
Linear systems
![Page 30: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/30.jpg)
Error-correcting codesComputer graphics
Correcting errors
Now, recipient gets 7 bits, and fills out the picture in order.Example:
They check the validity of each parity bit to locate errors.In which position did error occur?Corrected message is?
Linear systems
![Page 31: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/31.jpg)
Error-correcting codesComputer graphics
Matrix formalism: encoding
Say ~x ∈ R4 is original message.
Then G~x ∈ R7 is the 7-bitversion, where
G =
1 0 0 00 1 0 00 0 1 00 0 0 11 0 1 11 1 0 10 1 1 1
.
G is “code generator matrix”
Linear systems
![Page 32: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/32.jpg)
Error-correcting codesComputer graphics
Matrix formalism: encoding
Say ~x ∈ R4 is original message. Then G~x ∈ R7 is the 7-bitversion, where
G =
1 0 0 00 1 0 00 0 1 00 0 0 11 0 1 11 1 0 10 1 1 1
.
G is “code generator matrix”
Linear systems
![Page 33: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/33.jpg)
Error-correcting codesComputer graphics
Matrix formalism: encoding
Say ~x ∈ R4 is original message. Then G~x ∈ R7 is the 7-bitversion, where
G =
1 0 0 00 1 0 00 0 1 00 0 0 11 0 1 11 1 0 10 1 1 1
.
G is “code generator matrix”
Linear systems
![Page 34: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/34.jpg)
Error-correcting codesComputer graphics
Matrix formalism: decoding
Recipient gets some ~c ∈ R7.
To perform error check, whatthey do is make sure, that mod 2:
c1 + c3 + c4 + c5 = 0
c1 + c2 + c4 + c6 = 0
c2 + c3 + c4 + c7 = 0.
In other words, they check P~c = ~0 in R3, where
P =
1 0 1 1 1 0 01 1 0 1 0 1 00 1 1 1 0 0 1
,P is “parity check matrix”.If P~c 6= ~0, recipient can deduce where error occurred.G , P can be viewed as linear transformations.Messages without errors can be thought of as image of G andkernel of P. How so?
Linear systems
![Page 35: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/35.jpg)
Error-correcting codesComputer graphics
Matrix formalism: decoding
Recipient gets some ~c ∈ R7. To perform error check, whatthey do is make sure, that mod 2:
c1 + c3 + c4 + c5 = 0
c1 + c2 + c4 + c6 = 0
c2 + c3 + c4 + c7 = 0.
In other words, they check P~c = ~0 in R3, where
P =
1 0 1 1 1 0 01 1 0 1 0 1 00 1 1 1 0 0 1
,P is “parity check matrix”.If P~c 6= ~0, recipient can deduce where error occurred.G , P can be viewed as linear transformations.Messages without errors can be thought of as image of G andkernel of P. How so?
Linear systems
![Page 36: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/36.jpg)
Error-correcting codesComputer graphics
Matrix formalism: decoding
Recipient gets some ~c ∈ R7. To perform error check, whatthey do is make sure, that mod 2:
c1 + c3 + c4 + c5 = 0
c1 + c2 + c4 + c6 = 0
c2 + c3 + c4 + c7 = 0.
In other words, they check P~c = ~0 in R3, where
P =
1 0 1 1 1 0 01 1 0 1 0 1 00 1 1 1 0 0 1
,
P is “parity check matrix”.If P~c 6= ~0, recipient can deduce where error occurred.G , P can be viewed as linear transformations.Messages without errors can be thought of as image of G andkernel of P. How so?
Linear systems
![Page 37: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/37.jpg)
Error-correcting codesComputer graphics
Matrix formalism: decoding
Recipient gets some ~c ∈ R7. To perform error check, whatthey do is make sure, that mod 2:
c1 + c3 + c4 + c5 = 0
c1 + c2 + c4 + c6 = 0
c2 + c3 + c4 + c7 = 0.
In other words, they check P~c = ~0 in R3, where
P =
1 0 1 1 1 0 01 1 0 1 0 1 00 1 1 1 0 0 1
,P is “parity check matrix”.
If P~c 6= ~0, recipient can deduce where error occurred.G , P can be viewed as linear transformations.Messages without errors can be thought of as image of G andkernel of P. How so?
Linear systems
![Page 38: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/38.jpg)
Error-correcting codesComputer graphics
Matrix formalism: decoding
Recipient gets some ~c ∈ R7. To perform error check, whatthey do is make sure, that mod 2:
c1 + c3 + c4 + c5 = 0
c1 + c2 + c4 + c6 = 0
c2 + c3 + c4 + c7 = 0.
In other words, they check P~c = ~0 in R3, where
P =
1 0 1 1 1 0 01 1 0 1 0 1 00 1 1 1 0 0 1
,P is “parity check matrix”.If P~c 6= ~0, recipient can deduce where error occurred.
G , P can be viewed as linear transformations.Messages without errors can be thought of as image of G andkernel of P. How so?
Linear systems
![Page 39: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/39.jpg)
Error-correcting codesComputer graphics
Matrix formalism: decoding
Recipient gets some ~c ∈ R7. To perform error check, whatthey do is make sure, that mod 2:
c1 + c3 + c4 + c5 = 0
c1 + c2 + c4 + c6 = 0
c2 + c3 + c4 + c7 = 0.
In other words, they check P~c = ~0 in R3, where
P =
1 0 1 1 1 0 01 1 0 1 0 1 00 1 1 1 0 0 1
,P is “parity check matrix”.If P~c 6= ~0, recipient can deduce where error occurred.G , P can be viewed as linear transformations.
Messages without errors can be thought of as image of G andkernel of P. How so?
Linear systems
![Page 40: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/40.jpg)
Error-correcting codesComputer graphics
Matrix formalism: decoding
Recipient gets some ~c ∈ R7. To perform error check, whatthey do is make sure, that mod 2:
c1 + c3 + c4 + c5 = 0
c1 + c2 + c4 + c6 = 0
c2 + c3 + c4 + c7 = 0.
In other words, they check P~c = ~0 in R3, where
P =
1 0 1 1 1 0 01 1 0 1 0 1 00 1 1 1 0 0 1
,P is “parity check matrix”.If P~c 6= ~0, recipient can deduce where error occurred.G , P can be viewed as linear transformations.Messages without errors can be thought of as image of G andkernel of P. How so?
Linear systems
![Page 41: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/41.jpg)
Error-correcting codesComputer graphics
Displaying 3D graphics
Imagine n points (x1, y1, z1), . . . (xn, yn, zn) ∈ R3, connectedby various line segments:
Viewer located along z-axis.
Imagine points being projected onto a flat screen in z = 0plane.
Store points as a 3× n matrix:
Linear systems
![Page 42: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/42.jpg)
Error-correcting codesComputer graphics
Displaying 3D graphics
Imagine n points (x1, y1, z1), . . . (xn, yn, zn) ∈ R3, connectedby various line segments:
Viewer located along z-axis.
Imagine points being projected onto a flat screen in z = 0plane.
Store points as a 3× n matrix:
Linear systems
![Page 43: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/43.jpg)
Error-correcting codesComputer graphics
Displaying 3D graphics
Imagine n points (x1, y1, z1), . . . (xn, yn, zn) ∈ R3, connectedby various line segments:
Viewer located along z-axis.
Imagine points being projected onto a flat screen in z = 0plane.
Store points as a 3× n matrix:
Linear systems
![Page 44: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/44.jpg)
Error-correcting codesComputer graphics
Displaying 3D graphics
Imagine n points (x1, y1, z1), . . . (xn, yn, zn) ∈ R3, connectedby various line segments:
Viewer located along z-axis.
Imagine points being projected onto a flat screen in z = 0plane. Store points as a 3× n matrix:
Linear systems
![Page 45: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/45.jpg)
Error-correcting codesComputer graphics
Views
Straight-on view looks like
Can apply various linear transformations of R3, for instance
Matrix product “SP” means apply S to each column.
Linear systems
![Page 46: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/46.jpg)
Error-correcting codesComputer graphics
Views
Straight-on view looks like
Can apply various linear transformations of R3, for instance
Matrix product “SP” means apply S to each column.
Linear systems
![Page 47: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/47.jpg)
Error-correcting codesComputer graphics
Views
Straight-on view looks like
Can apply various linear transformations of R3, for instance
Matrix product “SP” means apply S to each column.
Linear systems
![Page 48: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/48.jpg)
Error-correcting codesComputer graphics
Scaling example
Here’s an example
Original view was:
In this initial discussion, z coordinate doesn’t factor in directly.
Linear systems
![Page 49: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/49.jpg)
Error-correcting codesComputer graphics
Scaling example
Here’s an example
Original view was:
In this initial discussion, z coordinate doesn’t factor in directly.
Linear systems
![Page 50: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/50.jpg)
Error-correcting codesComputer graphics
Rotations
We can also rotate about x , y , and z axes. With θ = π/2:
Linear systems
![Page 51: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/51.jpg)
Error-correcting codesComputer graphics
Rotations
We can also rotate about x , y , and z axes. With θ = π/2:
Linear systems
![Page 52: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/52.jpg)
Error-correcting codesComputer graphics
Rotations
We can also rotate about x , y , and z axes. With θ = π/2:
Linear systems
![Page 53: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/53.jpg)
Error-correcting codesComputer graphics
Rotations
We can also rotate about x , y , and z axes. With θ = π/2:
Linear systems
![Page 54: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/54.jpg)
Error-correcting codesComputer graphics
Stereoscopic views
By composing x , y , and z rotations, we can create obliqueviews on the object.
See handout.
Linear systems
![Page 55: Math 312: Class meeting 10 - Some applicationskazdan/312F12/JJ/error-corr-slides.pdf · Math 312: Class meeting 10 Some applications Je Jauregui September 26, 2012 Linear systems](https://reader033.vdocuments.us/reader033/viewer/2022042107/5e86be7e0450cf45125c858d/html5/thumbnails/55.jpg)
Error-correcting codesComputer graphics
Stereoscopic views
By composing x , y , and z rotations, we can create obliqueviews on the object.
See handout.
Linear systems