You are on page 1of 70

Reports/Studies Rapports/Etudes

Langue originale : francais



Philosophie de In logique Ilneaire :

- logique et informatfque : point de vue d'un logicien

- 10 logique comme science de I'lnteraction

Deux etudes de Jean-Yves GIRARD

c Unesco 1988

Les opinions exprlmdes dans Ie prdsent document, le cholx des Ialts rnentlonnds et l'lnterprdtntlon qui ell cst donndo n'engogcnt que 10 responsabilltd de l'autour et ne refl~tent pas nccessolrement los vucs de l'Unesco,

24 APR 1989

SHS-89/hS-2

TABLE DES MATIERES

Logique et Informatique : point de vue d'un logicien

La logique comme science de l'interaction

Note sur l'auteur

-1-

LOGIQUE ET INFORMATIQUE

POINT DE VUE D'UN LOGICIEN

jean-yves girard directeur de recherches au CNRS

Rappeler l'importa~ce croissante de la logique en informatique est un truisme ; ceci dit, la plupart des informaticiens ne dominent pas les principes logiques, tandis que les logiciens Boot souvent peu au fait

des reali t~s de l'inforrnatique

(l'auteur de ces lignes acceptant

d'etre range dnns la deuxi~me categorie). II y a donc un enorme travail A fal.re pour rapprocher deux communautes : d' un c8te, nous avons une activite d'origine tr~s recente, et au u~veloppement tentaculaire, sans veritable tradition ; de l' autr-e une discipline bimillenaire, mais qui n'a trouve sa methodologie qu'A la fin du si~cle dernier, et qui a

deJA plus d'un demi-si~cle de tradition technique (Ie meilleur cotoyant Ie pire). La difficulte pour etablir la Jonction reside en particulier dans la multiplicite des approches logiques, et surtout dans Ie fait

que les sous-domaines de la logique pertinents A l'informatiquc, Boot souvent ceux qui ont ete Ie plus negliges dans un paase recent, par exemple les logiques "alternatives", ou regnait souvent la mediocritc pour ne pas dire plus-; Ie probl~rne se pose donc en t:es termes :

i) determiner les points de contact entre logique et informatique

-2-

ii) degager des principes methodologiques, en particulier th'i ter Lea approches qui denotent une ignorance des grandes lignes de la logique, ou des probl~mec reels de l'informatique.

L'auteur de ces lignes n'a pas la pretention de faire un panorama ccmplet de l'interaction logique/informatiqu~ i il se contentera de discuter

des quelques prob1~mes auque1s i1 s'est interesse, en proposant des interpretations, des solutions, necessairement sujettes a discussion. (.)

1. les grandes orientations de 1a logique

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

1.1. qu'est-ce-que la logique ?

La logique est la science du raisonnement i mais

i) ce raisonnement peut s'appliquer a des objets bien differents, par exemple les verites universelles des mathematiques, ou les deductions contingentes faites par un syst~me expert.

Ii) ce raisonnement peut emprunter bien des voies : celIe du formalisme (qui correspond, grosso modo,aux mathematiques), celIe -voisine- du mecanisme (par exemple les calculs numeriques sur machine), sans oublier Ie bon sens, qui est a la base de notre comportement quotidien. La logique mathematique a fait un choix methodologlque clair, en s'attachanl aux verites universelles et aux syst~mes formels (auxquels s~ rattachent les mecanismes de calcul): en laissant dans l'ombre l'aspect inductif (par exemple la generalisation a partir de cas particuliers) du raisonnement, aspect que lion ne peut n6g1iger dans les probl~mes d'intelligence artificiel1e.

II y a d'autre part une indubitable compos ante anthropomorphique dans

(.) en particulier, l'adoption d'une nouvelle logique, la logique lineaire (1] qui semble plus adaptee aux realites informatiques.

-3-

la fa~on dont laquelle les raisonnements formels sui vent -de loin- Ie modele du raisonnement humain i on ne saurait s'en plaindre quand il s'agit d'essayer, au moyen de machines, de mimetiser la pensee i par contre, la geometrie des demonstrations a ete systematiquement negligee, -on represente Ie raisonnement sous forme arborescente, ou pire, lineaire, ce qui est correct du point de vue humain- alors que, ainsi que nous

Ie verrons, la geometrie des demonstrations est proche de la geometrie des programmes, et que l'on pevt attendre de progres structurels sur les demonstrations des ameliorations substantielles au niveau machine.

1.2. sens et denotation

C'est F~ege, Ie pere de la logique moderne qui est a l'origine de cette distinction essentielle, que nous allons expliquer sur un exemple elementail'e : les formules (proprietes) 2 + 2 = 4 et 27 X 37 = 999

sont toutes les deux vraies : leur denotation commune est "vrai"

par centre, elles n'ont pas Ie m8me sens : si elles signifiaient rien d'autre que "vrai" , on ecrirait "vrai" a la place de 27 X 37 = 999 autrement dit Ie sens nous pose une question, a laquelle repond la denotation. Est-ce-que 27 X 37 = 999 1 OUI.

La m8me distinction s'applique aux termes (expressions qui repesentent des objets) : la denotation de 27 X 37 est 999 i mais 27 X 37 n'a pas Ie m8me ~ que 999, sinon, nous n'aurions pas, sur notre calculatrice de poche, une touche permettant de poser la question: 27 X 37 1, a laquelle la machine repond "999".

La distinction sens/denotation a 6te occultee par les developpements techniques de la logique qui oublient Ie sense On s'est rendu compte que l'on pouvait faire l'economie du sens, et travailler sur la denotation de fa~on purement algebrique (Boole, Lowenheim etc.)

-4-

ce faisant, on creait un univers conceptuel directement operatoire (la denotation etant particuli~rement simple a comprendre, alors que Ie sens est difficile a conceptualiser), menant a une des principales branches de la logique, la theorie des mod~les. Du fait qu'elle ignore Ie sens, la thcorie des mod~l "~' n' a aucun rapport serieux avec l'informatique

on voit cependant des articles d'informatique theorique pretendant utiliser de la theorio des mode Le s : en gell ... -r-a l ces articles n' ont pan

(il s'en faut de beaucoup) 1a qualite de la theorie des mod~les classique, et de plus lIs ne resolvent rien en informatique.

L'informatique doit prendre en compte Ie SAns en premi~re priorite ; en effet un programme resoud une question au moyen de son execution. Le resultat de l'execution est la denotation, alors que la question posee donne Ie ~ du pr.ogramme. On peut d'ai11eurs voir Ie prograrr~e comme une demonstration permettant de passer de la question (sens) a sa reponsa (denotation).

Bien que 1a situation s'amtHiore, l'aspect "scns" est sous-developpe en logique. Cet.aspect est pr~sent dans toute 1a tradition syntaxique,

qui privi1egie Ie symbolisme au depends de l'aspect semantique qui predomine en theorie des mod~les ; bien entendu, 1a syntaxa n'est pas Ie sens, il s'en faut de beaucoup, el1e n'en est que la trace ecrite. La theorie de 18 demonstration, grande manipulatrice de syntsxe, est,

a l'heure actuelle, la meilleure approximation a une 10giquo du sens qu'il resterait a elahorer. Bien qu'imparfaits, los grands resultats de theorie de la demonstration, enoncent des proprietes structurel1es profondes, des symetries au ntveau du sens; 11 en est ainsi du

theor~me d'Herbrand (1930) ou du theor~me de Gentzen (Hauptsatz) do 1934. (voir par example (2J)

-5-

1.3. 1es symetries de 1a 10gique

i) 1a symetrie 1a plus connue est 1a synletrie demonstrations/mode1es, dont nous rappe10ns Ie principe :

- on s'interesse d'une part aux verites universel1es, que l'on demontre au moyen d'axiomes et de regles

- on s'interesse d'autre part aux verites coherentes, pour lesque11es i1 s'agit de construire un modele.

Le theoreme de comp1etude (Gade1 1930) dit que A est demontrab1e si et seu1ement si sa negation ,A n'a pas de modele. Grosso modo, si A n'est pas demontrab1e, c ' est que i A est coherent i en saturant progressi vement 1es formu1es demontrables avec des enonces coherents, on obtient ainsi

un modele de 1A.

Un des aspects de la dualite demonstrations/modeles, c'est 1a possibi1ite de demontrer A en essayant de construire un modele de,A : de l'echec de toutes les tentatives on obtient un arbre qui n'est autre que 1a demonstration cherchee.

ii) 1a symetrie posi tif/negatif

II s'agit d'un aspect bien moins connu, et cependant d'un inter8t infiniment superieur pour l'informatique A ce1ui de 1a symetrie precedente.

Cette symetrie s'articu1b aut~ur d'un pivot constitu6 par Ie symbo1e

de negation, de loin l'operation 10gique 1a plus importante et 1a plus problematique. C'est Gentzen qui, en 1934, eut l'idee de formuler la

10gique de faQon symetrique par rapport A la negation, en creant Ie

calcul des sequents i en effet, jusqu'A Gentzen (avec l'exception notable

du theoreme d'Herbrand, prefiguration du calcu1 des sequents), la logique etait exprimee A l'aide de systemes d'axiomes et de regles assez arbitraires, sans qu'on puisse y distinguer de regularite profonde. Ces systemes arbitraires n'oxpriment pas bien l'universalite, 10 caractere naturel

-6-

des lois logiques.

Un sequent est une expression A1, ••• ,An 1- B1, ••• ,Bm, formee de deux suites findes de formules, separees par Ie symbole "1-"; Ie sequent indique la

simultaneite d'informations negatives sur les Ai et d'informations positives sur les B J' soi t ,A1 v ••• V,An v B1 v ••• v Bm' "v" etant Le symbole de disjonction et "," celui de negation. La symetrie profonde du cal cuI est

celIe qui echange droite et gauche dans un sequent; elle est exprimee au

moyen d~ principcs duaux : (on utilise ~,~,Q pour denoter des suites de formules)

- les axiomes

B 1- B

d' identite

- les regles

A 1- B,Q

~',B 1- C'

de coupure

--------------------- Cut

Ces deux principes ~noncent les deux f&ces complementaires de l'identite

"B est B".

II Y a ensuite un second groupe de r~gles non logiques, qui concernent la gestion des sequents : les r~gles structvrolles

- lcs r~gles d'echange permettent de modifier l'ordre des formules, du m~me c6te du symbolc de separation "1-".

A 1- ~',C,D,~" ------dE

A 1- ~' ,D,C,~"

~',B,C,~" 1- D

------gE

!}_' ,C,B,!}_" 1- D

- les r~gles d'affaiblissement pcrmettent d'ajoutcr, de part et d'autre

du symbole de separation, des formules superflues

~ 1- C

A 1- Q

---dA

!}_ 1- B,£

---gA !}_,B 1- Q

- lcs r~gles de contraction permettent d'6l1mlncr lcs rcdondances de part

at d'autre du symbole "I-"; ce Boot les r~gles lcs plus importantcs du sysUme

A 1- 8,B,£ !}_,B,B 1- £

dC gC

A 1- B,£ !}_,B 1- £

-7-

Les r~gles logiques permettent f'Lna Lemr ··t d' introduire des symboles logiques
de part et d'autre du symbole de separation i par exemple
negation ~,B 1- s A 1- B,£
d, g,
A I-'B,£ ~,'B 1- £
conjonction A' 1- B,!!' All 1- C,!!" ~,B 1- D ~,C 1- !!
d/\ g11\ g2/\
~' ,~II 1- B AC,!!' ,!!II ~,BAC 1- D ~,BAC 1- D Ce calcul est une formalisation de la logique parmi d'autres i il se distingue des autres par Ie Hauptsatz (Gentzen, 1934) , qui enonce

i) l'6liminabilite de la regIe de coupure des demonstrations

ii) au moyen d'un algorithme d'6limination des coupures.

Le theoreme de Gentzen repose essentiellement sur Ie fait que les parties droites at gauches des regles logiques se "repondent" parfaitement i en particulier, au del~ de la lista, necessairement contingente, des operations logiques que nous considerons, se dessine l'idee generale d'une operation logique, ~ savoir des regles droites et gauches complementaires au Bene

de l'elimination des coupures.

Nous reviendrons sur l'importance du Hauptsatz, qui a donne naissanc~ ~ beacoup d'idees en informatique, par exemple PROLOG. 11 est cependant ~ remarquer qu'il s'agit d'une filiation occulte, car Ie calcul des sequents est presque inconnu des informaticiens, y compris de ceux qui connaissent la logique (Ie livre recent de Jean Gallier (21, devrait combler cette lacune importante de la culture informaticienne); Ie calcul des sequents

ne se trouve en informatique que dej~ male ~ des considerations de contr6le, comme dans la methode de resolution de Robinson (1965), ou dans les tableaux semantiques. 11 s'agit dans tous les cas de modifications ~echniques du calcul propres ~ Ie faire rentrer sur machines; souvent

ces methodco sont encorc imparfnites, et on cherche alors ~ lcs ameliorer,

-8-

mais l'ignorance de la structure-mare I Ie calcul des s~quents, dont on ne viole pas impunement les sym~tries, conduit a des atrocit~s logiques sans interet informatique. Par exemple la litterature sur la n~gation dans PROLOG est la triste illustration de cette ignorance des bases logiques de la "programmation logique".

iii) la symetrie demonstrations/contre-demonstrations

La logique intuitionniste de Brouwer donne la pr~~~finence aux demonstrations la formule A veut dire "j'ai une demonstration de Alii demonstration non

pas dans un sens forme 1 I mais dans un sens plus vague, a pr~ciser (ce

qui n'a jamais ete fait de fa<;on totalemc It satisfaisante); nous

emplcyerons Ie mot "preuve" pour parler de ces demonstrations plus generales, et un peu vagues. La premiare constatation, c'est que les

ragles de la logique changent, par exemple Ie princi~e du tiers exclu,

A v , A, n'est plus acceptable, car une preuve de A v , A devrait comporter, soi tune preuve de A, soi tune preuve de 1 A, et souvent, nous n I aurons

ni I'une, ni l'autre. La logique intuitionniste a ete codifiee en un systame formel par Heyting; on peut la voir comme Ie calcul des sequents,

OJ les seuls sequents parmis seraient de la forme ~ 1- B, c'est A dire

avec une seule formule apr~s la sep~ration.

L'interet informatique de la logique intuitionniste est enorme : la aemanti<tue de He~ing, qui voit les preuves comme des objets fonctionnels, deboucl:e Bur une identification approximative entre programmes et preuves. Cette identification est codifiee par I'isomorphisme de CurrY-Howard, qui est A la base de l'utiliBation des ~ en logique. (voir l31)

Donnons quelques exemples de semantique des preuves, seton Heyting

- une preuve de AI\8 est la paire (p,q) d'une preuve p de A et d'une preuve q de B

-9-

- une preuve de A ~B est une fonction (donnee par un programme), qui a toute demonstration p de A, associe une demonstration F(p) de B.

Par exemple, la fonction de projection, qui a (p,q) associen1(p,q) p, est une preuve de l'implication (A/\ B) ~ A.

11 est facile de construire les objets fonctionnels correspondant aux demonstrations du calcul des sequents intuitionnistei ceci dit, la

deduction naturelle (essentiellement etudiee par Prawitz, voir (4](5]) est bien pluB interessante dans cette optique. La deduction naturelle, que

nous allons rapidement decrire, constitue l'autre syateme logique de

reference, plus specifiquement adapte a l'intuitionnJsme.

Une deduction se presente aous forme arborescente, de formules reliees par des regles logiques i la ra~ine de l'arbre est la conclusion, tandis que ses sommets se divisent en deux classes : - les hypotheses

- lcs f'orrnul ea dechargees (indiquees par t<) qui nc sont plus des hypothescs (mals qui l'ont ete a des etapes precedentcs). Une deduction sans hypothese est appelec demonstration. Donnons quelques reglcs de formation de deductions

A

(un arbre h une seule formule, 8 la fois hypothese ct conclusion)

A =) B

B

(8 partir de deductions de conclusions respectives A et A ~a, on peut former une deduction de conclusion B)

B

~I

A :=) B

-10-

(A parUr d'une deduction de conclusion B, on peut former une deduction

de A =) B; on a Ie droit de decharger auta,t d'occurences de A en

hypoth~:3e que l'on veut; 1a representation graphique utilisee sugger-e

une decharge, a10rs que Ie nombre de dechargcs de A est illimite, et

peut d'ai11eurs etre nul.)

Le theo:r~me de normalisation de Prawi tz (1'365) est I' analogue, pour 1a

d~duction naturel1e, du Hauptsatz. II consiste A faire disparattre

cer-tafnes sucessions de reg1~I3, jugees redondantes ; par exemp1e, 1a

configuration

B --=-.1

A A =)8

