Dynamical analysis of euclidean algorithms Introduction Dynamical - - PowerPoint PPT Presentation

dynamical analysis of euclidean algorithms
SMART_READER_LITE
LIVE PREVIEW

Dynamical analysis of euclidean algorithms Introduction Dynamical - - PowerPoint PPT Presentation

Dynamical analysis of euclidean algorithms Beno t Daireaux Dynamical analysis of euclidean algorithms Introduction Dynamical analysis of euclidean algorithms Beno t Daireaux Application to accelerated GREYC, Universit e


slide-1
SLIDE 1

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

Dynamical analysis of euclidean algorithms

Benoˆ ıt Daireaux

GREYC, Universit´ e de Caen Joint works with Lo¨ ıck Lohte, V´ eronique Maume-Deschamps et Brigitte Vall´ ee

LORIA, Nancy march 23rd 2006

1 / 51

slide-2
SLIDE 2

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

Outline of the talk

1 Introduction 2 Dynamical analysis of euclidean algorithms 3 Application to accelerated algorithms 4 Analyse de l’algorithme LSB 5 Conclusion

2 / 51

slide-3
SLIDE 3

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction

Integer gcd algorithms State of the art

Dynamical analysis of euclidean algorithms Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

Gcd computation

Integer gcd computation:

  • gave rise to the eldest known algorithm...
  • most complex of basic arithmetic operations
  • intensively used in many areas: cryptography, computer

algebra, rational computations... Analyses of the algorithms:

  • worst-case analyses not very usefull
  • average-case analysis ∼ theoretical colement to

experiments, helps to understand the mecanisms of the algorithms

3 / 51

slide-4
SLIDE 4

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction

Integer gcd algorithms State of the art

Dynamical analysis of euclidean algorithms Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

Many families of algorithms

“Basics algorithms” (= sequence of divisions)

  • MSB algorithms(Most Significant Bits)

Euclid and its variants: Centered, α-euclideans, By-Excess...

  • LSB algorithms (Least Significant Bits)
  • Mixed algorithms

Binary, Plus-Minus et generalisations Accelerated algorithms (= simulation of the divisions on a truncated part of the integers)

  • Lehmer-Euclide, Knuth-Sch¨
  • nhage, recursive LSB

4 / 51

slide-5
SLIDE 5

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction

Integer gcd algorithms State of the art

Dynamical analysis of euclidean algorithms Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

State of the art

Average case analysis Digit cost Bit comp. MSB Euclid Variants α-euclideans [Dix70], [Hei69], [Va] [YK75],[Rie78], [Val03] [BDV02] [AV00], [Val00], [Val00] [BDV02] LSB [DMDV05] [DMDV05] Mixed Binary [Bre76], [Va98a] [Va98a] Accelerated Lehmer Knuth-Sch¨

  • nhage

[DV04] [DLMV06] [DV04] [DLMV06] Distributional analysis Digit cost Bit Comp. MSB Euclid Variants α-euclideans [Hen94], [BV04], [BV04] [Lho05], LSB Mixed Binary Accelerated Lehmer

5 / 51

slide-6
SLIDE 6

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms

General principle An example: Euclid algorithm

Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

1 Introduction

Integer gcd algorithms State of the art

2 Dynamical analysis of euclidean algorithms

General principle An example: Euclid algorithm

3 Application to accelerated algorithms

The Knuth-Sch¨

  • nhage algorithm

Interrupted algorithms

4 Analyse de l’algorithme LSB

Extension continue Produits de matrices al´ eatoires

5 Conclusion

6 / 51

slide-7
SLIDE 7

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms

General principle An example: Euclid algorithm

Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

Dynamical analysis: general principle

A dynamical analysis has 3 steps: 1 Modelization into a dynamical system: Extension of divisions to a continuous world 2 Study of the continuous model Statistical properties, evolution of densities, operators 3 Return to the discrete model

7 / 51

slide-8
SLIDE 8

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms

General principle An example: Euclid algorithm

Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

Dynamical analysis: general principle

Algorithmes euclidiens

Extraction de coefficients

Systèmes dynamiques Séries génératrices Opérateurs de transfert Étude analytique Étude spectrale Comportement probabiliste de l’algorithme

7 / 51

slide-9
SLIDE 9

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms

General principle An example: Euclid algorithm

Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

Euclid algorithm

Let (u, v) be an input of the algorithm, u ≥ v.

  • The algorithm performs the sequence of divisions

u0 = u1q1 + u2, u1 = u2q2 + u3, . . . up−1 = upqp + 0, qi+1 = ui ui+1

  • With Q =

1 1 q

  • the algorithm computes the

sequence Mi := Q1 · Q2 · Q3 · · · Qi

  • in particular one has

u1 u0

  • = Mi ·

ui+1 ui

  • 8 / 51
slide-10
SLIDE 10

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms

General principle An example: Euclid algorithm

Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

Number of iterations of the Euclid algorithm

Study of the number of iterations P(u, v) on the sets Ω := {(u, v), u > v ≥ 0, pgcd(u, v) = 1} , ΩN := {(u, v) ∈ Ω, ℓ2(u) = N}

9 / 51

slide-11
SLIDE 11

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms

General principle An example: Euclid algorithm

Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

Number of iterations of the Euclid algorithm

Study of the number of iterations P(u, v) on the sets Ω := {(u, v), u > v ≥ 0, pgcd(u, v) = 1} , ΩN := {(u, v) ∈ Ω, ℓ2(u) = N} Generating functions:

  • F(s) =
  • (u,v)∈Ω

P(u, v) us

9 / 51

slide-12
SLIDE 12

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms

General principle An example: Euclid algorithm

Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

Number of iterations of the Euclid algorithm

