Skip to main content

Timeline for Consistency in pure type systems

Current License: CC BY-SA 4.0

8 events
when toggle format what by license comment
Sep 11, 2023 at 8:25 vote accept Spaceka13
Sep 11, 2023 at 8:23 comment added Peter LeFanu Lumsdaine [cont’d] In dependent type theory, these are all mutually recursive, since proofs/terms can appear inside propositions/types — so axioms/constants of the system have to be all given at the start, before the typing judgement can be defined. On the other hand, for finite theories this isn’t an issue, because you don’t need any constants/axioms baked in — you can just introduce them as variables — this is one of the powerful features of a PTS or similar systems.
Sep 11, 2023 at 8:22 comment added Peter LeFanu Lumsdaine @Spaceka13: On your second comment — This is subtle and depends a bit on the type theory. Conceptually, most type theorists I know do think of theories in a “stratified” way, with parts of the syntax introduced before others, not all-at-once. But formally, the presentation of the system isn’t stratified so straightforwardly. E.g. in predicate logic, types (if any) can be presented first, then terms (generated from atomic ones), then propositions (generated from atomic predicates), then proofs (generated from axioms). [cont’d]
Sep 11, 2023 at 8:14 comment added Spaceka13 Perfect, that's what I was thinking; thank you for clarifying.
Sep 11, 2023 at 8:13 comment added Peter LeFanu Lumsdaine @Spaceka13: On your first comment — No, variables don’t give inconsistency, because use of variables is tracked by the context saying what variables you’re currently assuming — so you have $v \colon \bot \vdash v \colon \bot$, but you don’t have $\vdash v \colon \bot$ in the empty context — and the definition of inconsistency is proving $\bot$ in the empty context. The explicit use of contexts throughout is fundamental to how most type theories work — be careful not to disregard them!
Sep 11, 2023 at 4:26 comment added Spaceka13 Second, on your second bolded point...My audience generally uses typed languages like this: first specify what the vocabulary is, along with each bit of vocabulary's grammatical category; then use that vocabulary to formulate grammatical expressions of type t which comprise a formal theory of something. It sounds like you're saying that the way this would go, in comp sci, is more `all at once': specify both the vocabulary and associated grammatical categories in a way which (implies terms of type t which?) comprises a formal theory of that same something. Is that right?
Sep 11, 2023 at 4:11 comment added Spaceka13 Thank you, this is very helpful. Two follow-ups. First: the problem which motivated my first question seems to arise even if Consistency is denied. Variables also implies that there is a variable $\nu$ such that $\nu\mathbin{:}(\Pi x\mathbin{:}\ast.\ast)$ is an expression; so $(\Pi x\mathbin{:}\ast.\ast)$ is inhabited; and so once again, the standard definition of consistency is violated. Do I have that right?
Sep 10, 2023 at 14:11 history answered Peter LeFanu Lumsdaine CC BY-SA 4.0