HAL Id: tel-00008272
https://tel.archives-ouvertes.fr/tel-00008272
Submitted on 27 Jan 2005
HAL is a multi-disciplinary open access
archive for the deposit and dissemination of
sci-entific research documents, whether they are
pub-lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.
L’archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d’enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.
Généralisation des Jeux Combinatoires et Applications
aux Langages Logiques
Jean-Vincent Loddo
To cite this version:
Jean-Vincent Loddo. Généralisation des Jeux Combinatoires et Applications aux Langages Logiques.
Modélisation et simulation. Université Paris-Diderot - Paris VII, 2002. Français. �tel-00008272�
Généralisation des Jeux Combinatoires
et Appli ations aux Langages Logiques
Thèse
pourl'obtentiondudiplmede
do teur del'universitéParis7,spé ialité informatique
présentéeetsoutenuepubliquementpar
Jean-Vin entLoddo
le16dé embre2002
Dire teur dethèse
Roberto Di Cosmo
Jury
M.GuyCousineau président
M.FrançoisFages rapporteur
M.FurioHonsell rapporteur
M.RobertoDi Cosmo dire teur de thèse
M.PierpaoloDegano
M.GiorgioLevi
Remer iements
J'adressemesremer iements,enpremierlieu,àRobertoDi Cosmopouravoir
a epté d'en adrer ma thèse et pour tout lesoutien qu'il m'a oertdurant ette
longue maistrèsenri hissanteentreprise.J'aibeau oup apprisde etteexpérien e
et jeluiensuisre onnaissant.
Malgré leur harge a adémique, François Fages et Furio Honsell ont a epté
d'être les rapporteurs de ma thèse. Je les remer ie pour l'intérêt qu'ils ont ainsi
manifesté enversmon travailde re her heet pour lessuggestions, fortutiles, qui
ont ontribué auperfe tionnementde emémoire. Je tiensàremer ier Guy
Cou-sineau non seulement pour avoir a epté d'être président de mon jury de thèse,
mais aussi poursa gentillesse rassurante et onstante au l des années,que
j'ob-serveave admirationdepuismonins riptionenDEA.Pourlamêmegentillesseet
pourles onseilsexprimésentoutesimpli ité etgénérosité,jeremer ieJean-Louis
Krivine et Pierre-LouisCurien.Je tiens aussiàremer ierPierre-Louisde m'avoir
a ueilli enseptembre1999dansletout jeune laboratoirePreuvesProgrammes et
Systèmes (PPS) de Paris 7, après mon passage au laboratoire d'informatique de
l'É ole normalesupérieure.
Parmilespersonnesquisontvenuesàmonse oursàplusieursreprisesdurantla
réda tiondelathèse,jevoudrais iterAntonioBu iarelli,Vin entDanoset
Fran- es aS ozzari.Danslespériodesdedi ulté,leursoutienmoralets ientiqueàété
formidable,madette enverseuxest don immense.Mer iaussiàOlivierLaurent,
àAntoninoSalibraet àPierre-LouisCurien, en oreunefois, pourl'attentionave
laquelle ilsontbien voulurépondreàmesquestions.
Ces annéesdethèsem'ontfaitappré ieren oreplusmaformationàlafa ulté
d'informatiquedel'universitédePise.Je suisre onnaissantauxpersonnesquiont
ontribuéàme donner ette formation,en parti ulierPierpaolo Degano,pourses
qualitéshumainesetdida tiques,etGiorgioLevi,dontle oursdeLinguaggiSpe iali
di Programmazione, traitantdeprogrammationlogique,adetouteéviden elaissé
plusqu'unetra eenmoi.
Jeremer ie olle tivementtouslesauteursdeslogi ielslibres,quimettentà
dis-positiondes her heursunepanoplied'outilsindispensablesàl'a tivitédere her he
engénéraletderéda tionenparti ulier.Sanslesin ontournablesGnu/Linux,T
E X, L A T E Xet L Y
X, jesuis ertain quelaréda tion de e mémoireaurait été bien plus
pénible.
Je tiens à remer ier Dominique Raharijésy, Joëlle Isnard, Noëlle Delgado et
OdileAinardipourleurappuidanslestâ hesadministrativesdelaviedere her he,
et pourlapatien eàl'égarddequelqu'unaussimaladroitquemoidans etypede
démar he.Mer iàmesamisStefanoChessa,pourl'aidelorsdemondernierséjour
àPisa,àPierangeloVeltripourl'attentionetles onseils onstammentprodigués,
etàVivianeGourmelonpouravoira eptéderéviserlemémoire.Mer iàFran is o
Alberti, Vin entBalat,SylvainBaro, François Maurel,Emmanuel Polonovsky,et
les petits Mi hel et Raphaël, pour leur sympathie et leur présen e agréable au
Enn, mer iàmesparentsdem'avoiren ouragéet d'avoirtout faitpourque
je ommen e etteaventure.ÀLelia,monépouse,mer idem'avoirsoutenu haque
jourde ette longuetraversée.Jen'aijamaisétéseuldansl'eortetdanslesjours
di iles. C'est bien notre thèse, par e-que nous l'avons menée à bien ensemble.
Mer iaussiàsesparents,Rodi aetIulian,pourleurparti ipationetleurtou hant
Résumé
La théorie desjeux a développé,àses débuts, une vo ationpourles s ien es
so iales et é onomiques, ave des appli ations disparates, omme par exemple le
traitement dedonnées médi ales.Elle apparaîtaujourd'hui ommeunparadigme
de on eptsetdete hniquestrèsgénéral,dontlepotentielresteen oreàexploiter
eninformatique.Dans ettethèsenousétudionsunebran heparti ulière,lathéorie
des jeux ombinatoires (à deux joueurs), pour en tirer béné e dans ledomaine,
très a tif,dessémantiquesformellesdeslangagesdeprogrammation.
D'unjeu,nouspouvonsséparerl'aspe tsyntaxique,inhérentauxdénouements
possiblesdesmat hs,del'aspe tsémantique,inhérentauxprévisionssurlegagnant
et laquanti ationdesongain(entermes d'unenjeu quel onque,telquel'argent
ou lepréstige).Pourmodeliserlanotiondegain,lastru ture d'évaluation hoisie
nedoitpasfor émentêtre elledesbooléens(gagné ouperdu),ou elledesentiers
naturelsourelatifs.Ilsutqu'ellevériedespropriétés,assezfaibles,garantissant
l'existen e d'unesémantiquemême lorsque lejeu donne lieu àdesmat hs innis,
ommedansle asdujeudelabisimulation entrepro essus on urrents,et dujeu
delaprogrammation logique.
Dans e travail,nous étudions la ara térisation sémantique d'un langage
lo-gique (ave ousans ontrainte) entermes dejeu àdeux joueurs.Au-delà du
mo-dèle intuitif des jeux, dont la valeur pédagogique mériterait d'être approfondie,
une telle interprétation permet de réutiliser un des algorithmes les plus utilisés
dans la théorie des jeux ombinatoire, Alpha-Bêta, omme moteur de résolution
pour leslangages logiques. Les résultats ré entset spe ta ulaires obtenus par les
programmesd'é he s(souvenons-nousdeladéfaitedu hampiondumonde
Kaspa-rov ontreleprogrammeDeepBlued'IBM)témoignentd'uneformed'intelligen e
arti ielle développée dans es programmes qui peut êtretransposéeet exploitée
danslarésolutiondeslangageslogiques.Larésolutiond'interrogationsexistentielles
onjon tivesdansunethéoriede lausesdeHorndupremierordreestenparti ulier
on ernée. En eet, la apa ité d'Alpha-Bêta àsimplierle al ul ou, end'autres
termes,sa apa itéàéliminerles oupsinintéressants,n'estpasintimementliéeà
untypedejeuouàuntypedegainparti uliers,maisdemandejustedespropriétés
algébriquesquisontsatisfaitesdanslejeudelaprogrammationlogique.La
orre -tiond'Alpha-Bêtaestprouvéedefaçonformellepourunéventaildestru turestrès
large. Les valeurs al ulées pourront être aussi bien des entiers naturels, omme
dans le asdujeu d'é he s,quedessubstitutions oudes ontraintes, ommedans
le asdeslangageslogiques.
Mots- lés
Algèbrestypées,arbores en es,arbres,termes,théoriedesjeux ombinatoires,
jeux,arènes,positions,joueurs,gain,arbresdejeu,préxesdejeu,stratégies,
stru -tures d'évaluation, sémantiquemonosémique, stru tures de o-évaluation,
séman-tique bisémique, sémantique pessimiste, sémantique optimiste,algorithme
Alpha-Bêta,théorèmeAlpha-Bêtapolymorphe,algorithmeAlpha-Bêta-Gamma-Delta,
Pro-grammationLogique,LP,ProgrammationLogiqueave ontraintes,CLP,résolution
Abstra t
Game theoryhad, in its origins,a vo ation for so ial and e onomi s ien es,
with disparate appli ations, for example in the pro essing of medi al data. It is
per eived today as a very general paradigm of on epts and te hniques, whose
potentialstillremainstobedis overedin omputers ien e.Inthisthesiswestudy
aparti ularbran h, ombinatorialgametheory(withtwoplayers),inordertoprot
from itintheverya tiveeldofformalsemanti sofprogramminglanguages.
Within agame,we an separatethesynta ti aspe t, inherentin thepossible
out omes ofmat hes,from thesemanti aspe t, inherentin thefore astsoverthe
winning player and, possibly, inherent in a quanti ation of prot, in terms of a
stake,likewealthorprestige.Tomodelthe on eptofprot,thesele tedstru ture
ofevaluationshouldnotne essarilybethestru tureofbooleans(win orloose),or
that of naturalor relativenumbers.It is enoughforthis stru ture to verify some
properties,rather weak,guaranteeingtheexisten eof asemanti s,evenwhen the
playgivesrisetoinnitemat hes,asinthegameofbisimulationbetween on urrent
pro esses,or asinthegameoflogi programming.
Inthiswork,westudythesemanti hara terizationofalogi allanguage(with
or without onstraints) intermsofagame withtwoplayers.Theee t ofsu h an
interpretation, beyond the intuitivemodel whose dida ti valuewould deserveto
beexamined,makesitpossibletoreuseAlpha-Beta,oneofthemost elebrated
al-gorithmsin ombinatorialgametheory,asaresolutionengineforlogi allanguages.
The re entandspe ta ularresultsobtainedby hessprograms(likethedefeat of
the world hampion Kasparov againstthe IBM program Deep Blue) testifyto a
kindofarti ialintelligen ea quiredbytheseprogramsthatmightbetransposed
and exploited in the resolution of logi al languages.The resolution of existential
onjun tive goals in a rst-order theory of Horn lauses provides an interesting
ase. Indeed,the abilityof Alpha-Beta to simplify al ulationor,in otherwords,
toprunetheuninterestingpaths,isnot loselyrelatedtoaparti ulartypeofgame
or prot,but to awell- hosenset ofalgebrai properties, satisedbythegameof
logi al programming. The orre tion of Alpha-Beta is formally proven for a very
widevarietyofstru tures.Inthisway,the omputedvalues ouldbenatural
num-bers,asinthe aseof hess,orsubstitutionsor onstraints,asinthe aseoflogi al
languages.
Keywords
Typedalgebras,treestru tures,trees,terms, ombinatorialgametheory,game,
arena,position,players,value,gametree,gameprex,strategies,evaluation
stru -ture, monosemi value, o-evaluation stru ture, bisemi value,pessimisti
seman-ti s,optimisti semanti s,Alpha-Betaalgorithm,polymorphi Alpha-Betatheorem,
Alpha-Beta-Gamma-Deltaalgorithm,Logi alProgramming,LP,Logi al
Introdu tion 11
Lehasardetl'adaptationeninformatique 11
Lesrobotsjoueurs 12
Lasémantiquedeslangagesdeprogrammation 12
Organisationdes hapitres 13
partie 1. Préliminaires 17
Chapitre 1. Algèbres 19
1.1. Relations,fon tionset propriétés 20
1.2. Algèbrestypées 24
1.3. Morphismes 29
1.4. Restri tionset extensions 39
1.5. Interprétation atégorique 41
Chapitre 2. Élémentsdethéoriedesdomaines 45
2.1. Préordres 45
2.2. OrdresPartiels 50
2.3. Homomorphismesd'ordrespartiels 53
2.4. D poet o-D po 57
2.5. Complétion 62
2.6. Sous-stru tures 66
partie 2. Théoriedes jeux ombinatoires 71
Chapitre 3. Théoriedesarbresetdestermes 73
3.1. L'algèbredesarbores en es 73
3.2. L'algèbredesarbres 86
3.3. Lesalgèbresdestermes 96
3.4. Ré apitulatif 107
Chapitre 4. Syntaxedesjeuxàdeuxjoueurs 111
4.1. Arènesdejeu 112
4.2. Arbresdejeu 115
4.3. Préxesdujeu 120
4.4. Stratégies 121
4.5. Algèbressyntaxiques 123
4.6. Critèresde lassi ationsyntaxique 125
Chapitre 5. Sémantiquedesjeuxàdeux joueurs 129
5.2. Évaluationtraditionnelledesjeuxnis 132
5.3. Interprétationd'unjeuarbitraire 134
5.4. Sémantiquedespositions 146
5.5. Sémantiquebisémique 150
5.6. Sémantiquedesstratégies 169
5.7. Con lusion 180
Chapitre 6. L'algorithmeAlpha-Bêta 185
6.1. Introdu tion 185
6.2. Stru turesd'évaluations ompatibles 191
6.3. ThéorèmeAlpha-Bêtapolymorphe 199
6.4. ThéorèmeAlpha-Bêta-Gamma-Delta 216
6.5. Testsde orre tionetperforman e 231
partie 3. LaProgrammation Logique parlesjeux ombinatoires 237
Chapitre 7. Langageslogiquesdupremierordre 239
7.1. Algèbreslogiques 239
7.2. Formuleslogiquesdupremierordre 241
7.3. Ensemblesdeformuleslogiquesdupremierordre 245
7.4. Laprogrammationlogique 248
7.5. Laprogrammationlogiqueave ontraintes 250
Chapitre 8. Dénition dujeu CLP() 255
8.1. ArènedujeuCLP() 255
8.2. Stru turede o-évaluationpourCLP() 258
8.3. Adéquation àlasémantiqueopérationnelledeCLP() 271
8.4. Appli ationdel'algorithmeAlpha-bêtapourCLP() 276
Con lusions 285
partie 4. Appendi e 289
Codesour eo aml 291
simulation.ml 291
partie 5. BibliographieetIndex desdénitions 303
Bibliographie 305
Les interprétationsen termesde jeux onttrouvé, depuisquelques années,des
appli ationsdeplusenplusnombreuseseninformatique,enparti ulierdansl'étude
des sémantiques deslangagesde programmation.Les appli ations lesplus
remar-quables de la théorie des jeux on ernent l'introdu tion systématique du hasard
en algorithmique( f. [Motwani& Raghavan,1995℄ pouruneintrodu tion
élo-quente)et,bienentendu,lesprogrammesquijouent àdesjeux destratégies.
Le hasard etl'adaptation en informatique
L'idéedesalgorithmesaléatoiresest ellede onsidérerleprogrammeur omme
un joueur ayant àsa disposition plusieurs algorithmesdéterministes orre ts (ses
stratégies pures), et s'opposant à un adversaire, l'environnement duprogramme,
dont les stratégies sont les valeurs possibles (ou les lasses de valeurs) pour les
entrées du programme. L'enjeu sera le temps, la qualité de la solution, l'espa e
mémoireo upéoutout autremesured'e a itéduprogramme. Alors,une
stra-tégie optimale (appelée mixte) orrespondra à dénir un algorithme hoisissant
dynamiquement, de façon aléatoire et selon une loi de probabilité établie, parmi
les méthodes déterministes àsa disposition. Par exemple, toutes les variantes du
fameuxalgorithmedetriqui ksort qui hoisissentdefaçondéterministelaposition
dupivotsontmisesàmal( omplexitéquadratique)par ertainespermutationsdu
ve teurd'entrée.Enrevan he,lequi ksortaléatoireinventéàlandesannées'70
( f.[Sedgewi k,1978℄), orrespondexa tementàlastratégiemixtenaïve(etloin
d'être optimale), qui donne la même probabilité d'utilisation àtousles qui ksort
déterministes, orrespondantaux hoixxesdelapositiondupivot.Ona
évidem-mentl'impressionque ette stratégienaïveestoptimalesitouteslespermutations
duve teuràtrier sontéquiprobables.Mais lathéoriedesjeux permet dedénira
priori des algorithmesoptimaux adaptésà toute distribution onnue de
probabi-lité surlesdonnées,voire, grâ eàdesméthodes d'apprentissage,de on evoirdes
programmesqui s'adaptent(pendantl'exé ution)aux apri esdel'environnement
( f. parexemple[Owen, 1968℄).
L'idéedesméthodesquisespé ialisentave l'expérien en'estpasré ente.Elle
évoqueau ontraireun des premiers propos,au début du vingtièmesiè le, de la
théorie des jeux : la modélisation des rapports é onomiques, de l'ore et la
de-mande, 'est-à-direlamodélisationdesdeuxa teursayantdesintérêtsopposésmais
onvergentversune adaptationré iproque.En informatique, e genred'appro he,
où l'on fait ombattre une spé i ation ontre les données qui seront soumises
à son implantation, est bien entendu envisageable pour n'importe quelle
olle -tiondeprogrammeséquivalents,maisplusoumoinsperformantssuivant
l'environ-nement ( f.entreautres [Welsh, 1983℄, [Karp & Rabin, 1987℄, [Karp, 1991℄,
Les robots joueurs
Nouspouvonsrappeler i ilessu èsré entset spe ta ulairesobtenus, dansle
domaine de l'intelligen earti ielle, parles programmesqui jouent auxDames,
aux É he s, à Othello ou à d'autres jeux de stratégie lassiques. La vi toire du
programme Deep Blue de IBM ontre le hampion du monde des É he s, Garry
Kasparov,enmai1997,amarquél'aboutissementdequaranteannéesdere her he,
tant sur le plan algorithmique que de la mise au point d'ar hite tures
spé iali-sées. Cettevi toirea,enquelquesorte,reviviélesespoirsimmenses soulevéspar
l'intelligen earti ielle dans lesdernières dé ennies,même si, à notreavis, ellea
seulementdémontréquelesjeux sontrelativementfa ilesàmodéliser(puisque les
ma hines y atteignent l'ex ellen e),et non pas que les ma hines soient devenues
intelligentes.
Lasémantique des langagesde programmation
L'étude dessémantiquesdes langages de programmationa, elleaussi, proté
des on epts à la fois puissants et intuitifs déployés par la théorie des jeux, en
parti ulier de la théorie des jeux ombinatoires. En eet, après les travaux
limi-nairesdeLamar he( f.[Lamar he, 1995℄),Blass( f.[Blass, 1992℄)etJoyal( f.
[Joyal, 1995℄)qui, audébutdesannées 90,démontrentqu'une ertaine atégorie
destratégiesétait artésiennefermée,etdon représentaitunmodèledu- al ul,les
re her hesd'Abramsky,Mala ariaetJagadeesan( f.[Abramsky & Jagad., 1994℄
entre autres),ontpermisde donnerlespremièressémantiques omplètement
abs-traitespourdeslangagesfon tionnels(PCF)ouimpératifs(IdealizedAlgol).Enn,
plus ré emment, desspé ialistesdelalogique linéaire ommeBaillot, Danos,
Eh-rhard,HarmeretRegnier( f.[Danos & Harmer,2000℄et[Baillotetal., 1997℄),
entre autres, onttravaillésur les liensdes jeux ave lagéométrie de l'intera tion,
tandis que Curienet Herbelin ( f. [Curien & Herbelin, 1998℄) ont montré que
ertainesma hinesabstraites lassiquespouvaientêtreinterprétées ommedesjeux.
Si les travauxévoqués i-dessusutilisentplusle vo abulaire desjeux (joueur,
oup, partie, arène, stratégie et .) que l'intuition ou les résultats propres à la
théorie des jeux traditionnelle, en revan he, d'autres travaux, où l'on retrouve
des on epts lefs omme eux de joueurs rationnels et de gain, adoptent
l'ap-pro hedesjeuxd'unefaçonplusimportanteet a omplie.Parexemple,enthéorie
des automates, où l'a ent est mis sur la spé i ation et la véri ation de
pro-grammes, ertainsproblèmesdemodélisationdelangagesinnissontabordésave
les jeux ( f. parexemple [Perrin & Pin, 2001℄). Aussi,dans le adre de la
pro-grammation on urrente,les diérentes relationsde bisimulation entre pro essus,
introduites par une te hnique de dénition parti ulière, né essitant la notion de
plus grandpointxe, peuvent êtreréinterprétées,d'une façonbien plusintuitive,
ommedes jeuxàdeuxjoueurs :si unjoueurest gagnant,lespro essus sont
bisi-milaires,s'ilestperdant,lespro essusnesontpasbisimilaires( f.[Stirling,1997℄
et [Loddo& Ni olet,1998℄).
Laprogrammationlogiquepeut, elleaussi,êtreabordéeparlesjeux
ombina-toires( f.[Loddo& Ni olet, 1998℄et[Di Cosmoet al.,1998℄).Onpeut,dans
d'unepartiedanslaquellel'undesjoueursveutdémontrerquelebutestsatisfaisable
dans leprogrammelogique (faisanto e dedamier),tandis quel'autre her heà
l'en empê her. Nous verrons que les réponses orrespondantes à un but dans un
programme logique oïn identpré isémentave legaindujoueurdans laposition
dénie parle ouplebutetprogramme.
L'obje tif prin ipal de ette thèse est, enpremier lieu, de présenter, de façon
rigoureuse, tous les aspe ts syntaxiques et sémantiques des jeux ombinatoires,
pourensuiteappliquerauparadigmedelaprogrammationlogiquelesoutilsformels
développés.Nousadapteronsdesnotionstraditionnelles,tellesquel'heuristique ou
la valeur d'un jeu, au adre des jeux innis, dans l'intention de onstruire une
théorie apable de dé rire à la fois les jeux habituels, tels que les É he s ou les
Dames,etàlafoislesjeux, inattendus,delaprogrammationlogique.Lasouplesse
du paradigme des jeux et son aptitude à la modélisation, nous ont en ouragé à
onstruire une théorie générale,nouvelleànotre onnaissan e, ave l'espoirde la
réutiliserunjourpourd'autresappli ations.
Organisationdes hapitres
Chapitre1. Lepremier hapitreestuntravaildesynthèsedenotionsgénérales
d'algèbre universelle,telles quelasignature,l'homomorphisme oul'isomorphisme,
ave lesnotionspropresdelathéorie du- al ulsimplementtypé,telles que
sub-stitution, polymorphisme ourelation logique. Le but de e hapitre est de fournir
unmétalangageformel pouraborderlessujets des hapitressuivants,notamment
lathéoriedesdomaines( hapitre2),l'algèbredesarbres,desarbores en eset des
termes( hapitres3),l'algèbresyntaxiqued'unjeu( hapitre4),etl'homomorphisme
sémantiquedesjeux ( hapitre5).
Chapitre2. Ledeuxième hapitrepar ourtlathéoriedesordrespartiels,ave
leurspropriétésde omplétudeetleurshomomorphismesetisomorphismes,
fournis-santlesupportformelutile,d'unepart,àladénitiondesrelationsd'ordre,élagage
et préxe,surlesarbres( hapitre3), et,d'autrepart,àladénition desdomaines
d'évaluationd'unjeu( hapitre5).
Chapitre3. Letroisième hapitreintroduitl'algèbredesarbores en eset elle
des arbres, ave lapanoplie d'opérationsné essaires à leurmanipulation, et
l'en-semble desrelationsqui en fontdes ordrespartiels.Les propriétésde omplétude
de esordrespartielsserontabordéesetétudiéesendétail.Ces algèbresfourniront
les outilsné essaires àladénition desnotionsdu hapitresuivant, onsa ré aux
jeux ombinatoires,tellesquelanotiond'arbrede jeu ou elledepréxede jeu.
Chapitre 4. Le but du quatrième hapitre est de développer l'aspe t
syn-taxique des jeux ombinatoires à deux joueurs. On y trouve notamment la
dé-nition formelle d'arène de jeu, d'arbres de jeu, de stratégie et ontre-stratégie, et
Chapitre 5. Dans le inquième hapitre, nous dé ouvrons le sens des jeux
dénis par une arène, 'est-à-dire par une syntaxe de jeu. La notion ru iale de
stru tured'évaluation estintroduite, et unhomomorphisme est tra éde l'algèbre
syntaxique(dénie dansle hapitrepré édent)versl'algèbresémantiqued'unjeu.
Cela onduitàdeuxtypesdesémantiquepourlespositions d'unjeu.Lapremière
sémantique, appelée monosémique, ae te une seule valeur à haque position du
jeu, grâ e à une fon tion heuristique ayant des propriétés adéquatesvis-à-vis du
jeu. La deuxième, appelée bisémique, ae te deux valeurs, 'est-à-dire un
inter-valle,àlamêmepositiondujeu,grâ e, ettefois i,àdeux fon tionsheuristiques
duales,l'unereprésentantuneappro hed'évaluationpessimiste etl'autre
représen-tantune appro he, au ontraire,optimiste. Nousverrons aussique, dans ertains
as, lesdeux appro hes onvergentversune seule valeur sémantique qui ne tient
plus à l'attitude,pessimiste ouoptimiste, adoptée, mais qui représente une sorte
desémantiqueabsolue.
Pour terminer e hapitre, nous développerons la te hnique d'évaluation des
stratégies (dujoueur)etdes ontre-stratégies (del'opposant),quideviennent,dans
notre adre théorique, des objets innis, tout omme les arbres des positions du
jeu.
Chapitre 6. Lesixième hapitreexplore,d'unepart,les apa itésdufameux
algorithme Alpha-Bêta, onçu pour lesstru turesd'évaluationtraditionnelles (les
entiers naturels), de s'adapter à d'autresstru tures d'évaluation omme elle des
jeux de laprogrammationlogique. Et,d'autrepart,il explorele ara tère
séman-tique,pessimisteouoptimiste,desréponsesfourniespar etalgorithme.
L'algorithme Alpha-Bêta est avant tout généralisé, faisant abstra tion de la
stru ture d'évaluation utilisée, et ensuite reformulé dans le style plus formel des
sémantiques opérationnelles à grands pas (big steps). Un théorème de orre tion
pré ise, par la suite, la qualité des réponses fournies. Par rapport aux travaux
présentés dans [DiCosmo & Loddo,2000℄, e résultat élargit le spe tre
d'ap-pli ationauxjeuxoùlesjoueursn'alternentpasfor ément,autrementdit,lesjeux
oùlesjoueursnelaissentpasautomatiquement,après haque oup,lamainàleur
adversaire.Celareètel'intentiond'appliquerl'algorithmenonseulementauxjeux
de la programmationlogique (pure ou ave ontraintes), mais aussi au jeu de la
programmationlogiqueave négation,qui, ependant,neserapasétudiédans ette
thèse.
Aussi, nous avons introduit un nouvel algorithme, que nous avons nommé
Alpha-Bêta-Gamma-Delta, et un se ond théorème de orre tion an d'optimiser
le al ul desjeux évaluésdansunestru turenon distributive,oùAlpha-Bêtan'est
plus orre t.Lenom hoisiévoqueune ertaineressemblan edesprin ipesde
sim-pli ations utilisés par Alpha-Bêta, mais il est important de spé ier qu'il s'agit
d'un algorithmediérent,plusprudentdans l'élagagedesarbres dejeu,qui évite
ainsi lespiègesd'unestru tured'évaluation nondistributive.Ilpourraitserendre
utile,maisnousnel'étudieronspasdans ettethèse,pourl'interprétationabstraite
desprogrammeslogiques,oùl'abstra tiona élèreet for elandu al ul,auprix
et peuvent perdre,notamment, lapropriété distributive né essaire àl'appli ation
delaméthodeAlpha-Bêta.
Chapitre 8. Dans e hapitresetrouveunrésumédelathéoriedeslangages
dupremierordreàlabaseduparadigmedelaprogrammationlogiqueave ousans
ontraintes.Laprésentationde ettethéorietirepartidesnotionsintroduitesdans
lepremier hapitre, ommelanotiond'algèbretypéeetd'homomorphisme,etdans
letroisième hapitre, ommelanotiondeterme,desubstitutionetd'environnement.
Chapitre 9. Ledernier hapitreest onsa réàlaprogrammationlogique.Les
dénitions,lesrésultatsdémontrésetlesméthodesénon éesau oursdes hapitres
pré édentssontmisauservi ed'unedénitionformelledelaprogrammationlogique
entermesdejeux ombinatoiresàdeuxjoueurs.Nousprouvonsl'équivalen eentre
lasémantiquetraditionnelle(desréponses al ulées)etlasémantiquedesjeux,puis
nousprouvonségalementquelastru tured'évaluationutiliséevérieleshypothèses
d'appli ation du théorèmede orre tion Alpha-Bêta du hapitre pré édent. Nous
pouvonsrésumer esdeuxrésultatsetleur onséquen edire teparunsyllogisme:
la sémantiqued'unbutdansunprogrammelogique oïn ideave
la valeur sémantiqued'unjeu àdeuxjoueurs
et
la méthode Alpha-Bêta permet,par des optimisations orre tes,
de al uler la valeur d'unjeuàdeuxjoueurs
don
la méthode Alpha-Bêta permet de résoudre unbut dansun
pro-gramme logique, en al ulant, par des simpli ations orre tes,
l'ensemble desréponsesqui fontdu butune onséquen e logique
duprogramme
Nousverronsquelquesexemplesd'exé utiondel'algorithmeetnousprospe terons
son utilisation ommemoteur derésolution en programmationlogique. À l'instar
delare her hed'unestratégiegagnanteauxé he s,lemoteurderésolution
Alpha-Bêta apportera son intelligen e au se ours des performan es. À la manière des
fameux algorithmesbran h&bound delare her heopérationnelle,ilseralui-même
apabled'élaguerlespar oursinintéressantsdansl'arbredesdénouementspossibles
Algèbres
1. Relations, fon tions etpropriétés
2. Algèbrestypées
3. Morphismes
4. Restri tions etextensions
5. Interprétation atégorique
Dans e hapitre, au une nouvelle notion est introduite. Il s'agit ependant
d'un travail de synthèse de théories diérentes, telles que la théorie de l'algèbre
universelleet elledu- al ulsimplementtypé.Nousverrons ommelanotion
fon-damentaled'homomorphisme,présenteàplusieursreprisesetsousplusieursformes
dans lapremière théorie,peutêtre généralisée auxopérationsd'un type
apparte-nant àunlangagedes typesévolué. Nousprouveronslaspé i ité desdénitions
habituelles par rapport à la nouvelle et plus générale notion d'homomorphisme.
Ce métalangage algébrique nous permettra d'expliquer de façon avantageuse les
algèbresquenousren ontreronsau oursdes hapitressuivants.
D'une façon informelle, les algèbres sont des stru tures omposées de deux
genresd'objetmathématique:desensemblesdebase,lesdomaines,etdes
onstru -tions, les opérations, dénies sur es domaines, ommepar exemple des relations
oudesfon tions.Sienthéoriedesensembles,oùtoutobjetestunensemble,la
dis-tin tion entre domaineset opérations (surlesdomaines)n'est pas ardinale, ave
les algèbresladiéren e est expli ite. D'une part,la notiondedomaine est elle,
naturelle, d'ensemble. D'autre part, à toute opération, qui est elle-même un
en-semble,nous ae teronsuntype (ouunesignature)représentantune onstru tion
mathématique :ledomainerésultantde ette onstru tion, ontiendral'opération.
L'ae tationd'untypeàuneopérationtraduittoujourslavolontéd'en adrer
1.1. Relations, fon tions etpropriétés
1.1.1. Ensemblesde base. Dans ette thèse, nousutiliseronslesensembles
de base suivants : un ensemble onstitué par unseul élément fg, noté 1, un
en-semble onstitué pardeux élémentsf0;1g(les booléens)noté2,lesentiersnaturels
N, lesentiersnaturelsnonnulsN
+
,etlesentiersnaturelsave lesymboledénotant
l'innimentgrandN
1
,N[f+1g.
Àpartirdesensemblesdebase,nousutiliserons,pourgénérerdenouveaux
en-sembles,les onstru tionsmathématiqueshabituellestellesqueleproduit artésien,
l'uniondisjointe,lespartiesd'unensemble,lesrelations,lesfon tions,lesfon tions
partielles etlessuitesnies ouinnies.
1.1.2. Produits artésiens,sommes. ÉtantdonnédeuxensemblesAetB,
nousnoteronsparA Bleurproduit artésien.Sileurinterse tionestvideA \ B=;,
nous noterons AB leurunion disjointe (ousomme) et nous dirons que Aet B
sontles omposantesdelasomme.
1.1.3. Relations unaires. Étant donné unensembleD,une partie < de D
(ou relation unaire < sur D), notée < : }
D
ou < : }(D), est un sous-ensemble
quel onque deD. Lapartie est nie, notée < : }
F
(D), si elle est onstituéed'un
nombrenid'éléments.
1.1.4. Relationsbinaires. ÉtantdonnéunensembleD,le arrédeDest le
produit artésienDD.ÉtantdonnédeuxensemblesAetB,unerelation binaire
< sur Aet B est un sous-ensemble arbitraire du produit artésien AB, don
notée <:}
AB
;quand A=B,D,nous disonsque< est une relation (binaire)
sur D. La notation inxe x<y signie (x;y) 2 <. Le domaine de < est le
sous-ensembledeA:dom(<)=fa2Aj 9b:a<bg,le odomaineestlesous-ensemblede
B: od(<)=fb2Bj 9a : a<bg. Larestri tion de <à unsous-domaine A
0 A est larelation < j A 0 B ,f(a;b) 2< ja2 A 0 g = <\(A 0 B).La restri tion de < à unsous- odomaine B 0 Best la relation < j AB 0 , f(a;b)2 <jb 2B 0 g= <\(AB 0
). L'image de < surunsous-domaine A
0 Aest le odomainede la restri tionde<ausous-domaineA 0 :Im < A 0 ,fb2Bj(a;b)2< j A 0 B g.Dansle
as oùA=B,D,la restri tion de < àunsous-domaine D
0 D est larelation < j D 0 ,f(a;b)2<ja2D 0 ;b2D 0 g=<\(D 0 D 0
).Étantdonnédeuxrelations
binaires< 1 :} AB et< 2 :} BC ,la omposition< 2 Æ< 1 ,f(a; )2ACj9b2 B:(a;b)2< 1 ^(b; )2< 2
gestunerelationbinaire<
2 Æ< 1 :} AC .Lapuissan e nd'unerelation<:} DD
,oùn2N, n1,estlarelation<
1 ,<sin=1,oula relation < n ,<Æ< n-1
si n>1.La lturetransitivede< estl'unionde toutes
sespuissan es:< , S n1 < n .
1.1.5. Fon tions et fon tions partielles. Unefon tionpartiellede Avers
B, est une relation binaire < sur A et B, notée < : A Æ!B, telle que (a;b) 2
< ^(a; )2< ) b= .Pourlesfon tionspartiellesnousutiliseronslanotation
9<x pour dire 9y 2 B:(x;y) 2 <. Puisque l'existen e implique l'uni ité, nous
utiliseronslanotation9<x , ypourindiquerl'existen edel'élémentenrelation
ave x et, en même temps, le baptisery. En revan he, quand l'existen e ne sera
pasassurée,nousnoteronsy ~ = <(x)poursignierégale s'ilexiste,autrementdit,si
9<xalors9<x , y.Unefon tionpartielle<:A Æ!Bdevientunefon tionàplein
titre, on dit aussitotale, notée < : A !B, quand dom(<) = A.La omposition
de deux fon tions partielles f : A Æ!Bet g : B Æ!C est, elle aussi, une fon tion
partielle gÆf : A Æ!C; la omposition de deux fon tions totales est, elle aussi,
totale gÆf : A ! C. La puissan e f
n
d'une fon tion partielle f : A Æ!A (resp.
totale f : A! A) est, elleaussi, une fon tionpartielle f
n
: A Æ!A(resp. totale
f n
: A ! A). Étant donné un ensemble D, toute fon tion < : 1 ! D est une
onstante,que nousnoterons aussi< :! D;l'é riture <() =x rempla e souvent
l'expression<()=x.Delamêmemanière,toutefon tionpartielle<:1 Æ!Dest
une onstante partielle, que nous noteronsaussi < : Æ!D,et l'é riture <()= x
pourrarempla erl'expression(;x)2<.
1.1.6. Prédi ats, propriétés. L'identité sur X, dénie parf(x;x)jx 2 Xg,
estàlafoisunefon tiontotaleid
X
:X!Xetpartielleid
X
:A Æ!Apourtout
sur-ensembleAX.Toutefon tiondetypep:D!2estunprédi atquenousnoterons
aussip:2
D
. Toute fon tionpartielledetypep:D Æ!1 est unsemi-prédi at
1
(ou
prédi atpartiel),notéaussip:1
D
.Nousutiliseronsletermegénériquepropriété(sur
D)pourdénoteraussibienunepartie(relationunaire)p:}
D
,qu'unprédi atp:2
D
ou qu'unsemi-prédi at p:1
D
. Lesdeuxderniersreprésentanteux aussi,bien que
impli itement,unepartie (respe tivementlapartiefx2Djp(x)=1g oulapartie
dom(p)), lanotationp^ sera utiliséepoursignierlapartie on ernée.En d'autres
termes,tout prédi atp:2
D
ousemi-prédi at p:1
D
pourraassumer,àl'o asion,
le statut d'une partie p^ : }
D
. Dans l'esprit d'unier la notation on ernant les
propriétés, l'é riture p(x) serautilisée pourexprimerla onditiond'appartenan e
x2^p, 'est-à-direla onditionx2p,lorsquep:}
D
,oubienla onditionp(x)=1,
lorsque p : 2
D
, ou bien la ondition (x;) 2 p, lorsque p : 1
D
. Étant donné une
propriété p:} A 2 A 1 A
, oùA6=1 et A6=2,et une fon tiontotalef :A!B,
ou partielle f : A Æ!B, la omposition de f et p, notée f
p
, est la restri tionde f
ausous-domainep^Adénotéparlapropriété: f
p
,f
j^
p
=f(a;b)2fjp(a)g.La
ompositiond'unefon tionfave unepropriétépesttoujoursunefon tionpartielle
f
p
:A Æ!B.Les onditionsA6=1et A6=2 évitentlapossibilitéquelafon tionf
soit ompatibleave lapropriétéppourune ompositionfon tionnelle lassique(en
eet,sip:A Æ!1etledomainedefétaitA=1,oubiensip:A!2etledomaine
de f était A= 2, alorsla omposition lassique fÆp : A Æ!B serait réalisable).
Ainsi, à l'abride toute ambiguïtésur l'opérationdénotée, le nom omposition se
justie enremarquantquelamême onstru tionpeutêtre obtenueen omposant
1
DanslaprogrammationLisp(etdesdiale tes ommeS heme),unsemi-prédi atestunefon tion
quirenvoiefaux,ouuneautrevaleurquel onque,diérentedefaux,quiserainterprétée omme
vraie.I il'utilisationdutermen'estpaslamêmemaiselleestsimilaire:lesemi-prédi atindiquera
(ausensdela omposition fon tionnelle)lafon tionfave l'identité surlesignié ensemblistedelapropriété:f p =fÆid ^ p .
1.1.7. Relations n-aires. Les notions parti ulières de relations unaires et
binairessontgénéraliséesau asn-aire:toutsous-ensembled'unproduit artésien
<:}
A
1 A
n
,oun1estappelérelation(n-aire)surA
1 A n .Si8i:A i = D nous é rivons < : } D n
. Étant donné une relation binaire < : }
DD
sur un
domaineD,l'extensionproduitàn oordonnées,notée<
n :} D n D n ,estlarelation dénie par(x 1 ;:::;x n )< n (y 1 ;:::;y n ) 4 () 8i=1:::n:x i <y i .
1.1.8. Suites. Les suites niesou inniessontdes exemplesde relations
bi-nairessur N
+
et A.Une suite(nie ou innie) dansA, estune fon tionpartielle
s : N + ! Æ A, notée s : A ! ou s : A 1
, telle que 9s(i+1) ) 9s(i) pour tout
i2N
+
.Lasuitevide, lorsquedom(s)=;,estnotée".Lanotationx
i
est toujours
synonymedex(i),etl'expressionusuelles=x
1 ::x n ,signies=f(1;x 1 );::;(n;x n )g.
S'ilexisteunentierjtelque9s(j)ets(j+1)alorslasuiteestnie,notées:A
ou
s : A
<!
, et sa longueur est jsj , j. La longueur de la suite vide est nulle par
dénition : j"j = 0. La on aténation de deux suites nies x;y : A
, notée x:y,
est la suite telle que (x:y)(i) = x(i) si i jxj, et sinon (x:y)(i) ~ = y(i-jxj). Une
suite innie dansA, notée s: A
!
, est une fon tion (totale)s : N
+
!A des
en-tiers naturelsnonnulsN
+
versl'ensembleA.Ainsi,noussavonspardénition que
A ! =A [A !
.Étantdonnéunerelationbinaire<:}
AA
surA,l'extension
pro-duit (aux suites nies)delarelation<,notée<
:} A A
,est larelationdénie
parx< y 4 () jxj=jyj=n ^ 8i=1:::n:x i <y i
.L'in lusionensembliste surles
suites,notée
,estl'in lusiondessuites onsidérées ommedessimplesensembles
nonordonnés :s s 0 4 () fx2Ajx=s i ;i2N + gfy2Ajy=s 0 j ;j2N + g.
1.1.9. Constru tions polymorphes. Soit
1
et
2
des lasses, i.e.des
en-semblesd'ensembles,et soitt:
1
!
2
unefon tionentrelesdeux lasses.Siune
fon tion p: 1 ! S Y2 2
Y fait orrespondreà tout ensemble 2
1
une valeur
p(), notéep
,appartenantàl'ensemble t(),notét
: 82 1 : p 2t
alorsnousdisonsquepestune onstru tion polymorphe, notée:
p : 8: 1 :t Le type8: 1 :t
permettrade situerles ouples(;p
) dela relationp d'une
façonpluspré iseparrapport autype
1 !
S
Y2
2
Y :si e derniernousindique
que (;p )2 1 S Y2 2
Y,le premiernousindique, enrevan he,que(;p
)2 1 Yoù Y=t().
1.1.9.1. Testd'égalité. Unexemplede onstru tionpolymorpheestletest
d'éga-litéoufon tion onditionnelle.Étantdonnéune lasse
t
pourlestestsetune lasse
v
pour lesvaleurs,lafon tion ond
X;Y
(x;y;z):X!Y,oùx2Xet y;z2Y,est
dénie pourtoutensembleX2
t et toutensembleY2 v delafaçonsuivante: ond X;Y (x;y;z)(v), y si v=x z si v6=x
Nouspouvonss hématiserla onstru tionparl'é riture:
ond : 8:
t
:8:
v
:()!!
Le test d'inégalité, représenté parle même s héma,est déni,pour tout X 2
t
et tout Y 2
v
, par l'équation ond
?
X;Y
(x;y;z)(v) , ond
X;Y
(x;z;y)(v). Dans le
as parti ulier où l'ensemble pour les tests et elui pour les valeurs oïn ident
X=Y2,lesdeux onstru tionspeuventêtres hématiséesdelafaçonsuivante;
ond; ond
?
: 8::()!!.
1.1.9.2. Extension d'une relation auxparties. Étantdonné unensemble D,la
puissan e}
n
(D)de l'opérationde passageaux partiesest dénie par}
0 (D),D et } n+1 (D) ,}(} n
(D)). Étant donné une relation : }
DD
sur undomaine D,
l'extension auxpuissan es}
n
(D)estla onstru tionpolymorphe:
(:) : 8:f} n (D)jn2Ng:}
dénieindu tivementpar:
Æ ( 0 )=() X n+1 Y 4 () 8x2X:8y2Y: x n y
Pourn=1nousavonsl'extensiondelapropriétéauxpartiesdeD;pourn=2
nousavonsl'extensiondelapropriétéaux lasses(departies)deD.
1.1.10. Syntaxes. Une syntaxe ou grammaire (formelle) est unquadruplet
G=(N;T;s;::=)oùTetNsontdesensemblesdisjointsd'élémentsappeléssymboles
respe tivementterminauxetnonterminaux,s2N,et(::=):2
V
V
,oùV,NT,
est une relation (en notation inxe) telle que (::=) f(x;y) 2 V
V
j9i 2
N:x(i) 2Ng. La lture par ontextede::= est larelation !
G ,f(x 1 ;x 2 )2V V jx 1 = y 1 :u:z 1 ;x 2 = y 2 :v:z 2
;u::= vg. Lelangage généré parla syntaxe Gest
l'ensemble L(G) ,fy 2 T js! G ygoù la relation ! G
(en notation, elle aussi,
inxe) estla lturetransitivede!
G .
1.1.11. Relations bien fondées. Tous lesprin ipes d'indu tion
mathéma-tique segénéralisentàun seulprin ipe, eluide l'indu tionbien fondée
2
. Une
re-lation binaire < sur un domaine D est bien fondée s'il n'existe pas de haînes
des endantesinnies,i.e.:
69(d i ) i2N D:(8i2N: d i+1 <d i ) 2
Unerelationbinairebienfondéedoitêtrefor émentanti-réexive,i.e.<\f(x;x)jx2
Dg = ;. Étant donné une relation binaire sur un domaine D, la omposante
stri te(ouanti-réexive)delarelationestlesous-ensemble<,f(x;y)2 jx6=yg.
Le produit à n omposantes (x 1 ;:::;x n ) < (y 1 ;:::;y n ) 4 () 8i = 1:::n:x i < y i
d'unerelationbienfondée<est,luiaussi,unerelationbienfondée(surledomaine
D n
).
Le prin ipe d'indu tion bien fondé s'appuie sur une relation bien fondée <
dénie sur un domaine D : pour démontrer que les éléments d'un sous-ensemble
AD vérienttousunepropriétéP(i.e.AP)ilsut deprouverquesupposer
la propriété vraie pour tout élément b 2 A tel que b < a, où a 2 A, oblige la
propriétéàêtrevraiepoura:
8a2A: ( 8b2A:(b<a ) P(b)) ) P(a))
8a2A:P(a)
1.2. Algèbrestypées
Le mot algèbre, qui entraîne lesnotions orréléesd'homomorphisme et
d'iso-morphisme, seretrouveàplusieursreprises enmathématique.L'ination du mot,
pour des signiés qui sontsouvent très pro hesmais diérents,est telle que
er-tainsauteurspréfèrentd'autrenoms, ommeparexemplemagmaoustru ture,pour
évitertoutmalentenduoupourmarquerladiéren e.Demultiplesdénitions
pro-viennent,d'unepart,delathéoriemathématiquedesalgèbresuniverselles
3
,d'autre
part,delathéorieplusorientéeversl'informatique,desalgèbresdetermes
4
ou
-algèbres.Dans lesdeux adresthéoriques, lanotiondetype apparaîtd'uneutilité
fondamentale,àsavoir elledepré iser,d'unefaçonplusoumoinsne,lepérimètre
d'uneopération, 'est-à-diresondomained'appartenan e.L'informationvéhi ulée
par le type indique, par exemple, qu'il s'agit d'un entier naturel, ou bien d'une
propriétédesentiers,oud'unefon tionet .
Cependant, l'étendue dulangage des typesest toujours limitéeaux fon tions
A 1 :::A n !A n+1
,aux onstantes!A,etauxprédi atsA
1 :::A n !2,où lesdomainesA i
impliquéssontdesensemblesdebase(lessortes)etnonpasdes
en-semblesissus,eux-mêmes,d'uneautre onstru tionmathématique(parexempledes
fon tions).Ladénitiondestypesd'opérationesttoujoursa ompagnéed'uneautre
notionfondamentale, elled'homomorphismeetd'isomorphismeentrealgèbres.
In-tuitivement, unhomomorphisme est une interprétation des valeursd'une algèbre
dansuneautrequi onservelesopérationsdedépart:tout equiestdansune
opé-ration au départ le demeure àl'arrivée, dans l'opération orrespondante et après
latradu tiondesvaleurs.Cesarguments,trèsgénéraux,visantla onservationdes
propriétés, onstituent un métalangagemathématique qui permet d'aborder
plu-sieurs sujets de nature apparemmentdiérente. En eet, lathéorie desdomaines
3
Voir,parexemple,ladénitiondealgebra dans[Burris&Sankap.,1981℄, ellede
heteroge-neousalgebra dans [Lipson,1981℄, elle dealgebrai systems dans [Mal' ev,1973℄, elle de
formation dans[Geri ke,1966℄,et elledemany-sorted algebra dans[Plotkin,1993℄.
4
et lathéorie de l'interprétation abstraite deprogrammes peuventêtre appro hées
d'unetelle façon.
La limitation prin ipale des algèbres universelles, l'impossibilité d'imbriquer
les types les uns dans les autres, est un in onvénient qui peut être dépassé en
s'inspirant des relations logiques, une notion qui revient à la théorie du - al ul
simplementtypé
5
. Ellenouspermettrad'étendrelesnotionsd'homomorphismeet
d'isomorphismeauxopérationsd'untypeappartenantàunlangageétendu,indu tif
et déniformellementparunesyntaxe.
Pourenri hirultérieurementlemétalangagedestypes,nousajouterons
l'expres-siondénotantles onstru tionspolymorphes.Danslaproblématique on ernantles
variables(abstra tion, substitution, et ),nous serons guidés, une foisde plus, par
lathéoriedu- al ulsimplementtypé.
1.2.1. Types. Les types sont les orrespondants syntaxiques des domaines
et despropriétés mathématiques. Étantdonné unensemble B f1;2;N;N
+
;N
1 g
de noms appelés types de base, un ensemble S = fD
i g
i2I
disjoint de B, de noms
appelés sortes, et un ensemble de variables V disjoint de B et de S, l'ensemble
des types ouverts sur B et S, noté
e
T(B;S), est l'ensemble déni par la syntaxe
(f;;#;;;;`g;B[S[V[C[f;;};}
F
;!; Æ!;;8;:;base;sort;{;,;};:;if; q;
then;elseg;;::=),où::=estlarelationsuivante :
e T(B;S)3 ::= 8:: j 8::if q#then 1 else 2 j ::= #jjj} j} F j!j Æ!j j 1 j # ::= j ::= basejsortj {`} ` ::= #j`,`
Lestypesnonpolymorphes(oumonomorphes)représentent,dansl'ordre,les
éléments detype prédéni 2B, les éléments des ensembles baptisés 2 S, les
élémentsd'un produit artésienou d'unesomme de typesadmissibles,lesparties
(nies ou innies) d'un type admissible,les fon tions (totales ou partielles) d'un
type admissible versun typeadmissible,les suites(nies ouarbitraires)de types
admissibles,et lesvariablesde type2V.Les types(généraux oupolymorphes)
peuventêtresoitdesabstra tionssimples=8::
0
,soitdesabstra tionssuivies
d'un test d'égalité = 8::if q#then
1
else
2
, soit des typesnon polymorphes
=. Lesymbolesort seralereprésentantsyntaxiquede la lasseStoute entière,
et
base
lereprésentantde la lasse destypesdebase B.Nous pourrons é rire, par
exemple,destypespolymorphesdugenre8:sort:
ou8:base:!.
Noussupposeronstoujoursquelestypesutiliséssoientdestermes los,
autre-ment dit, que toutevariable apparaissantdans une expression de type soit liée
par uneabstra tion orrespondante8. D'unefaçonplus formelle,l'ensemble des
types ( los), notéT(B;S), estle sous-ensemblede typesouverts2
e
T(B;S)dont
l'ensembledesvariables libres,dénidanslatable1,estvide:
T(B;S) , f2
e
T(B;S)jFV()=;g
5
Tab. 1. Variableslibres FV(), 8 > > > > > > > > > > < > > > > > > > > > > : ; si =2B ou =2S FV( 1 )[FV( 2 ) si = 1 2 ou = 1 2 FV( 1 )[FV( 2 ) si = 1 ! 2 ou = 1 ! Æ 2 FV( 0 ) si =} 0 ou =} 0 F FV( 0 ) si =( 0 ) ou=( 0 ) 1 fg si =2V FV()nfg si =8:: FV( 1 )[FV( 2 )nfg si =8::if q#then 1 else 2
Les types de base étant souvent impli ites, nous pourrons noter l'ensemble des
typesparl'é ritureT(S).Noussupposeronsaussiquel'ensembledestypesdebase
ontienne,toutaumoins,lesreprésentantsdesdomainesdebase1,2,N; N
+
etN
1
( f. se tion1.1.1).
La ontrepartiesémantiqued'untypeesttoujours,bienentendu,undomaine,
etl'é riturex:prendtoujourslesensd'appartenan edexaudomainereprésenté.
Si onpermetde onfondre,sanspourautantprovoquerd'ambiguïté,parl'é riture
, à la fois le type et le domaine représenté, nous pouvons dire que x : est
toujourssynonymedex2.Danslemêmeesprit,nouspourronsnoterparlalettre
à la fois un type prédéni et le domaine orrespondant impli itement asso ié,
et noter que
1
2
pour signier l'in lusion des domaines représentés. Nous
pouvonsreprésenterlesbije tionsexistantesentre onstru tionsmathématiquesen
dé rétant,surlelangageT(S),lesloisasso iatives:(
1 2 ) 3 = 1 ( 2 3 ), 1 2 3 , ( 1 2 ) 3 = 1 ( 2 3 ) , 1 2 3 . Nous pourrons
parfois utiliser les abréviations usuelles hez les domaines : (
! ) , (N + ! ), (!),(1!) et(2
),(!2).Parmilesabréviations,nousnousautoriserons
àfa toriserlestypesdanslesbran hesdesexpressionsdetypepolymorphemunie
d'untestd'égalité.Parexemple,nouspourronsé rire8::!if q#then
1 else 2 aulieude8::if q#then! 1 else! 2 .
1.2.1.1. Types élémentaires etdu premier ordre. Parmilestypes, nous
appel-leronsélémentairetouttypeappartenantausous-langageT
E (S)T(S)dénipar la syntaxe T E (S) 3 ::= jj} j} F jj où 2 B et 2 S. D'autre
part,lelangagedestypesdupremierordreT
F
(S)T(S)estdéniparlasyntaxe
T F (S) 3 ::= " j " ! j " ! Æ où " 2 T E
(S). Les types du premier ordre
représententdon lestypesélémentairesetlesfon tions,partiellesoutotales,
n'a - eptantquedesargumentsdetypeélémentaire.Enrevan he,lesfon tions,totales
ou partielles, d'un typen'étant pasdupremier ordre serontdes fon tionsd'ordre
supérieur.
1.2.1.2. Substitutiondesvariables. Nousallonsadapter,aulangagedestypes,
l'opération de substitution des variables qui est lemé anisme fondamental du
- al ul.Ils'agitd'uneméta-opérationdesupportauxtraitementsdes onstru tions
polymorphes 6
. Lasubstitutiond'unevariable ave unevaleura dansuntype,
noté [
a
=
℄,estdéniedanslatable2.
6
Tab.2. Substitutiondesvariables [ a = ℄, 8 > > > > > > > > > > > > > > > > > > > > > > > > > > > < > > > > > > > > > > > > > > > > > > > > > > > > > > > : si =2B si =2S 1 [ a = ℄ 2 [ a = ℄ si = 1 2 1 [ a = ℄ 2 [ a = ℄ si = 1 2 } 0 [ a =℄ si =} 0 } 0 [ a =℄ F si =} 0 F 1 [ a = ℄! 2 [ a = ℄ si = 1 ! 2 1 [ a = ℄ Æ! 2 [ a = ℄ si = 1 ! Æ 2 ( 0 [ a = ℄) si =( 0 ) ( 0 [ a = ℄) 1 si =( 0 ) 1 a si =2V si =2V ; 6= si =8:: 0 si =8::if q#then 1 else 2 8:: 0 [ a = ℄ si =8:: 0 ; 6= 8::if q#then 1 [ a = ℄else 2 [ a = ℄ si =8:: if q# then 1 else 2 ; 6=
1.2.2. Signatures. Unesignaturealgébrique (ousignature tout ourt)estun
quadruplet =(B;S;F;T)oùlapremière omposante Best unensemble detypes
de base,ladeuxième S=fD
i g
i2I
estunensemble desortes, latroisième F est un
ensemblenon videdenomsd'opérationsF =ff
j g
j2J
, disjointdeS, etlaquatrième
est une appli ation T :F !T(B;S) qui asso ie àtout nom d'opération f 2F, le
type del'opération.
Notation1.2.1.Parlasuite,nouspourronssous-entendrel'ensembledestypes
debasesB(parexemplelorsque edernierestvide)etdénoterlasignatureparun
triplé = (S;F;T).En outre, lorsque S ou F seront des ensembles nis, on
s'au-torisera, ommeenlittérature,desdénitions designaturesdugenre =(S;fo
1 : 1 ;:::;o n : n
g)poursignier,bienentendu,=(S;fo
1 ;::;o n g;f(o 1 ; 1 );::;(o n ; n )g).
Nous pourrons aussi pré iser le type de plusieurs opérations à la fois, séparées
par des virgules : = (S;fo
i1 ;::;o ik : 1 ;::;o j1 ;::;o jh : n g) et éventuellement
séparer les sortes des opérations par un point-virgule en évitant les a olades :
= (D 1 ;::;D n ;o i 1 ;::;o i k : 1 ;::;o j 1 ;::;o j h : m
). Lorsque la diéren e entre
sortesetopérationsseraévidente,nouspourronsaussiéviterlepoint-virguleet/ou
letype, ommepourlesordrespartiels( f.se tion2.2)dontlasignatureestleplus
souventnotée(D;)aulieude(fDg;f:}
DD
g).
1.2.3. Algèbres. Unealgèbre estun oupleA=((:)
A
;T)où:
(1) le signiédesnoms(:)
A
est unesommedefon tionsbije tives
(:) A :B!B A S!S A F!F A où B = fB k g k2K f1;2;N;N + ;N 1
g est l'ensemble des types de base,
B A = fB A k g k2K
est la olle tion des domaines de base, S = fD
i g i2I est unensemblede sortes,S A =fD A i g i2I
estune olle tiondedomaines(les
signiés des sortes); F = ff
j g
j2J
est un ensemble de noms d'opérations,
disjointdeS, etF A =ff A g j2J
Tab.3. Signié ensemblistedestypeset des lasses A , 8 > > > > > > > > > > > > > > > > > > > > < > > > > > > > > > > > > > > > > > > > > : A si =2B A si =2S A 1 A 2 si = 1 2 A 1 A 2 si = 1 2 } 0A si =} 0 } 0A F si =} 0 F A 1 ! A 2 si = 1 ! 2 A 1 ! Æ A 2 si = 1 ! Æ 2 ( A ) si =( 0 ) ( A ) 1 si =( 0 ) 1 si =2V 8: A : 0A si =8:: 0 8: A : ond(# A ; A 1 ; A 2 )() si =8::if q#then 1 else 2 A , 8 < : fx A jx2Bg si =base fs A js2Sg si =sort fx A 1 ;::;x A n g si ={ x 1 ,::,x n }
des noms d'opération). Lafon tion (:)
A
est étendue automatiquementà
T(B;S),l'ensembledetouslestypessur lesnomsBet S, ommeindiqué
danslaTable3.
(2) le type des opérations T est une fon tion T :F !T(B;S) qui ae te un
type orre t àtouslesnomsd'opérationdel'algèbre, 'est-à-direuntype
telque: 8f2F: T(f)= ) f A 2 A . Le quadruplet A
= (B;S;F;T) est la signature de l'algèbre A. La famille des
algèbressurunesignatureseranotéeAlg ().
Notation1.2.2. Commesuggéréparlasyntaxedestypes,lesigniédetoute
lasse syntaxique estune lasse de domaines (debaseousortes)
A
.On
s'auto-riseraainsil'é riturex2poursignierx
A
2
A
.
Nous remarquerons quele signié ensembliste d'un type dela forme 8::
est le domaine des onstru tions polymorphes ( f. se tion 1.1.9), 'est-à-dire le
domaine desappli ations ff: 8:
A
:
A
gqui, étant donnéunensemble xdans la
lasse de domaines (de base ou sortes)
A
, renvoientun élément appartenant au
domaine [ x = ℄ A
. L'ordre extensionnel entre fon tions,qui sera déni et détaillé
dansle hapitresuivant( f.se tion2.1.4),estunexempletypiquede onstru tion
polymorphe.
La lasse desdomainesimpliqués parl'algèbreestl'imagedelafon tion
d'in-terprétation destypessurtouslestypesadmissiblesdelasignature:
T(B;S) A ,f A j2T(B;S)g où A =(B;S;F;T)
Lestypesdebaseetleursigniés,i.e.lesdomainesdebase,sontsouventimpli ites
dansladénitiond'unealgèbre.Ce iest le as,enparti ulier,lorsque lestypesde
base oïn identexa tementave l'ensemblef1;2;N;N
+
;N
1 g.
1.2.3.1. Stru tures. Nous appellerons stru ture toute algèbre onstituée d'un
seul domaine D et d'un nombre arbitraire d'opérations de type, lui aussi,
arbi-traire.Lorsqueiln'y auraqu'unnombrenid'opérations,pourlasignatured'une
stru ture,nouspourronsutiliserlanotation(D;O
1
;:::;O
n
)quioublielesa olades.
Ils'agitd'un asexemplaireoùladiéren eentresortesetopérationsestévidente:
puisqu'il n'yaqu'unesorte,elleo uperalapremièrepla e,et lesautressymboles
serontfor émentlesopérations.
1.3. Morphismes
Toutenétantunenotionplusgénéralequel'homologuedel'algèbreuniverselle,
leshomomorphismesmaintiendrontleurprérogativehabituelleliéeàla onservation
des propriétés. Nous verrons aussi omment retrouver leur interprétation
atégo-riqueusuelle, elledemorphismeentreobjets,oùlesobjetsseront,à emoment-là,
lesalgèbrestypées.
1.3.1. Algèbres,typesetopérations ompatibles. SideuxalgèbresA=
((:) A ;T)etB=((:) B ;T 0
)sontdéniessurlesmêmestypesdebaseB,etlessigniés
de es derniers oïn ident:
82B:
A
=
B
nousdisonsquelesalgèbressont ompatibles.Dans ette hypothèse,soient
A = (B;S;F;T)et B =(B;S 0 ;F 0 ;T 0
) lessignatures desdeux algèbres,et soit :S !
S 0
une appli ation traduisant les sortes de A en sortes de B. La Table 4illustre
l'extensionnaturellede àtouslestypesadmissibles.Ainsi,latradu tiondesnoms
dessortes :S!S
0
déniraimpli itementunetradu tion :T(B;S)!T(B;S
0
)
de tout typede l'algèbreAdans untypede l'algèbreB.Nous utiliseronssouvent
la notation pour indiquer le résultat de l'appli ation de à l'argument :
= ().
La orrespondan etra éepar entrelestypesdesdeuxalgèbresestune
orres-pondan estri te,uneformed'égalitésyntaxique (modulolatradu tiondessortes).
Une relationmoinsstri te,la ompatibilitéentretypes,notée :}
T(B ;S)T(B ;S
0
)
,
est dénie dans la table 5. Intuitivement, la relation étend la fon tion en
permettant d'asso ier des types 8:: et 8:
0
:
0
si le se ond type exprime,
par rapport au premier, des onstru tions polymorphes plus générales.En
parti- ulier, la règle ( onst)permet auxtypes polymorphes d'être asso iés àdes types
non né essairementpolymorphes, es dernierspouvant toujoursêtre onsidérés,à
l'o asion, ommedes onstru tionspolymorphes onstantes,dontlerésultatestle
même indépendammentdel'argument.
Si
0
, nous disons que le type 2 T(B;S) de la première algèbre est
ompatible (viala tradu tion ) ave letype
0
2T(B;S
0
) delase onde algèbre.
Étantdonnéuneopérationf2Fdelapremièrealgèbreet uneopérationf
0
2F
0
de
lase onde,nousdisonsquelesdeuxopérationssont ompatiblessileurstypessont
ompatibles : T(f) T 0 (f 0 )
Tab.4. Interprétation destypesetdes lasses
d'unealgèbreàuneautre
(), 8 > > > > > > > > > > > > > > > > > > > > < > > > > > > > > > > > > > > > > > > > > : si =2B () si =2S ( 1 ) ( 2 ) si = 1 2 ( 1 ) ( 2 ) si = 1 2 } ( 0 ) si =} 0 } ( 0 ) F si =} 0 F ( 1 )! ( 2 ) si = 1 ! 2 ( 1 ) Æ! ( 2 ) si = 1 ! Æ 2 ( 0 ) si =( 0 ) ( 0 ) 1 si =( 0 ) 1 si =2V 8: (): ( 0 ) si =8:: 0 8: ():if q (#)then ( 1 )else ( 2 ) si =8::if q#then 1 else 2 (), 8 < : base si =base sort si =sort { (x 1 ),::, (x n )} si ={x 1 ,::,x n }
Tab. 5. Types ompatiblesvial'interprétation
()= 0 0 (ext) 8x2: (x)2 0 ^ [ x = ℄ 0 [ x = ℄ 8:: 8: 0 : 0 (poly) FV( 0 )=; 8:: 8: : 0 8:: 0 ( onst)
Example 1.3.1. SoitAunealgèbre onstituéededeuxsortesS=fZ;Bg, oùZ
représente ledomainedesnombresentiers etB eluidesbooléensftt;ffg,et d'une
opération polymorphe F = f+
(:)
: 8:{Z,B}: ! ! g, où +
Z
est l'addition
surlesentiers et+
B
estleoulogique surlesbooléens.Parailleurs,soitBl'algèbre
des nombres réels, où S
0
= fRg et F
0
= f+ : R ! R ! Rg. La seule tradu tion
possiblepourlesnomssera (Z)= (B)=Ret (+
(:)
)=+.Lesdeuxopérations
allogènes seront alors ompatibles. En eet, la règle ( onst) nous permettra de
onsidérer l'addition sur lesréels ommeune onstru tionpolymorphe onstante,
'est-à-dire ommeuneopérationdetype8:{R}:!!.Ensuite,enutilisant
larègle(poly),nouspourronsdéduirela ompatibilitédel'additionpolymorphede
l'algèbreAave elle(monomorphe)desréels.
1.3.2. Interprétations. SoientA=((:) A ;T)et B=((:) B ;T 0 ) deuxalgèbres ompatibles,de signature A =(B;S;F;T)et B = (B;S 0 ;F 0 ;T 0 ). Une
interpréta-(1) l'interprétation desnoms :S!S 0
F!F
0
estunesommedefon tions
qui traduittoutesortedeAdansunesortedeBettouteopérationdeA
dansuneopération ompatible deB:
8f2F: T(f) T
0
(f )
(2) l'interprétation desvaleursestune onstru tionpolymorphe:
' : 8:S:! ()
quiasso ieàtoutesorteD2Sunetradu tiondesvaleurs'
D :D A !D B . L'appli ation : S ! S 0
sera appelée germe de l'interprétation des types. Nous
remarquerons qu'au une des omposantes et ' de l'interprétation n'est for ée
d'être inje tive ou surje tive. Leur raison d'être est elle de traduire (d'où leurs
noms)lesobjetsdudis oursd'unealgèbreàl'autre.Nousremarqueronsaussique
les domaines orrespondantsaux sortes peuvent avoir une interse tion non vide.
L'interprétationd'unélémentx2D
A 1 \D A 2 ,oùD 1 ;D 2
2S,pourradon sefairepar
l'intermédiairedelafon tion' D 1 :D A 1 !D B 1 oudelafon tion' D 2 :D A 2 !D B 2 .
Lorsque l'interprétation desvaleursnesera pasambiguë,ou lorsque lesdomaines
serontdisjoints, 'est-à-direlorsquenousauronsla ondition:
8D 1 ;D 2 2S: 8x2D A 1 \D A 2 : ' D 1 (x)=' D 2 (x)2D B 1 \D B 2
nouspourronséviterdespé ierledomained'appli ationde', onsidérant ette
dernière ommeune fon tion de l'union desdomaines de l'algèbre Avers l'union
desdomainesdeB: ' : ( [ D2S D A )!( [ D2S D B )
Une onditionplusfaible,quenousappellerons ohéren edel'interprétation( ;'),
demandequesideuxsortesdistin tesD6=D
0
delapremièrealgèbresontasso iées
àlamêmesorteD =D
0
delase ondealgèbre,alorsl'interprétationd'unevaleur
x2D
A
\D
0A
oïn ide, quel'on onsidèrex2D
A
ouquel'on onsidèrex2D
0A : 8D;D 0 2S: (D)= (D 0 ) ) 8x2D A \D 0A : ' D (x)=' D 0 (x)
Lapossibilité,dansladénitiond'unealgèbre,deséparerlestypesdebasedestypes
sorte, permet de distinguer les domaines qui ne doivent par être interprétés, des
domainesqui doivent,enrevan he,passer lepro essusdetradu tion. Eneet, les
typesdebasene on ernentni l'interprétationdesnomsni elledesvaleurs.Dans
lesdeux as,la fon tionidentité véhi uleimpli itementlesnoms et lesvaleursde
base d'unealgèbreversl'autre.
1.3.3. Relation de onservation. Étant donné une interprétation ( ;')
d'une algèbre A de signature
A
= (B;S;F;T)dans une algèbre B de signature
B = (B;S 0 ;F 0 ;T 0
), nous dirons qu'un objet x 2
A
de la première algèbre se
onserve dansunobjetdetype ompatiblex
0 2 0B delase onde, six ' 7 ! x 0 , où lafamillederelations: f ' 7 ! A 0B j 2T(S); 0 g
Tab.6. Larelationlogiquef ' 7 ! g 2B x ' 7 ! x (base) 2S x ' 7 ! ' (x) (sort) x 1 ' 7 ! 1 x 1 x 2 ' 7 ! 2 x 2 (x 1 ;x 2 ) ' 7 ! 12 (y 1 ;y 2 ) (prod) x ' 7 ! 1 y _ x ' 7 ! 2 y x ' 7 ! 12 y (sum) 8x2X:9y2Y:x ' 7 ! y 8y2Y:9x2X:x ' 7 ! y X ' 7 ! } Y (set) X ' 7 ! } Y X ' 7 ! } F Y (fset) u ' 7 ! N+ Æ! v u ' 7 ! 1 v (seq) u ' 7 ! N+ Æ! v u ' 7 ! v (fseq) 8x2 A 1 ;x 0 2 B 1 : x ' 7 ! 1 x 0 ) f(x) ' 7 ! 2 g(x 0 ) f ' 7 ! 1 ! 2 g (fun) 8x2dom(f): x ' 7 ! 1 x 0 ) x 0 2dom(g) ^ f(x) ' 7 ! 2 g(x 0 ) f ' 7 ! 1 Æ!2 g (pfun) 8x2: p (x A ) ' 7 ! [ x =℄ p 0 (x B ) p ' 7 ! 8:: p 0 (poly) 8x2: p (x A ) ' 7 ! [ x = ℄ p 0 (x B ) où = ond(#; 1 ; 2 )(x) p ' 7 ! 8::if q#then 1 else 2 p 0 ( ond) p ' 7 ! 8:: p 00 p 00 = B fp 0 g p ' 7 ! 8:: p 0 ( onst)
estlapluspetitefamilleengendréeparlesystème d'inféren edelaTable6.
Le système logiqueest déterministe, autrementdit, il existe tout auplusune
règleappli ablepourtouteassertiondelaformex
'
7 !
x
0
. Larègle(base)indique
que tout objet d'un type de base,parexemple un natureln 2N, se onserve en
lui-même,indépendammentdel'interprétation( ;')impliquée.Larègle(sort)
omposantes.Pourlarègle(set),quiestproposéedans[Honsell & Sanella, 1999℄,
deux ensembles sonten relation si tout élément de l'un trouveun orrespondant
dans l'autre.Larègle(fset),pourlesensemblesnis,renvoie à elle, générale,des
ensembles arbitraires. La règle (fun), alquée sur la dénition de relation logique
(dans, parexemple, [Mit hell,1996℄et [Honsell& Sanella, 1999℄), exige que
lesfon tionsfetgtransformentdesarguments orrespondantsenrésultats
orres-pondantspourqu'ellessoient,elles-mêmes, orrespondantes.Larègle(pfun)étend
larègle(fun)au asdesfon tionspartielles:laquanti ationuniversellesefaitsur
ledomainedelapremièrefon tion,etil estrequisquetoutélémenten
orrespon-dan e soit un argument possible pour la se onde fon tion partielle. Puis, omme
pourlesfon tionstotales,ilfaudraquelesrésultatssoient,euxaussi,en
orrespon-dan e.Larègle(pfun)estdon équivalenteàlarègle(fun)lorsquelesfon tionssont
totales.Lesrègles(seq)et(fseq)pourlesséquen es(arbitrairesounies)renvoient
à la règle des fon tions partielles. Par e hoix, une séquen e s se onservant en
s 0
, se onservera aussi dans toutes les séquen es ommençant par s
0
. Autrement
dit, la onservation des séquen es étend le sens de la relation préxe entre mots
sur unalphabet.Enl'armantonn'oublierapas,bien entendu, quelesséquen es
appartiennentàdeuxmondesdiérents,lepassaged'unmondeàl'autresefaisant
parl'intermédiaired'uneinterprétationdesvaleurs.En equi on erneles
onstru -tionspolymorphes,larègle(poly)indiquequedeux onstru tionspolymorphespet
p 0
sont orrespondanteslorsquepourtoutargumentx(domainedebaseousorte)
appartenant à la lasse , les deux résultats p
(x A ) et p 0 (x B ) sont, eux-mêmes, en
orrespondan esur le type. Ce dernierest le typepolymorphespé ialiséparx.
Larègle( ond)dis iplineles onstru tionspolymorphesmuniesd'untestd'égalité.
Comme pourlarègle (poly),pourtout x2 ,il faudra quep
(x A ) et p 0 (x B ) soient
orrespondantes.Maisla orrespondan edevraavoirlieusuruntypedépendant
dex,résultatdutestd'égalité ond(#;
1
;
2
)(x).Etilseraensuitespé ialiséparla
substitution[
x
=
℄.Enn,larègle( onst)jouelemêmerlequelarèglehomonyme
pourles types ompatibles.Elle nouspermet de onsidérertoute opérationp
0
de
lase ondealgèbre ommeune onstru tionpolymorphe onstante:
p 00 = x2 B :p 0 = f(x;p 0 )jx2 B g = B fp 0 g
Ilestimportantdesoulignerque,pardénition delarelationde onservation,
deux objets x et x
0
peuvent être orrespondants pour une interprétation ( ;')
donnée, seulementsi dansleuralgèbrerespe tive,lesdeuxobjetsappartiennentà
desdomaines ompatibles:
x ' 7 ! x 0 ) x2 A ^ x 0 2 0B ^ 0
1.3.4. Homomorphismes. Une tradu tion des sortes et des opérations,
oupléed'unetradu tion'desvaleurs,alestatutd'interprétation lorsqueles
opé-rations orrespondantesf
0
= (f) sont ompatibles.Pourquele ouplede