Study of the number of iterations P(u, v) on the sets Ω := {(u, v), u > v ≥ 0, pgcd(u, v) = 1} , ΩN := {(u, v) ∈ Ω, ℓ2(u) = N} Generating functions:

  • F(s) =
  • n≥1

fn ns fn =

  • (u,v)∈Ω

u=n

P(u, v)

9 / 51

slide-13
SLIDE 13

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms

General principle An example: Euclid algorithm

Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

Number of iterations of the Euclid algorithm

Study of the number of iterations P(u, v) on the sets Ω := {(u, v), u > v ≥ 0, pgcd(u, v) = 1} , ΩN := {(u, v) ∈ Ω, ℓ2(u) = N} Generating functions:

  • F(s) =
  • n≥1

fn ns fn =

  • (u,v)∈Ω

u=n

P(u, v) Average number of iterations on ΩN :

  • EN[P] =

1 |ΩN|

2N

  • k=2N−1

fk

9 / 51

slide-14
SLIDE 14

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms

General principle An example: Euclid algorithm

Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

Th´ eor` eme Taub´ erien

Th´ eor` eme Soit F(s) une s´ erie de Dirichlet ` a coefficients positifs telle que F(s) converge pour ℜ(s) > σ > 0. Si (i) F(s) est analytique pour ℜ(s) = σ, s = σ, et (ii) pour γ ≥ 0, F(s) s’´ ecrit F(s) = A(s) (s − σ)γ+1 + C(s),

  • `

u A(s) et C(s) sont analytiques en s = σ et A(σ) = 0,

Analyticité Singularité

σ

10 / 51

slide-15
SLIDE 15

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms

General principle An example: Euclid algorithm

Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

Th´ eor` eme Taub´ erien

Th´ eor` eme Soit F(s) une s´ erie de Dirichlet ` a coefficients positifs telle que F(s) converge pour ℜ(s) > σ > 0. Si (i) F(s) est analytique pour ℜ(s) = σ, s = σ, et (ii) pour γ ≥ 0, F(s) s’´ ecrit F(s) = A(s) (s − σ)γ+1 + C(s),

  • `

u A(s) et C(s) sont analytiques en s = σ et A(σ) = 0, Alors,

2N

  • n=2N−1

fn = Kγ,σ · 2σN · Nγ · [1 + ǫ(N) ], Kγ,σ = A(σ) σΓ(γ + 1) (1 − 2−σ)(2 log 2)γ, limN→∞ ǫ(N) = 0.

10 / 51

slide-16
SLIDE 16

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms

General principle An example: Euclid algorithm

Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

Euclid algorithm and continued fractions

  • An execution of the algorithm: u0 = u,

u1 = v u0 = u1q1 + u2, u1 = u2q2 + u3, . . . , up−1 = upqp + 0

  • Corresponds to the CFE of v/u :

v u = 1 q1 + 1 q2 + 1 ... + 1 qp

  • v

u = hq1 ◦ · · · ◦ hqp(0), hq(x) = 1 q + x

11 / 51

slide-17
SLIDE 17

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms

General principle An example: Euclid algorithm

Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

Associated dynamical system

  • The Gauss map T(x) = 1

x − 1 x

  • extends to R the

euclidean division: u = vq + r = ⇒ r v = u v − q = T v u

  • S = ([0, 1], T) is the dynamical system corresponding to

the algorithm

  • T(x) = 1

x − 1 x

  • Partition:
  • 1

q + 1, 1 q

  • (Tq(x) = 1/x − q)
  • H= set of inverse branches:

H :=

  • hq;

hq(x) = 1 q + x , q ≥ 1

  • 12 / 51
slide-18
SLIDE 18

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms

General principle An example: Euclid algorithm

Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

Associated dynamical system

  • The Gauss map T(x) = 1

x − 1 x

  • extends to R the

euclidean division: u = vq + r = ⇒ r v = u v − q = T v u

  • S = ([0, 1], T) is the dynamical system corresponding to

the algorithm

12 / 51

slide-19
SLIDE 19

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms

General principle An example: Euclid algorithm

Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

The Perron-Frobenius operator

Describes the evolution of densities with times

  • let f be a density function on [0, 1]
  • let f0 = f , f1, f2... be the sequence of densities, then

fi+1 = H[fi]

13 / 51

slide-20
SLIDE 20

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms

General principle An example: Euclid algorithm

Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

The Perron-Frobenius operator

Describes the evolution of densities with times

  • let f be a density function on [0, 1]
  • let f0 = f , f1, f2... be the sequence of densities, then

fi+1 = H[fi]

13 / 51

slide-21
SLIDE 21

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms

General principle An example: Euclid algorithm

Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

The Perron-Frobenius operator

Describes the evolution of densities with times

  • let f be a density function on [0, 1]
  • let f0 = f , f1, f2... be the sequence of densities, then

fi+1 = H[fi] H[f ](x) =

  • h∈H

|h′(x)| · f ◦ h(x)

13 / 51

slide-22
SLIDE 22

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms

General principle An example: Euclid algorithm

Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

The Perron-Frobenius operator

Describes the evolution of densities with times

  • let f be a density function on [0, 1]
  • let f0 = f , f1, f2... be the sequence of densities, then

fi+1 = H[fi] H[f ](x) =

  • h∈H

|h′(x)| · f ◦ h(x) For Euclid: H[f ](x) =

  • q≥1
  • 1

q + x 2 · f

  • 1

q + x

  • 13 / 51
slide-23
SLIDE 23

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms

General principle An example: Euclid algorithm

Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

The transfer operator

Main tool to rely discrete and continuous models

  • built from H by adding a complex s :

Hs[f ](x) =

  • h∈H

|h′(x)|s · f ◦ h(x)

14 / 51

slide-24
SLIDE 24

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms

General principle An example: Euclid algorithm

Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

The transfer operator

Main tool to rely discrete and continuous models

  • built from H by adding a complex s :

