Curry–Howard correspondence
E588866
concept in mathematical logic
concept in theoretical computer science
correspondence between logic and computation
The Curry–Howard correspondence is a foundational principle in logic and computer science that establishes a deep analogy between proofs and programs, and between logical propositions and types in programming languages.
Observed surface forms (3)
| Surface form | Occurrences |
|---|---|
| Curry–Howard–Lambek correspondence | 2 |
| Curry–Howard correspondence (foundational ideas) | 1 |
| “Propositions as Types” | 1 |
Statements (48)
| Predicate | Object |
|---|---|
| instanceOf |
concept in mathematical logic
ⓘ
concept in theoretical computer science ⓘ correspondence between logic and computation ⓘ |
| alsoKnownAs |
Curry–Howard isomorphism
NERFINISHED
ⓘ
proofs-as-programs ⓘ propositions-as-types NERFINISHED ⓘ |
| appliesTo |
constructive type theory
ⓘ
intuitionistic logic NERFINISHED ⓘ natural deduction systems ⓘ sequent calculi ⓘ simply typed lambda calculus ⓘ typed lambda calculi ⓘ |
| coreClaim |
proof normalization corresponds to program evaluation
ⓘ
proofs correspond to programs ⓘ propositions correspond to types ⓘ |
| developedBy |
Haskell Curry
NERFINISHED
ⓘ
William Alvin Howard NERFINISHED ⓘ |
| field |
logic in computer science
ⓘ
programming language theory ⓘ proof theory ⓘ type theory ⓘ |
| formalizedIn | Howard 1969 paper "The formulae-as-types notion of construction" NERFINISHED ⓘ |
| formalizesRelationBetween |
constructive proofs
ⓘ
programs with types ⓘ |
| historicalRoot |
combinatory logic
NERFINISHED
ⓘ
intuitionistic proof theory ⓘ lambda calculus ⓘ |
| implies |
every constructive proof can be seen as a program
ⓘ
program extraction from proofs ⓘ type checking corresponds to proof checking ⓘ |
| inspired |
dependently typed programming languages
ⓘ
design of functional programming languages ⓘ proof assistants ⓘ type systems in programming languages ⓘ |
| namedAfter |
Haskell Curry
NERFINISHED
ⓘ
William Alvin Howard NERFINISHED ⓘ |
| relatedConcept |
Brouwer–Heyting–Kolmogorov interpretation
NERFINISHED
ⓘ
constructive mathematics ⓘ dependent types ⓘ homotopy type theory NERFINISHED ⓘ |
| relatesConcept |
computer programs
ⓘ
formal proofs ⓘ logical propositions ⓘ types in programming languages ⓘ |
| usedIn |
Agda
NERFINISHED
ⓘ
Coq NERFINISHED ⓘ Idris programming language NERFINISHED ⓘ Lean theorem prover NERFINISHED ⓘ |
Referenced by (7)
Full triples — surface form annotated when it differs from this entity's canonical label.
this entity surface form:
Curry–Howard correspondence (foundational ideas)
this entity surface form:
Curry–Howard–Lambek correspondence
this entity surface form:
Curry–Howard–Lambek correspondence
this entity surface form:
“Propositions as Types”