----:>E

B

est remp1acee par

A

B

c'est A dire que chaque A decharge est remplace par sa deduction A •

Le theor~me de Prawitz encnce la convergence de ce procede : en l'iterant,

on arrive A eliminer toutes les configurations indeoirables j de plus,

Ie resul tat est independent de l'ordre sui vi pour eJiminer 1es "mauvaf sea

configurations", en contraste avec Le thec·r~me de Gentzen, qui el imine

1cs coupures, mais dont 10 reBul tat depene) du "chemin sui v;"', Les

demc,nst rations obtenues au t.erme du procec'\6 de normalisation sont

di t(IS rorma1es.

L' ~!Iomc.rphiame de Curry-Howard est une appr-oche purement fonctionnella

A In d~duction naturolle, qui interpr~te ] es deductions comme des

tONles d I un 1ango~e fonctionne t

..... -~

-iC-"

-11-

Les formules sont maintenant vues comme des ~ : par exemple AI\ B

en tant que type, est vu comme Ie produit cart6sien de A et B, alors

que A => Beat vu comme l'ensemble des fonctions (donnees par un

programme) envoyant A dans B. Une deduction ID de la conclusion A

sous les hypoth~ses B1, ••• ,Bn sera vue comme un terme fonctionnel

t de type A, utilisant des variables 1ibres x1, ••• ,xn, de types resepctifs B1, •••• Bn• Pur exemple

A

- la deduction A sera repr6scntee par Ie terme x • forme d'une

variable de type A

- la deduction 6crite pr6c6dcmment avec (=>E) sera interpl'6t6e ainsi

ai nous avons d6ja interpr6t6 les deductions de A =)B et A par des

termes t de type A =)B et u de type A, alora notre deduction sera

vue comme t(u). l'application de la fonction t A l'argument u.

- la deduction 6crite plus haut avec (~I) aero intorpret60 ainsi

si nous avons dejA intorprete la deduction do B par t, foioons

apparattro dans tIes occurcnCOD d'une variablo x corroopondant nu~

A dechal'g6s, soi t t = t [xl i olors not.r-e deduction soro vue CO1M'''

~ x.t[xl , 10 fonction qui, A x associe t x • Cette dorni~ro operation a'appelle }.-'abstraction, et les calculs obtenus par iaomorphismo do CurrY-Howard, ').-calcula types.

Le theor~me de normalisation de Prawitz s~ traduit cn une operationalisation du)-calcul type: par exemple, l'elimination de 10 configuration

consider6e plus haut se traduit par une r~gle de r6ecriture :

(Ax. tfxl )(u) =/ t [u/xl

ou t(u/x) denote Ie remplacemont (substitution) de u pour x dans t.

11 serait fastidieux d[entrer dans les details, mais tout ceci a uno

importance tr~s grande pour Ie calcul : en effet il sera possible

-12-

de faire des calculs fonctionne1s formels au moyen des r~gles de r66criture du genre de celie consid6r6e plus haut. et Ie th6or~me de Prawitz assurera la terminaison des calcu1s.

Le syst~me bas6 sur la logique propositionne11e usuelle est en fait trop faible pour les applications pratiques. On a donc 6t6 amen6 A Ie renforcer en consid6rant des logiques plus fortes

- 1a syst~me de Martin-LHf (1971). qui introduit des op6rations A michemin entre quantification et connecteurs (voir (6)

- la syst~me F de I'auteur (1970). qui cst bas6 sur 1a logique propositionne11e du second ordre. qui se distingue par une syntaxe tr~s simple (en tout quatre op6rations) ct un pouvoir exprcssif presque il1imit6. 011i6 A uno gr~ndo modularit6 vcnant do 10 pOBsibilit6 d'obstroire

par rapport oux types. (voir (7].to1 (.»

- 10 oyotllmo do Coquand-lluct (th6orio deD conotructions. 1985). qui 00 pr6sento comme uno oynth~Bo cntre los deux opprochco pr6c6dentes 10 pouvoir oxpreooif. In modu1nrit6 Bont encore nugment6eB. nu prix cependant do complicotionB eyntaxl quea un pou g6nnnteB. (voir (9) )

- 10 travail offectu6 r6comment por Krivino.se rottache l I'isomorphiomo du Curry-lloward. ot au syst~mo F il o'ogit do In cr60tion d'un oyot~mo AF2 (orithm6tiquo fonctionno110 du socond ordro) qui ojouteroit nux consid6rotions habituel1cs sur 10 progrommation. celIe do preuve do programme int6gr6e. un programme 6tant vu comme uno d6monstrotion math6matique de so correction. (voir (10)

Nous avons 6t6 amen6s ~ rappe10r beaucoup de poinup1us ou moins c1assiques il ne foudroit pas perdre de vue que nous 6tions partis de l'id6e de sym6trie entre d6monstrationa et contre-d6monstrations. Cette id6e peut

se lire en filigrane derri~re l'interpr6tation de Heyting : par exemp1e

(.) Ie sysUme F a 6t6 retrouv6 par Reynolds ((11

-13-

a une demonstration de A =) E' (ou "A" a une signification "negative"), on

essaye d I opposer une demonstt-ation de A : Le rtsul tat du conf'Li x entre oe

A negatif et de A positif, qui, en quelque sorte s'annhilent, est une demonstration de Cft qui reste, a savoir B. On peut trouver trace de cette symetrie dans toute la tradition "constructive" (interpretations fonctionnelles, r6alisabilite) et m~me dans Ie theor~me d'Herbrand.

Malheureusement, la logique intuitionniste est bAtie sur une asymetr~e par exemple, en deduction naturelle, nous avons plusieurs hypoth~ses

mais une seule conclusion. "ypoth~ses et conclusions ne jouent pas un r6le symetrique dans Ie cas intuitionniste, et ceci est illustre par Ie tr~s mauvais comportement de 10 negation intuitionnisto. Intuitionnistiquement, "A n'est pas equivalent a Ai en fait on a quand mcme"",A ~ 'A, mois cette equival~nce n'est pas un isom(lrphiamo. Or 10 sym6trie dont nous venona do parler contient tout Ie c6te op6rationnol do 10 logique, c'est a dire l'essentiel des applications de 10 Jog Ique a l'informatique

l.n si tuntion ideale sor-at t de pouvo t r combiner deux typos de sym6trle

- 10 symetrie posi tif/negatif (A)

- 10 sym6trio demonstrations/contre-demonstrations (8)

Traditionnollement, on a ortmis, sons roison sfrieuBo, quo les deux types de sym6trio sont antagonistca : par exemp1e, 1a logiquc classique, qui veri fie 1a sym6trie (A), n'a pas de eemontique des preuvea. La logique intuitionniste verifie 10 symetrie (B), mais pas 1a symetrie (A). Quand choix se 1imitnit a ces deux logiquea, on preferait a coup sOr 1a !ogiquG intuitionniste, avec, 'ma1gre tout 1a nostalgie des si~plifications apportees par une negationoinvolutive.

La 10gique 1ineaire a, nous Ie verrons, 1es deux types d~ symetrie. Autrement dit elle combine 10 constructivite (semantique des preuves) et l'existence d'une negation involutivb, la negation lineaire. De plus Ie pouvoir

expressif de cette 10gique est superieur a ce1ui des logiques usuelles,

-14-

ce qui fait que ses qua1it~s supp1~mentaires ont une retomb~e imm~diate sur lea approches 10giques traditionne11es.

Nous aurons 1 'occasion de d~tai11er 1a 10gique 1in~aire dans ce qui suit. Deux axes essentie1s peuvent @tre d~gag~s quand aux applications de cette 10gique :

1) 1a sym~trie n~gatif/positif qu'e11e v~rifie, est une sym~trie entr~es/ sorties, ce qui permet d'esp~rer qu'e11e est adapt~e au ca1cu1 para11~le (contr-afr-emerrt A 1a Iog Ique intui tionniste, qui, pri v~e d' une telle sym~trie, se~ait s~quentie11e)

2) 1a 10giquo 1in~aire est une logique des y~rit~s fugaces : ainai, 1a conjonction exprim~e par Ie symbo1e H, ne v~rifie pas que A et A H A Boot ~quiva1ents : c'est parce qu'affirmer A ou affirmer A deux foiE' (par A B A) ont un Bans op6rationne1 tr~s diff6rcnt I

2. 1es s6mantiques de la progf'ammation xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

2.1. qU'ost-co quo 10 s6montiquo ?

Commo 10 nom l'indiquo, il s'agit d'intcrpr6tor 1cs 1angogos. Cotto intorpr6tation pout so fairo A deux niveaux :

i) lcs s~mantiquoB d6nototionno1los, s'int6roBscnt uniqucment aux l'6sultats des programmes, c'est A dire qu'eHos no diff6r~ncient pas un pr-ogr-amme

non encore cx6cut6 du r6sultat final affich~. Ce sont des s6mantiques statiques, qui identifieront 27 X 37 et 999, et de ce fait, n6cessain~ment d'int6r8t un peu limit6 i par contro on en connait beaucoup.

ii) les s~mantiques op6~ationnelles mettent 1 'accent sur l'6X~cution, ce qui fait qu'elles doivent distinguer entre programme et r6su1tat, et

27 X 37 doit, op6rationne11ement, 8tre interpr6t6 diff6remment de 999.

II n'exiate pas A l'heure actuelle de s6mantique op6rationnel1e non trlviale, A l'exception du travail en cours utilisant 1a logique lin6aire.

-15-

Mais A quoi donc sert la semantique ? La question merite d'@tre posee serieusement, car la plupart des travaux de semantique n'ont aucune retombee, directe au indirecte, sur la programmation.

- nous pensons qu'une bonne semantique denotationnelle devrait faire apparattre des imperfections des langages (par exemple : des equations supplementaires oubliees, et qui raccourcissent les calculs si on les adopte, des operations plus simples, plus primitives que celles que

l'on a, etc.) j par contre tout l'aspect de la semantique denotationnelle qui s'interesse A la completude des langages par rapport ~ tel ou tel genre de mod~le, n'est que de la theorie des mod~les bon marche, sans retombees appreciables.

- une semantique denotationnelle non triviale (c'est A dire n'interpretant pas un programmo par lui-mame I) devrait faire apparattre la structure profonde de 1 'execution, ct pourrait deboucher SUI' dc nouveaux types

do langagcs de bas niveau, voire de nouvelles machines.

2.2. les semantiques denotationnelles

La semantique de Scott (1969) cst basee Bur dos idees topologiquos les fonctions do Avers B seront continues par rapport A certaines topologies. II s'agit de theoriser l'idee qu'un programme n'utilise

que des informations"finies. Cette uemantique a pour principal merite d'exister, c'est A dire de montrer la possibilite d'une semantique denotationnelle non triviale. La mise en ~uvre estpeu satisfaisante, car elle utilise des techniques de codage tr~s lourdes, ce 4ui interdit

(voir 12)

toute utilisation, mame abstraite, car on n'arrive pas A ecrire les interpretations des algorithmes les plus immediate. Cette semantique

a ete simplifiee pAr Berry et Winekell«(131,(141) au moyen de la notion de stabilite (1978). Une simplification ulterieure a ete obtenue par

-16-

l'auteur (espaces coh6rents, 1984), et il devient enfin possible d'6crire la s6mantique d6notationnelle de quelques op6rations simples. (voir [15J) 2.3. types cornIne sp6cifications

D6notationnellement, un !lE! (par exemple dans les l-calculs typ6s 6voqu6s plus haut) joue Ie role d'une sp6cification. Par exemple, la fonction produit, d6finie entre entiers, dcmande deux entiers comme arghments,

et rescort un entier comme rcsultat. ;'e fait de ~ ce programme par

ent .:) (cnt =) £_nt) (ou ent est Le type des .mtiers) exprime ce fait,

qui (lSt capital. Dans Ie cas qui nous int6resse, si on donne au programme les deux arguments ~ntiers 27 et 37, nous savons qu'il nous rendra un resultat entier, avant d'avoir effectu6 l'op6ration ; en particulier, il devt ent possible d'utiliser Le programme non effectu6 27 X 37 comme entrlie d'un autre algorithme, qui prendrait des arguments de type ent. L'idoe est donc que Ies types nous donnent des sp6cifications, dont Ie respoct aSB~re la bonne marcho dcs programmcs. Lc non-rcspect dcs specxfications (par excmple si on donne A une fonction de type A ~> B

un argument qui n' est pas de type A) amene A des rcsul tats imprevisibles Ie programme peut tr~s bien fonctionncr quand mame, ou il peut conduire A dos boucles etc •• En particulier, analyser les types (dont nous avons vu qu'ils sont des formules logiques) clest aussi analyser la nature

des spacifications, et pour celA la s6mant14ue d6notationnelle est pr6cielJse.

2.4. 1a logique lin6aire

8i lion consid~re les types courants a la lumi~re dlune s6mantique d6notationnelle simple, comme les espaces coh6rents, il saute aux yeux que

les op6rations de typage que nous connaissons sont trop compliqu6es, clest a dire qulelles combinent plusieurs operations de typage plus primitives, mois qui nlont jamais etc consid6r6es auparavant. En faisant apparattre

-17-

df' tels types "caches", et en faisant fonctionner l'isomorphisme de CurryHoward aI' envers, l' auteur a obtenu une "logique lineaire" (1986). aux proprietes assez curieuses, et qui semble plus pres de llinformatique

que les logiques considerees habituellement. (voir (IJ,[16])

Sans entrer dans les details, disons que Ie principal changement consiste

a abandonner, dans Ie caleul des scquents de Gentzen, les regles structurelles de cont.r-ac t Ion et d' affaiblissement. Or ces regles sont 11 analogue logique

des operations "memoire" des calculs (affaiblissement

effacer, contraction

dup1iquer), et leur abandon pur et simple, conduirait a des pr-ogr-emmea excutables sans mcmoire,"et donc dlun inter~t un peu limite! En realite,

on introduit en plus deux connecteurs logiques (! et 1) qui permettent dleffectuer les operations de memoire, mais cette fois de fa~on explicitement indiquee par Ie typage I Autrement dit, la composante "memoire" du typage etant isol~e, on va pouvolr regarder les types en oubliant cet aspect. Pr-eaque toutes les constructions de types ont une composnrrte m6moil'e june fois cette composonte evacuee, on Be trouve 6vec une variate de typoge

bien plus riche quia llordinaire (car l'utilisation non limitee do 10

mcmoire fait disparattre beaucoup de nuances de progr-ammat.Ion}, Par

exemple, Le type A =)8 se decompose comme {IA) -0 B, ou "-0" est l'implication lineaire. Dire que la fonction f est de type A -0 B

signifie bien sOr que f envoie A dans 8, mais surtoub que f nlutilise

son argument qulune fois, et qu'11 n'y a donc pas lieu de Ie stecker.

Bien entendu, dans la decomposition (IA) -0 B, comme nous commen~ons

par un stockage, indique par lA, il n'est pas tres etonnant, qu'apres

ce s tockage , un r-es tockage ne soi t pas necessaire I Ce qui fai t

l'inter~t de l'implication lineaire, c'est qu'elle peut ~tre utilis~e

toute seule, sans "1", e t- qu I alors, elle donne des indications pr-ec Ieuaee

-18-

non seu1ement sur les entrees/sorties, ~ais sur l'execution de l'algorithme,

considerations qui sont deja du pur domaine operationnel. Voir a ce sujet

(17], en collaboration avcc Y. Lafont.

L'amelioration la plus fondamentale de la logiquc lineaire par rapport a

la logique intuitionniste, est la presence d'une symetrie retrouvee, exprimee par la negation lineaire Al : la symetrie vient du principe

qui permet d'identifier All et A. La negation lineaire a une interpretation

Lnf'ormat.Lque simple : 11 s ' agi t de la commutation entrees/sorties :

autrement dit, une entree de type A peut @tre vue comme une sortie dc type Al, et une sortie de type A peut 8tre vue comme une entree de type Al. Une fonction lineaire de Avers 8 (type: A -0 8) peut @tre vue comme une fonction lineaire de 81 vera Al (type: 81 -0 Al), alors

que la logique intuitionniste cst basce sur une asymetrle entra ~ntrccs

ct sortics. C'est pourquoi la logique lincaire se propose de typer des

algorithmes parall~les, avcc communications rcversiblcs, alora que la

logique Intuitionniste cst prlsQnni~re du cadre scqucntiel.

Dans l'6tat nctuel, scule une partie de In 10glque llneaire est traitee

de racon parfoi tcment satisfaisante, Ie reste n I etant pas comp Ie tement

degage de la tradition intuitlonniste. La partie mattrisee est appelec

"fragment mul tipl1catif", et se distingue par une syntaxe de type

nouveau, avec des consequences immediates au niveau operatlonnel.

Dans Ie fragment multiplicatif, les demonstrations apparaissent comme

des reseaux formcs de formules, et reliees entre elles par des liens

logiques. Ces reseaux expriment des formes variees de cooperation

entre algorithmes, et peuvent @tre compris comme des "demonstrations

vn parall~le". II y a une condition globale de correction d'un reseau

qui consiste a voyager dans Ie graphe en suivant des instructions

de parcours, selectionnees par des interrupteurs : quelque soit la

-Ui-

position des interruptp.urs, Ie graphe tout entier doit pouvoir etre parcouru en une seule fois, autrement dit, il n'y a pas de courtcircuit d'information.

2.5. probl~mes de modularite

Les questions de modularit~ se posent avec acuitc, des qu'il s'agit de remplacer, dans un pr-ogr-amme , un sous-programme defectucux, ou qu'on vient d'ameliorer. Le typage est, bien entendu, en donn ant les specifications

du aoua-programme a remplacer, une solution parfaitement satisfaisante,

mais ne peut s'appliquer que si Ie module a remplacer est de forme suffisamment reguli~re.

Le probleme de modularite est parfaitement resolu dans Ie cadre limite du fragment multiplicatif de la logiquc lineaire : si je decoupe un reseau B en deux rcseaux B' et B", raccordes par leur frontiere commune dB' = dB", 11 cst possible d'exprimer que les modules B' et B" sont "compl~mentaires", por leur comportement it la frontiere. Grosso modo les instructions de parcours de B' et de B" induisent des ensembles

de permutations S(B') et S(B") de la frontiere dB'. B' et B" sont raccordables du fait que S(B') 1 S(B"), ce qui veut dire que, si je choisis une permutation f dane S(B') et une permutation g dans S(B')

et si je pars d'un point a de dB' en utilisant f, puis g, puis f,

puis g etc.,je vais parcourir dB' tout entier deux foi3, avant

de revenir en a par g. 11 est donc possible de ~ B' et B"

par les ensembles de permutations S(B') et S(B"), et ceci montre,

dans un cas encore limite, qu'en theorie, Ie probleme de la

modularit6 a une soluUon simple. 2.6. semantiques operationnelles

Comme nous !'avons dit, il n'existe pas de semantique operationnelle gene-

(voir (16)

rale pour Ie calcul. Ceci dit, les progres rapides de la logique lineaire

-20-

permettent d'esp~rer une solution dans un proche aven1r. Nous nOUB contenterons ici de dil'e deux mots Bur la solution deja existante pour Ie fragment multiplicatif, et nous travaillerons Bur un exemple.

Supposons que nous voulions appliquer une fonction lineaire h (type A -0 B)

a un argument k (type A) i Ie type A peut etre vu comme forme de permutations d'un ensemble fini, ici nous prendrons A a quatre ~lementB a,h,c,d, et

k(a) = b, k(b) = c, k(c) = a, ked) = d Ie type Best lui-ausssi forme

de permutations d'un ensemble fini, ici nous prendrons B a trois elements e,f,g. Le type A -0 B sera forme de certaines permutations d'un ensemble

a 4 + 3 = 7 elements, a',b',c',d',e,f,g (a',b',c',d' correspondant a

a,b;c,d), et on supposera que h(a') = g, h(b') = e, h(c') = f, h(d') = c',

h(e) = d', h(f) = b', h(g) = a'. Nous voulons former une permutation h(k) de type B, qui sera uno permutation de c,f,g.

L'i~ee est"dQ partir d'un point e,f ou g, en utilieant h et k do mani~ro altcrneo, en considerant que a = a', b = b', c = c' :

i) nt e) = d' i ked) = d i h(d') u c' ii) h(f) = b ' i k(b)"= c i hf c ") = f iii) h(g) = a' i k(a) = b i htb ") = e

