Questions tagged [curry-howard]
The curry-howard tag has no usage guidance.
40
questions
5
votes
3
answers
829
views
Curry-Howard isomorphism and non-constructive logic
My understanding of the Curry–Howard correspondence is that it shows an isomorphism between constructive logic (also called intuitionistic logic) and computer programs in appropriate typed languages.
...
0
votes
1
answer
67
views
Relation between Curry-Howard isomorphism and Kripke semantics for intuitionistic logic
Intuitionistic logic(s) are usually defined in a purely synthetic way, with their own deduction rules different from classical logic, but they also have semantic interpretations.
One of them, more ...
0
votes
0
answers
26
views
Is the existence of multiple algorithms for one problem the example of application of homotopy type theory?
There are problems which can be solved by multiple different algorithms, like shortest-path in graph: https://en.wikipedia.org/wiki/Shortest_path_problem. By Curry-Howard isomorphishm, each problem is ...
1
vote
1
answer
49
views
On the logical and categorical interpretation of lambda calculi and type systems
There is a well-known Curry-Howard-Lambek correspondence between certain type systems, proof calculi and categories.
Some variants of Barendregt's pure type systems have the property of strong ...
3
votes
2
answers
149
views
What are some examples of proofs that are also themselves "useful" programs?
With dependent types, types can be statements that are true or false and constructing a value with that type constitutes a proof of that statement. This proof/value construction is itself a program ...
2
votes
1
answer
80
views
Is the root function computationally equivalent to function application?
If a function type is representable by exponentiation, does it follow that function application is represented by the right inverse, roots? It would seem that roots consume a function's input to ...
2
votes
0
answers
84
views
How can we derive this representation of existential types?
I know that an existential type $ \exists t. t $ can be represented using universally quantified types as $ \forall r. (\forall t. t \rightarrow r) \rightarrow r $ and I have some basic intuition for ...
1
vote
0
answers
27
views
Analogue of disjunction and existence properties for a Turing-complete programming language?
Quoting from Wikipedia:
In mathematical logic, the disjunction and existence properties are
the "hallmarks" of constructive theories such as Heyting arithmetic
and constructive set theories ...
1
vote
0
answers
73
views
How do program types such as natural numbers figure into the Curry-Howard Isomorphism?
In Coq, the nat, the type of natural numbers, has type Set. By the Curry-Howard Isomorphism, all propositions of type ...
2
votes
1
answer
98
views
What are the differences between LCF's Theorem and Automath's Prop?
How are the fundamental approaches to proving theorems by LCF and Automath different? Considering their modern descendants - Isabelle for LCF and Coq for Automath, both rely on type checking to do ...
3
votes
2
answers
130
views
Curry–Howard correspondence and functional programming "reliability"
The first time I heard about functional programming, someone told me "it's more reliable to code in a functional style because your type system is like a proof of correctness".
I recently ...
3
votes
1
answer
232
views
Curry-Howard, void, and type checking in Haskell
I am trying to understand an example of theorem proving via type checking in Haskell given here. The example is as follows.
Using the Curry-Howard isomorphism, construct an inhabitant of the type and ...
5
votes
0
answers
277
views
Understanding $\lambda \mu$-calculus in more programming way
I am learning $\lambda \mu$-calculus (self-study).
I learned it because it seems very useful for understanding Curry-Howard correspondence (e.g understanding the connection between classical logic ...
5
votes
2
answers
648
views
Does the underlying computational calculus in type theories affect decidability?
I'm looking for a high-level explanation although if that isn't possible or difficult, I'd prefer references to books/papers.
I understand that modern type theory is inspired by Curry-Howard ...
0
votes
0
answers
38
views
How do you derive a type $∃e(e)$ in terms of universally quantified types, without invoking Void initially?
I wrote a "proof" for this, and though it was enough to convince myself, there are a few things that bother me about it. Primarily I'm not sure about the loose way in which I'm swapping between first-...
2
votes
1
answer
170
views
Curry-howard isomorphism in object oriented programming languages
I want to get a better intuition for the curry howard isomorphism, and my intuition is mainly based on object oriented programming languages like JavaScript.
So as an example, I am going to formalize ...
5
votes
1
answer
435
views
Implementing mathematical theory of arithmetic in Haskell via Curry-Howard correspondence
I have to ask for forgiveness in advance if the whole question doesn't
make a lot of sense, but unfortunately, I have no better intuition as
of right now and this seems like the best starting point I ...
5
votes
1
answer
264
views
Lambda calculus as the language of universal logic - connectives vs functions in lambda calculus?
I am reading http://okmij.org/ftp/gengo/applicative-symantics/AACG1.pdf and there is defined language TL (see last row in the table on page 4). It seems to me from this definition of TL, that lambda ...
4
votes
2
answers
102
views
Why algorithms calculating non-tirivial zeros can't be used as proofs of Riemann Hypothesis?
Recently I was reading again this propositions as types paper by Philip Wadler:
http://homepages.inf.ed.ac.uk/wadler/papers/propositions-as-types/propositions-as-types.pdf
It gives an impression, ...
1
vote
1
answer
78
views
Is implication(function) more fundamental than lets say conjunction(product) in type theory?
According to the answer at (How to define function type in AGDA) the function type is kind of a fundamental thing in Agda and needed for bootstrapping, hence end user can not define it like what they ...
4
votes
1
answer
230
views
How logic programming (especially ASP) is related to the reasoning in (first-order) logic?
How logic programming (https://en.wikipedia.org/wiki/Logic_programming, especially answer set programming) is related to the reasoning in the (first-order) logic? Maybe logic programming can be ...
5
votes
1
answer
368
views
Can lambda-calculus be used for knowledge representation?
Natural language semantics (in computational linguistics) uses lambda terms for expressing the semantics of natural language sentences. There is vast literature about combinatorial categorial grammars ...
7
votes
1
answer
579
views
Curry Howard correspondence to Predicate Logic?
So I'm trying to get my head round Curry-Howard. (I've tried at it several times, it's just not gelling/seems too abstract). To tackle something concrete, I'm working through the couple of Haskell ...
4
votes
0
answers
74
views
What is the role of abstract machines in the Curry-Howard isomorphism?
By abstract machines I mean things like the SECD machine, Krivine's machine or more generally machines with states/memory/registers/stack/accumulator...
According to Wikipedia page of the Curry-...
8
votes
1
answer
170
views
Can a type system serve as a proof assistant for foreign functions?
Given that:
A language with very expressive type systems (e.g. Idris) can also have escape mechanisms like foreign function interfaces/unsafePerformIO.
There are proof assistants that can be used to ...
3
votes
2
answers
847
views
forall a b, a -> b [duplicate]
I know for pretty sure that there is a function with the type $f: \forall \alpha, \beta . \alpha \rightarrow \beta$ (at least in a Hindley-Milner type system), but I can't wrap my head over it. ...
8
votes
2
answers
248
views
Why Church-encoded types aren't sufficient to express inductive proofs?
I've heard some claims that the calculus of constructions without inductive types isn't powerful enough to express proofs by induction. Is that correct? If so, why isn't the Church-encoding sufficient ...
12
votes
1
answer
813
views
Is there an isomorphism between (subset of) category theory and relational algebra?
It comes from big data perspective. Basically, many frameworks (like Apache Spark) "compensate" lack of relational operations by providing Functor/Monad-like interfaces and there is a similar movement ...
1
vote
0
answers
53
views
Curry howard Isomorphism what the propositions A , B ranges over
In CH-I what the propositions A , B ranges over too ?
An update :
From Pfennings notes :
"A denotes proposition about the mathematical objects such as integer or a real number."
From :
Per ...
2
votes
0
answers
179
views
Curry howard isomorphism "proof as program"
I'm reading CH Isomorphism.
Let's divide into two stages:
Prop corresponds to types. so a proposition A $\wedge$ B corresponds to type A $\times$ B.
Proof corresponds to the program. What is the ...
2
votes
1
answer
115
views
relation between $\forall$ and implication in intuitionistic logic using curry-howard and propositions as types
I am currently trying to wrap my head around intuitionistic logic and its interpretation using the curry-howard isomorphism and propositions as types.
I came about this explained relation between $\...
13
votes
1
answer
938
views
Testing whether an arbitrary proof is circular?
I was thinking about proofs and ran into an interesting observation. So proofs are equivalent to programs via the Curry-Howard Isomorphism, and circular proofs correspond to infinite recursion. But we ...
5
votes
2
answers
333
views
Uses of the type Unit
The Unit type is a singleton type containing the constant unit. In functional languages with side effects, ...
7
votes
2
answers
730
views
In the Curry-Howard isomorphism as applied to Hindley-Milner types, what proposition corresponds to a -> [a]?
(Using Haskell syntax, since the question is inspired by Haskell, but it applies to general Hindley-Milner polymorphic type systems, such as SML or Elm).
If I have a type signature ...
3
votes
3
answers
195
views
Isn't Domain of a variable nothing but a constraint?
In Constraint programming we have Variables and their Domains and then all the constraints, but if you at the concept of a domain of a variable it is nothing but another type of constraint, you are ...
1
vote
2
answers
935
views
Curry Howard correspondence and Church-Turing thesis
Curry-Howard correspondence states the equivalence between logic/deduction and types/programs.
The Church-Turing thesis states the equivalence of some models of computation. Specifically, all ...
6
votes
2
answers
691
views
Given the "programs as proofs" isomorphism, how do we know that the program isn't lying?
I've been studying constructive type theory (CTT) and one of the things that I'm not clear on is the proof part: Proving the correctness of a program in a form of a proof that's nothing but the ...
17
votes
2
answers
1k
views
Does the Y combinator contradict the Curry-Howard correspondence?
The Y combinator has the type $(a \rightarrow a) \rightarrow a$. By the Curry-Howard Correspondence, because the type $(a \rightarrow a) \rightarrow a$ is inhabited, it must correspond to a true ...
2
votes
2
answers
602
views
Is Wadler's 'Theorems for Free' as general as Design By Contract for establishing correctness?
Philip Wadler has written a brilliant paper called 'Theorems for Free'. The big idea is that you can use types to reason about your program, and even prove simple theorems about your program.
We see ...
6
votes
1
answer
520
views
Non-termination of types in Martin-Löf's Type:Type?
In the pre-history of dependent type theory, Per Martin Löf
introduced a calculus that is in some sense the simplest dependent
type theory and the most general form of impredicative polymorphism.
It ...