A bit of magic

# A bit of magic

Télécharger la présentation

## A bit of magic

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
##### Presentation Transcript

1. A bitofmagic A.J. Han Vinck A.J. Han Vinck, China 2012

2. Some German history in China (1897-1914) Tsingtao (Germania) brewery

3. My cooperation with Chinese scientists Background Application • Fang-Wei Fu Information theory Flash Memory • Yuan Luo Error Control Coding Networking • Yanling Chen Wiretap channel Biometrics • Feng-Wen Sun Mathematics Convolutional Codes Common link? Fang-Wei Fu from Nankai University A.J. Han Vinck, Jinan 2011

4. Error correction isneeded in hightechdevices A.J. Han Vinck, China 2012

5. fundamental limitssetby Shannon (1948) The Bell System Technical Journal, Vol. 27, pp. 379–423, 623–656, October, 1948. Bell Labs, 1955. Fundamental problem: reproducingatthereceiver a messageselectedatthetransmitter Shannon‘scontribution: - bound on theefficiency (capacity) - howtoachievethebound A.J. Han Vinck, China 2012

6. Introduction to the basic concepts message: Alpha codeword: (0 1 0 1 0 1 0 1) transmission error (0 0 0 1 0 1 0 1) decode (0 1 0 1 0 1 0 1) translate: Alpha How can we do that? A.J. Han Vinck, Jinan 2011

7. It works as follows • Use the difference in transmitted vectors to recover the transmitted original Example: 4 messages encoded as A 00 000 B 01 011 C 10 101 D  11 110 the words differ in at least 3 positions Hence, one difference (error) can be detected and corrected: receive: 10110 the transmitted message is? 11110 A.J. Han Vinck, Jinan 2011

8. 1-Error correctionstartedby Hamming (1950) 1 2 3 (3,1) (7,4) 123 000 111 (31,26) 3567 124 0000 000 1000 110 0100 101 ••• 1111 111 minimumdistancedmin= 3 A.J. Han Vinck, China 2012

9. Whataretheclassical research problems Codebook: maximize - # ofcodewordsoflength n - minimumdistancedmin • Channel characterization: • Types oferrors; memory in thenoisebehavior ? • Channel Capacity? • Decoder: • Design of a decoding/decisionalgorithm • Minimize complexity A.J. Han Vinck, China 2012

10. Lecturecontent Goal:giveexamples, different from just errorcorrection - improvestorageefficiency in flashmemory - givebiometricsprivacy - code design for variable efficiency in networking - permutationcodesfor non-traditional errormodels A.J. Han Vinck, China 2012

11. Ibm punch card „a flash memory“ Write, read and refresh Write, read and erase, but ••• Write, read and throw away, but ••• On the Capacity of Write-Unidirectional Memories with Nonperiodic Codes”, IEEE Transactions on Information theory, April 2004, pp. 649-656, (Fang-Wei Fu, A.J. Han Vinck, Victor Wei, Raymond Yeung) A.J. Han Vinck, China 2012

12. A modern ROM: the Flash Memory Cell array in a flash memory A flash memory cell (Floating gate) • A flash memory cell stores charge / data • We can only increase the cell charge • If charge top level is reached, erase memory block A.J. Han Vinck, China 2012

13. Writing in a q-ary flash memory cell Strategy for writing:increase charge content or stay at presentcontent Start at 0 cell charge level value bit Input 1, 0, 1, 0, 0, 0, 1, 1, 0, 1 1, 2, 3, 4, 4, 4, 5, 5, 6, 7 Cell Level 0 7 1 6 0 5 1 4 0 3 1 2 0 1 1 0 0 A.J. Han Vinck, 2011 A.J. Han Vinck, China 2012

14. Use thememory T=4 times: how many sequences we can write into the memory? q = 2: T+1 = 5 words write 0000 0011 0111 1111 0001 Note: writerandreader must knowthecontent! q = 3: 5 +T(T-1)/2 = 11 words write 0000 0011 0111 1111 0001 0012 0112 1112 0122 1122 1222 Capacity: log2|#sequences | ≈ (q-1) log2 (T+1) A.J. Han Vinck, China 2012