Hs[f ](x) =

  • h∈H

|h′(x)|s · f ◦ h(x) Powers of the operator:

  • multiplicative properties of derivatives:

Hps[f ](x) =

  • h∈Hp

|h′(x)|s · f ◦ h(x)

14 / 51

slide-25
SLIDE 25

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms

General principle An example: Euclid algorithm

Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

Generating properties

Bijection between Ω[p] et Hp

  • let (u, v) ∈ Ω[p] := {(u, v) ∈ Ω, P(u, v) = p}
  • sequence of quotient q1, q2, . . . , qp
  • v

u = hq1 ◦ hq2 ◦ · · · ◦ hqp(0) = h(0), h ∈ Hp

15 / 51

slide-26
SLIDE 26

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms

General principle An example: Euclid algorithm

Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

Generating properties

Bijection between Ω[p] et Hp

  • let (u, v) ∈ Ω[p] := {(u, v) ∈ Ω, P(u, v) = p}
  • sequence of quotient q1, q2, . . . , qp
  • v

u = hq1 ◦ hq2 ◦ · · · ◦ hqp(0) = h(0), h ∈ Hp Generation of denominator :

  • h(x) = ax + b

cx + d , |h′(0)| = |det h| (D[h](0))2

  • det h = ±1,

pgcd (u, v) = 1 = ⇒ |h′(0)|s = 1 u2s

15 / 51

slide-27
SLIDE 27

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms

General principle An example: Euclid algorithm

Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

Relations operators GF

  • generating function: F(s) =
  • (u,v)∈Ω

P(u, v) us

  • bijection between Ω[p] et Hp
  • p≥1

p Hp

s [1](0)

=

  • p≥1

p

  • h∈Hp

|h′(0)|s =

  • p≥1
  • (u,v)∈Ω[p]

P(u, v) u2s = F(2s) The GF is expressed with the quasi-inverse (I − Hs)−1 (I − Hs)−1 ◦ Hs ◦ (I − Hs)−1[1](0) = F(2s) Study of functions replaced by study of operators

16 / 51

slide-28
SLIDE 28

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms

General principle An example: Euclid algorithm

Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

Spectral study of operators

Find a functional space such that:

  • around s = 1 there exists a unique dominant eigenvalue,

simple, λ(s)

✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁ ✁

spectral Saut

17 / 51

slide-29
SLIDE 29

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms

General principle An example: Euclid algorithm

Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

Spectral study of operators

Find a functional space such that:

  • around s = 1 there exists a unique dominant eigenvalue,

simple, λ(s) ⇒ Hn

s [f ](x) = λn(s)Ps[f ](x) + Nn s [f ](x)

⇒ (I − Hs)−1[f ](x) ∼ 1 s − 1 −1 λ′(1)ψ(x) 1 f (t)dt

17 / 51

slide-30
SLIDE 30

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms

General principle An example: Euclid algorithm

Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

Spectral study of operators

Find a functional space such that:

  • around s = 1 there exists a unique dominant eigenvalue,

simple, λ(s) ⇒ (I − Hs)−1[f ](x) ∼ 1 s − 1 −1 λ′(1)ψ(x) 1 f (t)dt

  • Spectral radius of the operator < 1 for ℜ(s) = 1, s = 1

⇒ s → (I − Hs)−1 analytique sur la droite

17 / 51

slide-31
SLIDE 31

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms

General principle An example: Euclid algorithm

Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

Spectral study of operators

Find a functional space such that:

  • around s = 1 there exists a unique dominant eigenvalue,

simple, λ(s) ⇒ (I − Hs)−1[f ](x) ∼ 1 s − 1 −1 λ′(1)ψ(x) 1 f (t)dt

  • Spectral radius of the operator < 1 for ℜ(s) = 1, s = 1

⇒ s → (I − Hs)−1 analytique sur la droite Choice of the functional space:

  • for Euclid, one can choose C 1([0, 1])

17 / 51

slide-32
SLIDE 32

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms

General principle An example: Euclid algorithm

Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

Conclusion

Spectral conditions are satisfied:

  • double quasi-inverse → double pˆ
  • le for the function F(s) :

F(s) ∼

  • 1

s − 1 2 −1 λ′(1) 2

  • linear average number of iterations
  • derivative λ′(1) expressed in terms of entropie of the

system : −λ′(1) = h(S) Theorem On the set ΩN, the average number of iterations of Euclid algorithm is asymptotically linear, EN[P] ∼ 2 log 2 h(S) · N = 12 log2 2 π2 · N

18 / 51

slide-33
SLIDE 33

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms

The Knuth- Sch¨

  • nhage

algorithm Interrupted algorithms

Analyse de l’algorithme LSB Conclusion

1 Introduction

Integer gcd algorithms State of the art

2 Dynamical analysis of euclidean algorithms

General principle An example: Euclid algorithm

3 Application to accelerated algorithms

The Knuth-Sch¨

  • nhage algorithm

Interrupted algorithms

4 Analyse de l’algorithme LSB

Extension continue Produits de matrices al´ eatoires

5 Conclusion

19 / 51

slide-34
SLIDE 34

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms

The Knuth- Sch¨

  • nhage

algorithm Interrupted algorithms

Analyse de l’algorithme LSB Conclusion

Acceleration of the algorithm

Computation of the sequence Q1 · Q2 · Q3 · · · Qp

  • Euclid : euclidean divisions: quadratic bit-complexity
  • Lehmer[38] : only the first digits of u and v are necessary

to compute q1 → a first acceleration, still quadratic

  • Knuth[71], Sch¨
  • nhage [71] :

Lehmer + Divide and Conquer + Rapid Multiplication (FFT) = O(n log2 n log log n) algorithm

20 / 51

slide-35
SLIDE 35

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms

