39
votes
Why colon to denote that a value belongs to a type?
The main reason to prefer the colon notation $t : T$ to the membership relation $t \in T$ is that the membership relation can be misleading because types are not (just) collections.
[Supplemental: I ...
- 27.5k
29
votes
What's the relation and difference between Calculus of Inductive Constructions and Intuitionistic Type Theory?
I've already answered somewhat, but I'll try to give a more detailed overview of the type theoretical horizon, if you will.
I'm a bit fuzzy on the historical specifics, so more informed readers will ...
- 13.4k
24
votes
Accepted
Why it's impossible to declare an induction principle for Church numerals
The question you are asking is interesting and known. You are using the so-called impredicative encoding of the natural numbers. Let me explain a bit of the background.
Given a type constructor $T : \...
- 27.5k
24
votes
Accepted
Why was there a need for Martin-Löf to create intuitionistic type theory?
Very briefly: the simply-typed $\lambda$-calculus does not have dependent types. Dependent types were proposed by de Bruijn and Howard who wanted to extend the Curry-Howard correspondence from ...
- 10.6k
23
votes
Is there a typed lambda calculus which is consistent and Turing complete?
Alright I'll give a crack at it: In general for a given type system $T$, the following is true:
If all well-type terms in the calculus $T$ are normalizing, then $T$ is consistent when viewed as a ...
- 13.4k
22
votes
Accepted
Is MLTT effectively pCiC without Prop?
The short answer is yes, MLTT can reasonably be equated with CIC without impredicative Prop.
The main technical issue is that there are dozens of variants when one ...
- 13.4k
21
votes
Why study type theory?
Type theories in which every type is inhabited are far from being useless. True enough, through the eyes of logic they are inconsistent, but there are other things in life apart from logic.
A general ...
- 27.5k
21
votes
Accepted
Why do constructivists not seem to care too much about call/cc
Constructive mathematics is not just a formal system but rather an understanding of what mathematics is about. Or to put it differently, not every kind of semantics is accepted by a constructive ...
- 27.5k
21
votes
Accepted
Subtypes as subsets of SML datatypes
These kinds of types -- where you define a subtype (basically) by giving a grammar of the acceptable values -- are called datasort refinements.
They were introduced by Tim Freeman and Frank Pfenning,...
- 32.1k
20
votes
Accepted
Relative consistency of PA and some type theories
The short answer to your question 1 is no, but for perhaps subtle reasons.
First of all, System $F$ and $F_\omega$ cannot express the first-order theory of arithmetic, and even less the consistency ...
- 13.4k
20
votes
Accepted
Swapping arguments of variables in higher-order pattern unification
I have developed this, but haven't yet published it in a more strucured/formal manner.
"Enhanced pattern unification" abstract here.
Demo implementation.
Video recording.
You're absolutely ...
- 1,444
16
votes
In the Hott book, are the most of the type formers redundant? And if so, why?
You are asking several questions which are similar but distinct.
Why doesn't the HoTT book use Church encodings for data types?
Church encodings do not work in Martin-Löf type theory, for two ...
- 32.1k
15
votes
Do I have to give up the Law of the Excluded Middle in order to Learn $\lambda$-Calculus?
To me, your question seems analogous to saying "I've heard that non-Euclidean geometry requires me to give up Euclid's fifth axiom, which is very useful in many mathematical contexts." You don't have ...
- 251
15
votes
Accepted
In the Hott book, are the most of the type formers redundant? And if so, why?
Let me explain why the suggested encoding of the empty type does not work. We need to be explicit about universe levels and not sweep them under the rug.
When people say "the empty type", they might ...
- 27.5k
14
votes
Accepted
Logical Reations for an Impredicative System in a Predicative MetaTheory
In general, what we usually call the logical relations argument isn't really linked to impredicativity: the main idea is simply to interpret terms in some abstract algebra $\cal A$, and to represent ...
- 13.4k
14
votes
Accepted
Do I have to give up the Law of the Excluded Middle in order to Learn $\lambda$-Calculus?
You seem to be confusing several things here.
First of all, like Alexis said in her answer, I don't see why you would need to accept/reject the principles of a given logical theory in order to study ...
- 5,038
14
votes
Accepted
Why colon to denote that a value belongs to a type?
Because what's on the right of the colon isn't necessarily a set and what's on the left of the colon isn't necessarily a member of that set.
Type theory started out in the early 20th century as an ...
14
votes
Accepted
Defining inductive types in intensional type theory purely in terms of type-theoretic data
It turns out that $W$ types plus identity types (eq/= in Coq) allow you to construct pretty much all the general inductive types ...
- 256
14
votes
Accepted
Which universities in the U.S. are doing research in type theory?
Any such list is always subjective, but the best approach to answer this question is:
Look at journals/conferences in the area you're interested in. For type theory, I'd look at LICS, LMCS, POPL, ...
- 2,764
13
votes
Accepted
Ramification of An Impredicative Type Theory
I'm going to elaborate my comments into an answer. The origins of predicative type theory are almost as old as type theory itself, since one of Russel's motivations was to ban "circular" definitions ...
- 13.4k
13
votes
Accepted
Contradiction between Gödel's Second Incompleteness Theorem and the Church-Rosser's property of CIC?
First, you are confusing consistency of CIC as an equational theory with consistency of CIC as a logical theory. The first means that not all terms of CIC (of the same type) are $\beta\eta$-equivalent....
- 5,038
13
votes
Accepted
Is there a good notion of non-termination and halting proofs in type theory?
Because one of the principal applications of Type Theory in formalizations has been to study programing languages and computation in general, a lot of thought has gone into ways of representing ...
- 13.4k
13
votes
Accepted
What is the difference between System F and Hindley-Milner type system?
Yes, In Hindley-Milner universal quantifiers are allowed only at the outside of a type (and therefore omitted). For example, in HM you can have the type $\forall \alpha.(\alpha\to\alpha) \to (\alpha\...
- 613
13
votes
Accepted
Can Isorecursive types capture mutually recursive data types?
In general, for any type (or domain, or complete lattice) $X$ we can consider the least fixed-point operator $\mu_X : (X \to X) \to X$. For recursive types we take $X = \mathsf{Type}$, i.e., we apply $...
- 27.5k
13
votes
Accepted
Why is regularity a problem in cubical type theory?
The difficulty is in making such a reduction compatible with all the other reductions involving transport/coe. From one perspective it is a “confluence” problem. It is unfortunate that in the ...
12
votes
Accepted
Logical framework vs type theory
Summary. A logical framework is a meta-language for the formalisation of deductive systems, where deductions become syntactic objects.
Of course what counts as a meta-language is quite vague, and it ...
- 10.6k
12
votes
Accepted
Does the Law of Excluded Middle imply the Axiom K in Martin-Löf's Intensional Type Theory?
Yes, LEM implies K. See HoTT book Theorem 7.2.5, known as Hedberg's theorem, which shows that any type with decidable equality satisfies axiom $K$. If we assume excluded middle, all types have ...
- 27.5k
12
votes
Accepted
What kind of theoretical object corresponds to a C++ concept?
From a programming language theory perspective, as opposed to the computability perspective other answers and comments have offered, C++ templates combined with concepts correspond to bounded ...
- 16.6k
12
votes
Accepted
Applications of algebraic geometry in type theory/programming language theory
To my knowledge (which is definitely incomplete), there has been relatively little work on this, presumably because it requires assimilating two relatively intricate bodies of knowledge. However, ...
- 32.1k
12
votes
Why is the Curry-Howard isomorphism?
I suspect someone is going to come along with a deep category-theoretic reason for the connection, but in the meantime, here is my insight.
Both logic and programming with functions are built around ...
- 2,764
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
type-theory × 379dependent-type × 94
lo.logic × 90
pl.programming-languages × 78
lambda-calculus × 76
type-systems × 48
type-inference × 34
reference-request × 33
typed-lambda-calculus × 33
ct.category-theory × 29
calculus-of-constructions × 26
coq × 23
functional-programming × 20
homotopy-type-theory × 20
proof-theory × 17
proof-assistants × 13
normalization × 10
polymorphism × 10
automated-theorem-proving × 9
computability × 8
parametricity × 8
curry-howard × 8
set-theory × 7
linear-logic × 7
constructive-mathematics × 7