Curryho–Howardův isomorfismus

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

Curryho-Howardův isomorfismus je v informatice a matematice pojmenování pro spojení mezi formální logikou a teorií typů. Tento isomorfismus byl poprvé formulován v polovině 20. století Alonem Currym a Williamem Howardem a ukazuje, jakým způsobem lze logické výroky reprezentovat pomocí funkcionálních programovacích jazyků. Isomorfismus zajišťuje ekvivalenci mezi typy v teorii typů a formulemi ve formální logice. Z logického hlediska se typy chápou jako výroky, které jsou dokazatelné, zatímco funkce mezi typy reprezentují způsoby, jak daný výrok dokázat. To znamená, že paralelou k existenci logických důkazů jsou funkcionální programy. Curryho-Howardův isomorfismus tedy umožňuje aplikovat poznatky o důkazech a jejich struktuře na programování. Využití tohoto isomorfismu je široké, ať už se jedná o konstrukci důkazových asistentů, automatizaci důkazů ve formální logice nebo vývoj programovacích jazyků založených na teorii typů. Tento isomorfismus představuje silný nástroj pro zkoumání souvislostí mezi logikou a programováním a umožňuje vzájemný přenos poznatků mezi těmito oblastmi.

Curryho-Howardův isomorfismus je v logice a teorii typů rovnocennost mezi typy a formulemi, resp. jejich důkazy. Logickým objektům (konektivům a konstantám) odpovídají typy takto:

Výroková logikaTeorie typů
implikacefunkční typ
konjunkcesoučinový typ
disjunkcesoučtový typ
pravdajednotkový typ
nepravdaprázdný typ

Kvantifikátory v logice prvního řádu odpovídají závislostním typům:

Predikátová logikaTeorie typů
\forallzobecněný součinový typ
\existszobecněný součtový typ

Pro rovnost se používá zvláštní typ a=_A b, jehož jedinou hodnotou je Refl.

Konkrétní hodnoty jednotlivých typů přímo odpovídají důkazům formulí.

Reference

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top