The Limits of the Curry-Howard Isomorphism Reinhard Kahle 1 and Anton Setzer 2 1 DM and CENTRIA, FCT Universidade Nova de Lisboa, Portugal 2 Dept. of Computer Science, Swansea University, Swansea, UK T¨ ubingen, FRC workshop, 21 February 2014 Reinhard Kahle, Anton Setzer The limits of the Curry-Howard isomorphism 1/ 37
Martin-L¨ of Type Theory and Curry Howard Isomorphism Inductive Data Types and Universes Steps towards the Mahlo Universe Extended Predicative Mahlo Curry-Howard isomorphism Partial Functions Discussion Reinhard Kahle, Anton Setzer The limits of the Curry-Howard isomorphism 2/ 37
Martin-L¨ of Type Theory and Curry Howard Isomorphism Martin-L¨ of Type Theory and Curry Howard Isomorphism Inductive Data Types and Universes Steps towards the Mahlo Universe Extended Predicative Mahlo Curry-Howard isomorphism Partial Functions Discussion Reinhard Kahle, Anton Setzer The limits of the Curry-Howard isomorphism 3/ 37
Martin-L¨ of Type Theory and Curry Howard Isomorphism Martin-L¨ of Type Theory and Curry Howard Isomorphism ◮ Martin-L¨ of Type Theory (MLTT) can be considered as “ radical formalisation Curry-Howard Isomorphism ” ◮ Propositions as types ◮ No distinction between data types and propositions. ◮ Propositions are true if they are inhabited (have a proof ). ◮ Because of the last two items, elements of types ( Set = collection of types) must be total: ◮ Otherwise we can prove p : A p = p Reinhard Kahle, Anton Setzer The limits of the Curry-Howard isomorphism 4/ 37
Martin-L¨ of Type Theory and Curry Howard Isomorphism Function Type in MLTT ◮ An element of A → B is a program which for a : A returns b : B . ◮ Implicitly contains an implication. So implication explained by an implication . ◮ In order to overcome this, Martin-L¨ of refers to that we we know what a program is that takes input a : A and returns b : B . ◮ Doesn’t mean that we know what an arbitrary program is but ◮ when we introduce a program we need to explain that it is a program of its type, and ◮ we know how to apply a program. ◮ Therefore programs are always typed . Reinhard Kahle, Anton Setzer The limits of the Curry-Howard isomorphism 5/ 37
Inductive Data Types and Universes Martin-L¨ of Type Theory and Curry Howard Isomorphism Inductive Data Types and Universes Steps towards the Mahlo Universe Extended Predicative Mahlo Curry-Howard isomorphism Partial Functions Discussion Reinhard Kahle, Anton Setzer The limits of the Curry-Howard isomorphism 6/ 37
Inductive Data Types and Universes Inductive Data Types ◮ As in other axiomatic systems proof theoretic strength obtained by adding data types and their introduction/elimination/equality rules. ◮ Inductive data types – in Agda notation data N : Set where 0 : N S : N → N ◮ Elimination rule is higher type primitive recursion. Reinhard Kahle, Anton Setzer The limits of the Curry-Howard isomorphism 7/ 37
Inductive Data Types and Universes Universes ◮ Universes = collection of sets. ◮ Formulated if using the logical framework as: U 0 : Set T 0 : U 0 → Set ◮ U 0 = set of codes for sets. ◮ T o = decoding function. Reinhard Kahle, Anton Setzer The limits of the Curry-Howard isomorphism 8/ 37
Inductive Data Types and Universes Universe closed under W mutual data U 0 : Set where � N : U 0 � W : ( x : U 0 ) → ( T 0 x → U 0 ) → U 0 · · · T 0 : U 0 → Set T 0 � = N N T 0 ( � W a b ) = W x : T 0 a . T 0 ( b x ) · · · Reinhard Kahle, Anton Setzer The limits of the Curry-Howard isomorphism 9/ 37
Steps towards the Mahlo Universe Martin-L¨ of Type Theory and Curry Howard Isomorphism Inductive Data Types and Universes Steps towards the Mahlo Universe Extended Predicative Mahlo Curry-Howard isomorphism Partial Functions Discussion Reinhard Kahle, Anton Setzer The limits of the Curry-Howard isomorphism 10/ 37
Steps towards the Mahlo Universe Universe Operator (Palmgren) ◮ If A : Fam ( Set ) where the type of families of sets is Fam ( Set ) = Σ X : Set . X → Set then U + A : Set is a universe containing (codes for) A . ◮ U + A can be defined as well as a universe closed under f : Fam ( Set ) → Fam ( Set ) f X = A ◮ (Usage of Fam ( Set ) can be avoided by Currying) Reinhard Kahle, Anton Setzer The limits of the Curry-Howard isomorphism 11/ 37
Steps towards the Mahlo Universe Super Universe Operator (Palmgren) ◮ If A : Fam ( Set ) then SU A : Set is a super universe containing A , i.e. a universe closed under U + . ◮ SU A can be defined as well as a universe closed under f : Fam ( Set ) → Fam ( Set ) f X = A ∪ ( U + X ) Reinhard Kahle, Anton Setzer The limits of the Curry-Howard isomorphism 12/ 37
Steps towards the Mahlo Universe External Mahlo Universe ◮ Generalise the above to allow formation of universes closed under arbitrary operators: ◮ If f : Fam ( Set ) → Fam ( Set ) then U f : Set is a universe closed under f . Reinhard Kahle, Anton Setzer The limits of the Curry-Howard isomorphism 13/ 37
Steps towards the Mahlo Universe Internal Mahlo Universe ◮ The internal Mahlo universe V is a universe internalising closure under λ f . U f : If f : Fam ( V ) → Fam ( V ) then � U f : V is a code for a subuniverse U f : Set of V closed under f Reinhard Kahle, Anton Setzer The limits of the Curry-Howard isomorphism 14/ 37
Steps towards the Mahlo Universe Illustration of the Mahlo Universe V f Reinhard Kahle, Anton Setzer The limits of the Curry-Howard isomorphism 15/ 37
Steps towards the Mahlo Universe Illustration of the Mahlo Universe V f Reinhard Kahle, Anton Setzer The limits of the Curry-Howard isomorphism 15/ 37
Steps towards the Mahlo Universe Illustration of the Mahlo Universe V U f f f Reinhard Kahle, Anton Setzer The limits of the Curry-Howard isomorphism 15/ 37
Steps towards the Mahlo Universe Illustration of the Mahlo Universe V � U f U f f f Reinhard Kahle, Anton Setzer The limits of the Curry-Howard isomorphism 15/ 37
Extended Predicative Mahlo Martin-L¨ of Type Theory and Curry Howard Isomorphism Inductive Data Types and Universes Steps towards the Mahlo Universe Extended Predicative Mahlo Curry-Howard isomorphism Partial Functions Discussion Reinhard Kahle, Anton Setzer The limits of the Curry-Howard isomorphism 16/ 37
Extended Predicative Mahlo Problems of Mahlo Universe ◮ Constructor � U : ( Fam ( V ) → Fam ( V )) → V refers to ◮ the set of total functions Fam ( V ) → Fam ( V ) ◮ which depends on the totality of V . ◮ So the reason for defining an element of V depends on the totality of V . Reinhard Kahle, Anton Setzer The limits of the Curry-Howard isomorphism 17/ 37
Extended Predicative Mahlo Idea for an Extended Predicative Mahlo Universe ◮ However, for defining U f , only the restriction of f to Fam ( U f ) is required to be total. ◮ Only local knowledge of V is needed. ◮ Idea: For f partial object, we try to define a subuniverse Pre V f of V closed under f . ◮ If we succeed then add a code � U f for Pre V f to V . ◮ Requires that we have the notion of a partial object f . Reinhard Kahle, Anton Setzer The limits of the Curry-Howard isomorphism 18/ 37
Extended Predicative Mahlo Explicit Mathematics (EM) ◮ Problem: In MLTT we have no reference of the set of partial objects (“potential programs”, collection of terms of our language). ◮ In Feferman’s explicit mathematics (EM) this exist. ◮ We will work in EM, but use syntax borrowed from type theory, ◮ however write a ∈ B instead of a : B . Reinhard Kahle, Anton Setzer The limits of the Curry-Howard isomorphism 19/ 37
Extended Predicative Mahlo Basics of EM ◮ EM more Russell-style, therefore we can have ◮ V ∈ Set , ◮ V ⊂ Set , ◮ no need to distinguish between � U and U . ◮ We can encode Fam ( V ) into V , therefore need only to consider functions f : V → V ◮ We define now f , X ∈ Set , X ⊆ Set Pre f X ∈ Set Pre f X ⊆ X Reinhard Kahle, Anton Setzer The limits of the Curry-Howard isomorphism 20/ 37
Extended Predicative Mahlo Pre f X f c X c Pre f X f b b Reinhard Kahle, Anton Setzer The limits of the Curry-Howard isomorphism 21/ 37
Extended Predicative Mahlo Closure of Pre f X ◮ Pre f X is closed under universe constructions, if result is in X . ◮ Closure under Σ (called join in EM): ∀ a ∈ Pre f X . ∀ b ∈ a → Pre f X . Σ a b ∈ X → Σ a b ∈ Pre f X ◮ Pre f X is closed under f , if result is in X : ∀ a ∈ Pre f X . f a ∈ X → f a ∈ Pre f X Reinhard Kahle, Anton Setzer The limits of the Curry-Howard isomorphism 22/ 37
Extended Predicative Mahlo Independence of Pre f X ◮ If, whenever a universe construction or f is applied to elements of Pre f X we get elements in X , then Pre f X is independent of future extensions of X . Indep ( f , Pre f X , X ) := ( ∀ a ∈ Pre f X . ∀ b ∈ a → Pre f X . Σ a b ∈ X ) ∧ · · · ∧ ∀ a ∈ Pre f X . f a ∈ X Reinhard Kahle, Anton Setzer The limits of the Curry-Howard isomorphism 23/ 37
Extended Predicative Mahlo Indep A f f b b X f u := Pre f X Indep ( f , u , X ) Reinhard Kahle, Anton Setzer The limits of the Curry-Howard isomorphism 24/ 37
Recommend
More recommend