k(c) = a i h(a') = g

Noue obtenons finalement : h(c) ~ g

h(f) = f i h(g) = c.

En particulicr cct excmple montre bien que la partie multiplicative d'un programme fonctionne par iteration de permutations.

11 resterait A int~grer cette idee dans un cadre plus vastc, dc mani~re a tenir compte des autres aspecte de la logique lineaire. Ce travail est

en cours et les resultats particle obtenue eont encourageants. (REMARQUE si cc travail aboutit, il donncra une eemantique operationnelle pour dee logiques plus etablies, comme la logique intuitionniste, puisque nous avons vu que cee logiques se t.r-adutaerrt en logique lineaire i dans

cette opUque, la logique lineaire n'apparaitrait plus que comme un

-21-

auxiliaire m~thodologique, permettant de serier les pl'obl~meBi par

exemple, Ie probl~me compliqu~ de l'implicati~n est ahorcl~ plus facilemont

en traitant s~parement -0 et I.)

2.7. Ie parall~lisme

Une des questions essentiellea de m~thodologie par rapport A ce domaine ~

encore tr~s experimental, est de determiner s'il a ou non un aspect logique

important. Les specialistes du sujet sembleraient penser que non : les

syst~mes proposes (par exemple Ie syst~me CCS

de M~lner), n'ont

pas de structure logique par eux-meme i tout au plus, on tente de plaquor

une structure logique externe (par exemple de logiques modales ou temporelles

comme Pnueli (17) •••

qui devrait dccrire Ie comportement des programmes.

A notre avis, toute utilisation non intcgrce de la logique ne peut pas

vraiment rcsoudre les probl~mes, car la logique n'est au fond quo la

structure-meme des programmes. Nous pensons que la solution cst A

recherchor sous la forme d'un typago, correspondnnt h une logiquo intcgrco,

comme dons Ie cos de l'isomorphismo dv CurrY-Howard, si prccieux dons

Ie cadre scquentiel. La logique lincaire a ete prccis~ment con~ue comme

une logique dcbarrassce des limitations de type sequenticl qui 8Qnt typiques

de la logique intuitionnistc (par exemple, la logique intutionniste n'est

pas symetrique du point de vue entrces/sorties)i la logiquo lineaire

s'organise autour de cinq niveaux: (voir [19J)

i) la communication: il slagit de la negation lineaire (.)1, qui

echange Ie rale des entrees et des s.~: ~ies. Lee r~gles logiques de

la negation (l'axiome logique 1- A,Al et la r~gle de coupure) servent

A etablir cette communication.

ii) la cooperation: il s'agit des connecteurs multiplicatifs • at ~,

qui expriment de quelle mani~re une tache totale peut etre repartie

en deux sous-taches •• denote l'absence de cooperation entre ces

-22-

(.)

~ous-taches, a10rs que ~ indique leur imbrication. ·11 est a noter } 'existence

de connecteurs mu1tip1icatifs d'arite superieure, non reductib1es a des

cooperations binaires, par exemp1e, i1 y a quatre formes de cooperation

ternaire propre, dont l'avenir noua dira ai oui ou non, i1s ont une

importance informatique. Lea deux premiera niveaux forment preciaement ce

fragment mu1 tiplicatif, pour leque1 1a theor-I e est deve l oppee juaqu I au

niveau de la scmantique operationne11e.

iii) Ie partage : il a'agit des connecteura additifs e et &, qui indique

comment une tAche tota1e peut atre remp1acce par une aous-tache T' ou

une sous-tache Til, sans que l'on sache 1aque11e, avant execution du

programme (exemple : SI

...

ALORS ••• SINON ••• ). Lea prob1~mes pour

etcndre 1a scmnntique opcrationnelle au nlveau du partoge Boot des problam~s

d~ synchronisation: en effet ai la tache T devient plus tard, soit T',

soit T", tont que l'on ne oait pas laquclle des deux oous~taches sera

e rrectueo , 11 importe de ne toucher ni it T', ni it Til (en porticul1or, s1.

T' et Til commandont des actions I).

iv) la mcmoire : 11 s'agit des connecteurs exponentials I et ? ; Le prcnier

concorno la mioe en mcmoire, Ie second la gestion de la mcmoire (effncenent,

duplication, lecture).

v) I' abstraction : 11 s' agi";; des quantificateurs du second ordre 1\0( et \IrA. ;

cea operations permettent de definir des modules traa generaux, ou lea

types ne sont pas spccifies. C'est ce niveau qui donne la puissance

expressive du calcul.

II est trop tat pour juger de la pertinence des considerations de logique

lineaire par rapport au parallelisme ; seule la mise au point definitivo

de la semantique operationnelle pourrait permettre de concl~re.

(.) un exemple d'imbrication eat donne par l'implication lineaire A -0 B, qui n'est rien d'autre que Al ~. B~

-23-

3. problemes de langage

xxxxxxxxxxxxxxxxxxxxxxx

3.1. langage-source et langage-objet

~n general, un programmeur hUmain ecrit dans un langage evolue (par exemple PASCAL), 16 langage-source ; puis ses instruction3 sont compilees, c'est a dire traduites dans une langue tr&s primitive, Ie langage-objflt, qui est la langue interne de la machine. Le langage-objet est trcD proche de la structure de la mp.chine ; on peut penser que, si leg recherches de scmantique opcrationnello aboutissent, cola devrait influencer leB langages-objets I)t mame dans une certaine mesur-e , Ie fonct I onnement des machines (J'drchitecture). Comme nous avons d6ja fait Ie tour- du peu

quo nOI;8 aavons sur 10 scmantique oper-at.f onne He , nous nous concent.rer-ons sur les langoges-Bourco. Por deflnition, Ie longoge-souce monipule des segments plus ou moins complexes de longoge-objet, qui oppa:'oissent donc comme deB ~dules, que Ie programmeur osscmble comme les pic(es d'un

jcu do construction,. Le ~~, en cnon<;ont des condi tions prl ~ises

pour pouvoir combiner des modules, cst donc essenticl. Le typage n'est pas compile (11 peut, et dol t etre veri fie) , car il ne ferait qu'alourdir I' exccution des programmes.

3.2. exemples de types

Tous les types ne jouent pas Ie meme role ; on distinguera done

- les types-valeurs : un objet dont·le type est valeur, est ur resultat de calcul. Par exemple un calcul pout se terminer par un booleen (OUI), un entier '(999), une liste de caracteres etc. et les types correspondants sont done deD types-valeurn.

- les types geno§raux : en general, 11 manque a un programme d(", donnees pOU!" pouvoir etre effectue, par exemple la fonction produit attend deux argu~ents entiers i son type ent ~ (errt ~ ent) n'est done pas un type valeur.

-24-

Les langages types les plus courants fouJ'nissent des schemas preetablis

pour former des types-valeurs. par exemp ie Le type boot een, Ie type

des entiers etc. L' ecuoil courant est qUI! (toutes les utilisations ne

pouvant etre prevues au moment de la conC!eption du langage). des types

importants sont ainsi exc l us , voir par exemp Le l' oubli du type des

listen. par les inventeurs de PASCAL. Les langages plus recents comme )e

syst~Me F. la theorie des constructions Inentionnes plus haut. resolvent

cette question de mani~re elegante. en nl~ fournissant aucune liste

preetnblie. mais par contre en adoptant des achemas tellement generau>:

que tout- type de donnce "valeurs" r-a l sonnab l e : y soi t facllement typab1e.

On n "lst alors plus du tout limite par des cholx syntaxiques cont r'af gnant.e ,

et on peut cr-eer- ses types au gre des beaorns , Par exemple, F type tout

type de donneo "inductif" de manter-o trlls simple.

3.3. inconvenients du typage

Assur.~ment, 1e typage cst uno contrainte; 11 oblige it verifier sans cuase

l'adequation des types des modulcs quo l'on vcut imbriqucr. Ccci dit,

In quant t t'Icatf.on du second ordro (abstraction sur les typos) it l'oouvre

dans F ot ses der.ives, assouplit co type do contrainte. Par excmple, ni

T est un typo, creons 10 type list(T) forme de suites finies d'objets T

de type T, et definissons la fonction !E~end de type Hst(T) =) (T =) ;l1st(T»

qui, it une liste (to, •••• tn_l) d'objets de type T, et it t de type T.

T

associe la Hste (to' •• Of tn_I' t). Dans F, append est definissoble pour

chaque T, mais aussi uniformement en T : on peut former append de tYPI3 AtI...!ist(.t) ::)(GC. =>l1st(O(l), qui MUS donne a(lpendT pour chaque type

T, simplement en appliquant append it T I Autrement dit, il n'est pas

T U

neceosaire de programmer plusieurs fonctions append, app~nd etc.,

~~ suffira I

-25-

Une autre limitation -beaucoup plus serieuse- du typage, est qu'il oblige

parfois a modifier les algorithmes aux depends de leur efficacite. Un

exemple typique est fourni, sur les entiers, par la fonetion de predecesseur

P(O) = 0, P(Sx) = x (S d4note Ie suecesseur : Sn = n+1) j naturellement,

en presence d'un argument St, cet algorithme me rend la valeur "t", sans

avoir besoin d'effectuer t. Type dans F, Ie predecesseur n'a plus Ie

meme algorithme, c'est a dire que pour calculer P(St), on doit effectuer

t, jusqu'a obtenir une valeur entiere n j alors on peut conclure que

peSt) = n. L'algorithme de F analyse son argument, et ne s'arrete que

quand il a verifie qu'il est de la forme S ••• SO, puis il Ie synthetise

en "oubliant" un symbole S. On t.rouver-a facilement d'autres exemp l es de

cettp. situation, ou l'approche typee allonge assez inutilement les

calculs. II est evidemment hoI's de question de rajouter a un systeme

comme F, une pr-tmt t Ive pour Je predecesseur, car on n'en finlrait plus

de bricoler des extensions, chacune detronee par la precedente. Donnons un autre exemple : Maurey a produit un \-terme non type, base

sur unc idee astucieuse, et qui calcule !e plus petlt de deux entiers

Inf(n,m) dans un temps egal (a un coefficient de proportionnallt6 pres)

au plus petlt de ces entiers. Krlvlne a montre recemment t20~ que ce terme

n'est~pas typable dans F. Autr~ment dlt, alors que Ie tcrme de Maurey 6

permet, sans types, de savolr que Inf(10,10 ) = 10, en 10 etapes,

6 (.)

dans F nous au~ons besoln de 10 etapes. ce'qui est ridicule. POUI'

pouvoil' typer' ce type d' algorithme, Kri vine a ete amene a considlirer

de nouveaux schemas de formation de types, par exemp1e, V etant

donne, d'introduire T et U par des equations symctriques :

U = T =) V

On voit done que se ~~ssine une nouvelle tendance de 18 programmation

(.) il n'est pas exclu que des variantes de l'algorithme de Maurey soient

typables dans F i cependant certaines tentntives portent ~ pensor que le probleffi8 serit alors d~ m8me nature que celui du predcccsscur vu plus haut.

-20-

typ~e, a savoir la possibilit~ de cr~er des types, hors d~ toute r~f~rence a une syntaxe particuli~re.

Si nous revenons a l'id~e de type comme instruction de branchement d'un module, et si nops pensons que ces instructions de branchement on un Rens

op~rationnel direct (par exemple des orthogonalit~s entre permutations),

cette situation est assez naturelle : il est impossible qu'un cadre

quelconque pour former des types, puisse representer toutes les instructions de branchement possibles.

3.4. evolutions possibles du typage

Une premiere etape serait l'obtention d'une semantique operationnelle satisfaisante, permettant de parler de type dans l'absolu (sans reference a

un langage particulier), en tant qu'instructions de branchement. Si ceci etait realise, les instructions de branchement pourraient etre decrites

par des formules mathematiques; un programme dans 10 langage-source ressemblerait donc a une demonstration mathematique de compatibilit~ entre les

formules mathematiques decrivant les modules qui la composent. (Le

travail recent de Krivine, sur l'arithmetique fonctionnelle du second ordre AF2 (10) , s'oriente : dans cette direction.) Bien entendu, se pose Ie probl~me de la verification des demonstrations de compatibilite. On

peut imaginer une situation hybride, ou certains theor~mes seraient

donnes a la machine sans justification, celle-ci se contentant de

verifier Ie bien-fonde de leur application dans tel ou tel cas.

4. probl~mes d'automatisation

xxxxxxxxxxxxxxxxxxxxxxxxxxxxx

4.1. la methode de resolution

L'automatisntion du rnisonnement logique se heurtc a l'indecidabilite

-2-7-

