Graph models for the untyped [lambda]-calculus

advertisement
Graph models for the untyped λ-calculus
Kelley van Evert
July 5, 2013
Graph models for the untyped λ-calculus
July 5, 2013
Deze presentatie
− Onderwerp & vorm van mijn scriptie, persoonlijk motivatie.
− Motivatie, context & geschiedenis, modellen en theorieën van de
λ-calculus, centrale vragen, resultaten, misschien nog wat keiharde
wiskunde.
Kelley van Evert
2/11
Graph models for the untyped λ-calculus
July 5, 2013
Vorm scriptie & persoonlijke motivatie
− Wiskunde, literatuurstudie, een aantal papers begrijpen &
vergelijken.
− Twee distincte onderzoekjes rondom één soort wiskundig object
(namelijk graph models):
⑴ Minimale graph theory;
⑵ Extensionele “graph-like” modellen.
Kelley van Evert
3/11
Graph models for the untyped λ-calculus
July 5, 2013
Vorm scriptie & persoonlijke motivatie
− Wiskunde, literatuurstudie, een aantal papers begrijpen &
vergelijken.
− Twee distincte onderzoekjes rondom één soort wiskundig object
(namelijk graph models):
⑴ Minimale graph theory;
⑵ Extensionele “graph-like” modellen.
− λ-calculus is erg mooi (Semantiek & Correctheid)
− Pragmatisch doel: ratio
Kelley van Evert
symbolen
.
≥ , zeg, 50%
3/11
Graph models for the untyped λ-calculus
July 5, 2013
Motivatie
− λ-calculus is een theorie van? (functies, berekenbaarheid, …)
Kelley van Evert
4/11
Graph models for the untyped λ-calculus
July 5, 2013
Motivatie
− λ-calculus is een theorie van? (functies, berekenbaarheid, …)
− Een wiskundig model van de λ-calculus: interpreteren van termen
naar “echte dingen”, wiskundige objecten
Kelley van Evert
4/11
Graph models for the untyped λ-calculus
July 5, 2013
Motivatie
− λ-calculus is een theorie van? (functies, berekenbaarheid, …)
− Een wiskundig model van de λ-calculus: interpreteren van termen
naar “echte dingen”, wiskundige objecten (denk aan hoe we in
S&C programmeertalen interpreteerden)
Kelley van Evert
4/11
Graph models for the untyped λ-calculus
July 5, 2013
Motivatie
− λ-calculus is een theorie van? (functies, berekenbaarheid, …)
− Een wiskundig model van de λ-calculus: interpreteren van termen
naar “echte dingen”, wiskundige objecten (denk aan hoe we in
S&C programmeertalen interpreteerden)
− Heel veel modellen!
Kelley van Evert
4/11
Graph models for the untyped λ-calculus
July 5, 2013
Motivatie
− λ-calculus is een theorie van? (functies, berekenbaarheid, …)
− Een wiskundig model van de λ-calculus: interpreteren van termen
naar “echte dingen”, wiskundige objecten (denk aan hoe we in
S&C programmeertalen interpreteerden)
− Heel veel modellen! (maar het duurde eerst wel een tijdje)
Kelley van Evert
4/11
Graph models for the untyped λ-calculus
July 5, 2013
Kort historisch overzichtje
…in order to decrease the possible impression that we are doing zoology.
(Berline)
Kelley van Evert
5/11
Graph models for the untyped λ-calculus
July 5, 2013
Kort historisch overzichtje
…in order to decrease the possible impression that we are doing zoology.
(Berline)
Church 1936: λ-calculus
Scott 1969: model D∞
Kelley van Evert
5/11
Graph models for the untyped λ-calculus
July 5, 2013
Kort historisch overzichtje
…in order to decrease the possible impression that we are doing zoology.
(Berline)
Church 1936: λ-calculus
Scott 1969: model D∞
Scott / Plotkin 1970s: model Pω (“the” graph model)
Kelley van Evert
5/11
Graph models for the untyped λ-calculus
July 5, 2013
Kort historisch overzichtje
…in order to decrease the possible impression that we are doing zoology.
(Berline)
Church 1936: λ-calculus
Scott 1969: model D∞
Scott / Plotkin 1970s: model Pω (“the” graph model)
Engeler 1981: model DA (ook een graph model)
…
Kelley van Evert
5/11
Graph models for the untyped λ-calculus
July 5, 2013
Kort historisch overzichtje
…in order to decrease the possible impression that we are doing zoology.
(Berline)
Church 1936: λ-calculus
Scott 1969: model D∞
Scott / Plotkin 1970s: model Pω (“the” graph model)
Plotkin 1972: model T∗C (Plotkin’s soort van graph model)
Engeler 1981: model DA (ook een graph model)
…
Kelley van Evert
5/11
Graph models for the untyped λ-calculus
July 5, 2013
Kort historisch overzichtje
…in order to decrease the possible impression that we are doing zoology.
(Berline)
Church 1936: λ-calculus
Scott 1969: model D∞
Scott / Plotkin 1970s: model Pω (“the” graph model)
Plotkin 1972: model T∗C (Plotkin’s soort van graph model)
Engeler 1981: model DA (ook een graph model)
…
Berline 2000: “webbed models”
Kelley van Evert
5/11
Graph models for the untyped λ-calculus
July 5, 2013
Wat is nu een model?
− Interpreteert syntax
− Geeft een betekenis aan syntactische constructies (Wat is
applicatie/abstractie? Wat is een term überhaupt?)
Kelley van Evert
6/11
Graph models for the untyped λ-calculus
July 5, 2013
Wat is nu een model?
− Interpreteert syntax
− Geeft een betekenis aan syntactische constructies (Wat is
applicatie/abstractie? Wat is een term überhaupt?)
− Belangrijk obstakel voor functie interpretatie is dat er geen
onderscheid is tussen functie en argument. Dit is natuurlijk juist
de speerpunt van computers (remember III, compilers enz…)
Kelley van Evert
6/11
Graph models for the untyped λ-calculus
July 5, 2013
Wat is een theorie?
− Welke termen zijn gelijk?
− Al gezien (S&C): =β
Kelley van Evert
7/11
Graph models for the untyped λ-calculus
July 5, 2013
Wat is een theorie?
− Welke termen zijn gelijk?
− Al gezien (S&C): =β
maar ook bijvoorbeeld: =βη
− …en nog veel meer. Geïnspireerd door een visie op waar λ-calculus
voor staat, of door een andere reductie strategie
(bv. programmeertalen)
Kelley van Evert
7/11
Graph models for the untyped λ-calculus
July 5, 2013
Wat is een theorie?
− Welke termen zijn gelijk?
− Al gezien (S&C): =β
maar ook bijvoorbeeld: =βη
− …en nog veel meer. Geïnspireerd door een visie op waar λ-calculus
voor staat, of door een andere reductie strategie
(bv. programmeertalen)
− Of: de theorie van een model, bv.
− theorie van D∞ : extensioneel
− theorie van DA or Pω : niet extensioneel, stelt wel alle
“zinloze” termen aan elkaar gelijk.
Kelley van Evert
7/11
Graph models for the untyped λ-calculus
July 5, 2013
Vragen
− Stel je hebt een klasse modellen, zoals bv. alle modellen in Scott’s
continuous semantics,
…en je bekijkt alle theorieën van al deze modellen,
…wat voor theorieën zitten hier allemaal tussen?
− =β ? =βη ? Een minimale theorie?
Kelley van Evert
H?
(etc…)
8/11
Graph models for the untyped λ-calculus
July 5, 2013
Vragen
− Stel je hebt een klasse modellen, zoals bv. alle modellen in Scott’s
continuous semantics,
…en je bekijkt alle theorieën van al deze modellen,
…wat voor theorieën zitten hier allemaal tussen?
− =β ? =βη ? Een minimale theorie?
H?
(etc…)
− Voor graph models:
⑴ géén extensionele modellen,
⑵ wél een minimale theorie,
⑶ maar helaas niet =β .
Kelley van Evert
8/11
Graph models for the untyped λ-calculus
July 5, 2013
Extensionele modellen
− Extensionaliteit is een visie op termen (dingen die hetzelfde doen,
zijn hetzelfde)
− Ondanks dat graph models nooit extensioneel zijn, laten we ze toch
maar extensioneel maken (definities aanpassen, of modellen
behandelen).
Kelley van Evert
9/11
Graph models for the untyped λ-calculus
July 5, 2013
Extensionele modellen
− Extensionaliteit is een visie op termen (dingen die hetzelfde doen,
zijn hetzelfde)
− Ondanks dat graph models nooit extensioneel zijn, laten we ze toch
maar extensioneel maken (definities aanpassen, of modellen
behandelen).
Plotkin 1972: T∗C ⇝ T∗CE
Kelley van Evert
9/11
Graph models for the untyped λ-calculus
July 5, 2013
Extensionele modellen
− Extensionaliteit is een visie op termen (dingen die hetzelfde doen,
zijn hetzelfde)
− Ondanks dat graph models nooit extensioneel zijn, laten we ze toch
maar extensioneel maken (definities aanpassen, of modellen
behandelen).
Plotkin 1972: T∗C ⇝ T∗CE
?
Bethke 1986 … Hoofman/Schellinx 1991:
(willekeurig) graph model D ⇝ (D/≡)
Kelley van Evert
9/11
Graph models for the untyped λ-calculus
July 5, 2013
Extensionele modellen
− Extensionaliteit is een visie op termen (dingen die hetzelfde doen,
zijn hetzelfde)
− Ondanks dat graph models nooit extensioneel zijn, laten we ze toch
maar extensioneel maken (definities aanpassen, of modellen
behandelen).
Plotkin 1972: T∗C ⇝ T∗CE
?
Bethke 1986 … Hoofman/Schellinx 1991:
(willekeurig) graph model D ⇝ (D/≡)
Krivine 1990 … Berline 2000: K-models
Kelley van Evert
9/11
Graph models for the untyped λ-calculus
July 5, 2013
Extensionele modellen
− Extensionaliteit is een visie op termen (dingen die hetzelfde doen,
zijn hetzelfde)
− Ondanks dat graph models nooit extensioneel zijn, laten we ze toch
maar extensioneel maken (definities aanpassen, of modellen
behandelen).
Plotkin 1972: T∗C ⇝ T∗CE
?
Bethke 1986 … Hoofman/Schellinx 1991:
(willekeurig) graph model D ⇝ (D/≡)
Krivine 1990 … Berline 2000: K-models
− Ik heb laten zien: T∗CE ≊ (D/≡)
Kelley van Evert
9/11
Graph models for the untyped λ-calculus
July 5, 2013
Extensionele modellen
− Extensionaliteit is een visie op termen (dingen die hetzelfde doen,
zijn hetzelfde)
− Ondanks dat graph models nooit extensioneel zijn, laten we ze toch
maar extensioneel maken (definities aanpassen, of modellen
behandelen).
Plotkin 1972: T∗C ⇝ T∗CE
?
Bethke 1986 … Hoofman/Schellinx 1991:
(willekeurig) graph model D ⇝ (D/≡)
Krivine 1990 … Berline 2000: K-models
− Ik heb laten zien: T∗CE ≊ (D/≡) . . . ≊ K-models
Kelley van Evert
9/11
Graph models for the untyped λ-calculus
July 5, 2013
Wiskunde?
− Model is lastig, want in de λ-calculus is er geen onderscheid
functie/argument.
Stel X is een model. Betekent dit nu dat X ∼ X X ⁈
Kelley van Evert
10/11
Graph models for the untyped λ-calculus
July 5, 2013
Wiskunde?
− Model is lastig, want in de λ-calculus is er geen onderscheid
functie/argument.
Stel X is een model. Betekent dit nu dat X ∼ X X ⁈
− Scott: nee, X ∼ [X → X ] (waarbij X een “reflexive” CPO)
Hoe vinden we zo’n X ? Lees: hoe encoderen we een continue
functie f als een element x ∈ X ?
Kelley van Evert
10/11
Graph models for the untyped λ-calculus
July 5, 2013
Wiskunde?
− Model is lastig, want in de λ-calculus is er geen onderscheid
functie/argument.
Stel X is een model. Betekent dit nu dat X ∼ X X ⁈
− Scott: nee, X ∼ [X → X ] (waarbij X een “reflexive” CPO)
Hoe vinden we zo’n X ? Lees: hoe encoderen we een continue
functie f als een element x ∈ X ?
− Graph models: voor een verzameling B, neem X = PB , en gebruik
continuiteit van f om te encoderen als verzameling eindige
fragmenten van grafiek: bf ⊆ B<ω × B.
Kelley van Evert
10/11
Graph models for the untyped λ-calculus
July 5, 2013
Wiskunde?
− Model is lastig, want in de λ-calculus is er geen onderscheid
functie/argument.
Stel X is een model. Betekent dit nu dat X ∼ X X ⁈
− Scott: nee, X ∼ [X → X ] (waarbij X een “reflexive” CPO)
Hoe vinden we zo’n X ? Lees: hoe encoderen we een continue
functie f als een element x ∈ X ?
:)
− Graph models: voor een verzameling B, neem X = PB , en gebruik
continuiteit van f om te encoderen als verzameling eindige
fragmenten van grafiek: bf ⊆ B<ω × B.
Gegeven dat B<ω × B ≺ B, hebben we nu bf “∈” X.
Kelley van Evert
10/11
Graph models for the untyped λ-calculus
July 5, 2013
Vragen?
Kelley van Evert
11/11
Download