According to the Curry-Howard correspondence the sum-type aka tagged-union is the equivalent of disjunction, logical OR Why is this the case? Is it n ...
According to the Curry-Howard correspondence the sum-type aka tagged-union is the equivalent of disjunction, logical OR Why is this the case? Is it n ...
I am studying Curry–Howard correspondence. Given propositional logic statement: ¬(p ∨ q) -> (¬p ∧ ¬q). I need to define a type (as proposition) a ...
I am studying Curry–Howard correspondence. Given propositional logic statement: (¬p -> q) -> ((¬p -> ¬q) -> p). I need to define a type ...
There is a programming "style" (or maybe paradigm, i'm not sure what to call it) which is as follows: First, you write a specification: a formal desc ...
When I asked this question, one of the answers, now deleted, was suggesting that the type Either corresponds to XOR, rather than OR, in the Curry-Howa ...
At the end of Category Theory 8.2, Bartosz Milewski shows some examples of the correspondence between logic, category theory, and type systems. I was ...
By Curry Howard correspondence, all theorems and lemmas are types and proof objects are values. As an example: When I do, Check test. Coq's output ...
Curry's paradox (named after the same person as the present programming language) is a construction possible in a faulty logic that allows one to prov ...
Following definition compiles and behaves well: However this one does not compile: because I don't understand why they aren't equivalent. Wha ...
I am experimenting with the definition of CoNat taken from this paper by Jesper Cockx and Andreas Abel: I define zero and plus: And I define bis ...
When I have an "enum" type, that is, an algebraic data type where none of the cases wrap any other data, I commonly like to project a parser/printer o ...
How do I show that anything follows from a value of a type with no constructors in Scala? I would like to do a pattern match on the value and have Sca ...
A question is nagging me since I began going through the interactive Lean tutorial: What is the purpose of the separate Prop hierarchy within Type? A ...
In wikipedia, the bottom type is simply defined as "the type that has no values". However, if b is this empty type, then the product type (b,b) has no ...
Simply put, the Curry-Howard correspondence states that a type is a theorem and that a program returning this type is a proof of the corresponding the ...
I am trying to write a weaken function for finite sets of integers. I am using the singletons package. I have defined and promoted addition, subtracti ...
Edit: By Void, I mean Haskell's Void type, i.e. empty type that cannot have values but undefined. There is an ongoing discussion on Swift Evolution w ...
I implemented three of the four De Morgan's Laws in Haskell: notAandNotB :: (a -> c, b -> c) -> Either a b -> c notAandNotB (f, g) (Left ...
If I understand Curry-Howard's isomorphism correctly, every dependent type correspond to a theorem, for which a program implementing it is a proof. Th ...
In Propositions as Types, it is written: In 1935, at the age of 25, Gentzen15 introduced not one but two new formulations of logic—natural deducti ...