du calcul des pr-edf cat.e , a savoir que qu' il n' y .1 pas de moyen mecanf que , meme theorique, pour savoir si une formule donnee est ou non un theor~me logique. Meme dans Ie cadre decidable du cal cui pr~positionnel, les algorithmes connus (comme les tablES de verite) sont exponentiels, c'est a dire qu'ils se heurtent a des limitations pratiquBs de temps et d'espace. Ces limitations n'ont pas empeche la mise sur pied d'algorithmes permettant (en theorie) une semi-decision : ceci est possible, car la classe des theor~mes est semi-deciJable, ce qui veut dire qu'en essayant toutes les demonstrations possibles, on traouvera bie~ une demonstration de A, pourvu qu'il y en ait une. Par contre, essayer une apr~s l'autre toutes les demonstrations logiques est coOteax et peu efficace, aussi a-t-on tente de limiter la recherche, en se limitant a des demonstrations dc forme particuli~re.

i) Ie theor~me d'Herbrand (1930) permet de reduire la forme logique d'un probl~me a une forme (presque) propositionnelle.

ii) dans Ie cadre propositionnel, Ie Hauptsatz de Gentzen (1934) perm~t de se limiter a des demonstrations de forme particuli~re.

Un exemple typique est fourni par PROLOG : Ie langage est forme de clauscs

qui sont des sequents intuitionnistes, formes de formules

atomiques (clauses de Horn); on s'interesse aux sequents 1- A qui sont consequenccs logiques dc tcllcs clauscs. Lc theor~me dc Gentzen s'appliquc ici, non pas par unc elimination totale des coupurcs dans une demonstration de 1- A, maiu pac lcur restriction aux formules atomiques. II est

d'autrc part facile d~ voir que les r~glcs de contraction, d'echange, et d'affaiblissemcnt sont redondantes, et on arrivc a la conclusion que,

si 1- A est consequence logique des clauscs dc depart, il cst demontrablc a partir dc-ccs clausus (priscs comme axiomes) dans lcsqucllcs on a fait

-28-

des substitutions arbitraires, au moyen de la regIe de coupure.

La methode de resolution de Robinson (1965) donne une strategie pour rechercher, Ie plus efficacument possible, une telle demonstration ;

en particulier, en reccurant au procede d'unification, qui limite au minimum les substitutions, on obtient un algorithme theorique assez efficace, et qui trouve toujours la solution, s'il y en a une. (voir [2]) La mise en oeuvre pratique est plus discutable : pour accroitre l'efficacite, et eviter des problemes de recherche infinie lies a

la sequentialite du fonctionnement, il a fallu detruire la symetrie logique de depart, ce qui fait que PROLOG, tel q~il existe en ce moment, n'a plus qu'un rapport lointain avec l'idee de programmation logique, puisque les reponses donnees sont faussees par les nperations non-logiques qu'il a fallu rajouter. 11 y a ici une question importante, a savoir l'adequation de PROLOG a la logique, et surtout, quelle logique.

11 est a priori exclu, que les structures de contrale de PROLOG, telles qu'elles sont, puissent correspondre adesimperatifs logiques precis;

par contre, il est concevable que ces operations douteuses, convenablement analysees, puis modifiees, puissent etre integrees dans un cadre logique different du cadre de la logique intuitionniste. Pour donner un exe~ple (nous ne pre tendons pas resoudre Ie probleMe ici, seulement montrer comment des c~nsiderations logiques inattendues peuvent intervenir), PROLOG.

nous l'avons dit, est grosso modo Ie colcul des sequents reduit a la coupure et ~ la substitution. En particulier, il n'y a pas de regles structure11es, c'est a dire que PROLOG gere ses sequents comme 1a 10gique 1ineaire. Pbur s'en convaincre, i1 suffit de remarquer que si PROLOG rencontre successivement deux foi~ Ie meme prob1eme A, i1 fera deux

fois 1a Verification afferente, autrement dit AA A n'n pns 18 valeur

-29-

de A, comme en logique lineaire, A ~ A se comporte tres differemment de A. On peut donc penser que les operations de la logique lineaire devraient aider a serier les problemes de la programmation logique; en particulier elles pourraient surimposer a l'aspect logique traditionnel des indications sur Ie type de recherches effectuees par l'algorithme. (Un produit tensoriel A ~ A dit que l'on utilise A deux fois etc.).

II est a remarquer que PROLOG s'appuie -en'principc-, non pas sur la symetrie demonstrations/contre-demonstrations, mais sur la symetrie positif/negatif (merne si la restriction aux clauses de Horn fait perdre bien des aspects interessants de cette symetrie). En effet, PROLOG est suppose (en theorie) fonctionner d'une maniere differente des autres langages, types ou non

- quand je programme, que ce soit en BASIC ou dans Ie systeme F, il ne

s'agit pas de poser un probleme que I'ordinateur resoud par lui-meme ; Ie programmeur resoud la question en general, la machine adaptant la methode

a des cas particuliers •

. - par contre PROLOG a la pretention dc fonctionner sur Ie mode : posez la ~estion, nous ferons Ie restel Autrement dit, Ie seul probleme resolu horo de la machine est la resolution, que lion applique a tous les

problemes imaginables. Cette position est difficilement tenable pratiquement, et c'e~t pourquoi PROLOG multiplie les indications de controle, qui

permettent en fait de eontourner

l'algorithme general, trop mauvais,

et d'utiliser a la place des "astuees". On redecouvr6 alors les vertus

de la programmation intelligente, ou Ie programmeur a un role aetif. On

peut eependant se demander s'il etait bien sage de vouloir a ce point eliminer.·l'intervention de l'imagination dans la programmation : eomme cette elimination ne se fait pas bien, et qu'il faut quand meme programmer au

sens traditionnel de trouver des idees, dc les agencer etc., on se rctrouvc e i r.gu l Ler-ement; demuni, puisque PROLOG n I a rien pr evu pour structurcr les

-30-

idees de programmation.

En fait, PROLOG (y compris ses structures de controle) s'apparente,davantage

a un langage-objeti il est interessant a ce propos de remarquer l'etroite simUi tude entre I' execution d' un programme PROLOG et la fH~llJantique operationnelle de la logique lineaire (les permutations correspondent au parcours

des clauses, l'unification de PROLOG aux quantificateu~s et a l'exponentiation, ~t l'echec dans PROLOG au traitement des connecteurs additifs.)

4.2. problemes de bases de donnees

lci Ie probleme vient de l'inadequation complete entre d'une part la question tres importante de la completion d'un ensemble d'informations (par exemple

un systeme expert, qui doit faire des choix), et d'autre part la "theorie" qui est suppoaee en rendre compte. Sous Le nom de "logique non··croissante" certains auteurs (e.g. Mc Dermott & DOyle!:?l) ont pr-e tendu repondre a

cette question. Leur idee est la suivante : prenons une formule A, de deux choses l'une :

- soi t je peux -La decider (dernorrtr-er- ou refuter) a partir de I' etat actuel de la base de donnees, auquel cas, tout va bien

- sinon je peux decider entre A et sa negation au moyen d'un systeme de preferences, et rajouter cette decision a rna base

En logique, ce type de construction est connu depuis 1930 : il s'agit de la construction d'un modele (theoreme de completude)i bien pire, on

sait que la construction d'un modele est; violemment non-ef'rect tve , c'est a dire ne saurait @tre mecanisee. Ce qui est propose comme modele de fonctionnement des systemes experts, est donc fondamentalement inadapte, puinque la machine n'aura aucun moyen de verifier qu'un enonce est ou n'est pas deja decide I La solution proposee n'a donc pas de realite infol'matique (meme dans Ie cadre propositionnel, a cause du caractere exponentiel de l'algorithme de decision), quand au point de vue logique,

-31-

Ie contenu varie bien souvent -sur les exemples que nous avons pu juger- du faux au trivial~*les proprietes bizarres de non-croissance (non-monotonicity)

viennent du fait qu'ils veulent a tout f- ~< traiter les modeles comme

s'ils etaient des theories logiques, avec les consequences que l'on

imagine. Pour resoudre ce probleme important de fa~on plus satisfaisante,

il faudrait garder a l'esprit quelques principes :

i) la logique n'est pao une boite noire, qui, etant donnes des axiomes,

nous fournit toutes les consequences (et encore moins ce qui n'est pas

consequence des axiomes). Cela coOte de deduire, en temps, en espace. Un

systeme sera peut etre arnene a adopter -, A, mais pas par-ce.qui I sai t que

A ne sera jamais obtenu, mais simplement parce que la recherche de A

a dO etre interrompue, faute ~e temps et/ ou de moyens. En adoptant

7A, le systeme devient contradictoire au sens de la logique classique,

si il se trouve qu'un effort plus soutenu aurait amene a A. Cela pose

un probleme, qui amene encore une fois a changer de logique.

ii) ce n'est pas parce qu'un systeme a ete amene a afficher~A, faute

d' avoir su montrer A, qu' il doi t memoriser , A ! IJ. doi t memorlser une

information qui synthetise, sous une forme logique appropriee, Ie degre

de recherches auquel 11 s'est arrete. Seules des logiques dans l'esprit de la logique lineaire, Gui prennent en compte l'effort fourni dans une

demonstration, peuvent esperer repondre a la question. Bien entendu,

cette logique, lineaire ou autre. devrait etre a usage interne. l'ecran

ne faisant apparattre que des reponses formulees en termes OUI/NON.

4.3. Ie probl~me de la contraction

Que ce soit dans PROLOG. ou dans les bases de donnees, Ie probleme essentiel

est celui de savoir arretel' Le s recherches a temps, .e t d'@tre capable

d'expliquer logiquement ce que l'on a fait. Pourquoi des syst~mes d'axiomes

(.) certains articles Comme celui de Reiter (22) sont franchement surrealistes il adapte la resolution en y incorporant un test de satisfaisabilite (:11);

on pourrnit tout aussi bien proposer d'asperger l'ordinateur d'eau benite •••

-32-

finis amenent-ils a des recherches infinies ? C'est a cause de la regIe de contraction, qui permet d'utiliser Ie meme axiome de fa~on illimitee.

La contraction enonce que A et A

A sont la meme chose, ce qui est valide

du p~lnt de vue semantique, mais faux du point vue algorithmique. En supprimant la contraction, la logique lineaire permet de distinguer entre A et A B A,

et on ecrira 8, A -0 B, (A B A) -0 B, (A B A B A) -0 B, etc. suivant que,

pour obtenir B, A a ete utilise 0 fois, 1 fois, 2 foi5;,3 fois, etc.

on voit ainsi que l'on peut controler 1a reutilisation des axiomes, tout en restant dons un cadre logique satisfaisant. II reste encore a verifier Ie bien-fonde pratique de ces constatations theoriques.

5. en guise de conclusion

xxxxxxxxxxxxxxxxxxxxxxxxx

Nous avons essaye de decrire ce que la logique apporte, ou devrait apporter

a l'informatique : une certaine approche modulaire, basee sur des symetries.

Ces symetries sont, par ordre d'importance, la symetrie demonstrations/contredemonstrations, et la symetrie positif/negatif, que la logique lineaire

essaye de reconcilier. Une autre oonstatation a ete faite : 1 'apport de la logique a l'informatique, du moins sous les aspects envisages ici, est

d'ordre essentiellement operationnel, c'est a dire que la logique a quelque chose a dire au niveau de la structure des programmes, de leur" execution.

(En panticulier la monie qu'ont certains informaticiens d'axiomatiser

ad nauseam, montre que si ils ont compris 1 'importance de la logique pour leur discipline, ils ne savent pas l'utiliser ; encore une fois : la logique ce n'est pas des axiomes et des regles, c'est des symetries I). Bien entendu, dans cette relation, la logique ne se prcscnte pas sous la forme d'un corps de doctrine immuable dans lequel il n'y aurait qu'a puiser pour trouver

dcs applications: elle so modifie elle-mame SOliS l'effct des applications,

-33-

en organisant ses themes suivant des lignes differentes: notre derniere

r emat-que !"o.::·S cue ~~!!f~')_rr'~: i q,;!:_ apJjort e beal'~o~p a 1 n 10gique. D I abord, -e Ll e

of'f'r'e enf'Ln lin doma i ne d t app i r c.a t i oua spec i f'Lque it 1<.1 logique, moins

capricieux que les mathematiques, ou la logique ne s'est appliquee qU'au coup par coup. De plus. les specificites de l'informatique (par exemple

les considerations de temps de calcul) interdisent d'appliquer mecaniquement les theoremes existants : ils doivent etre revus, adaptes a des contraintes nouvelles. Dans ce processus de revision critique. les valeurs les mieux etablies de la logique sont remises en cause, et des problematiques que

l'on croyait enterrees depuis un demi-siecle reprennent soudain une

vigueur inattendue. C'est donc, d'une certaine maniere, un retour auy. sources. une seconde jeunesse qui est offerte a la logique. Pourvu que

c;a durel

-34-

BIBLIOGRAPHIE

xxxxxxxxxxxxx

Jean-Yves Girard

Linear logic. a paraitre dans Theoretical

Computer Science. 1987.

Jean Gallier

Logic for computer science. Harper & Row.

New York 1986

[3]

William A. Howard : The formulae-as-types notion of construction.

in liTo H.B. Curry': essays on combinatory logic. lambda calculus and formalism. editors Hindley & Seldin. Academic Press. London 1980.

[41 Dag Prawitz : Natural Deduction. Almqvitz & Wiksell.

Stockholm 1965. (introuvable. donc consulter (5])

(51 Dag Pnawitz : Ideas and results of proof-theory. Proceedings

of the Second Scandinavian Logic Symposium. ed. Fenstad. North Holland Amsterdam 1971.

Per' Martin-L6f

Intuitionistic type theory. Bibliopolis.

Napoli. 1984.

Jean-Yves Girard: Une extension de l'interpretation de Gadel

a I'analyse et son application a l'elimination des coupures dans l'analyse et la theorie des types, Proceedings of the Second Scandinavian Logic Symposium, ed. Fenstad, North Holland, Amsterdam. 1971.

Jean-Yves Girard: Interpretation fQnctionnelle et elimination

des coupures de l'arithmetique d'ordre superieur, Th~se de Doctorat d'Etat, Universite Paris VII, Juin 1972.

(~

Thierry Coquand et Gerard Huet : Une theorie des constructions.

Proceedings of the OrsBY conference, North Holland, Amsterdam. 1987.

(10] Jean-Louis Krivine : Une approche au lambda-calcul type en

theorie des mod~leB, manuscrit (1986).

-35-

(11)

John C. Reynolds : Towards a theory of ty£e fitructure, Springer

Lecture Notes in Computer Science 19, Springer Verlag, Berlin 1974.

(12)

Dana Scott: Domains for denotational semantics, Proceedings

ICALP '82, Lecture Notes in Computer Science, 140,· Springer Verlag, Berlin.

[13]

Gerard Berry : Stable models of typed lambda-calculus, Lecture

Notes in Computer Science 62, pp. 72-·89, Springer Verlag, Berlin.

(14) Glynn Winskell : Events in computations, Ph. D. Thesis,

Edimburgh 1981.

(151 Jean-Yves Girard: !'he system F of variable types, fifteen years

later, Theoretical Computer Science, 1986.

Jean-Yves Girard: Multiplicatives, a paraitre dans les

comptes-rendus du Congres "logic and computer science : new trends and applications", tenu a Torino, 13-15 Octobre 1986.

(17] Jean-Yves Girard & Yves Lafont: Linear logic and lazy evaluation,

a paraitre dans les comptes rendus du congres TAPSOFT '87, Piea.

(18] A. Pnue1i : The temporal logic of programs, Proceedings of

the 19th annual symposium on Foundations of Computer Science, IEEE, New York 1977.

Jean-Yves Girard: Linear logic and parallelism, a paraitre dans

les comptes-rendus de l'~cole "semantics of parallelism" tenu au lAC, Roma en Septembre 1986.

(20)

Jean-Louis Krivine : Un a1gorithme non typable dans Ie systeme F,

Note aux Comptes-Rendus de l'Academie des Sciences, 1987.

(21) D. Mc Dermott & J. Doyle: Non-Monotonic Logic I, in Artificial

Intelligence, special issue on "non monotonic logic", April 1980.

(22]

R. Reiter: A logic for default reasoning, in Artificial

Intelligence, special issue on "non monotonic logic", April 1980.

LA 100IQUE <XHm SCI~ DE L' IHI'BRACl'IOO

jean-yves girard

directeur de recherches au CNRS

Dans une prec&iente ~tude [1], nous avions examin~ les relations de 1a logique avec l' informatique, et propose certaines reponses (ou ~lements. de reponse) au moyen de 1a Joglque l tnee tre , Nous allons tenter de fail'! Ie point, autour de ce qui semble devenir I' idee force de cette nouvelle approche : Ie fait que, fondamentalement,

Ia logique s'occupe d'actions et non pas de situations.

En d'autres termes, Ia logique s'est biitie autour d'une conception statlqu9 de son objet (grosso aodo, autour de 1 'opposition vrai/faux), identifi,& trop soamairement aux matMmatiques ce qui fait qu' elle ne rend compte des probl~s dyna.lques du monde reel (te1s ceux cre6s per l' infol'UlB.tit!Ue) que quand ceux-ci ont ~~ prealab1ement tradui ts en termes math6natiques t ce qui introduit uno rouage de trans.lsslon. Passer d'une conception statique A une conception dynamique de la logique se heurte A certaines habitudes de pensee , en particulier Ie subjectlvlsae et Ie reductlonnlsme, t~9 pesants en logique. 11 est 11161gre tout posafbl.e de ~goger Ies grandes Hgnes d'une thkrlo math~tique des actions. La logique apparait a10rs comma In science de In communication entre algorithmes, c'est A dire In science de l'interaction.

jean-yves girard

-2-

I, l' ~tion de 1a lOSique standard l 1& science "erdtnatre"

1.1. 1 'b4dtNe du reductionniBlm:

L'obsession des fondement.'1 (symbolisee par Ie mot Grundlllgen) est 1a cause directe du spectaculaire ~ve10ppement de 1a Iogfque formelle A 1a fin du siee1e passe. Bien que de tout temps l' on ai t cherche Ie pourquod du pourquoi , i 1 semble que seul Ie scienti&lle des annees 1900 ait cru l'avoir A portee de 1a maIn : A cette epoque -en caricaturant un peu- :

a) 1a partie "exacte" de loa science avait eM depuis belle 1urette reduite aux l18t:hlaatiquea

~) lea math&latiques elles-memes etaient en passe, au moyen de 1 'axlo.atlsatlon, de 1a ~rie des ensembles, de 1a logLque formelle, de se r&tulre A un jeu creux de symboles,

Dens co jeu de reductions successives, l'etape a) etalt fort anclerme, avec un moment fort au XVU' siee1e, que reaune bien Descartes, L'etape ~) est plus specifique du scientisme fin de sieele, et peut etre rellt..mee par Ie progrUtae de Hilbert, qui se donne precl~nt pour but cetta r&tuction des math6-.natiques A presque r-Ien, On sait que Ie prograane de Hilbert fut refuM en 1931 par OOdel, et que cetta refutation est sans appe1 ; on lira A ce sujet Ie beau livre de Jean van Heijenoort [2], qui regroupe 1es oeuvres cbarnteres de cette renaissance de 1a logique, Dans cette peri ode extreeeeent, f6conde, 1a Iogfque modeme etait nee mais elle portait un stigmata, dO aux ambitions reductionnistes de base : co n'etatt que 1a logique des m~th~tiques.

II est temps de s'interroger sur la validi~ du point a) : 1a correctIon de cetto reduction no fait aucun doute ; cn particulier, ai l'6tapo 11) avait pu etre accomp1io, toute l'activit6 acientifiquo -cn ce qu'e11c a d'cxact- auroit