The Knuth- Sch¨

  • nhage

algorithm Interrupted algorithms

Analyse de l’algorithme LSB Conclusion

The HG function

Property [Jebelean]

  • Soient (U, V ), ℓ(U) = n

(u, v) = T⌈n/2⌉(U, V )

U u V v n

  • Let q1, q2 . . . and Q1, Q2, . . . be the sequences of

quotients associated to the pairs (u, v) and (U, V )

  • Let u0, u1, u2 . . . be the sequence of remainders of Euclid
  • n input (a, b)
  • Let uk be the last remainder such that ℓ(uk) > ℓ(u0)/2.

Then the sequence of quotients qi and Qi are the same until i = k − 2.

21 / 51

slide-36
SLIDE 36

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms

The Knuth- Sch¨

  • nhage

algorithm Interrupted algorithms

Analyse de l’algorithme LSB Conclusion

The HG function

Definition

  • Let (u, v) with u > v and ℓ(u) = n.
  • Let u0, u1, u2 . . . the sequence of remainders associated to

(u, v)

  • Let uk the last remainder such that ℓ(uk) > n/2

Then the HG function returns (uk, uk+1, Mk) = HG(u, v) with Mk = Q1 · Q2 · Q3 · · · Qk−2 Computation of HG

  • Interrupted euclid algorithms
  • Knuth-Sch¨
  • nhage: sub-quadratic complexity

22 / 51

slide-37
SLIDE 37

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms

The Knuth- Sch¨

  • nhage

algorithm Interrupted algorithms

Analyse de l’algorithme LSB Conclusion

Knuth-Sch¨

  • nhage algorithm

Recursive computation of HG

M1 M1 M2 M2

// premier appel récursif // deuxième appel récursif n 3n/4 n/2

23 / 51

slide-38
SLIDE 38

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms

The Knuth- Sch¨

  • nhage

algorithm Interrupted algorithms

Analyse de l’algorithme LSB Conclusion

The algorithm HG

Algorithm HG(U, V ) 1 n := ℓ(U) 2 If n ≤ S then return E1/2(U, V ) 3 m := ⌊n/2⌋; k = n − m 4 (u, v) := Tm(U, V ) 5 (c, d, M1) := HG(u, v) 6 (C; D) := M−1

1 (U; V )

7 Adjust1(C, D, M1) 8 (c, d) := Tk(C, D) 9 (e, f , M2) := HG(c, d) 10 (E; F) := M−1

2 (C; D)

11 Adjust2(E, F, M2) 12 Return (E, F, M := M1 · M2)

24 / 51

slide-39
SLIDE 39

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms

The Knuth- Sch¨

  • nhage

algorithm Interrupted algorithms

Analyse de l’algorithme LSB Conclusion

Comments

1 n := ℓ(U) 2 If n ≤ S then return E1/2(U, V )

  • If ℓ(U) is smaller than a treshold S, use euclid to compute

HG(U, V , S).

  • In practice: S fixed, computed experimentaly

25 / 51

slide-40
SLIDE 40

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms

The Knuth- Sch¨

  • nhage

algorithm Interrupted algorithms

Analyse de l’algorithme LSB Conclusion

Comments

1 n := ℓ(U) 2 If n ≤ S then return E1/2(U, V ) 3 m := ⌊n/2⌋; k = n − m 4 (u, v) := Tm(U, V ) 5 (c, d, M1) := HG(u, v, S)

  • First recursive call on integers of size n/2
  • Matrix M1 of size n/4

25 / 51

slide-41
SLIDE 41

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms

The Knuth- Sch¨

  • nhage

algorithm Interrupted algorithms

Analyse de l’algorithme LSB Conclusion

Comments

1 n := ℓ(U) 2 If n ≤ S then return E1/2(U, V ) 3 m := ⌊n/2⌋; k = n − m 4 (u, v) := Tm(U, V ) 5 (c, d, M1) := HG(u, v, S) 6 (C; D) := M−1

1 (U; V )

7 Adjust1(C, D, M1)

  • Multiplication matrix × vector.
  • The pair (C, D) is of size 3n/4.
  • Function Adjust1: one euclidean division to ensure

ℓ(C) < 3n/4.

25 / 51

slide-42
SLIDE 42

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms

The Knuth- Sch¨

  • nhage

algorithm Interrupted algorithms

Analyse de l’algorithme LSB Conclusion

Comments

1 n := ℓ(U) 2 If n ≤ S then return E1/2(U, V ) 3 m := ⌊n/2⌋; k = n − m 4 (u, v) := Tm(U, V ) 5 (c, d, M1) := HG(u, v, S) 6 (C; D) := M−1

1 (U; V )

7 Adjust1(C, D, M1) 8 (c, d) := Tk(C, D) 9 (e, f , M2) := HG(c, d, S)

  • Second recursive call on integers of size n/2.

25 / 51

slide-43
SLIDE 43

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms

The Knuth- Sch¨

  • nhage

algorithm Interrupted algorithms

Analyse de l’algorithme LSB Conclusion

Comments

1 n := ℓ(U) 2 If n ≤ S then return E1/2(U, V ) 3 m := ⌊n/2⌋; k = n − m 4 (u, v) := Tm(U, V ) 5 (c, d, M1) := HG(u, v, S) 6 (C; D) := M−1

1 (U; V )

7 Adjust1(C, D, M1) 8 (c, d) := Tk(C, D) 9 (e, f , M2) := HG(c, d, S) 10 (E; F) := M−1

2 (C; D)

11 Adjust2(E, F, M2)

  • Multiplication matrix × vector.
  • The pair (C, D) is of size n/2.
  • Function Adjust2 : to ensure that Jebelean criterion is

satisfied, eventually undo some divisions

25 / 51

slide-44
SLIDE 44

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms

The Knuth- Sch¨

  • nhage

algorithm Interrupted algorithms

Analyse de l’algorithme LSB Conclusion

Comments

1 n := ℓ(U) 2 If n ≤ S then return E1/2(U, V ) 3 m := ⌊n/2⌋; k = n − m 4 (u, v) := Tm(U, V ) 5 (c, d, M1) := HG(u, v, S) 6 (C; D) := M−1

1 (U; V )

7 Adjust1(C, D, M1) 8 (c, d) := Tk(C, D) 9 (e, f , M2) := HG(c, d, S) 10 (E; F) := M−1

2 (C; D)

11 Adjust2(E, F, M2) 12 Return (E, F, M := M1 · M2)

  • Last multiplication between two matrices of size n/2

25 / 51

slide-45
SLIDE 45

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms

The Knuth- Sch¨

  • nhage

algorithm Interrupted algorithms

Analyse de l’algorithme LSB Conclusion

Complexity of the algorithm

Divide and conquer equation B(n) = 2B(n 2) + 28µ(n 4) + O(n) where µ(n) is th cot of the division of two n bits integers

  • Rapid multiplication µ(n) = O(n log n log log n) :

B(n) = O(n log2 n log log n)

  • Multiplications in µ(n) = O(nα), 1 < α < 2 (Karatsuba

α ∼ 1.6, Toom-Cook α = 1.465) B(n) = O(nα)

26 / 51

slide-46
SLIDE 46

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms

The Knuth- Sch¨

  • nhage

algorithm Interrupted algorithms

Analyse de l’algorithme LSB Conclusion

An execution of the algorithm

M0

(0)

M0

(1)

M1

(2)

M0

(2)

M1

(1)

M3

(2)

M2

(2)

27 / 51

slide-47
SLIDE 47

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms

The Knuth- Sch¨

  • nhage

algorithm Interrupted algorithms

Analyse de l’algorithme LSB Conclusion

An execution of the algorithm

M0

(0)

M0

(1)

M1

(2)

M0

(2)

M1

(1)

M3

(2)

M2

(2)

Qi0..........Q

j0 Qi0..........Q j0

n n/2 n/4 S M0

(h)

M1

(h) M2 (h) M k (h) Qik..........Q

jk

Qi1..........Q

j1

Leaves of the tree: interrupted algorithms on integers of size S

27 / 51

slide-48
SLIDE 48

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms

The Knuth- Sch¨

  • nhage

algorithm Interrupted algorithms

Analyse de l’algorithme LSB Conclusion

Modification of the algorithm

Modification of the treshold S: one can stop the recursion sooner without loosing the complexity :

  • one has to balance the costs of leaves and nodes

Treshlod depending on th multiplication:

  • µ(n) = O(nα) : treshold S of the form

S(n) = nα−1

  • µ(n) = O(n log n log log n) : treshold S of the form

S(n) = log n log log n

28 / 51

slide-49
SLIDE 49

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms

The Knuth- Sch¨

  • nhage

algorithm Interrupted algorithms

Analyse de l’algorithme LSB Conclusion

The HGα

Algorithm HG(U, V ) n := ℓ(U) S := SM(n) Return HG(U, V , S) Algorithm HG(U, V , S) 1 n := ℓ(U) 2 If n ≤ S then return E1/2(U, V ) 3 m := ⌊n/2⌋; k = n − m 4 (u, v) := Tm(U, V ) 5 (c, d, M1) := HG(u, v, S) 6 (C; D) := M−1

1 (U, V )

7 Adjust1(C, D, M1) 8 (c, d) := Tk(C, D) 9 (e, f , M2) := HG(c, d, S) 10 (E; F) := M−1

2 (C; D)

11 Adjust2(E, F, M2) 12 Return (E, F, M := M1 · M2)

29 / 51

slide-50
SLIDE 50

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms

The Knuth- Sch¨

  • nhage

algorithm Interrupted algorithms

Analyse de l’algorithme LSB Conclusion

The algorithm E[γ,δ]

  • (u, v) une entr´

ee de l’algorithme d’Euclide, ℓ(u) = n.

  • u0, u1, u2 . . . la suite de restes associ´

ee

  • Q1, Q2, Q3 . . . la suite de quotients correspondante

L’algorithme E[γ,δ] renvoie la matrice M = Qi · · · Qj−2

  • `

u i et j sont les premiers indices tels que :

  • ℓ(ui) < n − γ · n
  • ℓ(uj) < ℓ(ui) − δ · n

30 / 51

slide-51
SLIDE 51

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms

The Knuth- Sch¨

  • nhage

algorithm Interrupted algorithms

Analyse de l’algorithme LSB Conclusion

Algorithme HG et algorithmes interrompus

Chaque matrice apparaissant au cours de l’algorithme s’exprime en terme d’algorithme d’Euclide interrompu ` a partir de l’entr´ ee initiale (U, V ). Proposition

  • Soit (U, V ) une entr´

ee de l’algorithme HG

  • Soit M(i)

j

la matrice renvoy´ ee au j` eme noeud du niveau i de l’arbre des appels r´ ecursifs.

  • Cette matrice est ´

egalement renvoy´ ee par l’algorithme

  • E[γ,δ] sur entr´

ee (U, V ) avec γ := j/2i+1, δ := 1/2i+1.

31 / 51

slide-52
SLIDE 52

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms

The Knuth- Sch¨

  • nhage

algorithm Interrupted algorithms

Analyse de l’algorithme LSB Conclusion

Aux feuilles...

Les param` etres γ(n), δ(n) aux feuilles de l’arbre d´ ependent de la multiplication utilis´ ee :

  • Multiplication en nα :

δ = nα−2

  • Multiplication en n log n log log n

δ ∼ 1 n

32 / 51

slide-53
SLIDE 53

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms

The Knuth- Sch¨

  • nhage

algorithm Interrupted algorithms

Analyse de l’algorithme LSB Conclusion

Comportement des algorithmes interrompus

Th´ eor` eme Soient δ(n), γ(n) des param` etres rationnels avec un d´ enominateur D qui v´ erifie D = n1/2/b(n), avec limn b(n) = +∞. Alors

  • Pn
  • P[γ,δ] − ⌊δP⌋
  • > (b(n) · n)1/2

= O(2−b(n)),

  • Pn
  • ℓβ

[γ,δ] − (δn)β

  • > (b(n) · n)1/2 · (δn)β−1

= O(2−b(n)) Remarques :

  • preuve qui fait appel `

a des r´ esultats plus ’fins’ que d’habitude : utilisation de la formule de Perron, ´ etude des s´ eries dans une bande verticale |ℜ(s) − 1| ≤ α

  • dans notre cadre, ce th´

eor` eme s’applique pour une multiplication de la forme µ(n) = Θ(n3/2+r)

33 / 51

slide-54
SLIDE 54

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms

The Knuth- Sch¨

  • nhage

algorithm Interrupted algorithms

Analyse de l’algorithme LSB Conclusion

Pour l’algorithme HG

Du th´ eor` eme pr´ ec´ edent et du lien algorithme HG algorithmes interrompus on d´ eduit Th´ eor` eme Soit le j` eme noeud du i` eme niveau de l’arbre des appels r´ ecursif de l’algorithme HG. Si le niveau i satisfait i < [(1/2) − r] lg n pour r > 0, alors la taille ℓ(i)

j

de la matrice M(i)

j

v´ erifie pour tout β > 1 Pn

  • (ℓ(i)

j )β −

1 2i+1 n β

  • > n(1/2)+r · ( 1

2i+1 n)β−1

  • = O(2−nr)),

34 / 51

slide-55
SLIDE 55

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms

The Knuth- Sch¨

  • nhage

algorithm Interrupted algorithms

Analyse de l’algorithme LSB Conclusion

Retour vers HG I

Soit l’ensemble Ωn des entr´ ees de l’algorithme HG. On peut s´ eparer Ωn en deux sous-ensembles

  • un ensemble “ordinaire” : toutes les tailles ℓ(i)

j

v´ erifient

  • (ℓ(i)

j )β −

1 2i+1 n β

1 2i+1 n β · εi

  • ,

εi = nr−1/22i+1

  • le complementaire

Le th´ eor` eme pr´ ec´ edent implique que la probabilit´ e de l’ensemble “exceptionnel” est O(2−nr/2). Cet ensemble est donc n´ egligeable pour l’analyse en moyenne.

35 / 51

slide-56
SLIDE 56

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms

The Knuth- Sch¨

  • nhage

algorithm Interrupted algorithms

Analyse de l’algorithme LSB Conclusion

Retour vers HG II

Soit U, V une entr´ ee de l’algorithme appartenant ` a l’ensemble

  • rdinaire.
  • on a
  • (ℓ(i)

j )β −

1 2i+1 n β

1 2i+1 n β · εi

  • avec

εi = nr−1/22i+1

  • si la multiplication satisfait A1 · nα ≤ µ(n) ≤ A2 · nα alors
  • n a l’encadrement

28A1

h−1

  • i=0

2i 1 2i+1 n α · [1 − εi] ≤ Kα(A, B) Kα(A, B) ≤ 28A2

h−1

  • i=0

2i 1 2i+1 n α [1 + εi]

  • on en d´

eduit A1 [1 + O(n−r)] ≤ En[Kα] 7nα · 2α−1 − 1 21−α ≤ A2 [1 + O(n−r)].

36 / 51

slide-57
SLIDE 57

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms Analyse de l’algorithme LSB

Extension continue Produits de matrices al´ eatoires

Conclusion

1 Introduction

Integer gcd algorithms State of the art

2 Dynamical analysis of euclidean algorithms

General principle An example: Euclid algorithm

3 Application to accelerated algorithms

The Knuth-Sch¨

  • nhage algorithm

Interrupted algorithms

4 Analyse de l’algorithme LSB

Extension continue Produits de matrices al´ eatoires

5 Conclusion

37 / 51

slide-58
SLIDE 58

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms Analyse de l’algorithme LSB

Extension continue Produits de matrices al´ eatoires

Conclusion

Principe de la division

Analogue pour les entiers ` a la division de s´ eries formelles: Utilisation de la valuation 2-adique : ν(u) = max{k, 2k|u}, |u|2 = 2−ν(u) Euclide (=MSB) LSB Entr´ ee: v > u Division: v = uq + r u > r ≥ 0 Entr´ ee: |v|2 > |u|2 Division: v = uq + r |u|2 > |r|2 > 0 29 = 2 × 12 + 5 29 = −1 4 × 12 + 32 Le but est de faire apparaˆ ıtre des 0 ` a la droite des entiers.

38 / 51

slide-59
SLIDE 59

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms Analyse de l’algorithme LSB

Extension continue Produits de matrices al´ eatoires

Conclusion

L’algorithme LSB

La division LSB

  • de la forme u = vq + r,

q = a 2k , k ≥ 1, a impair, |a| < 2k, (v′, r′) = 2k(v, r)

  • forme matricielle

v u

  • =

2k 2k a

  • ·

r′ v′

  • L’algorithme LSB :
  • une suite de divisions

v u

  • =
  • 2k1

2k1 a1

  • · · · · · ·
  • 2kp

2kp ap

  • ·

d

  • avec pgcd(u, v) = d.

39 / 51

slide-60
SLIDE 60

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms Analyse de l’algorithme LSB

Extension continue Produits de matrices al´ eatoires

Conclusion

