circuits et nombres 2-adiques gérard berry chaire algorithmes, machines et langages collège de...

39
Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Co ll èg e de Fr

Upload: hyacinthe-chretien

Post on 04-Apr-2015

107 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

Circuits et nombres 2-adiques

Gérard Berry

Chaire Algorithmes, machines et langages

Collège de France

Cours 2, le 9 avril 2013

Page 2: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2

Ce cours reprend la théorie et la pratique

de Jean Vuillemin (Digital Equipment X ENS)

09/04/2013 2

Source du cours

J. Vuillemin. On circuits and numbers, IEEE Trans. on Computers, 43:8:868-79, 1994

Page 3: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 3

Nombres 2-adiques (Hensel, ~1900)

• R est une complétion de Q. Est-ce la seule? Non : nombres p-adiques pour p premier nombre infinis écrits poids faibles d’abord

Ils unifient l’arithmétique infinie calculableet la logique Booléenne

• Beau, mais physique ? cf. Matière à Pensée, p. 32• Alain Connes / JP Changeux

• Jean Vuillemin : les entiers 2-adiques sont le bon• Jean Vuillemin : modèle des circuits numériques En un sens, nous allons créer leur physique

Page 4: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 4

2 Z : anneau des entiers 2-adiques

x 2 x0 x1 x2 … poids faibles d’abord

opérations et de gauche à droite

x 2101010... 2 (10)

x 1 4x

x 1/3

x 2100000... 2001010...

0 200000... 2 (0)1 210000... 21(0) 2 201000... 201(0)

1 211111... 2 (1)2 201111... 2 0(1)

y 2010101... 2 (01)

y 2 x

y 2/3

ou x y 1

Page 5: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 5

L’anneau des 2-adiques

1 / 2 n’existe pascar la somme de bits x0x0 ne peut pas valoir 1

p / q existe pour p, q entiers ssi q est impair(cf. Euclide)

Pas d’ordre compatible avec les opérations

1 0 1

Page 6: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 6

2 Z comme algèbre Booléenne

• 2-adique x vu comme l’ensemble { i | xi 1 }

exemple: 1/3 2101010... { i | i pair }

• Opérations Booléennes point par point x y x y x (x y)n x n yn etc.

2100011...

2011100...

2111111...

x x 1

• Relation arithmético-logique fondamentale

Page 7: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 7

Espace Métrique de Cantor

d(x,x) 0d(x,y) 2n n min t.q. xn yn

• Lemme : 2 Z est ultramétrique :

d(x,z) max (d(x,y), d(y,z))

Exemple : d (201111..., 201101... 1/8)

x

yz

d(x,z) min (d(x,y), d(y,z))

Page 8: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 8

Espace Métrique de Cantor

• Compact – très différent des réels !

ex. ouvert de préfixe 210010

• Base d’ouverts : préfixes finis

x0 x1...xn { 2 x0 x1...xn y0 y1...yn... | y 2 Z }

110

0 0

Page 9: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 9

Fonctions continues

• Lemme : f : 2 Z 2 Z continue ssi

f(x)n ne dépend que d’un nombre fini de xm

2 x0 x1......xm... 2 y0 y1...yn...

Continuité préservation de la finitude de l’information

Page 10: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 10

Fonctions synchrones

x f(x)

x0 x1...xn... 0 x0 x1...xn...

Page 11: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 11

Fonctions synchrones et contractantes

• Théorème f : 2 Z 2 Z est synchrone si et seulement si

f(x)n ne dépend que de x0x1...xn, i.e., est contractante

x,y. d(f(x),f(y)) d(x,y)

• Définition : f : 2 Z 2 Z synchrone ssi calculable par un

circuit synchrone (de mémoire finie ou infinie)

Preuve : « seulement si » trivial, Preuve : pour « si » voir la construction SDD diapo

x f(x)

Page 12: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 12

Circuits de Moore et contraction strictes

• Une fonction f : 2 Z 2 Z est strictement contractante

ssi f(x)n dépend seulement de x0x1...xn1

x,y. d(f(x),f(y)) d(x,y)

