• Aucun résultat trouvé

Une géométrie du calcul

N/A
N/A
Protected

Academic year: 2022

Partager "Une géométrie du calcul"

Copied!
82
0
0

Texte intégral

(1)

Une géométrie du calcul

Réseaux de preuve, Appel-Par-Pousse-Valeur et topologie du Consensus Jules Chouquet

6 décembre 2019

(2)

1 Introduction

2 Ressources et approximations linéaires

3 Calcul distribué

4 Conclusion

(3)

De quoi ça parle

En général

Logique mathématique Informatique théorique

(4)

De quoi ça parle

En général

Logique mathématique Informatique théorique

(5)

Un chemin

Le raisonnement et le calcul

Philosophie

Logique

Informatique

(6)

Un chemin

Le raisonnement et le calcul

Philosophie

Logique

Informatique

Histoire de la pensée

(7)

Un chemin

Le raisonnement et le calcul

Philosophie

Logique

Informatique

Histoire de la pensée

ÉtudesdeJules

(8)

1 Introduction

Philosophie et Logique Calcul

2 Ressources et approximations linéaires Réseaux de preuve

Stratégies, Appel-Par-Pousse-Valeur

3 Calcul distribué

4 Conclusion

(9)

Les formes du raisonnement

Tous les AsontB Tous les B sontC Tous les AsontC

Tous les doctorants sont précaires Tous les précaires sont inquiets Tous les doctorants sont inquiets

(10)

Les formes du raisonnement

Tous les AsontB Tous les B sontC Tous les AsontC

Tous les doctorants sont précaires Tous les précaires sont inquiets Tous les doctorants sont inquiets

(11)

Les formes du raisonnement

Tous les AsontB Tous les B sontC Tous les AsontC

Tous les doctorants sont précaires Tous les précaires sont inquiets Tous les doctorants sont inquiets

(12)

Démonstrations

[Hypothèse 1] · · · [Hypothèse n]

...

Raisonnement Conclusion...

A`B

`A→B

`A→B `A

`B

(13)

Démonstrations

[Hypothèse 1] · · · [Hypothèse n]

...

Raisonnement Conclusion...

A`B

`A→B

`A→B `A

`B

(14)

Théorie de la démonstration

π1 Γ,A`B Γ`A→B

π2

∆`A Γ,∆`B