i ui [base 2] ui[base 10] ai/2ki 10001100101000001 72001 1 111101011000000101000 2011176

  • 3 / 8

2 11001001101101010000 826192 1 / 2 3 110000110001010000000 1598080 1 / 8 4 10011000111100000000 626432

  • 1 / 2

5 111010010101000000000 1911296

  • 1 / 2

6 110000010010000000000 1582080 1 / 2 7 100010001100000000000 1120256

  • 1 / 2

8 1000001011000000000000 2142208 1 / 2 9 1100000000000000 49152 1 / 4 10 1000001000000000000000 2129920

  • 1 / 2

11 100010000000000000000 1114112 1 / 2 12 110000000000000000000 1572864

  • 5 / 8

13 1000000000000000000000 2097152 3 / 4

EN[P] ∼ 1 2 − γ0 · N

40 / 51

slide-61
SLIDE 61

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms Analyse de l’algorithme LSB

Extension continue Produits de matrices al´ eatoires

Conclusion

Extension continue

Extension r´ eelle de u = vq + r :

  • chaque quotient q d´

efinit les applications Tq(x) = 1 x − q, hq(x) = 1 q + x

  • les rationnels v

u n’appartiennent pas `

a un intervalle born´ e

  • on pr´

ef` ere travailler sur un ensemble compact que sur R “Bonne” extension :

  • la droite projective r´

eelle, isomorphe au tore J := −π 2 , π 2

  • muni de la topologie projective
  • conjugaison de Tq, hq via l’application tangente :

ℓq(x) = arctan ◦hq ◦ tan(x) = arctan

  • 1

q + tan x

  • 41 / 51
slide-62
SLIDE 62

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms Analyse de l’algorithme LSB

Extension continue Produits de matrices al´ eatoires

Conclusion

Propri´ et´ es g´ en´ eratrices

Soit une entr´ ee de l’algorithme

  • v

u

  • = Mq1 · · · Mqp ·

1

  • := Mq ·

1

  • Alors :
  • v

u = arctan ℓq1 ◦ · · · ◦ ℓqp(0) := arctan ℓq(0)

  • | det Mq|−1 · |ℓ′

q(0)| =

||(0, 1)||2 ||Mq(0, 1)||2 = 1 u2 + v2

42 / 51

slide-63
SLIDE 63

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms Analyse de l’algorithme LSB

Extension continue Produits de matrices al´ eatoires

Conclusion

Syst` eme de fonctions it´ er´ ees

Soit le syst` eme suivant :

  • L :=
  • ℓq, ℓq(y) = arctan
  • 1

q + tan y

  • ,

q = a 2k

  • ℓq est choisie avec prob. δq := | det Mq|−1 = 2−2k

43 / 51

slide-64
SLIDE 64

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms Analyse de l’algorithme LSB

Extension continue Produits de matrices al´ eatoires

Conclusion

Syst` eme de fonctions it´ er´ ees

Soit le syst` eme suivant :

  • L :=
  • ℓq, ℓq(y) = arctan
  • 1

q + tan y

  • ,

q = a 2k

  • ℓq est choisie avec prob. δq := | det Mq|−1 = 2−2k

L’op´ erateur associ´ e ` a ce syst` eme est

  • ℓq∈L

δq · |ℓ′

q(x)| · f ◦ ℓq(x) = H[f ](x)

43 / 51

slide-65
SLIDE 65

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms Analyse de l’algorithme LSB

Extension continue Produits de matrices al´ eatoires

Conclusion

Syst` eme de fonctions it´ er´ ees

Soit le syst` eme suivant :

  • L :=
  • ℓq, ℓq(y) = arctan
  • 1

q + tan y

  • ,

q = a 2k

  • ℓq est choisie avec prob. δq := | det Mq|−1 = 2−2k

L’op´ erateur associ´ e ` a ce syst` eme est

  • ℓq∈L

δq · |ℓ′

q(x)| · f ◦ ℓq(x) = H[f ](x)

L’op´ erateur de transfert est

  • ℓq∈L

δqs · |ℓ′

q(x)|s · f ◦ ℓq(x) = Hs[f ](x)

43 / 51

slide-66
SLIDE 66

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms Analyse de l’algorithme LSB

Extension continue Produits de matrices al´ eatoires

Conclusion

Syst` eme de fonctions it´ er´ ees

Soit le syst` eme suivant :

  • L :=
  • ℓq, ℓq(y) = arctan
  • 1

q + tan y

  • ,

q = a 2k

  • ℓq est choisie avec prob. δq := | det Mq|−1 = 2−2k

L’op´ erateur associ´ e ` a ce syst` eme est

  • ℓq∈L

δq · |ℓ′

q(x)| · f ◦ ℓq(x) = H[f ](x)

L’op´ erateur de transfert est

  • ℓq∈Ln

δqs · |ℓ′

q(x)|s · f ◦ ℓq(x) = Hsn[f ](x)

43 / 51

slide-67
SLIDE 67

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms Analyse de l’algorithme LSB

Extension continue Produits de matrices al´ eatoires

Conclusion

S´ eries g´ en´ eratrices et op´ erateurs

Coˆ ut quotient :

  • soit un coˆ

ut c tq

  • q

δqc(q) < ∞

erie g´ en´ eratrice : FC(s) :=

  • (u,v)∈Ω

C(u, v) (u2 + v2)s Op´ erateur H[c]

s

:

  • H[c]

s [f ](x) =

  • ℓq∈L

δs

q · |ℓ′ q(x)|s · c(q) · f ◦ ℓq(x)

Lien SG op´ erateurs FC(s) = (I − Hs)−1 ◦ H[c]

s

  • (I − Hs)−1[1](0)

44 / 51

slide-68
SLIDE 68

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms Analyse de l’algorithme LSB

Extension continue Produits de matrices al´ eatoires