15. Performance of the 1 step up strategy probability P(1) = 1 – P(0) = p p 1-p cell level 1 0 1 0 1 0 1 0 average number of writes to reach top level Probability (level change) = 2p(1-p) A.J. Han Vinck, China 2012

16. Example of Codes: 2 bits in 3 cellsbefore erasing 2 bits 2 bits A.J. Han Vinck, China 2012

17. A.J. Han Vinck, China 2012

18. CodingforNoisyBiometricsusedas a key/password I am Han, can I come in? • - verifyclaimedidentitywithstoredinformation • problems: • Errors atauthentication: FalseRejection(FRR)/ FalseAcceptance(FAR) • Leakage: attackerfindsinformationaboutbiofrom Data Base (DB) A.J. Han Vinck, China 2012

19. the Juels-Wattenberg scheme (binary) b‘(io) b(io) Random Codeword c c  b  b‘ = c  e c  b c  b c  b Enrollment Authentication Hash(c) = ? Data Base Hash(c) Y/N Hash(c) Ourcontributions: useknowledgeofbioatenrollmenttoencode use c  b fromdatabasetoimprovedecision on c Yanling Chen and Han Vinck, A fresh look into the biometric authentication: Perspective from Shannon’s secrecy system and a special wiretap channel, Secrypt, 2011 V. B. Balakirsky, A. R. G. and A. J. Han Vinck, Permutation block coding from biometrical authentication, Proc. 7th Int. Conf. on Computer Science and Info. Technologies, 2009 A.J. Han Vinck, China 2012

20. Juels-Wattenbergfor RS codes Secret s { 1,2,•••,2k } → RS codeword c = c1,c2,c3,••• ,cn c* b(io) changes n - t positions b => ---  --- ----- Enrollment:store c* Authentication:b‘ pointsat n- t „incorrect“ positions in c* these positions are considered as erasures: for t  k : dmin n– k + 1 – (n-t) = t – k + 1 Increasing k reduces FAR, but increases FRR A.J. Han Vinck, China 2012

21. Research topics we work on • Translation fromBioto Template • Iris, fingerprint, etc • Investigation oferrorbehavior • Burst, impulsive, non-linear • Performance estimationfor real data Practicalperformance FAR, FRR, etc. • Usingothertechniques, such asdatacompression • Fault tolerant hashing 011001… 000001… A.J. Han Vinck, China 2012

22. Mondriaan A.J. Han Vinck, China 2012

