What are the most interesting equivalences arising from the Curry-Howard Isomorphism?

前端 未结 10 1992
谎友^
谎友^ 2021-01-29 17:19

I came upon the Curry-Howard Isomorphism relatively late in my programming life, and perhaps this contributes to my being utterly fascinated by it. It implies that for every pro

10条回答
  •  逝去的感伤
    2021-01-29 18:09

    2-continuation           | Sheffer stoke
    n-continuation language  | Existential graph
    Recursion                | Mathematical Induction
    

    One thing that is important, but have not yet being investigated is the relationship of 2-continuation (continuations that takes 2 parameters) and Sheffer stroke. In classic logic, Sheffer stroke can form a complete logic system by itself (plus some non-operator concepts). Which means the familiar and, or, not can be implemented using only the Sheffer stoke or nand.

    This is an important fact of its programming type correspondence because it prompts that a single type combinator can be used to form all other types.

    The type signature of a 2-continuation is (a,b) -> Void. By this implementation we can define 1-continuation (normal continuations) as (a,a) -> Void, product type as ((a,b)->Void,(a,b)->Void)->Void, sum type as ((a,a)->Void,(b,b)->Void)->Void. This gives us an impressive of its power of expressiveness.

    If we dig further, we will find out that Piece's existential graph is equivalent to a language with the only data type is n-continuation, but I didn't see any existing languages is in this form. So inventing one could be interesting, I think.

提交回复
热议问题