Conclusion

S´ eries g´ en´ eratrices et op´ erateurs

Complexit´ e en bits

  • coˆ

ut de u = vq + r : ℓ2(v) × [k(q) + s(q)]

erie g´ en´ eratrice FB(s) D´ erivation : ∆ := 1 log 2 −d ds

  • ∆Hs[f ](x) =
  • ℓq∈L

δs

q · |ℓ′ q(x)|s · log2(δq · |ℓ′ q(x)|) · f ◦ ℓq(x)

Lien SG op´ erateurs FB(s) = (I − Hs)−1 ◦ H[k+s]

s

  • (I − Hs)−1 ◦ ∆Hs ◦ (I − Hs)−1[1](0)

45 / 51

slide-69
SLIDE 69

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms Analyse de l’algorithme LSB

Extension continue Produits de matrices al´ eatoires

Conclusion

Produits de matrices al´ eatoires

Soit l’ensemble de matrices : N :=

  • Nq =

1 1 q

  • ; q = a

2k ; k ≥ 1, a impair ∈] − 2k, 2k[

  • ,
  • Nq est choisie avec prob. δq = 2−2k
  • exposant de Lyapunov :

γ = lim

n→∞

1 nE [log ||N1 · N2 · . . . · Nn||]

  • Exposant de Lyapunov binaire : γ0 := γ/ log 2

46 / 51

slide-70
SLIDE 70

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms Analyse de l’algorithme LSB

Extension continue Produits de matrices al´ eatoires

Conclusion

Op´ erateur associ´ e

Op´ erateur associ´ e ` a cet ensemble : Ht,s[f ](x) =

  • ℓq∈L

δqt · |ℓ′

q(x)|s · f ◦ ℓq(x),

(Hs = Hs,s) R´ esultats classiques autour de (t, s) = (1, 0) ([Fur63,GR85,LP82,BL85])

  • op´

erateur quasi-compact sur l’espace H des fonctions H¨

  • lder
  • saut spectral + perturbation : λ(s, t) vp dominante isol´

ee

  • exposant de Lyapunov existe, donn´

e par λ′

s(1, 0) = γ

47 / 51

slide-71
SLIDE 71

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms Analyse de l’algorithme LSB

Extension continue Produits de matrices al´ eatoires

Conclusion

Retour vers (t, s) = (1, 1)

Relations entre H1,0 et H1,1 :

  • (relation int´

egrale) F une primitive de f : x

a

Hp

1,1[f ](t)dt = Hp 1,0[F](x) − Hp 1,0[F](a)

48 / 51

slide-72
SLIDE 72

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms Analyse de l’algorithme LSB

Extension continue Produits de matrices al´ eatoires

Conclusion

Retour vers (t, s) = (1, 1)

Relations entre H1,0 et H1,1 :

  • (relation int´

egrale) F une primitive de f : x

a

Hp

1,1[f ](t)dt = Hp 1,0[F](x) − Hp 1,0[F](a)

  • (relation de dualit´

e) H1−s,t= dual de Hs,t, d’o` u λ(1 − s, t) = λ(s, t)

48 / 51

slide-73
SLIDE 73

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms Analyse de l’algorithme LSB

Extension continue Produits de matrices al´ eatoires

Conclusion

Finalement,

Les op´ erateurs satisfont les conditions requises Application du th´ eor` eme taub´ erien :

  • le double pour FC(s)

FC(s) = (I − Hs)−1 ◦ H[c]

s

  • (I − Hs)−1[1](0)
  • comportement lin´

eaire pour un coˆ ut C

49 / 51

slide-74
SLIDE 74

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms Analyse de l’algorithme LSB

Extension continue Produits de matrices al´ eatoires

Conclusion

Finalement,

Les op´ erateurs satisfont les conditions requises Application du th´ eor` eme taub´ erien :

  • le double pour FC(s)

FC(s) = (I − Hs)−1 ◦ H[c]

s

  • (I − Hs)−1[1](0)
  • comportement lin´

eaire pour un coˆ ut C

  • le triple pour FB(s) =

(I − Hs)−1 ◦ H[k+s]

s

  • (I − Hs)−1 ◦ ∆Hs ◦ (I − Hs)−1[1](0)
  • comportement quadratique pour la complexit´

e en bits B

49 / 51

slide-75
SLIDE 75

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms Analyse de l’algorithme LSB

Extension continue Produits de matrices al´ eatoires

Conclusion

Constantes

Constantes issues de l’application s → λ(s, s) :

  • λ(1 − s, t) = λ(s, t)

λ′

s(s, s)|s=1 = λ′ t(1, 1)−λ′ s(1, 1) = 2 log 2−γ =

1 log 2(2−γ0) Autres constantes :

ecomposition spectrale en s = (1, 1) fait apparaˆ ıtre l’int´ egrale

  • J

H[c]

1,1[f ](t)dt = µ(c)

Conclusion : EN[C] ∼ 1 2 − γ0 · µ(c) · N EN[B] ∼ 1 2 − γ0 · µ(k + s) · N2 2

50 / 51

slide-76
SLIDE 76

Dynamical analysis of euclidean algorithms Benoˆ ıt Daireaux Introduction Dynamical analysis of euclidean algorithms Application to accelerated algorithms Analyse de l’algorithme LSB Conclusion

Conclusion

Analyse dynamique :

ethode robuste puisqu’elle permet de traiter en profondeur plusieurs types de division

  • permet l’´

etude pr´ ecise d’algorithmes ` a la structure complexe

  • lien ´

etroit avec la th´ eorie des syst` emes dynamiques Perspectives

  • analyse en distribution de LSB
  • analyse de LSB diviser pour r´

egner

  • passage `

a des dimensions sup´ erieures (r´ eductions des r´ eseaux)

51 / 51