jet list decoding d j bernstein university of illinois at
play

Jet list decoding D. J. Bernstein University of Illinois at Chicago - PDF document

Jet list decoding D. J. Bernstein University of Illinois at Chicago Thanks to: NSF 1018836 NIST 60NANB10D263 No thanks to: IEEE violating IEEE policies and forcing authors to take papers offline; see cr.yp.to/writing/ieee.html Decoding


  1. Jet list decoding D. J. Bernstein University of Illinois at Chicago Thanks to: NSF 1018836 NIST 60NANB10D263 No thanks to: IEEE violating IEEE policies and forcing authors to take papers offline; see cr.yp.to/writing/ieee.html

  2. Decoding The ✔ ✇ -error decoding problem for a linear code ❈ ✒ F ♥ q : ✎ Output: ❝ ✷ ❈ . ✎ Input: ✈ ✷ F ♥ q with ❥ ✈ � ❝ ❥ ✔ ✇ . Note that output is unique if ✇ ❁ 1 2 min ❢❥ ❝ ❥ : ❝ ✷ ❈ � ❢ 0 ❣❣ . Notation: ❥ ✈ ❥ = # ❢ ✐ : ✈ ✐ ✻ = 0 ❣ = Hamming weight of ✈ ; e.g. ❥ ✈ � ❝ ❥ = # ❢ ✐ : ✈ ✐ ✻ = ❝ ✐ ❣ = Hamming distance from ✈ to ❝ .

  3. Reed–Solomon decoding Choose integer t ✕ 0, integer ♥ ✕ t , prime power q ✕ ♥ , distinct ❛ 1 ❀ ✿ ✿ ✿ ❀ ❛ ♥ ✷ F q . Define ❈ ✒ F ♥ q as the code ✟ ✠ ev ❢ : ❢ ✷ F q [ ① ] ❀ deg ❢ ❁ ♥ � t where ev ❢ = ( ❢ ( ❛ 1 ) ❀ ✿ ✿ ✿ ❀ ❢ ( ❛ ♥ )). min ❢❥ ❝ ❥ : ❝ ✷ ❈ � ❢ 0 ❣❣ = t + 1. Exception: ✶ if t = ♥ . 1960 Peterson in some cases, 1961 Gorenstein–Zierler in more, 1965 Forney in general: ✔❜ t❂ 2 ❝ -error decoding for ❈ takes time ♥ ❖ (1) if q ✷ ♥ ❖ (1) .

  4. Big research direction #1: Decode faster. 1968 Berlekamp: ✔❜ t❂ 2 ❝ -error decoding for ❈ costs ❖ ( ♥t ) operations in F q plus root-finding in F q . Time ♥ 2+ ♦ (1) for typical t❀ q . 1976 Justesen, independently 1977 Sarwate: Faster algorithm for large ♥ , ♥ (lg ♥ ) 2+ ♦ (1) instead of ❖ ( ♥t ). Time ♥ 1+ ♦ (1) for typical t❀ q . Extensive literature on further speedups.

  5. Decoding more codes Big research direction #2: Modify ❈ to expand and improve tradeoffs between q , ♥ , # ❈ , ✇ . e.g. Replace ❈ ✒ F ♥ q , q = 2 ♠ , with F 2 -subfield subcode F ♥ 2 ❭ ❈ . # ❈ = q ♥ � t ✮ #( F ♥ 2 ❭ ❈ ) ✕ 2 ♥ � ♠t . Any ✔ ✇ -error decoder for ❈ also works for F ♥ 2 ❭ ❈ . Can take F ♥ 2 ❭ ❈ where ❈ is RS, but better to twist carefully. Obtain classical F 2 Goppa codes decoding twice as many errors. Better for large ♥ : AG codes.

  6. List decoding Big research direction #3: Decode more errors for same ❈ . Maybe output ❝ isn’t unique. Decoding problem asks for some ❝ with ❥ ✈ � ❝ ❥ ✔ ✇ . List-decoding problem asks for all ❝ with ❥ ✈ � ❝ ❥ ✔ ✇ . Trivial approach: Brute force. e.g. guess ✇ � ❜ t❂ 2 ❝ errors and use any ✔ ❜ t❂ 2 ❝ -error decoder. (For list decoding, use a covering set of guesses.) Very slow for large ✇ � ❜ t❂ 2 ❝ .

  7. Reed–Solomon list decoding 1996 Sudan for smaller ✇ , 1998 Guruswami–Sudan in general: ♣ If ✇ ❁ ♥ � ♥ ( ♥ � t � 1) then ✔ ✇ -error list decoding for ❈ = ✟ ✠ ev ❢ : ❢ ✷ F q [ ① ] ❀ deg ❢ ❁ ♥ � t takes time ♥ ❖ (1) if q ✷ ♥ ❖ (1) .

  8. Reed–Solomon list decoding 1996 Sudan for smaller ✇ , 1998 Guruswami–Sudan in general: ♣ If ✇ ❁ ♥ � ♥ ( ♥ � t � 1) then ✔ ✇ -error list decoding for ❈ = ✟ ✠ ev ❢ : ❢ ✷ F q [ ① ] ❀ deg ❢ ❁ ♥ � t takes time ♥ ❖ (1) if q ✷ ♥ ❖ (1) . 2001 Koetter–Vardy: Assume q = 2 ♠ ; write ♥ ✵ = ♥❂ 2. If ✇ ❁ ♥ ✵ � ♥ ✵ ( ♥ ✵ � t � 1) then ♣ ✔ ✇ -error list decoding for F ♥ 2 ❭ ❈ takes time ♥ ❖ (1) if q ✷ ♥ ❖ (1) . ♥ ( ♥ � t � 1) ✙ t❂ 2 + t 2 ❂ 8 ♥ . ♣ ♥ � ♥ ✵ � ♥ ✵ ( ♥ ✵ � t � 1) ✙ t❂ 2+ t 2 ❂ 4 ♥ . ♣

  9. Guruswami–Sudan cost analysis: ❖ ( ♥ 3 ❵ 6 ) operations in F q where ❵ is an algorithm parameter. Extensive literature on speedups and adaptations to more codes. Critical Howgrave-Graham idea, with state-of-the-art subroutines: ♥ 1+ ♦ (1) ❦ 1+ ♦ (1) ❵ ❁ 3 where ❦ is another parameter; ❦ ❁ ❵ . For Howgrave-Graham analysis see 2010 Cohn–Heninger (which also adapts to AG etc.), 2011 Bernstein “simplelist” (combining with Koetter–Vardy).

  10. What are these parameters ❦❀ ❵ ? Obviously critical for speed. Why not take ❦❀ ❵ to be small? Answer: Decreasing ❦❀ ❵ forces gap between ✇ and its limit. Almost all list-decoding methods have essentially the same gap.

  11. What are these parameters ❦❀ ❵ ? Obviously critical for speed. Why not take ❦❀ ❵ to be small? Answer: Decreasing ❦❀ ❵ forces gap between ✇ and its limit. Almost all list-decoding methods have essentially the same gap. But not all! Much better ❦❀ ❵❀ ✇ tradeoff in “rational” list-decoding methods: 2007 Wu “New list decoding”; 2008 Bernstein “goppalist”; 2011 Bernstein “jetlist”.

  12. Jets The set of 1-jets over R is the quotient ring R [ ✎ ] ❂✎ 2 . Analogous to the set of complex numbers C = R [ ✐ ] ❂ ( ✐ 2 + 1), but ✎ 2 = 0 while ✐ 2 = � 1. Multiplication of jets: ( ❛ + ❜✎ )( ❝ + ❞✎ ) = ❛❝ + ( ❛❞ + ❜❝ ) ✎ . Typical construction of a jet: differentiable ❢ : R ✦ R induces jet ❢ ( ① + ✎ ) = ❢ ( ① ) + ❢ ✵ ( ① ) ✎ for each ① ✷ R . e.g. sin( ① + ✎ ) = sin ① + (cos ① ) ✎ .

  13. Recap for late sleepers 50 years ago: Polynomial-time decoding of ✔ ❜ t❂ 2 ❝ errors in length- ♥ Reed–Solomon code ✟ ✠ ev ❢ : ❢ ✷ F q [ ① ] ❀ deg ❢ ❁ ♥ � t . Big research directions since then: 3. Decode more errors. Output might not be unique: have list of possible codewords. 2. Improve choice of code: classical Goppa codes, AG, et al. 1. Decode faster.

  14. Lattice-basis reduction Define ▲ = (0 ❀ 24) Z + (1 ❀ 17) Z = ❢ ( ❜❀ 24 ❛ + 17 ❜ ) : ❛❀ ❜ ✷ Z ❣ . What is the shortest nonzero vector in ▲ ?

  15. Lattice-basis reduction Define ▲ = (0 ❀ 24) Z + (1 ❀ 17) Z = ❢ ( ❜❀ 24 ❛ + 17 ❜ ) : ❛❀ ❜ ✷ Z ❣ . What is the shortest nonzero vector in ▲ ? ▲ = (0 ❀ 24) Z + (1 ❀ 17) Z

  16. Lattice-basis reduction Define ▲ = (0 ❀ 24) Z + (1 ❀ 17) Z = ❢ ( ❜❀ 24 ❛ + 17 ❜ ) : ❛❀ ❜ ✷ Z ❣ . What is the shortest nonzero vector in ▲ ? ▲ = (0 ❀ 24) Z + (1 ❀ 17) Z = ( � 1 ❀ 7) Z + (1 ❀ 17) Z

  17. Lattice-basis reduction Define ▲ = (0 ❀ 24) Z + (1 ❀ 17) Z = ❢ ( ❜❀ 24 ❛ + 17 ❜ ) : ❛❀ ❜ ✷ Z ❣ . What is the shortest nonzero vector in ▲ ? ▲ = (0 ❀ 24) Z + (1 ❀ 17) Z = ( � 1 ❀ 7) Z + (1 ❀ 17) Z = ( � 1 ❀ 7) Z + (3 ❀ 3) Z

  18. Lattice-basis reduction Define ▲ = (0 ❀ 24) Z + (1 ❀ 17) Z = ❢ ( ❜❀ 24 ❛ + 17 ❜ ) : ❛❀ ❜ ✷ Z ❣ . What is the shortest nonzero vector in ▲ ? ▲ = (0 ❀ 24) Z + (1 ❀ 17) Z = ( � 1 ❀ 7) Z + (1 ❀ 17) Z = ( � 1 ❀ 7) Z + (3 ❀ 3) Z = ( � 4 ❀ 4) Z + (3 ❀ 3) Z .

  19. Lattice-basis reduction Define ▲ = (0 ❀ 24) Z + (1 ❀ 17) Z = ❢ ( ❜❀ 24 ❛ + 17 ❜ ) : ❛❀ ❜ ✷ Z ❣ . What is the shortest nonzero vector in ▲ ? ▲ = (0 ❀ 24) Z + (1 ❀ 17) Z = ( � 1 ❀ 7) Z + (1 ❀ 17) Z = ( � 1 ❀ 7) Z + (3 ❀ 3) Z = ( � 4 ❀ 4) Z + (3 ❀ 3) Z . ( � 4 ❀ 4) ❀ (3 ❀ 3) are orthogonal. Shortest vectors in ▲ are (0 ❀ 0), (3 ❀ 3), ( � 3 ❀ � 3).

  20. � � ✎ ✎

  21. � � ✎ ✎ ✎

  22. � � ✎ ✎ ✎ ✎

  23. � � ✎ ✎ ✎ ✎ ✎

  24. � � ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎

  25. Another example: Define ▲ = (0 ❀ 25) Z + (1 ❀ 17) Z . What is the shortest nonzero vector in ▲ ?

  26. Another example: Define ▲ = (0 ❀ 25) Z + (1 ❀ 17) Z . What is the shortest nonzero vector in ▲ ? ▲ = (0 ❀ 25) Z + (1 ❀ 17) Z

  27. Another example: Define ▲ = (0 ❀ 25) Z + (1 ❀ 17) Z . What is the shortest nonzero vector in ▲ ? ▲ = (0 ❀ 25) Z + (1 ❀ 17) Z = ( � 1 ❀ 8) Z + (1 ❀ 17) Z

  28. Another example: Define ▲ = (0 ❀ 25) Z + (1 ❀ 17) Z . What is the shortest nonzero vector in ▲ ? ▲ = (0 ❀ 25) Z + (1 ❀ 17) Z = ( � 1 ❀ 8) Z + (1 ❀ 17) Z = ( � 1 ❀ 8) Z + (3 ❀ 1) Z .

  29. Another example: Define ▲ = (0 ❀ 25) Z + (1 ❀ 17) Z . What is the shortest nonzero vector in ▲ ? ▲ = (0 ❀ 25) Z + (1 ❀ 17) Z = ( � 1 ❀ 8) Z + (1 ❀ 17) Z = ( � 1 ❀ 8) Z + (3 ❀ 1) Z . Nearly orthogonal. Shortest vectors in ▲ are (0 ❀ 0), (3 ❀ 1), ( � 3 ❀ � 1).

  30. � � ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎ ✎

  31. Polynomial lattices Define ❘ = F 2 [ ① ], r 0 = (101000) ① = ① 5 + ① 3 ✷ ❘ , r 1 = (10011) ① = ① 4 + ① + 1 ✷ ❘ , ▲ = (0 ❀ r 0 ) ❘ + (1 ❀ r 1 ) ❘ . What is the shortest nonzero vector in ▲ ?

  32. Polynomial lattices Define ❘ = F 2 [ ① ], r 0 = (101000) ① = ① 5 + ① 3 ✷ ❘ , r 1 = (10011) ① = ① 4 + ① + 1 ✷ ❘ , ▲ = (0 ❀ r 0 ) ❘ + (1 ❀ r 1 ) ❘ . What is the shortest nonzero vector in ▲ ? ▲ = (0 ❀ 101000) ❘ + (1 ❀ 10011) ❘

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend