• Aucun résultat trouvé

Structured FFT and T FT : sym m etric and lattice p olynom ials

N/A
N/A
Protected

Academic year: 2022

Partager "Structured FFT and T FT : sym m etric and lattice p olynom ials"

Copied!
22
0
0

Texte intégral

(1)

Structured FFT and T FT :

sym m etric and lattice p olynom ials

Joris van der Hoeven Laboratoire d’informatique

UMR 7161 CNRS École polytechnique

91128 Palaiseau Cedex, France

Email: vdhoeven@lix.polytechnique.fr

Romain Lebreton LIRMM

UMR 5506 CNRS

Université de Montpellier II Montpellier, France

Email: lebreton@lirmm.fr

Éric Schost

Computer Science Department Western University

London, Ontario Canada

Email: eschost@uwo.ca

(2)

Context

Multiplication of multivariate polynomial:

Dense polynomials:

Reduction to univariate polynomial multiplication

⇒ quasi-optimal algorithm

Semi-dense polynomials:

Truncated Fourier Transform techniques

⇒ quasi-optimal algorithm

Structured polynomials:

• Invariant polynomials

• Lattice polynomials

e.g. 1 + 2 (X +Y ) +X Y + 3 (X2+Y 2) e.g. 1 +Y 2 +X Y +X2+X2Y 2

(3)

Our results

Existing body of works:

Crystallographic FFT: [Ten Eyck, ’73], [Kudlicki et al., ’07]

Equivariant FFT: [Auslander et al., ’96], [Johnson, Xu, ’07]

FFT over lattices: [Guessoum, Mersereau ’86],

[Vince, Zheng ’07], [Bergmann ’12]

Theorem. (Hoeven, L., Schost, ’13)

Cost of Symmetric FFT for G ⊆Sn Cost of Lattice FFT

1

|G| F(d, n) +O(dn) vol1(Λ) F(d) +O(dn) where F is the cost of the classical dense FFT.

Applications: Celestial mechanics (TRIP), ...

(4)

Outline

1. The classical FFT a. Univariate FFT

b. Multivariate dense FFT

2. Invariant polynomials: the symmetric FFT

3. Lattice polynomials

a. Reduction of lattice polynomials to dense polynomials b. Lattice polynomial multiplication

4. Conclusion

(5)

Invariant polynomial multiplication

Notations

• K[x]d8 K[x1,, xn]d : polynomials in n variables of degree <d= 2

• Sn acts on K[x]: Pσ(x1, , xn) =P(xσ(1),, xσ(n)) for σ ∈Sn

• K[x]G : invariant polynomials under G ⊆Sn

• ω ∈K : primitive d-th root of unity

• Ndn8 {0,, d −1}n

• [n]s is the bit-reverse of n on s bits.

Example: [13]4= [11012]4=10112=11.

Objective

Compute efficiently the map

FFTω: (

K[x]d KNdn P (P(ωi))iNdn

when P is invariant under a group G of permutation.

(6)

Dense univariate FFT

Input: P =P

k=0

d−1 Pkxk∈ K[x]d with d= 2.

Direct Univariate FFT (Decimation-In-Time variant) – Iterative in-place algorithm

(ck0)06k<d8 (Pk)06k<d

butterflies c1

butterflies

butterflies (ck)06k<d= P ω[k]s

06k<d

– Butterflies of step s with 16s6ℓ

cs +j c(si+1)δ+j

!

= 1 ω[i]sδ 1 −ω[i]sδ

! cs−1+j c(i+1)δs−1 +j

!

where δ8 2ℓ−s.

– Bs is the global matrix of butterflies: cs=Bscs−1.

Arithmetic complexity of univariate FFT for d= 2 F(d)8 3/2dlog(d)

(7)

Dense multivariate FFT

Input: P =P

kNdn Pk xk ∈K[x1, , xn]d with d= 2.

Direct multivariate FFT (Decimation-In-Time variant) – Iterative in-place algorithm

(ck0)kNdn8 (Pk)kNdn

butterflies c1

butterflies

butterflies (ck)kNdn = P ω[k]s

kNdn

– Multivariate butterfly of step s with 16s 6ℓ:

Bs=Bs,n Bs,1 where Bs,i is the s-th step of the univariate FFT on xi.

Arithmetic complexity of multivariate FFT for d= 2 F(d, n)8 3/2dnlog(dn)

(8)

Dense multivariate FFT - Example

Example for K[x1, x2]8:

– 2-dimensional butterfly: At step 2, for any j1, j2∈N2,

c(j

1,j2) 1

c(2+j

1,j2) 1

c(j

1,2+j2) 1

c(2+j

1,2+j2) 1

=

1 1 1 1

1 −1 1 −1

1 1 −1 −1

1 −1 −1 1

B2=B2,2·B2,1

c(j

1,j2) 0

c(2+j

1,j2) 0

c(j

1,2+j2) 0

c(2+j

1,2+j2) 0

2-dimensional FFT:

(9)

Outline

1. The classical FFT a. Univariate FFT

b. Multivariate dense FFT

2. Invariant polynomials: the symmetric FFT

3. Lattice polynomials

a. Reduction of lattice polynomials to dense polynomials b. Lattice polynomial multiplication

4. Conclusion

(10)

Symmetric multivariate FFT

Symmetry on the input coefficients

• Example:

P(k1,k2)=P(k2,k1) for P ∈ K[x1, x2]S2

• Fundamental domain

F 8 {i∈Ndn:∀g∈ G,i>lex g(i)}

Lemma.(Hoeven, L., Schost, ’13)

If c0= (Pk)kNdn is G-symmetric and G ⊆Sn then any cs is G-symmetric.

(11)

Symmetric multivariate FFT

Observation:

cs is G-symmetric ⇒ we need only cks for k∈ F.

Algorithm SymmetricFFT:

“Compute only butterflies that intersect F”

Example:

(12)

Symmetric FFT - Cost

Theorem. (Hoeven, L., Schost, ’13)

For fixed n and G, and for d→ ∞, the symmetric FFT can be computed in

1

|G| F(d, n) +O(dn) arithmetic operations in K.

Remark: Operations with groups are counted O(1).

(13)

Outline

1. The classical FFT a. Univariate FFT

b. Multivariate dense FFT

2. Invariant polynomials: the symmetric FFT

3. Lattice polynomials

a. Reduction of lattice polynomials to dense polynomials b. Lattice polynomial multiplication

4. Conclusion

(14)

Lattice polynomials

Notations.

Lattice Λ8 λ1Z+nZ⊆Zn K[x]Λ8 {P ∈K[x]:support(P)⊆Λ}

Objective

Multiply efficiently polynomials in K[x]Λ

using FFT techniques.

Figure. Example of lattice support Λ

Remark. Lattice polynomials are invariant polynomials Example: Let Λ = (2,0)Z+ (1,1) Z⊆Z2.

Then P ∈ K[x]Λ P(x1, x2) =P(−x1,−x2).

(15)

Lattice FFT - Basic domain

Basic domain:

Np8 Np

1 × ×Np

n where pi>0 minimal s.t. xipi∈ K[x]Λ.

Proposition. (Hoeven, L., Schost, ’13)

There exists a basis (λ1,n) of Λ and q1Q q2Q Q qn s.t. Φ is a K-algebra isomorphism

Φ: K[y]/(y1q1−1,, ynqn−1) K[x]Λ/(x1p1−1, , xnpn −1)

yi xλi .

Corollary.

Lattice multiplication

modulo (x1p1−1, , xnpn −1)

⇔ Dense multiplication

modulo (y1q1−1,, ynqn −1)

(16)

Lattice FFT - General case

Algorithm LatticeProduct

Input: P1, P2∈ K[x]Λ,d/2 with di= pi2 Output: P1·P2∈ K[x]Λ,d

1. ℓ FFT steps on P1 and P2: K[x]Λ,d/ x1d1−1, , xndn −1

(K[x]Λ,p/(x1p1−1,, xnpn −1))2nℓ 2.

Proposition.

Let cks be the coefficients after s steps of Decimation-In-Frequency FFT. Then

Φ:

K[x]d/(x1d−1,, xnd −1) → [K[x]δ/(x1δ −1, , xnδ −1)]2ns

P

P

jNδn cisδ+jxj

iN

2s n

is a K-algebra isomorphism where δ =d/2s.

(17)

Lattice FFT - General case

Algorithm LatticeProduct

Input: P1, P2∈ K[x]Λ,d/2 with di= pi2 Output: P1·P2∈ K[x]Λ,d

1. ℓ FFT steps on P1 and P2: K[x]Λ,d/ x1d1−1, , xndn −1

(K[x]Λ,p/(x1p1−1,, xnpn −1))2nℓ 2.

+ Compute only butterflies included in Λ

Figure. Butterflies on the lattice

(18)

Lattice FFT - General case

Algorithm LatticeProduct

Input: P1, P2∈ K[x]Λ,d/2 with di= pi2 Output: P1·P2∈ K[x]Λ,d

1. ℓ FFT steps on P1 and P2: K[x]Λ,d/ x1d1−1, , xndn −1

(K[x]Λ,p/(x1p1−1,, xnpn −1))2nℓ

2. 2nℓ multiplications in K[x]Λ,p/(x1p1−1, , xnpn −1)≃K[y]/(y1q1−1,, ynqn−1) 3.

Earlier Corollary.

Lattice multiplication

modulo (x1p1−1, , xnpn −1)

⇔ Dense multiplication

modulo (y1q1−1,, ynqn −1)

(19)

Lattice FFT - General case

Algorithm LatticeProduct

Input: P1, P2∈ K[x]Λ,d/2 with di= pi2 Output: P1·P2∈ K[x]Λ,d

1. ℓ FFT steps on P1 and P2: K[x]Λ,d/ x1d1−1, , xndn −1

(K[x]Λ,p/(x1p1−1,, xnpn −1))2nℓ

2. 2nℓ multiplications in K[x]Λ,p/(x1p1−1, , xnpn −1)≃K[y]/(y1q1−1,, ynqn−1) 3. Inverse FFT

(20)

Lattice FFT - Cost

Algorithm LatticeProduct

Input: P1, P2∈ K[x]Λ,d/2 with di= pi2 Output: P1·P2∈ K[x]Λ,d

1. ℓ FFT steps on P1 and P2

2. 2nℓ dense multiplications in K[y]/(y1q1−1,, ynqn−1) after isomorphism 3. Inverse FFT

Theorem. (Hoeven, L., Schost, ’13)

For a fixed lattice Λ and d→ ∞, Algorithm LatticeProduct costs T(d) = vol1(Λ) F(d) +O(dn) where F(d) is the cost of the classical variant of LatticeProduct.

Remark: Operations with lattices are counted O(1).

(21)

Conclusion

Conclusion:

• Quasi-optimal algorithms for multiplication of

◦ Invariant polynomials with G ⊆Sn

◦ Lattice polynomials

• No implementation yet

Needs an improved study of operations with groups and lattices

Perspectives:

• Symmetric / Lattice Truncated Fourier Transforms

• More general groups G *Sn

• Other evaluation-interpolation models: Karatsuba and Toom-Cook

(22)

Thank you

for your attention

Références

Documents relatifs

1. f is an idempotent w.l.p. As the definition of the w.l.p. func- tions almost coincide with that of the Sugeno integral, many properties of the Sugeno inte- gral can be applied

i,j (X, Y ) which is defined as the sum of ML spaces where the lattice diagrams L are obtained by removing k cells from a given partition, these cells being in the “shadow” of a

We have observed that these functions include the class of discrete Sugeno integrals, which have been extensively used not only in aggregation function theory but also in fuzzy

Our results generalize both the case of independent arguments, which was studied in Marichal [6], and the special situation where no constant lifetimes are considered (the

This note is organized as follows. In Section 2 we recall the basic material related to lattice polynomial functions and order statistics. In Section 3 we provide the announced

Since weighted lattice polynomial functions include Sugeno integrals, lat- tice polynomial functions, and order statistics, our results encompass the corre- sponding formulas for

Key words: Boolean function; Monotone Boolean functions; Lattice polynomials; Normal form; Median; Median algebra; Majority; Struc- tural representation; Efficient

We gather here a few classical facts about symmetric functions that will be used through- out the rest of this paper, and refer to [12] for a systematic exposition. Aside from