1 01010000001001 by Colin Kriwox. 2 Contents Introduction credit card error checking what is a code purpose of error-correction codes Encoding naïve approach.

Slides:



Advertisements
Similar presentations
TWO STEP EQUATIONS 1. SOLVE FOR X 2. DO THE ADDITION STEP FIRST
Advertisements

Mathematical Preliminaries
Chapter 8 Introduction to Number Theory. 2 Contents Prime Numbers Fermats and Eulers Theorems.
Monday HW answers: p B25. (x – 15)(x – 30) 16. (t – 3)(t – 7)29. (x -2)(x – 7) 19. (y – 6)(y + 3)roots = 2 and (4 + n)(8 + n)34. (x + 7)(x.
Adders Used to perform addition, subtraction, multiplication, and division (sometimes) Half-adder adds rightmost (least significant) bit Full-adder.
Advanced Piloting Cruise Plot.
1
© 2008 Pearson Addison Wesley. All rights reserved Chapter Seven Costs.
Copyright © 2003 Pearson Education, Inc. Slide 1 Computer Systems Organization & Architecture Chapters 8-12 John D. Carpinelli.
Copyright © 2011, Elsevier Inc. All rights reserved. Chapter 6 Author: Julia Richards and R. Scott Hawley.
Author: Julia Richards and R. Scott Hawley
1 Copyright © 2013 Elsevier Inc. All rights reserved. Appendix 01.
Properties Use, share, or modify this drill on mathematic properties. There is too much material for a single class, so you’ll have to select for your.
UNITED NATIONS Shipment Details Report – January 2006.
1 RA I Sub-Regional Training Seminar on CLIMAT&CLIMAT TEMP Reporting Casablanca, Morocco, 20 – 22 December 2005 Status of observing programmes in RA I.
Jeopardy Q 1 Q 6 Q 11 Q 16 Q 21 Q 2 Q 7 Q 12 Q 17 Q 22 Q 3 Q 8 Q 13
Properties of Real Numbers CommutativeAssociativeDistributive Identity + × Inverse + ×
Custom Statutory Programs Chapter 3. Customary Statutory Programs and Titles 3-2 Objectives Add Local Statutory Programs Create Customer Application For.
Mean, Median, Mode & Range
FACTORING ax2 + bx + c Think “unfoil” Work down, Show all steps.
PUBLIC KEY CRYPTOSYSTEMS Symmetric Cryptosystems 6/05/2014 | pag. 2.
Solve Multi-step Equations
REVIEW: Arthropod ID. 1. Name the subphylum. 2. Name the subphylum. 3. Name the order.
PP Test Review Sections 6-1 to 6-6
EU market situation for eggs and poultry Management Committee 20 October 2011.
Business and Economics 6th Edition
Slide 6-1 COMPLEX NUMBERS AND POLAR COORDINATES 8.1 Complex Numbers 8.2 Trigonometric Form for Complex Numbers Chapter 8.
Bellwork Do the following problem on a ½ sheet of paper and turn in.
XML and Databases Exercise Session 3 (courtesy of Ghislain Fourny/ETH)
VOORBLAD.
Name Convolutional codes Tomashevich Victor. Name- 2 - Introduction Convolutional codes map information to code bits sequentially by convolving a sequence.
Solving Quadratic Equations Solving Quadratic Equations
Copyright © 2012, Elsevier Inc. All rights Reserved. 1 Chapter 7 Modeling Structure with Blocks.
1 RA III - Regional Training Seminar on CLIMAT&CLIMAT TEMP Reporting Buenos Aires, Argentina, 25 – 27 October 2006 Status of observing programmes in RA.
Factor P 16 8(8-5ab) 4(d² + 4) 3rs(2r – s) 15cd(1 + 2cd) 8(4a² + 3b²)
Basel-ICU-Journal Challenge18/20/ Basel-ICU-Journal Challenge8/20/2014.
Chapter 1: Expressions, Equations, & Inequalities
1..
CONTROL VISION Set-up. Step 1 Step 2 Step 3 Step 5 Step 4.
© 2012 National Heart Foundation of Australia. Slide 2.
Sets Sets © 2005 Richard A. Medeiros next Patterns.
Understanding Generalist Practice, 5e, Kirst-Ashman/Hull
6.4 Best Approximation; Least Squares
Model and Relationships 6 M 1 M M M M M M M M M M M M M M M M
25 seconds left…...
Subtraction: Adding UP
Equal or Not. Equal or Not
Analyzing Genes and Genomes
1 Let’s Recapitulate. 2 Regular Languages DFAs NFAs Regular Expressions Regular Grammars.
©Brooks/Cole, 2001 Chapter 12 Derived Types-- Enumerated, Structure and Union.
Essential Cell Biology
12 System of Linear Equations Case Study
CSE3201/4500 Information Retrieval Systems
Intracellular Compartments and Transport
PSSA Preparation.
Essential Cell Biology
Immunobiology: The Immune System in Health & Disease Sixth Edition
Energy Generation in Mitochondria and Chlorplasts
Completing the Square Topic
Distributed Computing 9. Sorting - a lower bound on bit complexity Shmuel Zaks ©
1 Decidability continued…. 2 Theorem: For a recursively enumerable language it is undecidable to determine whether is finite Proof: We will reduce the.
Equivalence Relations
Math Review with Matlab:
ChannelCoding Hafiz Malik Dept. of Electrical & Computer Engineering The University of Michigan-Dearborn
Chapter 31 INTRODUCTION TO ALGEBRAIC CODING THEORY.
NOISE-RESISTANT CODING ● Coding Concepts and Technologies of Noise-resistant Coding It's hard to work in a noisy room as it makes it harder to think. Work.
주민등록번호.
Presentation transcript:

by Colin Kriwox

2 Contents Introduction credit card error checking what is a code purpose of error-correction codes Encoding naïve approach hamming codes Minimum Weight Theorem definitions proof of single error-correction Decoding list all possible messages using vectors syndrome Conclusion perfect codes

3 Detect Error On Credit Card

4 Formula for detecting error Let d2, d4, d6, d8, d10, d12, d14, d16 be all the even values in the credit card number. Let d1, d3, d5, d7, d9, d11, d13, d15 be all the odd values in the credit card number. Let n be the number of all the odd digits which have a value that exceeds four Credit card has an error if the following is true: (d1 + d3 + d5 + d7 + d9 + d11 + d13 + d15) x 2 + n + (d2 + d4 + d6 + d8 + d10 + d12 + d14 + d16) 0 mod(10)

5 Detect Error On Credit Card d1 d2d3…d15d16 n = 3

6 Now the test ( ) = 41 ( ) x = = 102 mod (10) = 2 3

7 Credit Card Summary The test performed on the credit card number is called a parity check equation. The last digit is a function of the other digits in the credit card. This is how credit card numbers are generated by Visa and Mastercard. They start with an account number that is 15 digits long and use the parity check equation to find the value of the 16 th digit. “This method allows computers to detect 100% of single-position errors and about 98% of other common errors” (For All Practical Purposes p. 354).

8 What is a code? A code is defined as an n-tuple of q elements. Where q is any alphabet. Ex. 1001n=4, q={1,0} Ex n=16, q={0,1,2,3,4,5,6,7,8,9} Ex. (a,b,c,d,e)n=5, q={a,b,c,d,e,…,y,z} The most common code is when q={1,0}. This is known as a binary code.

9 The purpose A message can become distorted through a wide range of unpredictable errors. Humans Equipment failure Lighting interference Scratches in a magnetic tape

10 Why error-correcting code? To add redundancy to a message so the original message can be recovered if it has been garbled. e.g. message = 10 code =

11 Send a message MessageEncoderChannelDecoderMessage noise

12 Encoding Naïve approach Hamming codes

13 Take Naïve approach Append the same message multiple times. Then take the value with the highest average. Message:= 1001 Encode:= Channel:= Decode: = a1 = Average(1,1,0,1) = 1 a2 = Average(0,0,0,0) = 0... (a1,a2,a3,a4) Message:= 1001

14 Hamming [7,4] Code The seven is the number of digits that make the code. E.g The four is the number of information digits in the code. E.g

15 Hamming [7,4] Encoding Encoded with a generator matrix. All codes can be formed from row operations on matrix. The code generator matrix for this presentation is the following:

16 Hamming [7,4] Codes Codes Possible codes

17 Minimum Weight Theorem Definitions Proof of Theorem

18 Definitions The weight of a code is the number of nonzero components it contains. e.g. wt( ) = 3 The minimum weight of Hamming codes is the weight of the smallest nonzero vector in the code. e.g. d(G)= 3

19 Definitions The distance between two codes u and v is the number of positions which differ e.g. u=(1,0,0,0,0,1,1) v=(0,1,0,0,1,0,1) dist(u,v) = 4 Another definition of distance is wt(u – v) = dist(u,v).

20 Definitions For any u, v, and w in a space V, the following three conditions hold:

21 Definitions The sphere of radius r about a vector u is defined as: e.g. u=(1,0,0,0,0,1,1) (0,0,0,0,0,1,1) (1,1,0,0,0,1,1) (1,0,0,0,0,0,1) (1,0,1,0,0,1,1) (1,0,0,1,0,1,1) (1,0,0,0,1,1,1)

22 Minimum Weight Theorem If d is the minimum weight of a code C, then C can correct t = [(d – 1)/2] or fewer errors, and conversely.

23 Proof Want to prove that spheres of radius t = [(d – 1)/2] about codes are disjoint. Suppose for contradiction that they are not. Let u and w be distinct vectors in C, and assume that uwv

24 Proof By triangle inequality uw v

25 Proof Since spheres of radius t = [(d – 1)/2] so and this gives But since We have a contradiction. Showing the sphere of radius t about codes are disjoint.

26 Result of Theorem Since d(G) = 3 then for t = [(3 – 1)/2] = 1 or fewer errors, the received code is in a disjoint sphere about a unique code word.

27 Decoding list all possible messages using vectors syndrome

28 List all messages This is done by generating a list of all the possible messages. For something small like the Hamming [7,4] codes the task is feasible, but for codes of greater length it is not. An example of a list is as follows: Code words … Other Received Words ………

29 List all messages For example, if the received code was then it would be decoded to from the list. Code words … Other Received Words ………

30 Vector Decoding Let a:=(0,0,0,1,1,1,1), b:=(0,1,1,0,0,1,1), and c:=(1,0,1,0,1,0,1). If then inner product =

31 Vector Decoding Correct errors by taking inner product of received vector u by a, b, c. We get e.g. recall: a:=(0,0,0,1,1,1,1), b:=(0,1,1,0,0,1,1), and c:=(1,0,1,0,1,0,1). MessageEncoderChannelDecoderMessage noise ? Error at 100 = digit 4. Decode to and message equals 1001

32 syndrome Decodes without having to derive decoding vectors. In addition to decoding Hamming [7,4] it can decode other codes More feasible than a list of messages

33 syndrome The cosets of C are determined by Some facts about cosets: (i)Every coset of C has the same number of elements as C does (ii) Any two cosets are either disjoint or identical (iii) V is the union of all cosets of C (iv) C has cosets

34 syndrome A Coset leader is the vector with the minimum weight in the coset. The parity check matrix is found by solving the generator matrix for

35 syndrome The first step is to create a list of syndromes corresponding the coset leaders. The syndrome of each vector y is found by When a code is received, the syndrome is computed and compared to the list of syndromes. Let the coset leader to the syndrome by e. Finally the code is decoded to x = y – e.

36 Syndrome example Note that G=(I | A) and H = ( | I).

37 Syndrome example Let x:= be the original message MessageEncoderChannelDecoderMessage noise ? Compute the syndrome of the received code

38 Conclusion A code of minimum weight d is called perfect if all the vectors in V are contained in the sphere of radius t = [(d – 1)/2] about the code-word. The Hamming [7,4] code has eight vectors of sphere of radius one about each code-word, times sixteen unique codes. Therefore, the Hamming [7,4] code with minimum weight 3 is perfect since all the vectors (128) are contained in the sphere of radius 1.