→ π12/(A`)] Γ,∆`B Cette réécriture est un algorithme.

(Gehrhard Gentzen)

(15)

Théorie de la démonstration

π1 Γ,A`B Γ`A→B

π2

∆`A Γ,∆`B

→ π12/(A`)]

Γ,∆`B Cette réécriture est un algorithme.

(Gehrhard Gentzen)

(16)

Théorie de la démonstration

π1 Γ,A`B Γ`A→B

π2

∆`A Γ,∆`B

→ π12/(A`)]

Γ,∆`B Cette réécriture est un algorithme.

(Gehrhard Gentzen)

(17)

1 Introduction

Philosophie et Logique Calcul

2 Ressources et approximations linéaires Réseaux de preuve

Stratégies, Appel-Par-Pousse-Valeur

3 Calcul distribué

4 Conclusion

(18)

λ -calcul

Une syntaxe simple : M,N, . . . :=x| λxM |MN

x7→M

M(N)

Une unique règle de calcul :(λxM)N →β M[N/x] Exemples de λ-termes

λx(x+1) λy(y∗y) λx42

Exemples de β-réductions

(λx(x+1))5→β 5+1 (λy(y∗y))5→β 5∗5 (λx42)5→β 42

(Alonzo Church)

(19)

λ -calcul

Une syntaxe simple : M,N, . . . :=x| λxM |MN

x7→M

M(N) Une unique règle de calcul :(λxM)N →β M[N/x]

Exemples de λ-termes

λx(x+1) λy(y∗y) λx42

Exemples de β-réductions

(λx(x+1))5→β 5+1 (λy(y∗y))5→β 5∗5 (λx42)5→β 42

(Alonzo Church)

(20)

λ -calcul

Une syntaxe simple : M,N, . . . :=x| λxM |MN

x7→M

M(N) Une unique règle de calcul :(λxM)N →β M[N/x]

Exemples de λ-termes

λx(x+1) λy(y∗y) λx42

Exemples de β-réductions

(λx(x+1))5→β 5+1 (λy(y∗y))5→β 5∗5 (λx42)5→β 42

(Alonzo Church)

(21)

λ -calcul

Une syntaxe simple : M,N, . . . :=x| λxM |MN

x7→M

M(N) Une unique règle de calcul :(λxM)N →β M[N/x]

Exemples de λ-termes

λx(x+1) λy(y∗y) λx42

Exemples de β-réductions

(λx(x+1))5→β 5+1 (λy(y∗y))5→β 5∗5 (λx42)5→β 42

(Alonzo Church)

(22)

λ -calcul

Une syntaxe simple : M,N, . . . :=x| λxM |MN

x7→M

M(N) Une unique règle de calcul :(λxM)N →β M[N/x]

Exemples de λ-termes

λx(x+1) λy(y∗y) λx42

Exemples de β-réductions

(λx(x+1))5→β 5+1 (λy(y∗y))5→β 5∗5 (λx42)5→β 42

(Alonzo Church)

(23)

Correspondance de Curry-Howard

π1 Γ,x :A`M :B Γ`λxM:A→B

π2

∆`N :A Γ,∆`(λxM)N :B

→ π12/(A`)] Γ,∆`M[N/x] :B

Haskell B. Curry Robert Feys William A. Howard

(24)

Correspondance de Curry-Howard

π1 Γ,x :A`M :B Γ`λxM :A→B

π2

∆`N :A Γ,∆`(λxM)N :B

→ π12/(A`)]

Γ,∆`M[N/x] :B

Haskell B. Curry Robert Feys William A. Howard

(25)

Correspondance de Curry-Howard

π1 Γ,x :A`M :B Γ`λxM :A→B

π2

∆`N :A Γ,∆`(λxM)N :B

→ π12/(A`)]

Γ,∆`M[N/x] :B

Haskell B. Curry Robert Feys William A. Howard

(26)

Une autre histoire

IXe

Algoritmi

1821

Charles Babbage

1843

Ada Lovelace

1930

Alan Turing

1997

Kasparov VS Deep Blue

2009

(27)

De quoi ça parle

Plus précisément

Une démarche : le dénombrement des exécutions

(28)

De quoi ça parle

Plus précisément

Une démarche : le dénombrement des exécutions

Analyser la consommation de ressources Algorithmes distribués probabilistes

Topologie combinatoire Approximations linéaires

Application Application

Outils Outils

(29)

1 Introduction

2 Ressources et approximations linéaires

3 Calcul distribué

4 Conclusion

(30)

Sémantique quantitative et approximations

Développement de Taylor

f :R→R x ∈R

f(x) =X

n∈N

1

n!fn(0)·xn

P:X →Y x:X

P x=X

n∈N

pn(x, . . . ,x)

| {z }

n

•λ-calcul diérentiel

•logique linéaire diérentielle

→ Ehrhard-Regnier Linéaire ⇔Pas de duplication ni d'eacement

Comment développer cette analogie dans des langages de preuves ou de programmes les plus généraux et puissants possibles ?

(31)

Contributions

Concrétiser l'analogie entre approximation de fonctions et approximation de programmes :

Réseaux de preuve de la Logique Linéaire (Girard)

I Système plus général que leλ-calcul

I Bonnes propriétés logiques et algorithmiques Appel-Par-Pousse-Valeur (Levy)

I Permet d'encoder des stratégies d'évaluation duλ-calcul

I Plus proche d'un langage de programmation

Quels outils pour cette correspondance ?

(32)

Contributions

Concrétiser l'analogie entre approximation de fonctions et approximation de programmes :

Réseaux de preuve de la Logique Linéaire (Girard)

I Système plus général que leλ-calcul

I Bonnes propriétés logiques et algorithmiques

Appel-Par-Pousse-Valeur (Levy)

I Permet d'encoder des stratégies d'évaluation duλ-calcul

I Plus proche d'un langage de programmation

Quels outils pour cette correspondance ?

(33)

Contributions

Concrétiser l'analogie entre approximation de fonctions et approximation de programmes :

Réseaux de preuve de la Logique Linéaire (Girard)

I Système plus général que leλ-calcul

I Bonnes propriétés logiques et algorithmiques Appel-Par-Pousse-Valeur (Levy)

I Permet d'encoder des stratégies d'évaluation duλ-calcul

I Plus proche d'un langage de programmation

Quels outils pour cette correspondance ?

(34)

Ingrédients du développement de Taylor syntaxique

λ-calcul Réseaux de preuve

Calcul à ressources Réseaux à ressources T

Idée

Si P est un reseau de preuves ou unλ-terme, alors : T(P) =X

i∈I

ai·pi où pour tout i ∈ I,pi est une approximation deP. Quel langage pour ces approximations ?

(35)

Calculs à ressources

Une syntaxe linéaire

Réduction de ressources

Réduction entre termes qui ne duplique ni n'eace aucune composante du terme réduit.

Exemples

hλxhxi[x,x]i[M0,M00,M000]→ hM0i[M00,M000]

⊗ ` →

(36)

Calculs à ressources

Une syntaxe linéaire

Réduction de ressources

Réduction entre termes qui ne duplique ni n'eace aucune composante du terme réduit.

Exemples

hλxhxi[x,x]i[M0,M00,M000]→ hM0i[M00,M000]

⊗ ` →

(37)

Calculs à ressources

Une syntaxe linéaire

Réduction de ressources

Réduction entre termes qui ne duplique ni n'eace aucune composante du terme réduit.

Exemples

hλxhxi[x,x]i[M0,M00,M000]→ hM0i[M00,M000]

⊗ ` →

(38)

Calculs à ressources

Une syntaxe linéaire

Réduction de ressources

Réduction entre termes qui ne duplique ni n'eace aucune composante du terme réduit.

Exemples

hλxhxi[x,x]i[M0,M00,M000]→ hM0i[M00,M000]

⊗ ` →

(39)

Correction du développement de Taylor

Résultat souhaité

Le développement de Taylor permet de simuler la dynamique du calcul de départ. In extenso :

Si P →Q, alors T(P)⇒ T(Q)

(40)

Quelles méthodes pour la correction du développement de Taylor ?

SiPQ,T(P)⇒ T(Q)

1 Disposer d'un calcul à ressources approprié.

2 Dénir le développement de Taylor avec des sommes innies dans le susdit calcul.

3 Dénir une réduction⇒ qui s'applique à des sommes innies

4 Vérier que⇒ permet bien de simuler la sémantique opérationnelle du calcul de départ.

(41)

1 Introduction

Philosophie et Logique Calcul

2 Ressources et approximations linéaires Réseaux de preuve

Stratégies, Appel-Par-Pousse-Valeur

3 Calcul distribué

4 Conclusion

(42)

Une présentation graphique des démonstrations

MELL:A,B ::=X |A⊗B |A`B|!A|?A

ax

A A

A B

⊗ A⊗B

A B

` A`B

?A ?A

c

?A

A d

?A

a

?A ?A1 ?An

A

!A

· · · P

(43)

Une présentation graphique des démonstrations

MELL:A,B ::=X |A⊗B |A`B|!A|?A

ax

A A

A B

⊗ A⊗B

A B

` A`B

?A ?A

c

?A

A d

?A

a

?A ?A1 ?An

A

!A

· · · P

(44)

Une présentation graphique des démonstrations

MELL:A,B ::=X |A⊗B |A`B|!A|?A

ax

A A

A B

⊗ A⊗B

A B

` A`B

?A ?A

c

?A

A d

?A

a

?A ?A1 ?An

A

!A

· · · P

(45)

Boîtes, duplication et eacement

!A

· · · P

c

?A

?A ?A

· · · P

!A · · · P

!A ?A ?A c · · · c

!A

· · · P

a

?A

?A1 ?An

a ?A1 a ?An

· · ·

(46)

Boîtes, duplication et eacement

!A

· · · P

c

?A

?A ?A

· · · P

!A · · · P

!A ?A ?A c · · · c

!A

· · · P

a

?A

?A1 ?An

a ?A1 a ?An

· · ·

(47)

Approximations n -linéaires d'une boîte

Dans les réseaux à ressources

ax d

A A

?A !A

MELL MELL

d !

?A !A

A ax A d ax

d ax

c !

?A !A

A A A A

?A a ! !A

d ax

d ax

c !

?A !A

A A · · · A A

On simule la duplication et la suppression des boîtes

(48)

Approximations n -linéaires d'une boîte

Dans les réseaux à ressources

ax d

A A

?A !A

MELL MELL

d !

?A !A

A ax A d ax

d ax

c !

?A !A

A A A A

?A a ! !A

d ax

d ax

c !

?A !A

A A · · · A A

On simule la duplication et la suppression des boîtes

(49)

Développement de Taylor des réseaux de preuve

· · ·P

?A1 ?An !A

MELL

X

k∈N

1 k!

p1

?A1 ?An A

pk

?A1 ?An A

c c !

?A1 ?An !A

· · ·

Réseaux à ressources

(50)

Développement de Taylor des réseaux de preuve

· · ·P

?A1 ?An !A

MELL

X

k∈N

1 k!

p1

?A1 ?An A

pk

?A1 ?An A

c c !

?A1 ?An !A

· · ·

Réseaux à ressources

(51)

Quelles méthodes pour la correction du développement de Taylor ?

SiPQ,T(P)⇒ T(Q)

1 Disposer d'un calcul à ressources approprié.

2 Dénir le développement de Taylor avec des sommes innies dans le susdit calcul.

−→Ehrhard & Regnier (2005)

3 Dénir ⇒ dans des sommes innies de réseaux à ressources

4 Vérier que ⇒ permet bien de simuler l'élimination des coupures de MELL.

(52)

Quelles méthodes pour la correction du développement de Taylor ?

SiPQ,T(P)⇒ T(Q)

1 Disposer d'un calcul à ressources approprié.

2 Dénir le développement de Taylor avec des sommes innies dans le susdit calcul.

−→ Ehrhard & Regnier (2005)

3 Dénir ⇒ dans des sommes innies de réseaux à ressources

4 Vérier que ⇒ permet bien de simuler l'élimination des coupures de MELL.

(53)

Quelles méthodes pour la correction du développement de Taylor ?

SiPQ,T(P)⇒ T(Q)

1 Disposer d'un calcul à ressources approprié.

2 Dénir le développement de Taylor avec des sommes innies dans le susdit calcul.

−→ Ehrhard & Regnier (2005)

3 Dénir ⇒ dans des sommes innies de réseaux à ressources

4 Vérier que ⇒ permet bien de simuler l'élimination des coupures de MELL.

(54)

Dénir ⇒

(Dans des sommes innies de réseaux à ressources)

Réduction ⇒

Élimination des coupures parallèles étendues aux sommes innies. Lemme clef

La longueur des chemins d'interrupteurs augmente à hauteur de 2n! sous réduction parallèle.

Propriété

⇒ préserve des propriétés géométriques et combinatoires, qui sont vériées dansT(P)pour tout réseau P de MELL.

(55)

Dénir ⇒

(Dans des sommes innies de réseaux à ressources)

Réduction ⇒

Élimination des coupures parallèles étendues aux sommes innies.

Lemme clef

La longueur des chemins d'interrupteurs augmente à hauteur de 2n! sous réduction parallèle.

Propriété

⇒ préserve des propriétés géométriques et combinatoires, qui sont vériées dansT(P)pour tout réseau P de MELL.

(56)

Dénir ⇒

(Dans des sommes innies de réseaux à ressources)

Réduction ⇒

Élimination des coupures parallèles étendues aux sommes innies.

Lemme clef

La longueur des chemins d'interrupteurs augmente à hauteur de 2n! sous réduction parallèle.

Propriété

⇒ préserve des propriétés géométriques et combinatoires, qui sont vériées dansT(P)pour tout réseau P de MELL.

(57)

Résultats

Théorème (Chouquet-Vaux, CSL 2018) T(P)⇒_ est toujours bien dénie Théorème (no8, section 2.6.4) Si P →Q,T(P)⇒ T(Q)

(58)

1 Introduction

Philosophie et Logique Calcul

2 Ressources et approximations linéaires Réseaux de preuve

Stratégies, Appel-Par-Pousse-Valeur

3 Calcul distribué

4 Conclusion

(59)

Quelles méthodes pour la correction du développement de Taylor ?

SiPQ,T(P)⇒ T(Q)

1 Disposer d'un calcul à ressources approprié.

2 Dénir le développement de Taylor avec des sommes innies dans le susdit calcul.

3 Dénir ⇒ dans des sommes innies de termes à ressources.

4 Vérier que⇒ permet bien de simuler la sémantique opérationnelle du calcul de départ.

(60)

Quelles méthodes pour la correction du développement de Taylor ?

SiPQ,T(P)⇒ T(Q)

1 Disposer d'un calcul à ressources approprié.

2 Dénir le développement de Taylor avec des sommes innies dans le susdit calcul.

3 Dénir ⇒ dans des sommes innies de termes à ressources.

4 Vérier que⇒ permet bien de simuler la sémantique opérationnelle du calcul de départ.

(61)

Résultats

Théorèmes (Chouquet, MFPS 2019)

PourM ∈CBNeed, siM →N,T(M)⇒ T(N). PourM ∈PCF, si M →N,T(M)⇒ T(N). Théorème (Chouquet-Tasson, CSL 2020) Pour M ∈Λpv, siM →N,T(M)⇒ T(N).

(62)

1 Introduction

2 Ressources et approximations linéaires

3 Calcul distribué

4 Conclusion

(63)

Retour aux algorithmes

Travailler à plusieurs c'est plus sympa

Modèle

(64)

Retour aux algorithmes

Travailler à plusieurs c'est plus sympa

Modèle

Système à mémoire partagée et opérations d'écriture/lecture immédiate.

(65)

Retour aux algorithmes

Travailler à plusieurs c'est plus sympa

Modèle

(66)

Retour aux algorithmes

Travailler à plusieurs c'est plus sympa

Modèle

Système à mémoire partagée et opérations d'écriture/lecture immédiate.

(67)

Communication et complexes simpliciaux

Une représentation topologique de la communication

p1 p2

• • • •

p1

p2

p1

p2 {p1}

{p2,p1}

{p1,p2}

{p2} (Complexe de protocole de dimension 1)

(68)

Complexe de protocole

Dimension 2

p1 p2

p3

(69)

Complexe de protocole

Dimension 2

p1 p2

p3

(70)

Complexe de protocole

Dimension 2

p1 p2

p3

{p1,p2,p3}

{p3},{p1,p2}

{p2}

(71)

Complexe de protocole

Dimension 2

p1 p2

p3

+1 tour d'exécution

(72)

Complexe de protocole

Dimension 2

p1 p2

p3

+2 tours d'exécution

(73)

Calculabilité asynchrone

Théorème (Herlihy-Shavit 1999)

Algorithme qui résout une tâche⇔ Propriétés topologiques du complexe de protocole

Applications

Le consensus (tous les processus retournent une valeur commune)

→ n'admet pas d'algorithme L'accord d'ensemblek (les processus retournent une valeur parmi un ensemble de k valeurs)

→ n'admet pas d'algorithme

(74)

Algorithmes probabilistes

Certaines tâches, comme le consensus et l'accord d'ensemblek admettent pourtant une solution si l'on introduit des probabilités dans le modèle.

Ben-Or (1983)

Aspnes-Herlihy (1990) Chor-Israeli-Li (1994) Mostefaoui-Raynal (2001) . . .

Question

La topologie combinatoire peut-elle nous apprendre quelque chose sur ces algorithmes ?

(75)

Oui

(La topologie combinatoire peut nous apprendre quelque chose sur les algorithmes probabilistes)

Dénitions

qr,k est la probabilité qu'un algorithme n'atteigne pas l'accord d'ensemble k au bout de r tours.

(→ k =1 (consensus) : Attiya-Censor 2010) f(n)est le nombre de faces du complexe de protocole de dimension n−1

Théorème (section 4.5.3.2)

qr,k ≥ 1 (f(k))r

(76)

1 Introduction

2 Ressources et approximations linéaires

3 Calcul distribué

4 Conclusion

(77)

Et alors ?

Résumé

Le développement de Taylor est un outil puissant, entre syntaxe et sémantique, qui s'adapte à une grande variété de systèmes.

Une étude géométrique et combinatoire des réseaux de preuve permet d'obtenir des résultats syntaxiques et sémantiques

La topologie combinatoire peut être adaptée à un modèle probabiliste et mener à des résultats sur les probabilités d'échec

(78)

Perspectives

Développement de Taylor pour leλ-calcul et les réseaux innitaires Réseaux pour l'Appel-Par-Pousse-Valeur

Appliquer les nouvelles méthodes d'analyse de ressources à la complexité algorithmique

Complexes de protocoles probabilistes pour d'autres tâches, d'autres résultats.

(79)
(80)

Appel-Par-Pousse-Valeur

Λpv

M,N ::=x|λxM | hMiN |(M,N)|πi(M)|ιi(M)| case(M,y·N1,z·N2)|M!|der(M)|xx(M) Subsume l'Appel-Par-Nom et l'Appel-Par-Valeur au niveau des sémantiques opérationnelle et dénotationnelle.

Résultats en sémantique quantitative (notamment extensions probabilistes)

(81)

Duplication : Exponentielles VS Morphismes de coalgèbre

Types positifs :A::= !I |A⊗A|A⊕A Types généraux : I ::=A|A(I | >

Λ Λpv

Application MN M(V1,V2) Approximation hmi[n1, . . . ,nk] hmi(v1,vk)

Interprétation N :!A (V1,V1) :P1⊗P2 P1⊗P2 −→h (P1⊗P2)⊗. . . ⊗(P1⊗P2)

h est un morphisme issu de la structure de coalgèbre des types positifs Si la duplication existe dans la sémantique, quid du développement de Taylor syntaxique ?

(82)

Réduction de ressources avec scission des arguments

Opérateur de découpage split

split(([m,m],[m,m])) = ([m],[m]),([m],[m])

En général : splitk(v) = (v1, . . . ,vk) où lesvi ont le même arbre syntaxique que v.

! ! ! m m0 m00

(m,(m0,m00)) splitk

−→

! ! ! m1 m01 m001

(m1,(m01,m001)), . . . ⊗

! ! ! mk m0k m00k

,(mk,(m0k,m00k))

Réduction pour ∆pv

hλxMiV → X

(v1,. . . ,vk)∈splitk(v)

M[v1/x1, . . . ,vk/xk]

Références

Documents relatifs

Nous avons déjà introduit (§ 5) cet espace de travail défini de manière idéale en fonction de seuls critères mathématiques. On peut donc également.. envisager cet espace comme l

On dispose de deux dés dont les faces sont numérotées de 1 à 6. L'un est rouge, l'autre bleu. On s'intéresse au numéro apparaissant sur la face supérieure lorsqu'on jette un de

— Boundary values of functions in vector valued Hardy spaces and geometry of Banach spaces, J.. — Boundary properties of analytic and harmonic fuctions with values in Banach

manière plus générale que le développement ultérieur des méthodes élémentaires des raisonnements directs du calcul des probabilités déve- loppé en France

En fait, le tableau a été construit parce qu'il se prête à l'analyse de correspondance ; et les résultats de l'analyse (exposés ailleurs cf [Corr. Code]) et parti-

étant l'éqüation d'une courbe plane, si elle tourne d'une quantité infiniment petite autour d'un axe passant par l'origine perpendiculairement à son plan, les points d'in-

de degré > 1 admette au moins une racine dans K. On peut aussi gé- néraliser la question 2). Il s’agit du Nullstellensatz (théorème des zéros) faible

Il faut donc trouver une méthode où, à chaque étape, la différence entre longueur et largeur du rectangle devient de plus en plus petite..