Homotopy Type Theory propositional logic > history (Rev #2, changes)

Showing changes from revision #1 to #2: Added | Removed | Changed

\tableofcontents

\section{Idea}

Propositional logic could be represented in dependent type theory.

\section{Presentation}

The model of dependent type theory we shall be presenting here is the objective type theory version of dependent type theory. There are multiple reasons for this:

  • Since objective type theory lacks definitional equality,

    • The ruleset is simpler in the objective type theory model of homotopy type theory than other models such as Martin-Löf type theory, cubical type theory, or higher observational type theory

    • The results in objective type theory are more general than in models which use definitional equality

    • It is similar to other non-type theory foundations such as the various flavors of set theory, since it also only has one notion of equality, which is propositional equality in both objective type theory and set theory, and uses propositional equality to define terms and types.

  • From a more practical standpoint, objective type theory not only has decidable type checking, it has polynomial (quadratic) time type checking, which makes it efficient from a computational standpoint.

\subsection{Judgments and contexts}

The objective type theory model of propositional logic consists of three judgments: proposition judgments ApropA \; \mathrm{prop}, where we judge AA to be a proposition, proof judgments, where we judge aa to be a proof of AA, a:Aa:A, and context judgments, where we judge Γ\Gamma to be a context, Γctx\Gamma \; \mathrm{ctx}. Contexts are lists of proof judgments a:Aa:A, b:Bb:B, c:Cc:C, et cetera, and are formalized by the rules for the empty context and extending the context by a proof judgment

()ctxΓctxΓAprop(Γ,a:A)ctx\frac{}{() \; \mathrm{ctx}} \qquad \frac{\Gamma \; \mathrm{ctx} \quad \Gamma \vdash A \; \mathrm{prop}}{(\Gamma, a:A) \; \mathrm{ctx}}

\subsection{Structural rules}

There are three structural rules in objective type theory, the variable rule?, the weakening rule?, and the substitution rule?.

The variable rule states that we may derive a proof judgment if the proof judgment is in the context already:

Γ,a:A,ΔctxΓ,a:A,Δa:A\frac{\vdash \Gamma, a:A, \Delta \; \mathrm{ctx}}{\vdash \Gamma, a:A, \Delta \vdash a:A}

Let 𝒥\mathcal{J} be any arbitrary judgment. Then we have the following rules:

The weakening rule:

Γ,Δ𝒥ΓApropΓ,a:A,Δ𝒥\frac{\Gamma, \Delta \vdash \mathcal{J} \quad \Gamma \vdash A \; \mathrm{prop}}{\Gamma, a:A, \Delta \vdash \mathcal{J}}

The substitution rule:

Γa:AΓ,b:A,Δ𝒥Γ,Δ[a/b]𝒥[a/b]\frac{\Gamma \vdash a:A \quad \Gamma, b:A, \Delta \vdash \mathcal{J}}{\Gamma, \Delta[a/b] \vdash \mathcal{J}[a/b]}

The weakening and substitution rules are admissible rules: they do not need to be explicitly included in the type theory as they could be proven by induction on the structure of all possible derivations.

\subsection{Predicates and dependent proof}

A predicate is a proposition BB in the context of the variable judgment x:Ax:A, x:ABpropx:A \vdash B \; \mathrm{prop}, they are usually written as B(x)B(x) to indicate its dependence upon xx.

A dependent proof is a proof b:Bb:B in the context of the variable judgment x:Ax:A, x:Ab:Bx:A \vdash b:B. dependent proofs are likewise usually written as b(x)b(x) to indicate its dependence upon xx.

\subsection{Equality}

Equality of proofs of a proposition is represented by a proposition known as the equality proposition. The elements of the equality proposition are called equalities.

Equality comes with a formation rule, an introduction rule, an elimination rule, and a computation rule:

Formation rule for equality propositions:

ΓApropΓ,a:A,b:Aa= Abprop\frac{\Gamma \vdash A \; \mathrm{prop}}{\Gamma, a:A, b:A \vdash a =_A b \; \mathrm{prop}}

Introduction rule for equality propositions:

ΓApropΓ,a:Arefl A(a):a= Aa\frac{\Gamma \vdash A \; \mathrm{prop}}{\Gamma, a:A \vdash \mathrm{refl}_A(a) : a =_A a}

Elimination rule for equality propositions:

Γ,a:A,b:A,p:a= AbC(a,b,p)propΓ,a:At:C(a,a,refl A(a))Γ,a:A,b:A,p:a= AbJ(t,a,b,p):C(a,b,p)\frac{\Gamma, a:A, b:A, p:a =_A b \vdash C(a, b, p) \; \mathrm{prop} \quad \Gamma, a:A \vdash t:C(a, a, \mathrm{refl}_A(a))}{\Gamma, a:A, b:A, p:a =_A b \vdash J(t, a, b, p):C(a, b, p)}

Computation rules for equality propositions:

Γ,a:A,b:A,p:a= AbC(a,b,p)propΓ,a:At:C(a,a,refl A(a))Γ,a:A,b:A,p:a= Abβ = A(a):J(t,a,a,refl(a))= C(a,a,refl A(a))t\frac{\Gamma, a:A, b:A, p:a =_A b \vdash C(a, b, p) \; \mathrm{prop} \quad \Gamma, a:A \vdash t:C(a, a, \mathrm{refl}_A(a))}{\Gamma, a:A, b:A, p:a =_A b \vdash \beta_{=_A}(a) : J(t, a, a, \mathrm{refl}(a)) =_{C(a, a, \mathrm{refl}_A(a))} t}

\subsection{Propositional truncation}

One also adds the propositional truncation rule for propositions:

ΓApropΓ,a:A,b:Aproptrunc(a,b):a= Ab\frac{\Gamma \vdash A \; \mathrm{prop}}{\Gamma, a:A, b:A \vdash \mathrm{proptrunc}(a, b):a =_A b}

which ensures that every proposition behaves like an h-proposition in dependent type theory.

\section{See also}

Revision on October 14, 2022 at 04:22:16 by Anonymous?. See the history of this page for a list of all contributions to it.