1ft logique co-.o OCiC0C8 do 1 t Internot.Ion

-3-

~te reduite A quelques manipulations mecaniqw~s. Ce qui fonde la possibili~ de l'Mape a) c'est que tout ce qui est suffisanment p~is est mathematilJable. Mais on est en droit de se poser la question de l'utilit.e de la r&luctiOI\ (I) I ~ lors Qu'eHe ne s'articule plus SUI' un prograDDe de type Jivaru. ~ 8J! rend alors compte que la situation est bien plus CXlIDPlexe, et que les mathema.tiques ont une relation A double detente avec les sciences exactes :

1- d'abord sous forme d'outil, par exenple l'kriture d'equations : c'est la forme universellement utilisee. Dans ce caB, il y a un discours scientLfique plus ou mains rigoureux, tenu en langue vulgaf re , mais ponctue d'equations.

2- ensuite sous la forme de Ia possib1l1 te de fonnaliser Ie di:3COUI'S scientifiql~ jusqu'A compl~te mathematisation.

Autant. la partie 1- est pertinente, autant la partie 2- est maladroite et ne Joue ··au fond- qu'un role idoologique. En effet -COllIDe nous al Iona Ie v~rifier !:IUI' des exemples couranta- 1 'enchainement nature 1 des ~l,&aents IIlUthema.tlques du discours scientlfique ne sutt, pas les lois du raisonnement mat:.Mmatique (Le. La logique habituelle), mais d'autres Iofs , qui sont celles de la lclgique linooire. Bien entendu, COCIIDe ces lois sont elles-memes mat.h6MtiSl~bles, 2- reate correct coame possibilite, mais au prix de ~tours qui ~naturent la structure profonde des enchainements Iog iquea,

I I. 2. 1 & structure de 1& CODStSguence lodque

Les mnthema.tiques sont bas~s sur l' i~ de et tuet ton, c'est A dire de fait stable. Pour simplifier, une situation est vraie 041 fausse , et Ia valeur de v~rite (V/F) d'WlC situation, par exemple Ie fait que 0 = 1 est faux, n'est pas alt.er6ti p6J~ l'usage que nous en faisons : ce qu'on pourrait appeler Ie pr tnctpe do peronn.1 te do laver He. Ainsi, I" implication Iog ique A Q D (et de meme los aut.rea op6J~ations quo sont 1& conJonction A 1\ D, 1a disJonction A V D, la n6gation "A) est-olIo d6finic par un ttlbl03u de verite, qui d6tenmine 1a valeur

JG!Ul-YV~s girard

-4-

de v~rite de A ~ B en fonction des valeurs de v~rite des constituants A et n

A B kill MB AVB .. A
V V V V V F
F V V F V V
V F F F V
F F V F F Cette ~relUlite de la v6rite reste valable pour d'autres Iog iquea fond6es sur l'6tude du raisonnement matllematique, coome La Iog ique tntuitionniste, qui est loin pourtant. de se rCduire A des tableaux de v6ri te.

A cette Iog lque qui nanipule des v6ri tes ~ternellcs s' oppose Is Iogfque de tous les jours, qui est aussi celIe des enchainements scientifiques non-math6natiques. Tout se passe dans Ia vie courantc, coome si tout avait un coot et si la JmJlipulation Log lque ~tait limitke par des homes de resnourcea ~videntes. Autrement dit, l'implication reclle (causaJc) est liea A l'id6e de

payer (ou d '6changor)

10 fait do payor d6finit slore la 10giquo canna un

logiquo defJ actions, c'est A dire des faits non reutilisnbles. Co qui s'opposo A In l'6utiliaation des fnits -1 'acte de "payer"- correspond A In reaction des p.'lyaiciens. Nous allons maintenant d6volopper quelquos oxeroplos tires do In vie

quotidiormo ou de manipulations Bcientifiqucs ramlli~res

pour colA, nOUB

ut l Haerona los COlUlCCtoUI'8 Jlnealros .. (implication lin6aire, avec 10 sons d'uno implication causalo : en utiliBMt A, J'ai D, lire itA ontretno D") ot • (produit tenaor-Ie.l , avec 10 sens d'llno conjonction : faire A at faire D, lire

In logique C<lIIIDO sofence de l'intcrnctioo

-5-

"A t ot s a").

ex) aupposons que lea cigarettes I08u10iaea" ct "Ce1tiquea" aoient au memo

prix, diaons 6F

on peut cons iderer A : 5F, a: paquet de Gaul.of aea , C : 1

paquet de Ce1 tiques. On n' est evidemnent pas habi tue A consfderer des objets coome des proposd tions logiquea, mais ca peut. a' arranger en lisant A coome « j'ai 5F », etc. Le fait que pour 6F je peux avoir 1 paquet de O8uloiaes s'ecrit alors au moyen d'une implication 10gique :

A .. a

et pour lea memea raisons, on ecrira

A .. C.

8i .. et e ~beiaS8ient aux loia de Ia logiquo usuelle (c'est A dire etaient gouvernees per un tableau de verite coeee ci -dessus) , on aerai t en drof t de

conc1ure A .. D!C

c'eat A dire, que pour 6F je peux avoir un paquet, de Gauloiaes et un paquet de Celtiquea, cc qui aerait In mine de l'economie liberale. Pnr contre, 11 est

legitime de conclurc que

AeA .. J)tC

c'est A dire qu'on sut. avoir lea deux paquets pour 10F. Cet example illustrc lea faits auivants :

quand on appliquo A .. a pour acheter a au moyen de A, une r&lction ao produit (on pard 6F), et lea liF no sont, plus diaponibles pour un autro achat ,

10 fait quo MIA .. DaC eat, correct a lora que A .. nee no l'eat p6S contredit Ie dogmo do l'lde.potenco do /8 conjonctlon, c'est A dire que A Berait ~uivalent A AffJA (qui est vrai ai on rcmplnco • por ", voir tabl.enu do v6rit6).

J') po8S008 matntenant, A In chimie (A un nivenu tros aOOlMiro) : prcnons

La r6nction chimique bien connuo qui fonne deux mol6culea d'cau A portir de deux mol6culc9 d'hydrog~no ct d'W10 mo16culo d'oxyg~no pout s'6crire comnc

l'implication :

AeAeD .. cae

JOOI'l-YVCB gi rard

-6-

lei encore, on rencontre Ie phenomene de Ia non-idempotence de 1a conjonetion (identifier A et NlA reviendrait a ignorer 1es proportions du m61ange) j e'est iei que nous mentionnerons une autre partieularite. 8i nous <Msignons par D une autre molecule, par exemple du soufre 8, on ne pout pas

deduire de notre 6quation l' equation A8MBeD .. O&C

car Ie soufre introduit sur La gauche doit se retrouver (sous une quelconque forme) sur la droite. Al.ltrement di t , Bi 1 'on doit payer, reciproquement, on a toujours quelque ehose pour- son argent, memo si ce n'est que de La ft.mOO. Ceci contredit Ie dogma de 1'l.pllcatlon materlelle, a savoir que la validite de B, impliquerait celIe de A .. B (principe verifie par~, voir tableau de verite).

,) prenons un troisieme example, iSBU de l'informatique : une des approches les plus famil!eres a l'algorithmique se fait via les grammalres formelles. Par exemple, nous conatderona tous les mots construits avec Ies lettres a et b par exemple as, baabbba etc., et nous ecrivons des regles de reecrHure, du genre

ab ... 00 (L,e , remp1acer ab par 00)

qui, appHquoos a un mot, disons baabbbe peuvent donner 1 'enchainement bnallbba ... bebabbe ... bebbeba ... bnbbbna ... bbabbaa » etc.

~ pout esaayer de prendre A : a, D : b j alora beabbba qui cst lib et a et a et b ot ••• " devient uelteMDeDeDlA, ot 18 regIe de reecriture plus haut

devient uno Lmplication hiD ... neA,

qui, convennblement utilisoo, nous pormottra de d6duire l'enchnincrncnt ~erit

ct -des sus , par excmp10 quo DtA.AeaeDeDeA ... DeDtAeDlD8AeA

mala l'utilisation d6 1a logiquo, o'il eat bien fond6, no dovrait prouvor quo 100 implications eorrcspondnnt A des cnchninemento correcto, co qui oxelut done

dea fOI1DUloa du genre do DeMMDeDlDeA ... MDlAeDeDeDeA

qui no corroapond pas A uno reoorituro possible (puioque, drum 1 'oxcmp1e choioi, on POUSBO lCB D Bur In gauche, Ies A Bur In droite). lei on nle 10 dogma do In

1a logiquo ~ soteoce do l'interaction

-7-

commutatlvlte d~ la conjonctlon, a savoir que AeB serait equivalent a BeA (principe veri fie par "', voir tableau de veri te) •

On pourrait multiplier les exemples a l'infini, a propos du deplacement des pieces aux echecs, du probl eme de 10. revision des Jugements dans un systeme expert, ot·:}. Dans toua los cas, on se retrouvorai t amene a refuser (ou du moins a reexaminer) les trois dogmes de 10. logique traditionnelle que nous o.vons deja rencontres, et que noua allons rappeler ici i noua 1es faisons suivre de leur nom technique en calcul des sequents

l'implication materiel1e

l' idempotence de 10. conjonction

10. commutativite de 10. conjonction

(affalbllssement) (contraction) (erhange)

~ les 1imites de 10. redyction aux mathematigues

Les exemp1es a), /J) , ., ) de 10. section prec&.lente etaient deliMremnent choisis dans des domaines divers, hors des mathematiques pour les deux premders, Ie troisi~ faiS8J1t par contre partie de l'infonnatique mathematisee. Ces exeepl.en ont par ailleura plus ou moins 10. mCme structure, aussi on ne perdra pas grand'chose A so concentrer sur Ie premior, et d'esaayer de voir si il n'y a pas, oolgre los 6videnees superficielles runass6cs par l'autour, un moyen de dire 10. m&oo chose sa.ns remettre en cause los bases de 10. logique. Nous eesayerona donc do r66crire l'exemp1e a) avoc los connecteurs '" ot ~ de 10. 10gique classiquo

par oxcmplo, pour dire, qu'opr~s avoir utilise A, on a D, mais qu'on n'n

"Ius A, on pourrai t tenter A tt Dt\ .. A

Mis un ca1cul de verit6 mantra quo cetto fomule est 6quivalonte A "A, co qui n'est vroiment pas l'id60 qu'on vouloit oxprimer.

10 seulo solution connuo consiste I au lieu do representor 10 mot "et" du lungngo courant conrno WlO op6ration Iog ique , A prendre COCtlOO formulos do beso do

Jean-yves girard

-8-

notre representation des descriptions exhaustives de l'etat de nos ressources

(argent + cigarettes) en fonction d'un parametre ad hoc, Ie temps

ainsi, Ie

fait qu'A partir de A on passe A B peut s'ecrire Ao ~ BI, Ie fait qu'en deux etapes, on peut passer de A_A A Bee peut s' ecrire A"O ~ 002 etc. Ce n ' est plus do la logique, c'est du bricolage. Mais si l'on cherche A trouver les lois qui pennettent de relier entre eux ces bricolages (par exemple que de AO ~ B1 ot Ao .. °1, on dedui t AAo" 002), on retanbera de maniere deguisee sur les principes qui gouvernent • et .. , et qui font c;a plus proprement. Ceci dit., cette solution (temporalite externe, liste exhaustive des etats) est possible theoriquement, et c" est cette representation grossiere qui fonde Ia reduction des sciences aux math~tiques.

1.4. int,6gration de l' aspect matherootiaue

11 ne faudrait pas conc1ure de la rhetorique utilisoo par l'auteur, A une vo10nte de negation de l'llnportance des math~tiques dans les sciences: d'abord 1a logique lineaire est (si 1 'on fait abstraction des variations inevi tables que aubi t un aujet nouveau ) un ayat&oo bien dafini, qui a' etudie au

moyen dos ma~~Atiqu08 los plus traditionnel10s qui soient

eosuite

contrairement A ce qu' on pourrai t penser- Hur la base de Ia description aonmaire faite Jusqu'ici, 1 'accent mis sur 1a 10giquo du ~1, n'oxclut pas l'aspect de 10giquo math6matiquo. Autrement dit, loa 10giqu08 tradltionnol1es vont otre repreacntees AI' interieur de la Iog lque 11noolre.

Co qui dlatinguo une action d'une situation, c'est que dans 10 aecond cas, il n'y a pas de r6action, autremcnt dlt uno situation no couto rlon. C'ost 10 cas en mth6Datiqucs, ou on a beau rep6tor quo 2+2 = 4, on ne sent, pas la moindre usure ; IDfAla o'oat nus81 10 cas dans 108 actences physiquos, quand on n6g11go un tacltlur, co qui cst fondamcntnlcmcnt incorrect, mais pout ctro protiquemcnt utile. La pont entre 10 paradigroo classiquo ot In Iog lquo 11n68iro

1a logique ca-o sofence do l' interaction

-9-

est obtenu au moyen d'une operation apecd f'Ique A Ia Iog ique linMire, "I" ibton sur), qui a pour effet de n~gliger La r~action, c'est A dire que IA a La signification de "A autant de fois que 1 'on veut". Ainsi, dans notre exemple <x), vu l'usage suppose (acheter quelques paquets de cigarettes), H. Rockefeller peut ecrire !Ai de A .. B et A -ee, on peut conclure A !A .... DeC. Plus s~rieusement, si l'on sature les formules de la logique lin~aire avec suffisamment de symboles "I", on retrouve les lois habituelles de la logique classique. !A veut donc dire "A en grande quanti ti te", math~m.-'\tise coorne "A ad l tbl tum". La logique classique apparait finalement coome une Iog ique des macro-actions, AI' oppose de La logique linMire qui serait une logique des micro-actions. Le caractere inhabituel des lois de 11\ logique lin~ire serait donc A rapprocher du caractere etrange des lois de la micro-mecanique, c'est A dire de la mecanique quantique. 1.6. les deux co~jonctions

