Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 971789
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 16, 20262026-05-16T03:01:08+00:00 2026-05-16T03:01:08+00:00

I came upon the Curry-Howard Isomorphism relatively late in my programming life, and perhaps

  • 0

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 programming concept there exists a precise analogue in formal logic, and vice versa. Here’s a “basic” list of such analogies, off the top of my head:

program/definition        | proof
type/declaration          | proposition
inhabited type            | theorem/lemma
function                  | implication
function argument         | hypothesis/antecedent
function result           | conclusion/consequent
function application      | modus ponens
recursion                 | induction
identity function         | tautology
non-terminating function  | absurdity/contradiction
tuple                     | conjunction (and)
disjoint union            | disjunction (or)          -- corrected by Antal S-Z
parametric polymorphism   | universal quantification

So, to my question: what are some of the more interesting/obscure implications of this isomorphism? I’m no logician so I’m sure I’ve only scratched the surface with this list.

For example, here are some programming notions for which I’m unaware of pithy names in logic:

currying                  | "((a & b) => c) iff (a => (b => c))"
scope                     | "known theory + hypotheses"

And here are some logical concepts which I haven’t quite pinned down in programming terms:

primitive type?           | axiom
set of valid programs?    | theory

Edit:

Here are some more equivalences collected from the responses:

function composition      | syllogism                -- from Apocalisp
continuation-passing      | double negation          -- from camccann
  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-16T03:01:08+00:00Added an answer on May 16, 2026 at 3:01 am

    Since you explicitly asked for the most interesting and obscure ones:

    You can extend C-H to many interesting logics and formulations of logics to obtain a really wide variety of correspondences. Here I’ve tried to focus on some of the more interesting ones rather than on the obscure, plus a couple of fundamental ones that haven’t come up yet.

    evaluation             | proof normalisation/cut-elimination
    variable               | assumption
    S K combinators        | axiomatic formulation of logic   
    pattern matching       | left-sequent rules 
    subtyping              | implicit entailment (not reflected in expressions)
    intersection types     | implicit conjunction
    union types            | implicit disjunction
    open code              | temporal next
    closed code            | necessity
    effects                | possibility
    reachable state        | possible world
    monadic metalanguage   | lax logic
    non-termination        | truth in an unobservable possible world
    distributed programs   | modal logic S5/Hybrid logic
    meta variables         | modal assumptions
    explicit substitutions | contextual modal necessity
    pi-calculus            | linear logic
    

    EDIT: A reference I’d recommend to anyone interested in learning more about extensions of C-H:

    “A Judgmental Reconstruction of Modal Logic” http://www.cs.cmu.edu/~fp/papers/mscs00.pdf – this is a great place to start because it starts from first principles and much of it is aimed to be accessible to non-logicians/language theorists. (I’m the second author though, so I’m biased.)

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I was trying to find examples about socket programming and came upon this script:
While doing some small regex task I came upon this problem. I have a
While reading proggit today, I came upon this comment in a post about how
This question is about 64-bit Java apps in general, although I came upon it
As the title states, I am using devise. I came upon this link that
I'm reading over this query, and I came upon a line where I don't
I came upon this blog post the other day and literally have no idea
I just came upon this article here which can turn your day to day
I was reading the SQLite FAQ , and came upon this passage: Threads are
I was going through Ruby Koans tutorial series , when I came upon this

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.