blanketglossary

Curry–Howard correspondence

Definition

In programming language theory and proof theory, the Curry–Howard correspondence is a direct relationship between computer programs and mathematical proofs. It is also known as the Curry–Howard isomorphism or equivalence, or the proofs-as-programs and propositions- or formulae-as-types interpretation.

Related concepts

Abstract machineAcademic PressAlgebraic data typeAnalogyAndrey KolmogorovApplyArend HeytingAutomathAxiom-schemeAxiom of choiceAxiom schemeBHK interpretationBrouwer–Heyting–Kolmogorov interpretationCalculus of constructionsCall-by-nameCall-by-valueCall-with-current-continuationCartesian closed categoriesCategorical logicCategory theoryClassical logicClosed monoidal categoryCobordismCombinatory logicComputer programComputer programmingContinuationContinuation-passing styleCorecursionCurry's paradoxCurry (programming language)CurryingDag PrawitzData typeDeduction theoremDependent typeDialectica interpretationDouble-negation translationEindhoven University of TechnologyElsevierElsevier ScienceEmpty typeEvaluation strategyExistential quantificationFormal systemFormula (mathematical logic)Free variables and bound variablesFunction applicationFunction typeFunctional programmingGenetic programmingGentzenGeorg KreiselGrothendieck topologyHaskellHaskell CurryHigher-order logicHilbert-style deduction systemHomotopyHomotopy type theoryHypothesesINRIAIdentity typeImplication eliminationImplication introductionInference rulesInstitute for Advanced StudyInternal languageInternational Conference on Logic Programming and Automated ReasoningIntuitionismIntuitionisticIntuitionistic logicIntuitionistic type theoryJ. Roger HindleyJean GallierJoachim LambekJonathan P. SeldinKolmogorovKurt GödelL. E. J. BrouwerLambda-mu calculusLambda calculusLinear logicLinear type systemLogic programmingLogical conjunctionLogical disjunctionLogical implicationLogicianMartin-LöfMathematical inductionMathematical proofMathematicianMathematicsModal logicModel of computationModus ponensMonad (functional programming)NamesakeNatural deductionNicolaas Govert de BruijnNormalization property (lambda-calculus)Open-source softwareOxford University PressP.T. JohnstonePeirce's lawPhilip WadlerPrincipal typeProduct typeProgram correctnessProgramming languageProgramming language theoryProof-carrying codeProof assistantProof calculusProof theoryRealizabilityRecursion (computer science)Relevant logicReturn typeRocqRuy de QueirozSequentSequent calculusSet theorySimply typed lambda calculusSpringer-VerlagSpringer Science+Business MediaStephen Cole KleeneStephen KleeneString theorySum typeSystem FTautology (logic)Terminal objectThierry CoquandTotal functional programmingTuring completenessType inhabitation problemType systemsType theoryTyped lambda calculusTyping contextTyping ruleUnit typeUnivalence axiomUniversal quantificationWilliam Alvin Howard

26 concepts already in your glossary