Pour terminer cette rapide introduction, il est necessaire de mentionner l'autre conjonction (avec) de la logique lineaire : si A e B signifie "taire A at faf re B" , A &. B signifiera "fa i re A ou faire B", mais avec une nuance de tail1e : taire A ou (aire B, au cholx. Par exerop1e, en reprenant notre exemp1e de cigarettes, avec 6F, je peux acheter dCB Gauloiscs ou des Ce1tiques, au choix : A .. Me. Autrcment dit "&" indique In superposition de deux actions 11 s'agit d'uno potontialit6, ot dans l'6x6cution proprement dite, il taudra bien choisir entre los deux tcrmes B et C. Unc dcs erreurs 1es plus communes A co aujet est do pensor "&" coo:mo uno disjonction observons que D&C" D est correct (ai j 'ai 1 'utll1aation, au choix do D ou de C, alora , on utUisant P, J'obtiens D), co qui ost typiquc d'une conjonct.Ion. fu tnit, 11 y a uno autre op6ration, • (plus), qui a W1 sena puremcnt dieJonctl(. Uno action de type 9tC, c'cst soit uno action de typo D soit lme aclion do type c: iei i1 s'ngit do Ccltiquos ou do Gl\uloiecH, mais Ie choix n'cBl plus 10 mien. Pour lllustrcr 109

Jean-yvos girard

-10-

possibilites et les nuances permises par les connecteurs .,~,!, &, e, consfderons Ie menu gastronomique suivant, dU A Yves Lafont:

prix 63F

ent~

plat principal.

tomates ou laitue suivant saison h.amOOrger

sortie fromage ou dessert

boisBOn vin A volon~

L'expreosion g~~rale est que pour Ie prix, on a une entw- et un plat principal. et une sortie et une hoisson. Soit

63F ~ ent~plat8sortieOboisson

Pour ce qui est de 1 'ent~, je n' ai pas Ie choix

on ~rira donc

"tanateselaitue" i par contre dans Ie cas de la sortie, je peux choisir entre 1es deux, et j'~ril'8i "fromage&dessert" finalement, Ie yin M..ant A volonte, p,'crimi !vin, ce qui nous donne

63F .. (tomate~laitue).h.amOOrgere( fl"OlNlge&dessert).( 'yin) 1.6. 18 n6iatlQO 11n6A1re

Au sujet de la diff~rence entre "e" et "&,", on peut noter Ie role essentiel du "Je", c'eat A dire du point de ref6rence : Je peux choisir entre fromage ot dessert, mais pas entre tomatp.s ot laitue : par contre , ai Ie prunier choix 6tait tout bonnement du ressort du chef cuieinier (et non pea de Ia sataon}, 11 pourrait choieir ent.re tomatcs et 1aituc, par contre , PM entre fromoge et deesert : du point de vue du chef, 10 premior choix eat W\ "&,", ot 10 second W\ lie" • Coomcnt expUquer coot lllUlS pirouette ? 11 y a en Iog lque W\ point de rei6renco implicit9, non ap6clfi61 diaons "Je" lCB possibilit6s dynamiqucs sont Jaug~s par rapport A co "Je", Haintennnt, nous pouvons d6cidor W\ chMgcmcnt de point de vue , c'eat A dire intcrvcrtir 10 point do rof6renco ot Io reste du moOOo : co que nOllS voyons do l'int6rieur sorn vu de l'ext6ricur, ot

18 logique C()OIOO aofeoce do l' interaction

-11-

reciproquement. Des verbes comme donner, lire deviendront recevolr, ecrlre j ce changement de point de vue est exprime par la nega t Ion I I nea Ire, notee (-) J. • 8i nous conaiderons • et &. du point de vue de la ntSgation, 11 vient

(AAB)J. = AJ. e BJ. (A.B)J. = AJ. &. BJ.

ce qui pennet d'analyser mon problema avec Le chef cuisinier. En fait la presence de cet.te negation involutive (AJ.J.. est A) conduit a dtSfinir certains connecteurs par duali tk, typiquement par, note ~, qui est Ie dual de •

(A~B)~ = A~ ~ B~ (~B)~ = A~ ~ B~

Le connecteur ~ ne s ' explique pas facilement par de petits exemples coome ceux qui nous ont amuse Jusqu' ici j remarquons que A .. B n" est autre que AJ. ~ B. En particulier, l'etude de 11 .. 11 sera remplacee par celle de II~". Disona que A~B denote une interaction de type "vase counrunicant" entre A et B : si l'on essaye d'agir sur A (par A~) on obtient D, si on agit sur B, on obtient A.

II. la gtSaOOtrie de I' interaction probUmes IOOthodologiques

lL 1, I' apport de Oentzen

Dans notre 6tude [I], nous avions repris la th~se intuitionniste selon laquelle In Justification des lois Iogfquos n'cst p68 dons un univera externe , mais dans la combinaison des d~nstrations ontr'elles. C'ost co que nous avions appo16 la sym6trio demonstration/contro-demonstration. Dans cotto optiquo, los d~trationa sont conQues comma des objets fonctionnols, par excmple une d6rn0nstration de A ~ D est uno fonction associnnt A toutc d6monstration de A uno d&oonstration do D. Ceei pcut ot.ro mis en oeuvre formollement au moyen du calcul des st5quents de Gcntzcn. On aboutit au parodigmo aulvant :

i) les d6monstrations sont dos nlgorithmcs

Jean-yvcs gira~

-12-

ii) les fonnules sont des specifications une demonstration de A, c'est un algorithme v~rifiant la specification A

iii) l'execution se fait par ~linUnation des coupures (Ie Hauptsatz de Gentzen)

La logique lin~aire introduit quelques modifications a ce paradigme en contr3lant l'utilisation des regles structurel1es: dans In version de base, affaiblissement et contraction disparaissent, et dans la version non-commutative en cours d'experimentation, merna l'echange disparait. Ce que l'on gagne. c'est une vraie symetrie, expriroee par la negation lir'("lire, et toutes ces nouvelles operations Iog lques qui expriment des nuances que :a logique avai t jusque-lA compIetement negligees. Surtout, elle fait bien apparaitre cette idee que nous aimerions parler d'actions et non pas de situations ou de fonctions i mais il y a deux eciJeils compl~entaires Ie Charybde et Ie Scylla de la logique s'appellent respectivement reduct tonnieze et sub ject tv ttme, 11 est tres facile de donner un mod~le math6matique convaincant des demonstrations en tant que fonctions, pourvu de gommer l'aspect dynamique i il est possible d'autre part de manipuler syntaxiquement les demonstrations de taQOn parrai tement dynnmlque, pourvu d'oublier l'aspect mathematique. Hais on ne savait pas -Jusqu'iciconcilier Iea deux. c'est A dire mnnipuler un modMe math~tique dynamic:;:ue. Avant d'arriver A notre solution (encore pnrticlle), il est n6cossairo do s ' attarder un peu A In critique de cos points do vue IltUJs6istos qui sont encore dominants dans la discipline : rCductionnismc ot subJoctivismc.

11.211 cantra 10 roductioooiruno

On a ici affaire A un choix m6thodologique oxprtm6 par WlO t.riple :>pposition I

dynaJllquo /

sons /

t tnt /

statlquo dlmotatlon Inflnl

18 logiquo commo soienco do I-interaction

-13-

Corrmencons avec Frege , qui dfat.Inguat t dans un phrase du type

~ich von Stroheim est l'auteur de Greed

entre deux denotations egales (les deux membres de la phrase referent au meme individu physique) mais del~ s~ns differents (si les deux membres avaient Ie meme sens, on n'ecrirait pas une telle phrase). Du point de vue de La denotation, les deux expressions referent au meme objet, alora que nous devons verifier quelque chose (regarder dans Wle encyclopedie, faire Wle demonstration, Wl calcul) pour verifier que deux sens distincts sont equivalents (c'est A dire denotent Ia meme chose). C' est pourquoi, la denotation est statique, et Ie sens est dynamique : noUB voilA arrives A Wl autre aspect de la meme opposition, celui-lA lie directernent A l'informatique. Un des efforts les plus meritoires pour degager Ie contenu mathematique du calcul est du A Scott (3) (les travaux remontent A 1969). Scott a introduit une semantique denotat.Ionne.l Ie du ca lcul , A savoir lID modele mathemat.Ique qui a In propriet6 qu' 11 assocfe A certains programmes fonctionnels Wle denotation, qui est invnriante lora de I'execution du progrenme , Par exempIe, les expressions 27x37 et 999 auront la m&ne denotation, ce qui permet d'expliquer pourquoi Ie calcul de 27x37 ~ne A la valeur 999. Hais en m&me temps son modele identifie la configuration de depart (non calcul6e) et celle d'arriv6e (calcul6e) : autrcmcnt dit, la dyrwnique est tu6e pnr cetto modelisation. Tres certainement, l'aspect denotationnol est lout A fait pertinent (noua verifions ainsi que les calculs ne sont pas contredlctotrea) , maia notof rement insuffisant. Uno analogio nous aldora A c~rendre co qui manquo : en m6caniquo clnssiquo, Ie principe de conservation de la IMSSO oxpriroo l'existence d'un certain invariant do nature statique ; ccci di t In statiquo n' eot qu 'W} aspect mineur do In m6caniquo, dont Ios lois leo plus imporUmtes sont exprim6es au lOOycn d'invarionts do nature dynamiquo, C()(lJOO 1'6norgio, l' im~loion otc. Do In s6mnnUquo de Scott (et sea O1'06liorntions

Joan-yvcs girard

-14-

coome la semantique coherente de I' auteur [4]), nous retiendrons I' idee d' une

modelisation mathematique simple des algorithmes, mais noUB aimerions y

adjoindre Ie dynamdsme qui fait defaut A cette approche. Dans notre preoedente

etude [I], nous avions utilise Ie terme semantlque operatlonnalle pour une tel Ie

revision de 1a semantique denotationne11e

Ie tenne est malheureux, car

"semantique ope rati onne lle II a ate 1argement utilise dans Ie sens d'une

paraphrase du calcu1, alors que nous avons en tete me theor-Ie mathematique.

C'est pour celA que nous prefarons Ie tenne "geo.etrie de I' interaction" pour

parler d'une approche mathematique au calcul, fondee sur une modelisation

dynamique.

L'inadequation de 1a semantique denotationne11e au calcul sera mise en

evidence si on observe que celle-ci a une forte tendance A etre infinie, slors

que l'evidence premi~re est que 1es progl'turmes sont des processus d.ynamiques

finis. Ceoi nous mene A notre trois~ opposition: I 'approche ctenotationnelle

khange me action dynamique finio (delicate A modeliser) pour une situation

otatique infinie. ~nt est-ce possible? Tout simplernent car Ie denotionnol

ne m006lise pea uno execution d'tm programne, mais toutes las executions

posslblo« (parmi 1csquellcs se tl'OUVO collo qui nous int6resso). Par excmplo, dans Ie cas d'tm progrrurmo fonctionnol, on va donner la liste (en general

infinie), form60 de chaquo argument possible ot du rCsultat corrcspondant, c'cst A dire 10 prograDlDO fonctionnol cst ~lise PElr un grapho fonctionnol. Mais 1 'i~uation do cet.te approche cst deJA or-Iente dans 10 cas fini j conaiddrons un progrMmlO de type (A1& Bl ) •• • • •• (~& Dn),

o'cst A dire uno d6monatration do cet.te formulo, ot rappe lona-noua In signification de • ot & I pour l'execution, noUB dovrons choisir cntre los doux COOlPOSNltC8 Al ot BI, ot cntre A2 ot B2, ole., co qui nous fait 2n oxecut.Ions posatblee , La s6mMtiquo denotiOlUlollo fora la listo do cos 2n execut.Ions

1& logiquo CORIQO aokenco do l'intcroction

-15-

possibles, qui contient entre nutres celIe qui noUB interesse ; mais cette interpretation est er-ronee , vu qu ' une execution n' est pas toutes les executions ••• lei la syntaxe, qui represente la situation avec 2n donnees est bien moins gourmande, et bien plus pres de la realite.

11.3. contra Ie 8uhiectiyisme

Finalement, Ia bonne vieille syntaxe pennet de distinguer des sens di fferents, elle a Ie bon gout de rester finie, et a tout Le dynamisme neceasaf re , •• alors de quoi se plaint-on ? Cel8 nous mene a notre seconde opposition, de loin la plus importante

geometrJe

/

textnoeie

NollS avons explique en [1] que In syntaxe n'est pas Ie seos. elle n'en est que 1a trace ecrite. Le problema de cette trnc~ ecrite. est qu'elle contient en elle dos ~lements completement contingents -par exemple Ie choix des o~rations de base. l'ordre dans lequel ces o~rntions ont ete appliquees- ; en fait la syntaxe est une trudnOOlie. et 11 pout etre interessant do se 11 vrer A uno critique do la taxinomio on science.

Par taxinomie. nous entendoos tous los moyens do classifier. reperer , au

moyen de dlct.Ioenatres , 1angages etc. cet.te activite humaine de base

8' illustro dans los exeeplea suivants :

i) 1a classification des anl.aux on o81~os. Bous-espCcos etc. il) In c/ftsslflcfttJon perJodlque de Hendo1eJoff

ili) los coordonneos torrostros

iv) In notation .uslcalo.

8i l'utllit6 pratique de cos quatro Syst~9 de ropr6acntation ne fait nucun doute , 10u1' qual1t6 oat tros vllri60. Par oxemple , 111) cst aaaez sntisfnisMto (mnlgro In possibllit6 do changer' Io m6ridlcn do rof6rcnce. Oil l'nrbitrniro du sysUmo d'\.Ulit6s) cor bos6o aur 10 palo do rotation do In 'ferro. iv) cst lfl

Jean-yvos girard

-16-

produit de contingences diverses, et Is dizaine de clefs. les notations ambigues ou repetitives. ont certainement freln6 considerablement la pratique musicale. La classification i) est tres ad hoc: on compte les ailes. les yeux. les testicules. mais la decouverte de l·Australie fo~a lea taxinomiates A introduire de nouvelles especes (marsupiaux). Finalement. ii) est une petite merveille, car basee sur un invariant structurel : Le nombre de protons de l'stome i on sait d'silleurs que de nouveaux elements furent trouves (ou crees) A partir des trous de Is table. Pour comprendre Is difference entre i) et ii) : de nos jour on peut exclure l·existence d'un metal fabuleux du type or ichs Ique , maia p6.8 d'un animal fabuleux du type l icorne ,

La t~xlno.le, c'est la bureaucracle de la science. Comma son analogue institutionne1, elle est utile. maia s aussi une propension A produire des obstacles infinis A l'6xecution des tachea 1es plus simples: sa tendance naturelle est de ne r6f6rcr qu'A elle-meme et d'expulser Is realit6 dont elle est aupposer rendre compte. Les exces de Ia taxinomie viennent 6videcment de cet.te obscure tendance humaine A nOOlOOr, Cl88sifier. muOOroter par n'importe quel moyen. tests psychologiquos ou "IQ", aignes du Zodiaque etc.

Si 1 'on regarde par contrc les grandea etapes du progres scientifique, on decouvrira souvent une lutte centro La taxinomle. Par exemple , Ie fait que les trois courboa coniqucs (ellipues, paroboles, hyperboles) n'en fonncnt qu·une du point de VUQ 01g6brique, ot l' introduction subsequento du plan project! f du point do vue a1g6brique, 10 distinction entre ceo trois typeo do courbe apparait coome uno taxinomle (le chotx de 10 droi to de l' inf1n!). Les IMth6lMt!cicn9 so d6bnrrl18scnt do In tnxinornlo Oil exhlbent des invariants 116s A tol ou tel typo d'~uiva1enco nnturcllo ; 10 typo d'6qulvalenco depond do cholx scient.if1ques, par oxemple nouo d60idons d' ignorer 100 pl"opri6t60 m6triCluos des contquoa.

Sl nOU9 tournons notre nttention vers In Iog iquo IMth~.JT\l\t.iquo, nous

la logique CCGmO soienco do 1 t Interact.Ion

-17-

dkouvrons que, non seulement Ie poids de 1a t.axinomie y est plus tHev6 qUEI dans Le reste des mathemat.Iques , mais que de plus -du fait que 1a Iog ique S'OCCllpe de Langage- cecf est considere souvent CO!IIOO une quali te speci fique du SujElt. Le point de vue souvent developpe est qu'un objef; mathematique nous vient avec une description extr tnseque , qu'on pretend faire partie de l'objet. Ce point cle vue a ete largement repandu SOllS Ie nom d '"intens).onali te". Au fond, la tendanc:e de I' intensionali te, c ' est de distinguer entre une tasse avec une porgnee A i~auche et une tasse avec une pof gnee a droi te, parce que nous avons en tetEl des utilisations (des mains!) differentes par cont.re , la tendance des mathematiciens (et des fabriquants ausai ) Bern d':i denti fier les deux UlBses. M,a,1,.gre ses tendances obscurantistes, l'ideo).ogie intentionaliste a eu au moins I' avantnge de garder en vie des distinctions du type

fonctlon C01lD6 graphe / tonct ton COIUJe prograll1llte

qui sont essentielles, et ont ete negligeen par Ie courant, principal des mathematiqucs, spOOialcment In tradition Cantorierme. Mais elle a conserve ces distinctions avec toute l'application et Ie manque d'imagination d'un copinte du moyen iige. Les limi tes de I' Intens Ional I t6 tiennent dans son slogan plus ou moina avowS: lila carte cst Ie torritoire" ; dans cette approche (I~ deux objets sont diff6Nnts dea qu'on leur a donne deux noms dlfferents, on ne peut ()CLS se poser In moindre question fructucuse.

Pour essayer de relier ceoi A notre probl~o de d6finir la notion d'~ltion, nous convicndrons que 18 ~yntaxe prdsente -eu moyen dos travllUX de Ocntzcll- uno approche taxlnomique A III notion d'aetion. La syntexe ITIlUlipulo los actions CODlOO un bureeuornte dcmcuro, c'ost h dire au moyen d'un p&iantiamo plnt\illoul~. ~ peut voir 1a syntaxe COO1OO un moyen do d6crh'O n'iml"orto queUo notion h l)(lrtil' d'nctiona de beso , h. l'aide d'un certain noabro d'op6rations d'B9scmblagn. La probl~mo eat quo, que lquo aol t Ie choix du syataoo d'actions do bMe et du

Jean-yves girard

-18-

sys~ d'aRsemblage, i1 y a touJours p1usieurs manieres d'arriver ~u meme resultat. Par exemp1e, pensons A un jeu de cubes: si on veut mettre les trois cubes A,B,e cate A cote, A l'aide de la juxtaposition, alors pour fonner ABC 11 y a deux .oothodes, A savoir -fonner Be, puis ABC, ou fonner AB, puis ABC, ce qui se repreaerrte en distinguant entre A(Be) et (AB)e. Cette situation est absolument universelle : la syntaxe repreaente un objet et une maniere de Ie decoaposer- en aous-objeta , Ceci dit, dans des manipulations ulterieures de notre assemblage ABC, la maniere dont 11 a eM construit ne nous Impor-te pas : nous avons envie de manipuler eet objet coome tID objet sans histoire. La syntaxe va Be raPP3ler eternellement cette histoire de ABC, A savoir A(BC) ou (AB)e, qui ne sert visiblement A rien. Encore une fois c" est parce qu' on n' a po.s de modele dynamique, et qu'on se rabat sur Ie pfnat Hage , car les r(lsultats sur La syntaxe montrent que si I' on suit au pied de Is 1ettre toutea les instructions syntaxiques, on no fait pas d" erreurs. Par contre on perd son temps A des verifications redondanted, du genre verifier que des parentheses -d~nt on n'avait paa besoin- sont bien 1A : c'est conme un bureaucratc qui VOM demnnde WlC copie d'W\ texte dont 11 a l'original. Si, pour gagner en efficacite -par exemple en vue du calcul parallele-, on commence A easayer de faire dispnraitre 1es informations redondnntcs, on se heurte rapidement au probleme, qu' au fond, on ne sai t po.s ce qu' 11 y a derriere In ayntaxe , Nous BOOJOOS done omcncB n chercher derriere l'arbitraire apparent de Is synt.axe, deB regularites. II s'agit done d'un~ s6mantique g60m6trique finio avec un important aspect dynamique. Incidemnent, rcmo.rquona que l'idoo d ' uno une s~\tiq\le dynruniquo tinio au dolA do la synt.axe cst en complete contradiction avec la tradition 10gique de co sieele, en parti~ulior Ie positivismo 10giquo dont Ie tour de force cst d'8voir reusBi A fnire accrofro quo In syntaxo no r6fbre -ot no dolt r6f6rer- qu'A elle-m&me •••

18 IOSique C<WDO sofeoce do l' interaction

-19-

111. lineaments d'une geometrie de l'interaction

III. L_une analoRie 6lectroniQue

Pour dtHinir une action, nous aurons d'abord besoin d'une prise, et nous pouvons penser A un raccord tH~ctronique du type "prise DIN", c ' est A dire un ensemble de broches. (En termes techniques, la prise apparait comrne une algebra de Boole). En anafog le avec notre exemple electronique, -00 nous avons me complementaritk naleliemelle-, nous introduirons Ie concept de pr tses co.plementalres. ~ nous &!rivons une formule Iog.ique A, nous decr-Ivons -entre autres- une certaine prise P A' c" est a dire un ensemble de broches quand nous &!ri vons AJ., nous doori vons une autre prise, qui est La prise complementaire de P A' notke 11 : on a donc P AJ. = 11. Pour reprendre notre analogie, si PA est une prise mO.le A 7 broches, FA est une prise femelle a 7 broches. Poussons notre onalogie : lcs prises scrvent dans In vie courante a assembler dCR 61emcnts, de fayon 8 produire certains effets dynnmiqucs. Une condition nOcossalre pour l'assemblage est la compl6mcntarit6 d~s prises : on no peut pas brancher une prise male 8 7 brochcs avcc une autre prise male, ou avec lme prise femelle 8 8 brochcs. Hais co n'cst pas sufflsont : dcs brrulchcmcnts qui no respccternient que la compl6mentorit6 des priBcs sont impr6visiblcs, et c'est pourquof 1cs fabriquants indlquenl Ioa possibilit6s dc brnnchemonta lici tea. C' cst 18 qu ' 11 faut chcrchcr 10 sens des fonnulcs h,giqucs : 1a formula A d6crit uno prisc P alnsi quo ICB branchcments qui aont, possiblcs. Q'\ peut done voir A au moyen du dcasm sutvant , representant uno priso DIN 8 laquello s'attache uno 6tiquottc A



A

Jean-yvos girard

-20-

Cette etiquette est ·la description du type de branchement accepte ; plus p~iBement, Ie branchement accepte est exactement Ie branchement avec une prise ccmplementaire, munie de 1 'etiquette compl emente i re AJ. :

Une actIon de type A sera un certain type de liaison entre les broches de la prise PA (en termes techniques, l'action sera un element d'une sur-algebre non-commutative de l'algebre de Boole de la prise PA).

NOllS avons suppose qu'une act.Ion n'a qu'une 'ise: 11 est plus coomode de considerer qu'une action peut avoir plusieurs prises etiquetees Al, ••• ,An en fait consid6rcr plusieurs prises ou une seule revient au meme (on fabrique une seule prise en juxtaposant les broches i cette unique prise est alors etiquetee Al~ ••• ~An)' Si on denote par ~ Al",I,An l'6tiquette multiple d'une action, nous pouvons chercher A trouver quelques principes qui permettent de manipuler ces etiquettes de facon a combiner des actions entre elles : nous allons retrouver ai~qi les premiers principes de la logique lin~ire.

III. 2 I cqnbilllli.Hsms d' actions et calcul des s&Juents

NoUB ovens deed t dans [1] Ie catcul des s6quents de fnqon soornaire rappelons que Ie caleul manipule des suites finies ~ Al, I I . ,An' avec La

signification implicite "At ou I I I ou An"

la aigni fi('.ation precise de "ou"

<i6pt'nd du choix des regles at.ructure l Ies , et en Iog ique lin6nire, 11 n In m&oo signification que Ie myat6rieux connecteur "par", not6 "~" I NollS ut.i l Iaona Ies aymboles r ,d etc. pour denoter des aut tea de formul.ea,

Supposons que j' ale uno action n (ou un nppnreil) dont Ies pniaea sont 6tiquot6cs r,AL, et uno autre, A, dont los pr Iaea sont, 6tiquoMos A,d In comp16mentarit6 des deux 6tiquottes A et AJ. indique uno pos8ibilit6 do raccordcment : offectuons done Ie branchc~nt

18 logiQU3 ~ actence do I' interaction

-21-

r .... ,n ••. , .-- ..... 11--- .. , .• A, •• ,.d

AJ.. A

Nous avons obtenu un appareil dont les pr-Iaes sont r ,d. On a reconnu iei la regIe noamee coupore par Gentzen de" r ,AJ.. et de .. A,d, deduire .. r ,d. Ineiderrment, Le nom "coupure" est faeheux, vu qu' i1 s ' agi t de I' et,ablissement d'une communication

L'nppareil eleetronique Ie plus simple est une rallonge DIN a deux prises complementaires P et pL, l'une male, l'autre femelle .



p

Hais quelles etiquettes peut on attacher a ees deux prises ? Soient A et B les etiquet~s associees aux priseg P et pL ; pour trovver une relation entre A et B, utilisons la regIe de coupure -c'est a dire un branehement- l'effet physique d'une rallonge est de ne rien changer, autrcment dit

r ..... n. • • • • e _ II ct r ..... n , • • • • til

AJ.. A

D

D

sont pratiquement la m&nc chose : cela impose evidelllOOnt de ne pas bouleverser les 6tiquettes outre roosure , done on doit evof r D = A. On a reconnu dans Ia ra l Ionge "DIN", l'axiome d'identit6 de Ocntzen, a savof r 10 stSquont .. AJ.,A.

Examinons mnintenant les regles structuroUos on tcrmcs do pris08 :

l~ ~egle d'cchongo pcrmct de rcmplncor .. r POI" un rearrangement (permutat.Ion) .. t:", Cette reglo 9' accorde tout a fnit avec notre modele on continuant notre nnalogio, 109 pr'Lsea d'un apparoL. 6loetroniquo sont Indl vlduaUsees, mals pas hi6rnrchlse09 eUos aont toutes ncceaafbfea 8 irm.al to.n~n t •

I~ regIe d'offoJblJsscmont pcrrnct do rcmplncor .. r l~r .. r,A : 011e 6noncoralt donc In possibiUte d'nJoutor a un apparef I uno prise fnctico. Ceci

Jean-yves girard

-22-

est certainement possible, mais il faut indiquer que cette prise se uomporte coome une prise fsetice, et n' assure pas vraiment Ie contact avec un appareil dont la prise serai t etiquetee IIAJ.II : par exerople, on ne va pas ajouter a un amplificateur une prise fsetice en ecrivant "bauc-per-Ieur-", car on s'attend a Ja production d'un Bon dans ce cas-lA. La regIe d'affaiblissement est donc fausse en general. Elle ne peut etre vraie que pour des etiquettes qui denoncont Ie cOte fsetiee de la nouvelle prise.

La regIe de contract ton permet de remplacer .. r ,A,A par .. r ,A

autrement

di t, deux prises d' etiquettes identiques pourraient etre superposees , Un exemple typique nous est foumi par la stereophonie, pour laquelle nous avons des appareils avec deux prises identiques "haut+per-Ieur-" (nous devons brancher deux haut-parleurs) superposer les deux sorties "hauc-per-Ieur" d'un amplificateur eat physiqu~~t realisable, at revient A brancher les deux priscs sur un seul haub-per-Ieur mais aucune personne raisonnable ne forait celA, car Le comportement du systeme se trouv~ gravement altere i que Ie systeme fonctionno encore ou se mette A exploser nous importe peu, car dans taus los cas do figure, 11 fonctionne dlffere15Dent, et nous devons indiquor cetta difference par une nouvelle etiquette pour l'uniquo prise ainai crde , et cetta etiquette no seurat t -en general- etre A. Ccci refute la regIe de contraction commc une ~gle lieite do manipulation des actions.

Cotte analyse rapide oxplique done Ie rcfus de deux regles structurolles sur trois, ot hOUS llI'OOno done A In Iog lque l1n&lirc [coemutat.Ive) des raffinemcnts du mod~le pr6c6dcnt devraient pe~ttre d'intCgrer les aspects non-coamutatifs (avec des restl'1ctions Bur l'6chnnge), mais nOUR n'abordorons pas iel co problaoo clO1icat.

Passona aux ~gles DP.lltlplicatlvcs, e'est a dire aux conneoteurs • ot, 'i ; 01 nous (WOOS deux prioes P ot Q, on pout fonoor uno nouvellc prise NQ par

la loglquc oo.e aoicncc de l'intcreotton

-23-

juxtaposi tion

si P a 7 broches et, Q en a 23, P+Q en a 30. La ,I)rise

compl.emented re de PtQ sera formee en juxtaposant les prises pJ- et Q-l, soit

8i nous diaposons d'un appareil n dont les prises sont etiquetees r,A et

d'un appareil A dont les prises sont etiquetees d,D

nous pouvons les

jw~taposer en fonnant un appar.eil dont les pr-Lseu seront etiquetees r ,d,MD :

r ..... In...... •

A •••• A...... a

AeB

AeB etant l'etiquette d'une prise unique, a savoir PA+PB.

8i noua di9posons d'un appareil ~ dont les prises sont etiquetees e,D,A, nous pouvons en former un autre dont les prises sont etiq'Jetees ~D,A :

B----- •

..•• . pI •••. 11

__ ._-.

~D est l'6tiquette d'une priso unique, a savoir Pe+PD•

Pour eomprendre ee qui se passe, pl.acona-noua dans 10 cas ou e I: AL, D =DL i alors AL~DL = (MD)L, done 11 y a possibilit6 de branehcment par coupure , Noua obtcnons done :

r n ••••• ,---90

• ••••• 11 ••••• 11

d •••• A ••••• ,-- ...



AttD A.1.~DL

Hais ee resultat eat physiquCffICnt Ie m&ne quo ai nous avions branchd n ot A avec ~ au moyen de eoupurca BucccasivcB, l'tmo cntre A ot AL, l'autre entre D at DL. Ceci ox~.rir.lC bicn quo Ics principca do format.Ion do pr-Iaos coeploxoa sont, corrects, vus qu'Ua n'~nent pas de fac;;on d6tou~0 a faire des brenchements i11101tes. En falt on pcut BO dcmander co qu'on a gagn6 cn Intrcdulaant, cot.to

Jean-yvos girard

-24-

prise SOOIOO et les etiquettes complexes utilisant "e" et II~II : nous avons cree des instructions de manipulation synthetique de prises, qui peuvent sembler inutiles car on peut faire les memes operations sans ces prises supplementaires. Mais si on pelme a des combinaisons massives de telles manipulations, leur analyse en tennes d ' operations ~Hementaires serni t inextricable, alora que les instructio~g massives seront facilement analysees au moyen des regles de In logique lineaire. Au passage, nous avons justifie les del~ regles logiques pour 8 et ~ : de ~ r,A et ~ d,B, deduire ~ r,d,AeB ; et de ~ C,D,A, deduire ~ ~D,A. L'interpretation de II~II pennet de revenir sur l'aspect "vase COOII1W1icantll : un appareil rr qui n'aurait qu'tme prise etiquetee A~B, c'est comme un appareil avec deux. prises etiquet~es A,B. Si on branch~ un appareil A de prise etiquetees A~ sur la prise A de fT, on obtient un appareil de prise etiquetee B ; si on branche un appareil ~ de prise etiquetee B~ sur la prise B de fT, on obtient un apporeil de prise ctiquetee A. Si A est de la forme C~, fT est de prise 6tiquetee ~D, et si on lui branche A do prise 6tiquetee C, on obtient un appareil de prise etiquoteo D mais la communication fonctionne dans l'autre sens aussi, do DL VOl'S C~.

III. 3. ]Il nature do In cOOIJltUlication

La mod~lo prcsont6 informellcmcnt plus haul n'ost pas nehove pour toute In logiquo lin6aire. Ccci dit, los grandes lignes d'une solution possible A lme tl160rie g&m6triquo de l' interaction sont A peu prea d6gagces.

Nous avons mentionne qu'uno action opparalt eonroe un 6l&oont d'une sur-olg~bre do l'alg~bro de Doolo corrcspondant A sa priso. Lc choix do cottr sur-o.lg~bro cst sans importance, outrcmcnt dit, on pourroit 10 rcmp1acor POl' une autre, pourvu do no pas toucher h 10 portie qui concorne la pr-Iao , Cotto retn-'H'que a uno importance capi ta10 : dans uno Internet.Ion, unc action n va comnuniquor avec uno autre action A au moyen do Sll sur-a1g~bre A, mais eorrrnc

In logique comma science ~ l'interaction

-25-

eUe n'est pas d6finie lUlivoquement, cette sur-algehre n'a -moralement- rien en commun avec la sur-algebre B dans laquelle evolue A, si ce n'est la prise commune. Autrement dit, A ne va rien comprendre a A, et " ne va rien comprendre A B, en dehors de la partie commune qui correspond A la prise. En langage image: qunnd " envoie une information A A, la seule chose que comprenne A, c' est Ia broche (conmune l par ou est arri vee l'infonnation i en fonction de cette broche. A va effectuer des operations de nature globale sur l'information envoyee par", essentiellement des effacements. des duplications. et finalement retourner Ie tout A rr , augmente d'une information lisible par A seul.ement , mais a travers une nouvelle broche. etc. Dire que A fait des operations globales vient du fait qu'il ne peut pas lire l'information qui lui arrive A travers une broche donnee, donc qu'il est condamn6 n la traiter independemment de son contenu. Cette these, 1a communication sans comprehension, est l'hypothese methodologique principale qui sous-tend In theorie en cours de realisation.

IV. quelques applications possibles en informntique

Nous allons examiner rapidement les potentialites actuelles de 1a nouvelle approche pour l'infonnatiquo ; I' axe 10 plus important cst celui de l'etudo dcs algol't~s paralleles ; mal s des sous-produi ta interessants sont apparus : nous discuterons deux cxcmples In revision dans lcs bascs do donnees et In programmation logique.

IV.I. 10 paro11bl1~

L'ideo caaent.Ie l Ie acrni t , uno fois la th60rio math6mntiquo do l'interaction completcment elaboree, do mettro au point un typo do langage -ou m&nc un type do machino- qui rofl~to los principcs math6matiquos d'oxecution

Joan-yvos girard

-26-

obtenus. II cst vraisemb1ab1e que des problemas d'efficacite vont se poser: il ne suffit pas que 1a communication entre plusieurs machines puisse s'etablir sans risque d'erreur, 11 faut encore qu'eUe se fasse en un temps raisonnable. CelA posera et des problemas theoriques et des problemas pratiques. Les probl~s theoriques sont liees a la notion d'attente (faire A avant B), et devraient mener A developper l'aspect non-~tatif de la logique lineaire. Si la these de Ia coomunication sans comprehension devai t s ' averer exacte, elle devrait entrainer la possibilite de faire collaborer ensemble plusieurs machines sans aucun appareillage complique de coordination. C'est l'existence de eet enjeu pratique essentiel qui fait aussi toute 1a difficulte du programme mathematique en cours, que noUB avons esquisse en III.

IV.2. Ie prob1eroe de la revision dans 1es bases de donnees

Uno des difficultes essentielles de l'informatique actuelle est d'arriver A donner un statut raisonnable A des operations informatiques de tous les jours i par exemple, dans les bases de donnees, coement interpreter La PJlI so a Jour d'informations ? En effet, si nous representons notre savoir sous forme d'une liste d'rociomcB, 11 semble impossible de modifier un de cos rudomes SMS compromettre tout 1 'edificc. Pourtant, Ies informations contenues dans de te l Ies bases sont de nature transitoire (par exempl e 1 'heurc d'envo1 d'Wl av lon, qui doit disparaitre qunnd l'avion a decol1e ctc.), et ce phenomene de revision oxiste bien, au moins dans 1a pratique de tous 1es jours. Les tentatives faites A cc jour no sont gu~rc convaincantcs : los spCcialistes du sujot no connaissent en fait do logiquo quo la 10gique c1assiquo (les tableaux do verite) et, cornme nous l'avons soul!gne plus haut , In Iog ique classiquo cst baaee sur Ia p6rcnnit6 do 1a v6rit6, qui s'oppose violCfl1T)Cnt A toute tentative de revision. Pour palliol' C€t inconvenient, on a propose des atl~ites logiqucs, quo nous avons d6Ja sUgmnUs6es dans [l], typiquemcnt In Joglquo non-crot ssonto , qui a doux

1ft logiquo caao scienco do l' interaction

-27-

particularites redhibitoires, a savoir

i) qu'elle n'a aUCWle propriete structurelle, donc qu'on ne peut pas la manipuler (par exemple, on ne peut pas faire abstraction de l'histoire des a~iomcs, c'est a dire comment on les a obtenus j c'est comme si dans la vie courante, au moment de payer 100 francs, on vous demandait la liste de tous les precedents detenteurs du billet depuis son impression ••• )

