Home

CurryHowardinterpreteratie

Curry-Howard-interpreteratie, ook wel Curry-Howard-isomorfie genoemd, beschrijft een fundamentele verbinding tussen logica en computationele systemen. In deze interpretatie worden bewijzen in een intuïtieve logica gezien als programma’s en logische proposities als typen. Met andere woorden: het type van een programma is een proposition; een geldig programma dat een dergelijk type heeft vormt een bewijs van die proposition. De interpretatie leert dat proof construction en program evaluation nauw met elkaar samenhangen.

In de klassieke opzet koppelt de simply-typed lambda-calculus logische structuren aan intuïtieve proposities: een functie van

Historisch gezien werden Ideeën onafhankelijk ontwikkeld door Haskell Curry en William A. Howard; de formulering vond

Toepassingen van de interpretatie weerspiegelen zich in moderne programmeertalen en proveerbewerkers: dependente typen brengen propositions-as-types verder,

type
A
->
B
komt
overeen
met
de
logische
implicatie
A
⇒
B;
producttypes
A
×
B
lopen
gelijk
met
conjunctie,
en
somtypes
(Either
A
B)
met
disjunctie.
De
evaluatie
van
programma’s
(beta-reductie)
correspondeert
met
proof-reductie
(normalisatie).
Eenheidstype
correspondeert
met
True
en
het
lege
type
met
False.
Deze
correspondentie
laat
zien
hoe
logische
wetten
worden
gerealiseerd
als
programmeerbare
constructies.
zijn
plek
in
de
late
jaren
1960.
In
bredere
vorm
wordt
de
relatie
uitgebreid
tot
de
Curry-Howard-Lambek-correspondentie,
die
ook
categorie-theoretische
perspectieven
integreert:
typen
als
objecten
en
programma’s
als
morfismen
tussen
typen,
met
normalisatie
als
canonieke
representatie
van
bewijzen.
wat
leidt
tot
systemen
waarin
schrijven
van
correcte
programma’s
en
formel
bewijs
direct
samenvallen.
De
Curry-Howard-interpreteratie
biedt
zo
een
unificerend
kader
voor
logica
en
softwareontwikkeling.