cours sur les interprétations
40 pages
Français

cours sur les interprétations

Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres
40 pages
Français
Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres

Description

-1-INF 554 Luc MarangetInterpr´etation(environnements)Luc.Maranget@inria.frhttp://www.enseignement.polytechnique.fr/profs/informatique/Luc.Maranget/TLP/-2-A Un petit tour autour du point fixe.B De l’´evaluaton `a l’interpr´etation : environnements.C Interpr´etation par valeur.-3-Point fixe et r´eductionOn s’int´eresse aux « solutions » d’´equations du genre :x = t, avec x variable, et t terme de PCF ou` x apparaˆıt.s« = » est l’´egalit´e dans la s´emantique.sSoit u =Fix x -> t avecu−→ [u\x]tC’est-a`-dire, inventons le point fixe explicite.′ ′On pose l’exigence s´emantique t−→ t ⇒ t = t .sIl est alors ´evident que u est solution de x = t.s-4-Point fixe construitUne premi`ere ´etape : « abstraire x dans t ».′′x = (Fun y -> t ) x, avec t = [y\x]t.′◮ On a trivialement (Fun y -> t ) x−→ t.◮ Il apparaˆıt clairement que l’on recherche le point-fixe (x = Φ x)′d’une fonction Φ =Fun y -> t .∗ ′Soit un terme u tel que u−→ Φ u−→ [u\y]t ,′Soit en fait (car t = [y\x]t) :∗u−→ [u\y][y\x]t = [u\x]tC’est `a dire que u est solution.-5-Construction explicite∗De u tel que u←→ Φ u.Soit la fonction suivante curry :Fun f -> (Fun x -> f (x x)) (Fun x -> f (x x))On va montrer que pour tout terme Φ :∗curry Φ←→ Φ (curry Φ)∗(←→ fermeture r´eflexive-sym´etrique-transitive de−→, entraˆıne= ).s-6-∗D´emonstration de curry Φ←→ Φ (curry Φ)Posons v =Fun x -> f (x x) Par une β-r´eduction il vient :v v−→ f (v v)′ ′Lemme : t−→ t ⇒ [u\x]−→ [u\x]tDonc : ...

Sujets

Informations

Publié par
Nombre de lectures 19
Langue Français

Extrait

-1-
INF 554
Luc Maranget
Interpre´tation (environnements)
Luc.Maranget@inria.fr http://www.enseignement.polytechnique.fr/profs/ informatique/Luc.Maranget/TLP/
-2-
A
B
C
Un petit tour autour du point fixe.
Dele´valuatona`linterpr´etation:
Interpre´tationparvaleur.
environnements.
-3-
Pointxeetr´eduction
Onsinte´resseaux«uslniotos»gedue:nrtauqsnoie´d
x=st,avecxvariable, etto`urmedePCFetxappa.tıˆar
s «=s»´lansda´eitaleg´ltse.eituqmena
Soitu=Fixx->tavec
u−→[ux]t
Cest-`a-dire,inventonslepointxeexplicite.
Onposelexigences´emantiquet−→tt=st.
Ilestalors´evidentqueuest solution dex=st.
-4-
Point fixe construit
Unepremi`ere´etape:«abstrairexdanst».
x= (Funy->t)x,avect= [yx]t.
On a trivialement (Funy->t)x−→t.
e(opni-txehcreheloelecnrmerequnttıˆaialcalIrappx= Φx) d’une fonction Φ =Funy->t.
Soit un termeutel queu−→Φu−→[uy]t,
Soit en fait (cart= [yx]t) :
u[uy][yx]t= [ux]t
Cesta`direqueuest solution.
-5-
Construction explicite
Deutel queu←→Φu.
Soit la fonction suivantecurry:
Funf-> (Funx->f(x x)) (Funx->f(x x))
On va montrer que pour tout terme Φ :
curryΦ←→Φ (curryΦ)
(←→erure´efeetrmrte´euqievixmys-sntit-arevide−→aˆınentr,e . =s)
-6-
D´emonstrationdecurryΦ←→Φ (curryΦ)
Posonsv=Funx->f(x x) Par uneβt:envide´r-linoitcu
v v−→f(v v)
Lemme:t−→t[ux]−→[ux]t
Donc : [Φf](v v)−→f]f(v v).
Or (uneβ) :curryΦ−→f](v v)
Et c’est fini :
(1)
(2)
curryΦ−→f](v v)−→f](f(v v ([Φ)) = Φf](v v))←−Φ (curryΦ)
-7-
Astuce ultime
NotonsF=Fixx->t effectue les substitution de. Onxdanst, d`ˆet: es que pr
F[Fx]t[[Fx]tx]t[[[Fx]tx]tx]t. . .
On obtient un terme«infini»unarepbl:heapgrr,peneat´rse
t
x
-8-
Plus
n
clair sur un
Fun
n
Ifz
0
n
*
exemple
@
n
-
1
-9-
Fabriquer un tel graphe
!e´denu,lmaCnEvesiurecr´ontini
l e t recpcf fact= _ Fun("n", Ifz(Var"n",Num0, Op(Mul,Var"n", App(pcf_fact,Op(Sub,Var"n",Num1)))))
En Java/langage machine : modification d’un terme.
Pcf node= newApp(null,newOp(Sub,newVar("n"),newNum Pcf top=newFun("n",newIfz(. . .)) ; node.left=top
(1)))
;
-10-
Environnements
-11-
Appel par nom
t1֒nFunx->t3[t2x]t3֒nv t1t2֒nv
Funx->t ֒nFunx->t
[t1x]t2֒nv Letx=t1Int2֒nv
t1֒n0t2֒nv Ifzt1Thent2Elset3֒nv
t1֒nn1t2֒nn2 t1opt2֒nn1opn2
[(Fixx->t)x]t ֒nv Fixx->t ֒nv
t ֒n(n6=0)t
t1֒nn(n6=0)t3֒nv Ifzt1Thent2Elset3֒nv
n ֒nn
  • Univers Univers
  • Ebooks Ebooks
  • Livres audio Livres audio
  • Presse Presse
  • Podcasts Podcasts
  • BD BD
  • Documents Documents