ii) qu'elle ne s'applique meme pas pratiquement, car elle mene a des problemes non calculables, ce qui est un peu gros quand on pretend modeliser des situations de calcul particulierement elementaires.

Nous avions suggere dans Ie meme article que la 10gique lineaire pourrait etre mieux adapt6e aces problemes de revision. Nous allons decrire les grandes lignes de ce qui pourrait etre uno conceptualisation de la mise a Jour. On representerait nos donnees par des symboles atomiques p, q, rotc. On identifierait uno base de donnees avec un certain nombre de ces donnees, qui en decriraient l'etat. N'oublions pas qu'une base de donnees ne contient que des informations positives, et que toute information absente est moralcment fausso. Logiquement, cola BO troollira par une lisle finio do fonnules, correspondant aux in format.Ions positives connuea a un certain moment, et (potcntiollcmcnt, il n'est PM quostion de 1 'ecrire) In liste des negations des infonnations absentca, Par oxcmplo, si Je sois que p ot r , J'aurni p, r et potentiellcmcnt q!'. Noua allons consid6rer quelques excmplos d'op6rtltlons do miso a Jour

1) supposons quo Je veuillo offacer p ; J'aJout~ 1a donnee ~p1. (en 10gique 1in6aire, uno toIle implication n'a PM Ie sens de ~) ; alors de pegLer et de ~p1, Je d&luis pLeqJ.er (que Jo roprdsonte par r) ; dans cotto opdrat.Ion, p ot ~pl ont dlaperu,

i i) mais l' oxcmplo prec&lcnt 6tai t bns6 sur 10 fai t quo Jo savais que p 6tai t lA : suppoaons que Je veuiUo ecriro uno instruction qui efface l> au cas 0" 11

Jean-yves girard

-28-

est pr~sent je ne peux pas ut..i1iser Ia formule precedent.e , car au cas Oll p serait absent, 1a formule resterait, et risquerait d'a~uler p plus tard quand on ne veut plus Ie faire. J'ecris alore (p$~)~~ i que l'on parte de p ou de y., une deduction 10gique nous amenera A If-, et l' instruction a.ioutee sera d~truite dans 1a deduction.

iii) supposons que de q~ et r je veui11e conc1ure A s, lme nouvelle donnee, mais que je veui11e garder q~ et r : j'ajoute qLere(s~sL)~Leres, ce qui s'ecrit encore (qJ.e~s-oql.e~s)&(qJ.eres~-«lJ.e~s), qui me met dans Ie nouvel etatpeqLeres , que l'~n parte de 1a configuration p,r ou de 1a configuration p,r,s. iv) dans l'exemple pr~cedent, si on veut integrer Ie fait que dans Ie cas ou q (ou non r) Je ne fais rien, i1 faut superposer d'autres instructions A l'a1de du connecteur "&.", typiquement : (ql.ereS-«lJ.erf)s)&.(ql.erf)sJ.-«lJ.er<ts)&.(q-«l)&.(~~~)' S1 on n' ajoute pas les deux derniers morceaux , l' instruction d' ecri ture de s dans Ie contexte ou non q et r ne pourra pas touJours ctre utili86e, ce qui fuit qu'elle restera lA, en att~nte d'un etat ultcriellr du 8ys~me, ou q elnnt devenu faux et r vrai, on ecrira s ; on peut dcsirer, commo ne P6S dC8irer, de te1s effets, mais l'utilisation des formules de logique lincaire pel~t toutcs les nuanccs possibles.

En fait ce qui rOBsort de tout celA, c'est lme nouvelle conception do la notion de Ulcorie Iog ique : traditionnellemcnt, on aval t, des axiomcs, auxquo ls on no pouvait pas toucher i iei nous aurona des axi()(OOs et un etat courant, : lOB axiocoos soront, A usage lllimltc, alors quo 1 'ctat courant (qui roprdaonto en quolquo Borte la dornl~rc fonmllo d6mont~0) sora en continuol chnngcmcnt. Dons Ies exeeplca vus plus haut , nous n'nvons PM consld6r6 d'o.xlomcs ; cect dit 11s npporalsBent naturcllcmcnt I al dans un excmplo COITIOO iii) Je voux uno foio pour toutos 60rire 8 chaque fois quo J I aural non q ot. 1'. La fonnulo quo nOUD avona o.lors 60rlte dolt. alors ctre cons lddree conmo un nx ioeo , c'est A dlro

In logiquo C«IIOO sofence do l' interaotion

-29-

r~utilisable ad l tbt tUIlI. Techniquernent parlant, ce que nous avons oorit est

leg~rement in~rrect

en effet, dans i), ~~PL est logiquement equivalent A

(p-tpL)&(pL .. pL), et donc a (p-tpL)&(p-tp) : done si nous deviona partir d'tme

configuration ou pest vra i , nous pourrions aussi ut.Ll Iser- cette fonnule pour rester avec p. Mais il y a un moyen tr~s simple de s'en sortir : on ajoute une etat fictif nO' qui sera toujours verifi~ i dans toutes les transformations, on reclame la presence prea labfe de "0' et on conclut que nO est toujours lA A la sortie. Par exemple, on ecrirait que (p0nO~~O)&(~O~~O) dans la situation i), et il n'y a plus de mauvais usage possible de cette formule.

IY.3. Ie problema de la negation en programmation 10gigue

Nous avons dejA mentionne en [1] les similitudes profondes entre PROLOG et la logique lineaire i il s'agit ici de logique non-canmutative, puisque PROLOG so passe m&ne de Ia regIe d ' echange. Malgre Ie caractere experimental de la Iog lque Hneaf re non-corrmutative, 11 est possible de 1 'utf Hser- pour llll8lyser un des problCmeR majeurs de PROLOG, A savoir la negation par echec.

Un programme PROLOG consiste en un cortain nombre de clauses, qui sont de la fonne r .. A, ou A est uno formul.e atomique, et r uno suite do fonnulos atomiqucB. Dans 1a discussion qui suit, nous negligerons (co qui n'est pas ricn) 10 fait que les clauscs contiennent des variablcs, pour noUB conccntrer Bur la portio purcmcnt propoal tionnello, 8MS var-Iubl ca. Lo progrnrrme PfK>l.OJ eaaaie do deroontrer un but A, on eaaayant, uno clause do In fonne r .. A du programoe 11 cat alors amon6 A cBsayor de d~tror dos buts intcnn6diail'fls qui sont 108 formulos do rotc. 11 y a dOlm ens pnrticulierB importants : qunnel r cst vide, 10 but (ou but intollTl&liairo A) oat d&nont1'6 i quand n n'y a PM do clauso qui BO tormlno POI' A, 10 but (ou but intclTll&lioiro) A l-chouo. Lc lango.go foncUonno

on easayant do fniro aucceaa lvement, des tentat.Ivos

en cas d 'echec d' uno

tcntet.Ivo , on Oil fnit W,Q autre, Jusqu'A 811CCCS ou 6chcc. cccl dit, 11 est

Jcon-YVC9 girard

-30-

facile d'krire des progranmea qui ne terminent J8lMis, a cause de boucles dans 1es recherches. La difficult6 E.at ici encore A essayer de mettre un peu d'ordre 10gique dans ce qui se passe, et. comme d'habitude, les idees basees sur la 10gique classique, les aberrations non-croissantes etc. n'ont rien apporte. Ces idees sont baseea sur l'identification abusive entre "A echoue" et "A n'Est pas

prouvab1e"

or i1 y a un gouffre beant. entre les deux notions : dire que A

n'est pas prouvab1e (ou ne reussit pas) est une propriete non calculable, et rien au monde ne peut changer' ce fai t simple et tetu. Par contre, dire que A echoue signitie qu'une certaine strategie de recherche de A, s'est t.ermtnee , apres epuisement des poas ibf Li tes de recherche, sans arriver a rien dans Ie

second cas, 18 machine 8 bien v(,rifie (c'est A dire au fond

prouve) que1que

chose. La difficulte, c'cst de savoir cxprimcr ce qui 8 ete vraiment prouve, et l'utilisation de Ia Iog lque cla.Elsique est beaucoup trop gross i ere pour celA pour cueillir une pQ.querctte, on ne met pas des gants de boxe , 11 importe surtout de mnnipuler l'6chec sana ten.lr- compte de l'histoire du progl'OJTIOO, sans cela nous sorrmes perdus , 11 faut donc trouver uno formulc qui puisse prendre Ie sens de l'6chec de A, et qui se mantpul o localemcnt, c'cst a dire so contente do rol Ier l'echcc de A au BUCCCS et. A l'6chec des formulns environnnntcs.

~n logique lin6alre nOn-C(Cflnltative, appnrait uno distinction nouvelle cntre deux formes do causalit6 on peut cn effet d6finir

A ~ n =~L ~ n et n ~ A =d n ~ AL

11 oat coemode do voir "~II coemo une causalite dana 10 futur, ot "~II COO1OO uno causalit6 dana 10 posseS. Les deux causalit6s aont relloos par

A ~ D = nL ~ AL (1)

l16is A part colA, on no peut pat I composor uno causallteS et uno rotro-causallt6 : c'cst 10 Bona do Ia non-colTmutat;ivit.6. to produit tensor le l non-coomutaUC Aen prend dans co cas 10 aens tcmporol : "Caire B, puis Caire A". Nous allons

la logique ca.a scienoo do 1 'interaction

-31-

easent.i e.l Iement, ut.i l i ser- La ncgation Hneai re pour parler d'cehec j Ia causalite dl rect.e gouvemera Ia propagation du succes , et La cause l i te retrograde celle de l' echee ; A cause de Ia formule (1), nous pourrons nous passer de causali te retrograde, mais elle est bien lA implicitement.

Nous allons conclure en donnant un exemple : nous eopnsiderons des clauses poropositionnelles A, B, C, etc. et nous supposons que Ie progranme ne contient que deux clauses se terminant avec E, A savoir :

(I) A,B ~ E

(II) C,D ~ E

Ce que la machine fait, quand e11e reneontre Ie sous-but E, est d'essayer d'abord de prouver E au moyen de (I) j au cas ou el1e eehoue, elle essaye alors de prouver E au moyen de (II) i si (II) cchoue aussi, alaI's E cehoue.

La reussite de In tentative (I) est exactement La rcussite successive de D, puis de A j dans ce ens, 1a rCussite est trnnsmise a A, ce qui s'cerit :

(a) MD .. 1';

IJ' echcc de ( I) se decompose en deux aoua-caa : soi t D cchoue, soi t D reussi t , puis A echoue, ce qui peut s 'ecrirc -cn Iog ique lincaire- D .... (A.len). ~ cas d'~hcc de (I), 00 8UCC~S de la tentative (II) se transmottra en 000 rCusBite do E, ce qui 9 '&!l'it OBDe(nle(A.len» .. E, ou encore au moyen do deux. rudomcs :

(b) (e)

Entin l'6chcc do (I) ot do (II) so propngora en un 6chcc do E, soit (J>1e(OieD) ).(D~(A~n» .. F..L, qui s'6crit encore

(d) (e) ( f) (g)

DtenJ. .. ~ nt.AJ.eD .. EJ. cteDtnJ. .. E.L OieoeA"en .. fo.'.I.

-32-

Ces derniers axiomes sont en fait des retro-causalites ecrites sous forme cont.rapoaee au moyen de (1), Techniquement par Iant., 11 faut, encore proceder- a de peti ts ajustements, du genre de I' adjonction du nO dans notre exemple IV. 2. , mais l'essentiel est la,

Ce type d'analyse devrait se generaliser a toutes les formes de ~rograrnmation logique, pas seulement PROLOG, et conduire a une integration logique des instructions de controle, c'est a dire a controlor Ie controle.

BIBLlOORAPHIE

L'article [1] contient une bibliographic detaillee, a laquelle nous renvoyo~, pour l'esscntiel.

[1] Jean Yves. Girard :

loglque At tnt orsat tque :polnt de Vile d'un loglclen etude pour l'~~, ~...embre 1986

(2] Jean van HeiJenoort :

Fro. Frege to Gadal : a sourcebook In mathematical logic Harvard University Press, ~,967

[3] Dana Scott

Doaalns for denotatlonal se.antlcs

Springer Lecture Notes in Computer Science, n' 140, 1902.

(4) Jean-Yves Girard

Linear logic

Theoretical Computer Science, vol , 50

I, 1987.

la l.ogiquo ~ science de 1 'interaction

You might also like