sampling algorithms for lattice gaussian codes
play

Sampling Algorithms for Lattice Gaussian Codes based on joint work - PowerPoint PPT Presentation

Lattice Coding & Crypto Meeting Antonio Campello Sampling Algorithms for Lattice Gaussian Codes based on joint work with J.-C. Belfiore (Huawei Technologies France) Discrete Gaussian Measures f : R n R + D : [0 , 1] is a


  1. Lattice Coding & Crypto Meeting Antonio Campello Sampling Algorithms for Lattice Gaussian Codes based on joint work with 
 J.-C. Belfiore (Huawei Technologies France)

  2. Discrete Gaussian Measures f : R n → R + D : Λ → [0 , 1] Λ is a discrete set �k x k 2 �k x k 2 D ( x ) ∝ e f ( x ) ∝ e 2 σ 2 2 σ 2 e − k x k 2 2 σ 2 1 2 πσ 2 ) n e − k x k 2 D ( x ) = f ( x ) = 2 σ 2 e − k x k 2 √ ( P 2 σ 2 x ∈ Λ Lattice Coding and Crypto Meeting

  3. Discrete Gaussian Measures In Computer Science (lattice-based crypto): decoding algorithms [Klein ‘2000], homomorphic encryption, identity-based encryption [Regev ’05], complexity reductions In Mathematics: discrete Fourier analysis, transference theorems ([Banaszczyk ’92], [Cai ’03]), theta series,… 
 In Communications: non-uniform signaling [Kschischang and Pasupathy ’93], semantically secure codes [Ling et al. ’15], capacity achieving in the AWGN [Ling and Belfiore ’15], compound and ergodic fading channels , [Campello, Ling and Belfiore ’16] 
 In Mechanical Statistics: Maxwell-Boltzmann distribution 
 … Lattice Coding and Crypto Meeting

  4. Discrete Gaussian Measures In Computer Science (lattice-based crypto): decoding algorithms [Klein ‘2000], homomorphic encryption, identity-based encryption [Regev ’05], complexity reductions In Mathematics: discrete Fourier analysis, transference theorems ([Banaszczyk ’92], [Cai ’03]), theta series,… 
 In Communications: non-uniform signaling [Kschischang and Pasupathy ’93], semantically secure codes [Ling et al. ’15], capacity achieving in the AWGN [Ling and Belfiore ’15], compound and ergodic fading channels , [Campello, Ling and Belfiore ’16] 
 In Mechanical Statistics: Maxwell-Boltzmann distribution 
 … Lattice Coding and Crypto Meeting

  5. 
 
 
 
 
 
 
 
 
 
 
 
 Lattice Gaussian Sampling Problem A lattice is a discrete subgroup of . 
 R n Sampling Algorithm x ∈ Λ Given a lattice and a parameter ,outputs a point with probability 
 Λ σ > 0 e − k x k 2 2 σ 2 D Λ , σ ( x ) = e − k x k 2 P 2 σ 2 x ∈ Λ Non-centered version: 
 e − k x + c k 2 2 σ 2 D Λ + c , σ ( x ) = e − k x + c k 2 P 2 σ 2 x ∈ Λ Lattice Coding and Crypto Meeting

  6. 
 
 
 Motivation: Simulating Probabilistic Shaping Lattice codes for the Gaussian channel: 
 - Transmitter maps a « message » to a lattice point 
 x ∈ Λ - Receiver observes a distorted version 
 N (0 , σ 2 c ) y = x + z P (ˆ x 6 = x ) and guesses in order to minimize error probability ˆ x Messages are constrained (power-constraint) 1 h k x k 2 i  P nE Lattice Coding and Crypto Meeting

  7. Motivation: Simulating Probabilistic Shaping Messages are constrained (power-constraint) 1 h k x k 2 i  P nE Deterministic Shaping: Choose a shaping region and a S ⊂ R n code - e.g. cube, ball, or Voronoi region of sub-lattice S ∩ Λ Probabilistic Shaping: Pick (and adjust variance) x ∼ D Λ , σ [Forney ’89] Coding gain versus shaping gain How to sample the lattices with best coding gain ? (known in low dimensions) Lattice Coding and Crypto Meeting

  8. Lattice Gaussian Sampling Problem Hardness: In general, as hard as finding the shortest vector in a lattice [Aggarwal et al ’14] and [Stephens-Davidowitz ’15]. Universal algorithms (the Metropolis-Hastings-Klein algorithm) perform slow √ σ = 1 / over specific lattices. E.g.: 24-dim Leech lattice and requires 2 π 24 × 13434 = 322416 calls of an uni-dimensional sampler [Wang, Ling ’14] 
 In Communications: sampling from special lattices (constructed from error correcting codes, having decomposition as union of cosets, etc…). Applications: towards Gaussian shaping, lattice decoding. 
 Insights between lattice Gaussian codes and theta series Lattice Coding and Crypto Meeting

  9. Gaussian Measures: 
 One Dimensional 0.15 0.10 0.05 0.00 - 6 - 4 - 2 0 2 4 6 σ = 2 . 5 Lattice Coding and Crypto Meeting

  10. Gaussian Measures: 
 One Dimensional 0.25 0.20 0.15 0.10 0.05 0.00 - 6 - 4 - 2 0 2 4 6 σ = 1 . 5 Lattice Coding and Crypto Meeting

  11. Gaussian Measures: 
 One Dimensional 0.8 0.6 0.4 0.2 0.0 - 6 - 4 - 2 0 2 4 6 σ = 0 . 5 Lattice Coding and Crypto Meeting

  12. Gaussian Measures: 
 One Dimensional 1.0 0.8 0.6 0.4 0.2 0.0 - 6 - 4 - 2 0 2 4 6 σ = 0 . 1 Lattice Coding and Crypto Meeting

  13. Gaussian Measures: 
 One Dimensional 0.00015 0.00010 0.00005 0.00000 - 6 - 4 - 2 0 2 4 6 σ = 5 × 10 3 Lattice Coding and Crypto Meeting

  14. One Dimensional Sampler (not so fast…) x ∼ N (0 , σ 2 ) b x e Wrong Idea: Generate and output 0.8 0.6 0.4 0.2 - 4 - 2 2 4 Lattice Coding and Crypto Meeting

  15. One Dimensional Sampler Rejection Algorithm [Brakerski et al. ’13] I = { c − l, c − ( l − 1) , . . . , 1 − c, c, . . . , c + l } Set and calculate p I = D σ 2 , Z + c ( I ) p 0 ( i ) = D σ 2 , Z + c ( i ) /p I , i ∈ I 1) With probability sample on the finite distribution in I p I (1 − p I ) 2) With probability sample on by a rejection principle: I c Sampling on : 
 I c Choose between positive or negative side. Ex: 1.00 [ c + l, + ∞ ] (+) Generate continuous Gaussian in y 0.95 x = d y � c e + c Output with prob. � ( σ � �� � ) 0.90 � � � e − x 2 / 2 σ 2 � � � 0.85 � � � 0.80 e − y 2 / 2 σ 2 � � � 
 0.75 Otherwise Repeat 0 2 4 6 8 σ Lattice Coding and Crypto Meeting

  16. 
 Lattices and Theta Series Definition: q k y k 2 X Θ Λ + c ( q ) := y 2 Λ + c e � πτ k y k 2 = e � πτ k x + c k 2 . X X Θ Λ + c ( τ ) := y 2 Λ + c x 2 Λ Important easily numerically calculated one-dimensional theta series: ∞ ∞ q ( m +1 / 2) 2 , θ 3 ( τ ) := q m 2 . X X θ 2 ( τ ) := m = −∞ m = −∞ ∞ ∞ e − πτ ( m + c ) 2 = τ − 2 e 2 π imc − π m 2 / τ = τ − 2 θ 3 ( π c | i τ − 1 ) X X Θ Z + c ( τ ) = m = −∞ m = −∞ Lattice Coding and Crypto Meeting

  17. Lattices and Theta Series Important properties: Θ Λ 1 ⊕ Λ 2 ( τ ) = Θ Λ 1 ( τ ) Θ Λ 2 ( τ ) Θ α Λ ( τ ) = Θ Λ ( α 2 τ ) Θ Λ 1 ∪ Λ 2 ( τ ) = Θ Λ 1 ( τ ) + Θ Λ 2 ( τ ) Example: Theta Series of Z n Θ Z n ( τ ) = Θ Z ( τ ) n = θ 3 ( τ ) n Lattice Coding and Crypto Meeting

  18. 
 
 
 
 From Theta Series to Sampling Hexagonal lattice ✓ 1 0 ⇢ ◆ � A 2 = ( x 1 , x 2 ) : x 1 , x 2 ∈ Z √ 1 3 2 2 Θ A 2 ( τ ) = θ 3 ( τ ) θ 3 (3 τ ) + θ 2 ( τ ) θ 2 (3 τ ) Lattice Coding and Crypto Meeting

  19. 
 
 
 
 From Theta Series to Sampling Hexagonal lattice √ ⌘ [ !! √ √ 1 3 ⇣ A 2 = 2 , Z ⊕ 3 Z Z ⊕ 3 Z + 2 Θ A 2 ( τ ) = θ 3 ( τ ) θ 3 (3 τ ) + θ 2 ( τ ) θ 2 (3 τ ) Lattice Coding and Crypto Meeting

  20. 
 
 
 
 
 
 
 
 
 From Theta Series to Sampling Hexagonal lattice 
 1 3 θ 3 ( 2 πσ 2 ) θ 3 ( 2 πσ 2 ) √ p = D A 2 , σ ( Z ⊕ 3 Z ) = 1 3 1 3 θ 3 ( 2 πσ 2 ) θ 3 ( 2 πσ 2 ) + θ 2 ( 2 πσ 2 ) θ 2 ( 2 πσ 2 ) Algorithm 1) Throw a biased coin with probability p of heads 2) If heads, sample in the blue coset 3) If tails, sample in the red coset Sampling in each coset is possible by invoking the -sampler twice. 
 Z Lattice Coding and Crypto Meeting

  21. 
 
 Coset Decompositions Generalization to more general coset decompositions. Construction A lattices Λ = 2 Z n + C the coset corresponding of a codeword of weight has theta series 
 w θ 2 (4 τ ) w θ 3 (4 τ ) n − w Suppose there are codewords of given weight . The probability that a A w w discrete distribution falls in some coset of a codeword of weight is w θ 2 (4 τ ) w θ 3 (4 τ ) n − w A w Θ Λ ( τ ) General Idea 1) Pick a weight with probability p w 2) Pick a word of weight uniformity at random w 2 Z n + c 3) Sample in the coset Lattice Coding and Crypto Meeting

  22. 
 
 
 
 
 
 The lattice Dn Construction A lattices (best coding gains dimensions 3,4,5), D n = 2 Z n + P n where is a parity check code P n { ( x 1 , . . . , x n ) ∈ F n 2 : x 1 + . . . + x n ≡ 0 mod 2 } ✓ n ◆ There are vectors of weight . 
 2 l 2 l The probability of picking such a coset is 
 2 (4 τ ) 2 l Θ Z + 1 2 (4 τ ) n − 2 l ◆ Θ Z + 1 ✓ n p 2 l = 2 l Θ D n ( τ ) Lattice Coding and Crypto Meeting

  23. 
 The lattice Dn Algorithm 
 1) Pick a number with probability . l 2 { 1 , . . . , b n/ 2 c } p 2 l J ⊂ { 1 , . . . , n } 2) Pick a subset with size 2 l 3) For j ∈ J x j ← Sampler Z + 1 2 (2 τ ) j / ∈ J 4) For x j ← Sampler Z (2 τ ) Generalizations to shifts by vectors of type ( α , β , β , . . . , β ) Lattice Coding and Crypto Meeting

  24. 
 
 
 
 
 
 
 
 
 Coset Decompositions Real Constructions (A and B) 
 Λ A ( C ) = 2 Z n + C and Λ B ( C ) = 4 Z n + 2 P n + C . Λ B ( C ) = 2 D n + C , where D n = Λ A ( P n ) Complex Constructions (A and B) Λ A ( C ) = θ Z [ ω ] n + C and Λ B ( C ) = θ 2 Z [ ω ] n + θ P n + C , Z [ ω ] = { a + b ω : a, b ∈ Z } where , and is a prime of norm θ p Lattice Coding and Crypto Meeting

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