exhaustive search of optimal formulae for bilinear maps
play

Exhaustive search of optimal formulae for bilinear maps Svyatoslav - PowerPoint PPT Presentation

Exhaustive search of optimal formulae for bilinear maps Svyatoslav Covanov Supervisors: Jrmie Detrey and Emmanuel Thom Team CARAMBA January 16, 2017 Optimal formulae 1 Previous work 2 Contribution and experimental results 3


  1. Exhaustive search of optimal formulae for bilinear maps Svyatoslav Covanov Supervisors: Jérémie Detrey and Emmanuel Thomé Team CARAMBA January 16, 2017

  2. Optimal formulae 1 Previous work 2 Contribution and experimental results 3 Svyatoslav Covanov Exhaustive search of optimal formulae for bilinear maps January 16, 2017 2 / 21

  3. Karatsuba How to multiply two polynomials A = a 0 + a 1 X and B = b 0 + b 1 X ? Svyatoslav Covanov Exhaustive search of optimal formulae for bilinear maps January 16, 2017 3 / 21

  4. Karatsuba How to multiply two polynomials A = a 0 + a 1 X and B = b 0 + b 1 X ? A · B = a 0 b 0 + ( a 1 b 0 + a 0 b 1 ) X + a 1 b 1 X 2 1 Naive multiplication: π 0 = a 0 b 0 , π 1 = a 1 b 0 , π 2 = a 0 b 1 and π 3 = a 1 b 1 . We have A · B = π 0 + ( π 1 + π 2 ) X + π 3 X 2 . 2 Karatsuba : π 0 = a 0 b 0 , π 1 = a 1 b 1 and π 2 = ( a 0 + a 1 )( b 0 + b 1 ) . We have A · B = π 0 + ( π 2 − π 0 − π 1 ) X + π 1 X 2 . The bilinear rank is smaller than 3. Svyatoslav Covanov Exhaustive search of optimal formulae for bilinear maps January 16, 2017 3 / 21

  5. Short product Π ℓ : K [ X ] <ℓ × K [ X ] <ℓ → K [ X ] <ℓ A · B mod X ℓ ( A , B ) �→ For ℓ = 3,           π 0 a 0 b 0 a 0 b 0  �→  ,  = Π 3 : a 1 b 1 a 1 b 0 + a 0 b 1 π 1        a 2 b 0 + a 1 b 1 + a 0 b 2 π 2 a 2 b 2 Optimal decomposition: rk (Π 3 ) = 5 a 0 b 0 , a 1 b 1 , a 2 b 2 , ( a 0 + a 1 )( b 0 + b 1 ) , ( a 0 + a 2 )( b 0 + b 2 ) Svyatoslav Covanov Exhaustive search of optimal formulae for bilinear maps January 16, 2017 4 / 21

  6. Matrix formalism     1 0 0 b 0 � �  ·  = a 0 b 0 π 0 = a 0 a 1 a 2 · 0 0 0 b 1   0 0 0 b 2     0 1 0 b 0 � �  ·  = a 1 b 0 + a 0 b 1 π 1 = a 0 a 1 a 2 · 1 0 0 b 1   0 0 0 b 2     0 0 1 b 0 � �  ·  = a 2 b 0 + a 1 b 1 + a 0 b 2 π 2 = a 0 a 1 a 2 · 0 1 0 b 1   1 0 0 b 2 Svyatoslav Covanov Exhaustive search of optimal formulae for bilinear maps January 16, 2017 5 / 21

  7. Matrix representation of formulae:           1 0 0 0 0 0 0 0 0 1 1 0 1 0 1 0 0 0 , 0 1 0 0 0 0 1 1 0 0 0 0           0 0 0 0 0 0 0 0 1 0 0 0 1 0 1 � �� � � �� � � �� � � �� � � �� � a 0 b 0 a 1 b 1 a 2 b 2 ( a 0 + a 1 )( b 0 + b 1 ) ( a 0 + a 2 )( b 0 + b 2 ) Decomposition:         0 1 0 1 1 0 1 0 0 0 0 0 1 0 0 = 1 1 0  − 0 0 0  − 0 1 0       0 0 0 0 0 0 0 0 0 0 0 0 � �� � π 1           0 0 1 0 0 0 1 0 1 1 0 0 0 0 0 0 1 0 = 0 1 0  + 0 0 0  − 0 0 0  − 0 0 0        1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 � �� � π 2 Svyatoslav Covanov Exhaustive search of optimal formulae for bilinear maps January 16, 2017 6 / 21

  8. Generators definition Let G be the set of generators     � � � � � � G =  ( A , B ) �→ ( λ i a i )( µ j b j ) | λ i ∈ K , µ j ∈ K  . i j For the short product Π 3 over F 2 , the generators are � a 0 b 0 , � a 1 b 0 , a 2 b 0 , a 0 b 1 , a 1 b 1 , a 2 b 1 , a 0 b 2 , a 1 b 2 , a 2 b 2 , ( a 0 + a 1 ) b 0 , ( a 0 + a 2 ) b 0 , . . . ↓           1 0 0 0 0 0 0 0 0 0 1 0    ,  ,  ,  , 0 0 0 1 0 0 0 0 0 0 0 0 . . .       0 0 0 0 0 0 1 0 0 0 0 0 Svyatoslav Covanov Exhaustive search of optimal formulae for bilinear maps January 16, 2017 7 / 21

  9. Problem to be solved Let T ℓ =         1 0 · · · 0 0 1 · · · 0 0 0 · · · 1 . ... ... ... .         0 0 0 1 0 0 0 0 .         Span  ,  , . . . ,  . . . . . .   ... ...   ... ...   ... ...   . . . . . . . . . . 0      0 0 · · · 0 0 0 · · · 0 1 0 · · · 0 Problem to be solved: Find all free families of minimal size F ⊂ G satisfying T ℓ ⊂ Span ( F ) . Definition Let r ≥ 0. We denote by S r all subspaces V ⊂ M ℓ,ℓ such that there exists { g 0 , . . . , g r − 1 } a free family of G satisfying V = Span ( g 0 , . . . , g r − 1 ) . We denote by S r , T all subspaces V ∈ S r such that T ⊂ V . Svyatoslav Covanov Exhaustive search of optimal formulae for bilinear maps January 16, 2017 8 / 21

  10. Optimal formulae 1 Previous work 2 Contribution and experimental results 3 Svyatoslav Covanov Exhaustive search of optimal formulae for bilinear maps January 16, 2017 9 / 21

  11. Naive algorithm Naive algorithm Input: ℓ , r Output: S T ℓ , r S ← ∅ for V ∈ S r do ⊲ S r = { Span ( g 0 , . . . , g r − 1 ) | ∀ i , g i ∈ G} if T ℓ ⊂ V then S ← S ∪ { V } end if end for return S � # G � Complexity: # S r ≤ . For ℓ = 3 and K = F 2 , we have r � 49 � # S 5 = 157 , 535 ≪ 1 , 906 , 884 = . 5 Svyatoslav Covanov Exhaustive search of optimal formulae for bilinear maps January 16, 2017 10 / 21

  12. Incomplete basis improvement BDEZ ’12 (Barbulescu, Detrey, Estibals, Zimmermann) Input: ℓ , r Output: S T ℓ , r S ← ∅ for W ∈ S r − ℓ do if T ℓ + W ∈ S r then S ← S ∪ { T ℓ + W } end if end for return S � # G � Complexity: # S r − ℓ ≤ . For ℓ = 3, # S 2 = 980 ≪ 157 , 535. r − ℓ Svyatoslav Covanov Exhaustive search of optimal formulae for bilinear maps January 16, 2017 11 / 21

  13. Automorphisms We consider the action of couples ( P , Q ) ( P and Q in GL ℓ ) on M ∈ M ℓ,ℓ : ( P , Q ) · M = P · M · Q T . Let Stab ( T ℓ ) be the group of ( P , Q ) such that ∀ M ∈ T ℓ , ( P , Q ) · M ∈ T ℓ . Example   1 0 0 For ℓ = 3 and P = Q = 0 1 1  ,  0 0 1     0 0 1 0 1 1  =  = π 1 + π 2 ∈ T 3 . ( P , Q ) · 0 1 0 1 1 0   1 0 0 1 0 0 Svyatoslav Covanov Exhaustive search of optimal formulae for bilinear maps January 16, 2017 12 / 21

  14. Search with stabilizers Input: ℓ , r Output: S T ℓ , r S ← ∅ for W ∈ S r − ℓ / Stab ( T ℓ ) do if T ℓ + W ∈ S r − ℓ then S ← S ∪ { T ℓ + W } end if end for return S Stab ( T ) � # G � � Complexity: # S r − ℓ / # Stab ( T ℓ ) ≈ # Stab ( T ℓ ) . r − ℓ For ℓ = 3, � 49 � # S 2 / Stab ( T ℓ ) = 68 , # Stab ( T ℓ ) = 32 and / 32 ≈ 37 . 2 Svyatoslav Covanov Exhaustive search of optimal formulae for bilinear maps January 16, 2017 13 / 21

  15. Optimal formulae 1 Previous work 2 Contribution and experimental results 3 Svyatoslav Covanov Exhaustive search of optimal formulae for bilinear maps January 16, 2017 14 / 21

  16. The rank is a distance Rank is a distance D : (Φ , Ψ) �→ rk (Φ − Ψ) . Example �� 1 � � 0 �� �� 1 �� 0 0 0 , = rk = 2. D 0 0 0 1 0 − 1 We can extend the distance D to any set of formulae. Definition (Neighbourhood) Let S and S ′ be sets of matrices. We define D ( S , S ′ ) as D ( S , S ′ ) = Φ ∈S , Ψ ∈S ′ ( rk (Φ − Ψ)) . min We denote by V d ( S ) the d -neighbourhood of S . Svyatoslav Covanov Exhaustive search of optimal formulae for bilinear maps January 16, 2017 15 / 21

  17. Theorem Let W ∈ S r − ℓ be such that T ℓ ⊕ W ∈ S r . Then there exists σ ∈ Stab ( T ℓ ) such that W ◦ σ ∈ V 1 ( π ℓ − 1 ) ∩ V 1 ( π ℓ − 2 ) or W ◦ σ ∈ V 1 ( π ℓ − 1 ) ∩ V 1 ( π ℓ − 1 − π ℓ − 2 ) . Svyatoslav Covanov Exhaustive search of optimal formulae for bilinear maps January 16, 2017 16 / 21

  18. Example with ℓ = 3 on F 2 We have T 3 = Span ( a 0 b 0 , a 1 b 0 + a 0 b 1 , a 2 b 0 + a 1 b 1 + a 0 b 2 ) ���� � �� � � �� � π 0 π 1 π 2 and the set of generators G satisfies # G = 49 . set enumerated cardinality S 2 980 S 2 ∩ ( V 1 ( π 2 ) ∩ V 1 ( π 1 )) ◦ Stab ( T 3 ) 64 S 2 ∩ ( V 1 ( π 2 ) ∩ V 1 ( π 2 − π 1 )) ◦ Stab ( T 3 ) 144 Svyatoslav Covanov Exhaustive search of optimal formulae for bilinear maps January 16, 2017 17 / 21

  19. Improved search Improved search Input: n , r S ← ∅ for W ∈ ( S r − ℓ ∩ V 1 ( π ℓ − 1 ) ∩ V 1 ( π ℓ − 2 )) / Stab ( T ℓ ) do if T ℓ + W ∈ S r then S ← S ∪ { T ℓ + W } end if end for for W ∈ ( S r − ℓ ∩ V 1 ( π ℓ − 1 ) ∩ V 1 ( π ℓ − 1 − π ℓ − 2 )) / Stab ( T ℓ ) do if T ℓ + W ∈ S r then S ← S ∪ { T ℓ + W } end if end for return S Stab ( T ℓ ) Svyatoslav Covanov Exhaustive search of optimal formulae for bilinear maps January 16, 2017 18 / 21

  20. We compare our approach to the search with stabilizer: product time (s) est. speed-up nb. of solutions ShortProduct 4 3 . 0 10 1 , 440 2 . 4 · 10 3 10 5 ShortProduct 5 146 , 944 Table: Computation of decompositions of the short product on a single core 3.3 GHz Intel Core i5-4590. Svyatoslav Covanov Exhaustive search of optimal formulae for bilinear maps January 16, 2017 19 / 21

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