• Un circuit synchrone est de Moore ssi tout fil entre une entrée et une sortie passe par au moins un registre

Théorème : une fonction est strictement contractante ssi elle est réalisable par un circuit de Moore

Circuitde Moore

Page 13: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 13

Rebouclage des circuits de Moore

Circuitde Moore

f(x)x

Page 14: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 14

Rebouclage des circuits de Moore

x,y. d(f(x),f(y)) d(x,y)

Lifschitz x,y. d(f(x),f(y)) 0,6 d(x,y)

Théorème de Banach : toute fonction Lifschitziennesur un compact a un point fixe unique

Circuitde Moore

f(x) xf(x)

Page 15: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 15

L’addition dans l’espace

++

a0b0

s0

++1

a

1b

1s

r1

++2a

2b2s

2r

3r

r = 00

s a bmais en temps infini !

continuité :couper à n bits

pour n bits de sortie

s2n1 a2n b2n

x2n x mod 2n

Page 16: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 16

Additionneur 3 bits (Full Adder)

abc

s

r

s a oux b oux cr (a et b) ou (b et c) ou (c et a)

++

ab

s

c r

oux

ouet

et

etbits

a b c s 2 r

Page 17: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 17

Opérateurs 2-adiques de base

++

ab

s

cr

x 2 x

a b c s 2 r

x 1 2 x

2 x0 x1...xn... 2 0 x0 x1...xn...

2 x0 x1...xn... 2 1 x0 x1...xn...

Page 18: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 18

Addition et soustraction dans le temps

++

ab

s

r2r

tick !

a b 2 r s 2 r

s a b

même équationque dans l’espace !

a b 1 2 r s 2 r

b 1 b

s a b

12 r

++

ab

s

r

b b 1

a b s

Page 19: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 19

Addition mixte espace / temps

ri

++

ap

bp

sp

2ri

tick ! s a b

toujours lamême équation !

++

ai

bi

si

rp

a ap ai

b bp bi

s sp si

x y 2 x0 y0 x1 y1...

Code source constant pour tous les échanges espace / temps

Page 20: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 20

Addition stéréo

++

ab

s

r

additionneurstéréo

Alterne deux additions dans le tempsstéréo canal gauche canal droit

sp si (ap ai) (bp bi)

Page 21: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 21

Addition et soustraction dans le temps

++

ab

s

tick !

++

ab

s

a

bs

a

bs

Page 22: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 22

Multiplication et division par une constante

x 3 x

_x y x / 3 preuve : y x 2 y

division seulementpar des entiers impairs!

preuve : x 2 x 3 x

Page 23: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 23

Quasi-inverse

y 1 2 x y 1 / (12 x)x

y 2 x y 1y 1 2 x y

y 1 / (12 x)

?

contractante synchronemais mémoire infinie(cf. construction SDD diapo ??)

Page 24: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 24

Quasi-racine carrée

y 1 4 z

z x 2 z 2

y 2 1 8 z 16 z

2

y 1 8 x

xz y

y 2 1 8 x 16 z

2 16 z

2

ça ne nous dit rien sur les bits qui passent !

Page 25: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 25

Décomposition spatio-temporelle de f synchrone

f 0 0-prédicteur : f

0w = f (w0) pour tout mot w

f 0 premier bit sorti par f pour l’entrée 0...f 1 ... 1...

f 1 1-prédicteur : f

1w = f (w1)

f w dernier bit sorti par f pour le mot fini w

f u u-prédicteur : f

uw = f (wu) pour tout mots w, u

Page 26: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 26

Automate de x 3 x

+x 3 x

00 10

01 11

0 / 0 1 / 1

0 / 1

1 / 1

0 / 10 / 0

1 / 0

1 / 0

Page 27: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2

0 /

1 / 10 / 00 /

09/04/2013 27

Prédicteur 0 de x 3 x

+x 3 x

00 10

01 11

0 / 0 1 / 1

0 / 1

1 / 1

0 / 10 / 0

1 / 0

1 / 0

00 10

01 11

1 /

0 /

1 /

0 /

1 /

1 /

0 /0