23. Optimum distanceprofile (intro) Encoder for binary linear(n,k) codes: infogeneratormatrixcodeword k bits n nbits x •k G = c Example: equivalent Hamming code generators with dmin = 3 ( minimum # of differences) 1 0 0 0 1 1 1 1 1 1 1 1 1 1 0 1 0 0 1 0 1 1 1 1 0 1 0 0 0 0 1 0 1 1 0 1 1 0 1 0 0 1 0 0 0 1 0 1 1 1 0 1 1 0 1 0 The matricesgenerate the same codewords G = ≡ A.J. Han Vinck, China 2012

24. Motivation (2) 32 • UMTS: starting code (32,6) Reed Muller code, dmin = 16 6 • UMTS: extend to (32,10) code in best possible way IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 56, NO. 9, SEPTEMBER 2010 4309 A Lower Bound on the Optimum Distance Profiles of the Second-Order Reed–Muller Codes Yanling Chen and A. J. Han Vinck IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 56, NO. 3, MARCH 2010 1007 On the Optimum DistanceProfilesAbout Linear Block Codes Yuan Luo, A. J. Han Vinck, andYanling Chen A.J. Han Vinck, China 2012

25. Motivation (2) • From (32,6), dmin= 16 to bound • (32,7) dmin 14 • (32,8) dmin 13 • (32,9) dmin 12 • (32,10) dmin 12 • (32,11) dmin 12 is also possible ! QUESTION: is this possible? REFERENCE: Markus Grassl (grassl@ira.uka.de). A.J. Han Vinck, China 2012

26. Optimum distance profile (for the Hamming code) G0 = one row of G: dmin = 7 G1 = add one row of G: dmin = 3 PROFILE : (7, 3, 3, 3) G2 = add one row of G: dmin = 3 G3 = add one row of G: dmin = 3 G fortheHamming CODE A.J. Han Vinck, China 2012

27. Optimum distanceprofile (idea 2) G0 = one row of G: dmin = 4 G1 = add one row of G: dmin = 4 PROFILE : (4, 4, 4, 3) G2 = add one row of G: dmin = 4 G3 = add one row of G: dmin = 3 G fortheHamming CODE A.J. Han Vinck, China 2012

28. Research problem: optimizedistanceprofile Inverse Optimum Distance profile: Д:= (0, 1, 2,3 ) Ex: (7,3,3,3) better than (4,4,4,3) • General problem: find ODP forclassesofcodes • like: Reed-Muller • BCH • Golaycode • ••• A.J. Han Vinck, China 2012

29. Binary Extended Golay code (24,12,8) Binary Extended Golay code (24,12,8) • UseGrassl (http://www.codetables.de/) # rows: 12 11 10 9 8 7 6 5 4 3 2 1 • Dinvupper-bound := (8,8,8,8,8, 10,10, 12, 12,13,16,24) • ODPinv-BGolay = (8,8,8,8,8, 8, 8, 8, 12,12,12,24) Why? 1. All onesshouldbethefirstrow (weight 24) hence10= 16 cannotoccur Codewordweights: 0, 8, 12, 16, 24 2. thereis a unique (24,5,12) code ( codewordweights: 12 and 16) D.B. Jaffe, optimal binary linear codesoflength 30, Discr. Math., vol 223, pp. 135-155, 2000 3. a codewith n = 24 and k = 4, d = 12 exists 3 2 1 Codewords: (1111111-1111111-11111111), (10100110-10100110-10100110) (01001110-01001110-01001110), (00111010-00111010-00111010) A.J. Han Vinck, China 2012

30. The Optimum distanceprofile in practice CWTS STD-TDD-103 Currently, a [32,10,12] sub-code of the second order Reed-Muller Code is used in the TFCI coding. An easy improvement can be obtained by extending it to a [32,11,12] sub-code . Figure 6: Channel coding of TFCI bits A.J. Han Vinck, China 2012

31. Escher A.J. Han Vinck, China 2012

32. Permutation codes • Idea: present codewords as balls in an array 6 word 1 5 4 word 2 number 3  = 4 2 1 time 1 4 5 3 2 6 • One ball per column and one per row A.J. Han Vinck, China 2012

33. effect of noise on permutation codes (simplified) t f Transmitted Background-insertion Background-deletion Impulsive-broadband narrowband-jammer frequency selective fading A.J. Han Vinck, China 2012

34. A practical example: Spread-FSK f0 f1 2-FSK mode Send: f0 or f1 : Detector: uses FSK or On-Off keying mode Advantages:robust against narrowband noise f f1 On-off mode f alternative Permutation code, dmin = 2 Send: (f0,f1 ) or (f1,f0 ) i.e. R = 1/2 Detector: select max. # of agreements Advantages:robust against: narrowband + impulsive noise + random f0 f1 t A.J. Han Vinck, China 2012

35. Code parameters • Upperbound on cardinality of the code Q1: when do we achieve equality? Q2: if not, what is the upperbound • References: - Ian Blake, Permutation codes for discrete channels (1975, IT) - P. Frankl and M. Deza, On the max. # of Permutationswithgiven Max. orMin. Distance (1977, Jrnl of Comb. Th.) - T. Klöve: |C| = 18 for M = 6, D = 5 instead of 30 # of permutations reduction for distance A.J. Han Vinck, China 2012

36. Someanswerstothequestions • all cases M < 7 solved • Interesting cases left ? • Dp = 2 3 4 5 6 7 8 9 10 • 6 x xx18 x |C| = 18 istheKlöve (2000) result • 7 x x? ?x xproofthatthemaxcodesizeis 18 • M 8 x x? ?x xxforDp = 5, M = 6. • 9 x x? ?? x xx M! = 720 possiblecodewords • 10 x x? ?? ? x ?x A.J. Han Vinck, China 2012

37. Existing code constructions • Dp = M; Dp = M-1 , where M is prime (power) • Dp = 2; Dp = 3 • The Mathieu groups • M11 Dp = 8 |C| = 7920 • M12 Dp = 8 |C| = 95040 • Codes with distance Dp = M-2 exist for • M = 1 + pn |C| = pn(1+pn)(pn-1) A.J. Han Vinck, China 2012

38. Code performance Performance: conform • Correct decoding if # error events ( impulse + narrow + background + fading ) < Dp an error event hits a codeword only at one place • An efficient trellis based decoding scheme has been designed for low complexity decoding Hendrik C. Ferreira, A. J. Han Vinck, Theo G. Swart, Ian de Beer. Permutation trelliscodes. IEEE Transactions on Communications, 2005: 1782~1789 A.J. Han Vinck, China 2012

39. Conclusions • extremely suited for dirty channels • Impulse-, narrow band -, background noise, fading • Problems to work on: • Cardinality of the codes: upperbound can be obtained, but not always • Encoding complexity no linear encoding • Decoding complexity no easy decoding algorithm due to non-linearity • Performance analysis on real channels • Applications in Powerline Communications and Flash memories - Coded Modulation for Powerline Communications, In AEÜ Journal, 2000, pp. 45-49, Jan 2000, A.J. Han Vinck - Rank Modulation for Flash Memories, A. Jiang, Member, R. Mateescu, M. Schwartz, J.Bruck, IEEE Tr. IT, JUNE 2009 A.J. Han Vinck, China 2012

40. Our (Olaf hooijenandme) modem design based on permutationcodes, 1997, Cebit Hannover A.J. Han Vinck, China 2012

41. Some lessons I learned • Coding has a mathematical and a systems aspect • Applications are widespread: from networking to chip level • Implementations lead to low complexity algorithms • Viterbi (Convolutional Codes) • Berlekamp Massey (RS-codes) • Background knowledge in Information and Communication theory and combinatorics necessary • Cooperation with different disciplines important A.J. Han Vinck, China 2012

42. Myscientific genealogy • Friedrich Leibniz (1597, Leipzig) • Carl Friedrich Gauß (Göttingen) • Ernst Adolph Guillemin (München) • Robert Mario Fano (MIT) • John McReynolds Wozencraft (MIT) • Thomas Kailath (Stanford) • Johan Pieter M. Schalkwijk (Stanford-TUE) • Me (University Duisburg-Essen, Germany) A.J. Han Vinck, Jinan 2011

43. my scientific Genealogy (coincidence?)http://genealogy.math.ndsu.nodak.edu/ • Friedrich Leibnitz (1597, Leipzig) • Carl Friedrich Gauß (Göttingen) • John M. Wozencraft (MIT) (1925-2009) • Me (University Duisburg-Essen, Germany) • Digital Communications and - Codingtechniques A.J. Han Vinck, China 2012

44. A.J. Han Vinck, China 2012

45. EARLIEST DEPICTION OF JUGGLING knownshowsskillfulEgyptianwomen on the 15th Beni Hassan tombof an unknownprincefromtheMiddleKingdomperiodofabout 1994 to 1781 B.C Shannon jugglingmachineandjugglingtheorem A.J. Han Vinck, China 2012

46. A.J. Han Vinck, China 2012

47. Traditional Jeju (Korean) Channel Codeis there a Chinese equivalent? A.J. Han Vinck, China 2012

48. A Relatedproblem: codegenerator partitioning d2 d1 Code generator make d2as large aspossibleforanygeneratorfor a specificcode A.J. Han Vinck, China 2012

49. Optimum distanceprofile (idea 1) Start with G fortheHamming CODE G0 = 4 rows of G: dmin = 3 PROFILE (3, 4, 4, 4) G1 = delete one row of G: dmin = 4 G2 = delete one row of G: dmin = 4 G3 = 1 row of G: dmin = 4 A.J. Han Vinck, China 2012

50. Optimum distanceprofile (idea 1) Start with G fortheHamming CODE G0 = 4 rows of G: dmin = 3 PROFILE (3, 3, 3, 7) G1 = delete one row of G:dmin = 3 G2 = delete one row of G: dmin = 3 G3 = 1 row of G: dmin = 7 A.J. Han Vinck, China 2012