Cours 5: Sémantique dénotationnelle

Introduction

A,BαABM,NxAλxA.MMN

Sémantique dénotationnelle: “modèle” d’une théorie équationnelle:

(λx.M)N=M[N/x]+ passage au contexte
Interprétations:
x=ensemble quelconqueAB=BASi x1:C1,,xn:CnM:A alors M:C1××CnA

Exemples:

f:AA,x:Af(fxfv(f)):A f(fx):{AA×AA(h,a)h(h(a))
Γ,x:Ax:A xΓ,x:A{Γ×AA(γ,a)a

Γ,x:AM:BΓλx.M:AB λx.MΓ{ΓBAγ{ABaMΓ,x:A(γ,a) ΓM:ABΓN:AΓMN:B MNΓ{ΓBγMΓ(NΓ(γ))

Système T

Pareil, avec l’interprétation en plus du “if then else”

Sytème F

On n’arrive pas à donner une sémantique ensembliste!

En λ-calcul pur

Mx1,,xn:DnDfv(M){x1,,xn}

Un λ-terme clos est dans:

1D

Problème de cardinalité! Comme les λ-abstractions sont des λ-termes:

DDD

Donc les théoriciens des modèles ont discrédité pendant longtemps le λ-calcul en avançant qu’il n’a pas de modèles ensemblistes.

Mais arrive la logique catégorique (vision généralisée de la théorie des modèles): il n’y a aucune raison de se restreindre à la catégorie Set! Il y a des tas d’autres catégories qui peuvent fournir des modèles!

Dana Scott: interprétation du λ-caclul dans des treillis au début, puis des Complete Partial Orders (CPOs).

Laissez place à la Logique Catégorique

La sémantique “naïve” précédente peut être définie pour n’importe quelle catégorie cartésienne close (CCC)!

Catégories Cartésiennes Closes (CCC): Rappels de base

Produit A,B𝒞:

Limite du diagramme discret AB, i.e. un triplet (A×B,π1:A×BA,π2:A×BB) avec A×B𝒞 tel que pour tout (C,f:CA,g:CB), le diagramme suivant commute:

Cgff,gBAA×Bπ1π2
Objet terminal 1𝒞 (produit 0-aire):

limite du diagramme vide; i.e. 𝒞(A,1) est un singleton pour tout A𝒞

Catégorie cartésienne:

lorsqu’elle a tous les produits binaires et un objet terminal, i.e a tous les produits finis

Modulo l’axiome du choix (pour choisir le produit, qui n’est unique qu’à unique isomorphisme près), on a un bifoncteur:

×:𝒞×𝒞𝒞

Qui fait de 𝒞 une catégorie monoïdale.

Adjonction

Si F:𝒞𝒟,G:𝒟𝒞 sont des foncteurs:

Adjonction à gauche FG:

s’il existe un isomorphisme naturel

𝒟(FA,B)𝒞(A,GB)

Exemple: Construction libre

Les structures algébriques libres habituellement sont données par des adjoints à gauche de foncteurs d’oubli:

FU

  • F:SetGrp par exemple
  • U:GrpSet est le foncteur d’oubli

L’adjonction dit qu’un morphisme de groupe entre le groupe libre et G est exactement une fonction des générateurs vers le carrier set de G:

Grp(FX,G)Set(X,UG)

Clôture

Soit 𝒞 une catégorie cartésienne. Soit A𝒞. On pose

RA×A:{𝒞𝒞ΓΓ×A

On dit que 𝒞 est close si pour tout A𝒞, RA a un adjoint à droite:

RA=×AA

i.e pour tous A,B:

𝒞(Γ×A,B)𝒞(Γ,AB)

Exemples:

Sont une CCC:

  • Set
  • FinSet (ensembles finis)

Théorie de Lawvere

Théorie de Lawvere 𝒯:

catégorie cartésienne 𝒯 telle qu’il existe 𝒯 tq:

A𝒯,An

Il s’agit d’une généralisation des théories équationnelles (qu’on rencontre en algèbre universelle). Les théories de Lawvere sont aussi appelées théories algébriques.

Exemple: Théorie des groupes

Soit 𝒢 une catégorie cartésienne engendrée par et trois morphismes

  • e:1
  • m:2
  • n:

avec la diagonale δid,id

×(×)(×)×m×idid×m2m2m 1×e×id×1id×e2m2m

Plus: diagramme de l’inverse

Un modèle de 𝒯:

est un foncteur préservant les produits M:𝒯𝒞, où 𝒞 est une catégorie cartésienne close.

La donnée d’un tel foncteur correspond à la donnée de:

  • M()𝒞

Ici:

  • un modèle M:GSet de 𝒢 est exactement un groupe
  • un modèle M:GTop est un groupe topologique
  • Argument de Eckman-Hilton: un modèle M:GGrp est un groupe abélien

    • de même: une catégorie monoïdale dans la catégorie des catégories monoïdales est une catégorie monoïdale symmétrique
    • un monoïde dans la catégorie des monoïdes est un monoïde commutatif

Toute théorie équationnelle sans inégalité (donc pas les corps) peut être exprimée en termes de théories de Lawvere!

Ici, est une sorte. Mais on pourrait avoir plusieurs sortes:

Théories multi-sortéer sortes):

pour tout A𝒯, il existe n1,,nr tels que

A1n1××rnr

Ex: avec une sorte pour les vecteurs, une pour les scalaires:

  • interprétation dans Set ⟶ espaces vectoriels
  • interprétation dans Top ⟶ espaces topologiques

Modèles du λ-calcul simplement typé

La sémantique du λ-calcul simplement typé peut être défini dans n’importe quelle CCC

C’est une sorte de “théorie de Lawvere” à l’ordre supérieur:

  • on a des générateurs et les produits finis (théorie de Lawvere)
  • et en plus: l’exponentielle

    • l’adjonction est la règle de la déduction naturelle

      Γ,ABΓAB
  • la β-réduction est l’équation
  • les λ-termes sont les morphismes:

    • un λ-terme de type A dont les variables libres sont dans Γ est un morphisme ΓA

Donc un modèle du λ-calcul simplement typé est un foncteur

M:ΛST𝒞

préservant le produit et l’exponentielle.

Modèles du λ-calcul pur

Pour avoir un modèle du λ-calcul pur (non typé), il suffit de trouver une CCC 𝒞 avec un objet D𝒞 tq

DDfDg fg i.e gf=idDD

ce que l’on appelle une rétraction

On appelle alors D un objet réflexif.

CPOs

Soit (D,) un ordre partiel, et ΔD.

Δ est filtrant:

si x,yΔ.zΔ,x,yz

Un ordre partiel complet (CPO):

est un ordre partiel (D,,) avec un plus petit élément et tel que tous les ensembles ensembles filtrants (directed set) ont un sup, dénoté par Δ

NB: en topologie, les fonctions continues sont exactement celles qui préservent les limites de suites indexées par les ensembles filtrants.

Si toute fonction continue préserve les limites de suites, la réciproque n’est pas vraie: il ne suffit pas de préserver les limite de suites pour être continue. Les suites indexées par des ensembles filtrants est la bonne notion.

NB: “Domaines de Scott”: CPOs avec des propriétés en plus.

Dans la littérature, on appelle “domaine” un CPO avec des propriétés en plus (les espaces cohérents en sont un cas particulier).

On va les utiliser pour PCF (extension du λ-calcul simplement typé Turing-complète).

Scott-continuité

Soient D,E des cpos.

Une fonction f:DE est Scott-continue:

si elle préserve les sups d’ensembles filtrants

Pour tout ΔD filtrant:

f(Δ){yEy=f(x),xΔ} est filtrant

et

f(Δ)=f(Δ)

Catégorie des CPOs

On note CPO la catégorie des cpos et des fonctions continues.

Théorème (Scott):

CPO est une CCC.

De plus, elle admet un objet réflexif.

Leave a comment