1 / 00 / 1

1 / 0

1 / 0

0 / 0

Page 28: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 28

Etape de décomposition

f(x) = mux(x, f 1 2 f 1(x), f 0 2 f

0(x))

x

1

0

f 1

f 0f (x)

f 1

f 0

Page 29: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 29

Forme normale SDD de f : 2z2z

Table de vérité dans l’espace et le tempsultra-rapide : chemin critique un mux

La moitié des bits disparaît à chaque cycle

1

0

f11

f10

x

1

0

f01

f00

x

f 01

f 00

f 11

f 10

f 1

f 0

x

1

0

f1

f0f (x)

...

...

...

...

Page 30: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 30

SDD partagé de f : 2z2z à mémoire finie

1

0

f11

f10

x

1

0

f01

f00

x

f 01

f 00

f 11

f 10

f 1

f 0

x

1

0

f1

f0f (x)

...

...

...

...

f à mémoire finie nb fini de prédicteurs f u distincts

f à n registres SDD(f ) peut avoir 22 registresn

Page 31: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 31

Trace d’une fonction synchrone

Tr(f) 2 f0 f1 f00 f01 f10 f11 f000 f001 ...

f0 2 f1 4 (Tr(f 0) ʘ Tr(f1 ))

Série formelle sur Z/2Z : S(f) = n Tr(f)n zn

Théorème :

f : 2 Z 2 Z est de mémoire finie

ssi S(f) est algébrique dans Z/2Z

L’application d’une trace Tr(f) à un argument x est continue calcul ?

Page 32: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2

Théorème (Van der Porten) : si f est à mémoire finie, alors le nombre réel

0, f0 f1 f00 f01 f10 f11 f000 f001 ...

est soit rationnel soit transcendant

09/04/2013 32

Des traces synchrones aux trancendants

Automatic Sequences: Theory, Applications, GeneralizationsJean-Paul Allouche et Jeffrey ShallitCambridge University Press (21 juillet 2003)

Cf. aussi cours 5 2010, systèmes finis,http://www.college-de-france.fr/site/gerard-berry/index.htm#|m=course|q=/site/gerard-berry/course-2009-2010.htm|p=../gerard-berry/course-2009-12-16-10h00.htm|

Page 33: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 33

Des fonctions continues aux circuits

f continue mais pas synchrone dilater le temps

nombre 2-adique : < valeur, validité >

0 0 1 0 1 1 0 1 1 1 0 0 ...0 1 1 0 0 1 1 0 0 1 1 0 ... 0 1 1 0 1

Théorème : toute fonction continue peut être réalisée par un circuit synchrone avec validité

Page 34: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2

• Les 2-adiques sont le bon modèle des circuits synchrones arithmétiques (seulement ?)

• La distance 2-adique, la continuité et le synchronisme sont des notions vraiment fondamentales

• La structure de l’espace des prédicteurs reste à comprendre

• La relation fonction continue / circuit synchrone à validité est encore largement à étudier (calcul?)

09/04/2013 34

Conclusion

Merci à Jean Vuillemin

Page 35: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 35

Commutation opérateurs / délais

++

++

0)0(

ff que telle fonction toute pour Vrai

Utilisation: couper les chemins critiques

s’ 2 r’ 2 (abc)

abc

abc

s s’r r’

s’r’

s’ 2 r’ 2 a 2 b 2 c

Page 36: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2

1. Commutation opérateurs / registres

2. Le retiming comme optimisation fondamentale des circuits en temps

09/04/2013 36

Annexe – optimisation par retiming

Page 37: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 37

Le retiming, un accélérateur majeur

++

++

++

Calcule 2s

0

Page 38: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 38

Le retiming, un accélérateur majeur

++

++

++

Calcule 2s

Calcule 4s

0

Page 39: Circuits et nombres 2-adiques Gérard Berry Chaire Algorithmes, machines et langages Collège de France Cours 2, le 9 avril 2013

G. Berry, Collège de France, cours 2 09/04/2013 39

Le retiming, un accélérateur majeur

++

++

++

n bits: latence n-1, temps 1

Calcule 4s

0