Відповідність Каррі — Говарда (ізоморфізм Каррі — Говарда, англ. Curry-Howard Isomorphism) — теорема, або точніше ряд теорем, що показують структурну еквівалентність між математичними доведеннями та програмами, або обчисленнями англ. computations. Ця еквівалентність може бути формалізована у вигляді ізоморфізму між логічними системами і типізованими лямбда-численнями.
Хаскелл Каррі і Вільям Говард помітили, що конструктивне доведення (тобто, доведення в інтуїціоністській логіці) схожа на програму, яка обчислює висновок, а саме висловлювання конструктивної логіки за своєю структурою схожі з типами виразів лямбда-числення — програм для обчислювальної машини.
Відповідність Каррі — Говарда не обмежується якоюсь однією логікою або системою типів. Наприклад, інтуїционістське числення висловлювань відповідає простому типізованому λ-численню, логіка висловлювань другого порядку — поліморфному λ-численню, числення предикатів — λ-численню з залежними типами.
У рамках ізоморфізму Каррі — Говарда наступні структурні елементи розглядаються як еквівалентні:
Логічні системи | Мови програмування |
---|---|
Висловлювання | Тип |
Доказ висловлювання Ρ | Терм (вираз) типу Ρ |
Затвердження Ρ можна довести | Тип Ρ населений |
Імплікація Ρ ⇒ Q | Функціональний тип Ρ →Q |
Кон'юнкція Ρ ∧ Q | Тип множення (пари) Ρ × Q |
Диз'юнкція Ρ ∨ Q | Тип суми (розміченого об'єднання) Ρ + Q |
Справжня формула | Одиничний тип |
Хибна формула | Порожній тип (⊥) |
Квантор загальності ∀ | Тип залежного добутку (∏-тип) |
Квантор існування ∃ | Тип залежною суми (∑-тип) |
Найпростішим прикладом відповідності Каррі — Говарда може служити ізоморфізм між простим типізованим -обчисленням і фрагментом інтуїціоністської логіки висловлювань, що включає тільки імплікації. Наприклад, тип в простому типізованому лямбда-численні відповідає вислову логіки висловлювань. Для доказу цього висловлювання необхідно сконструювати терм зазначеного типу (якщо це вдається зробити, то про тип кажуть, що він населений), в даному випадку можна пред'явити потрібний терм:, і це означає, що тавтологія доведена.
Використання ізоморфізму Каррі — Говарда дозволило створити цілий клас функціональних мов програмування, середовище виконання яких одночасно є системою автоматичного доказу, таких як Coq, Agda і Epigram (англ.).
Примітки
- Curry, H. B., Feys, R. Combinatory Logic Vol. I. — Amsterdam: North-Holland, 1958(англ.)
- Howard, W. A. The formulae-as-types notion of construction // To H.B. Curry: Essays on Combinatory Logic, Lambda Calculus and Formalism. — Boston: Academic Press, 1980. — С. 479—490(англ.)
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
Vidpovidnist Karri Govarda izomorfizm Karri Govarda angl Curry Howard Isomorphism teorema abo tochnishe ryad teorem sho pokazuyut strukturnu ekvivalentnist mizh matematichnimi dovedennyami ta programami abo obchislennyami angl computations Cya ekvivalentnist mozhe buti formalizovana u viglyadi izomorfizmu mizh logichnimi sistemami i tipizovanimi lyambda chislennyami Haskell Karri i Vilyam Govard pomitili sho konstruktivne dovedennya tobto dovedennya v intuyicionistskij logici shozha na programu yaka obchislyuye visnovok a same vislovlyuvannya konstruktivnoyi logiki za svoyeyu strukturoyu shozhi z tipami viraziv lyambda chislennya program dlya obchislyuvalnoyi mashini Vidpovidnist Karri Govarda ne obmezhuyetsya yakoyus odniyeyu logikoyu abo sistemoyu tipiv Napriklad intuyicionistske chislennya vislovlyuvan vidpovidaye prostomu tipizovanomu l chislennyu logika vislovlyuvan drugogo poryadku polimorfnomu l chislennyu chislennya predikativ l chislennyu z zalezhnimi tipami U ramkah izomorfizmu Karri Govarda nastupni strukturni elementi rozglyadayutsya yak ekvivalentni Logichni sistemi Movi programuvannya Vislovlyuvannya Tip Dokaz vislovlyuvannya R Term viraz tipu R Zatverdzhennya R mozhna dovesti Tip R naselenij Implikaciya R Q Funkcionalnij tip R Q Kon yunkciya R Q Tip mnozhennya pari R Q Diz yunkciya R Q Tip sumi rozmichenogo ob yednannya R Q Spravzhnya formula Odinichnij tip Hibna formula Porozhnij tip Kvantor zagalnosti Tip zalezhnogo dobutku tip Kvantor isnuvannya Tip zalezhnoyu sumi tip Najprostishim prikladom vidpovidnosti Karri Govarda mozhe sluzhiti izomorfizm mizh prostim tipizovanim l displaystyle lambda obchislennyam i fragmentom intuyicionistskoyi logiki vislovlyuvan sho vklyuchaye tilki implikaciyi Napriklad tip P Q R P Q P R displaystyle P Rightarrow Q Rightarrow R Rightarrow P Rightarrow Q Rightarrow P Rightarrow R v prostomu tipizovanomu lyambda chislenni vidpovidaye vislovu P Q R P Q P R displaystyle P Rightarrow Q Rightarrow R Rightarrow P Rightarrow Q Rightarrow P Rightarrow R logiki vislovlyuvan Dlya dokazu cogo vislovlyuvannya neobhidno skonstruyuvati term zaznachenogo tipu yaksho ce vdayetsya zrobiti to pro tip kazhut sho vin naselenij v danomu vipadku mozhna pred yaviti potribnij term l f g x f x g x displaystyle lambda fgx rightarrow fx gx i ce oznachaye sho tavtologiya P Q R P Q P R displaystyle P Rightarrow Q Rightarrow R Rightarrow P Rightarrow Q Rightarrow P Rightarrow R dovedena Vikoristannya izomorfizmu Karri Govarda dozvolilo stvoriti cilij klas funkcionalnih mov programuvannya seredovishe vikonannya yakih odnochasno ye sistemoyu avtomatichnogo dokazu takih yak Coq Agda i Epigram angl PrimitkiCurry H B Feys R Combinatory Logic Vol I Amsterdam North Holland 1958 angl Howard W A The formulae as types notion of construction To H B Curry Essays on Combinatory Logic Lambda Calculus and Formalism Boston Academic Press 1980 S 479 490 angl