Skip to content

Commit 9c6b48f

Browse files
committed
Improve notation of HOL schemas
1 parent d1cc0a4 commit 9c6b48f

4 files changed

Lines changed: 263 additions & 216 deletions

File tree

text/dependent_types.tex

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -423,9 +423,9 @@ \section{Dependent types}\label{sec:dependent_types}
423423
Streicher proves that the reflection rule is incompatible with \fullref{thm:church_rosser_theorem}.
424424

425425
\thmitem{def:identity_type/j}\mcite[50]{UnivalentFoundationsProgram2013HoTT} The following \hyperref[rem:type_theory_rule_classification/elim]{elimination rule}, based on the constant \( \synJ \), is much more complicated:
426-
\small
426+
\footnotesize
427427
\begin{equation*}\taglabel[\ensuremath{ =_-^J }]{inf:def:identity_type/j/elim}
428-
\begin{prooftree}[separation=1em]
428+
\begin{prooftree}[separation=1.5em]
429429
\hypo{ x: \tau }
430430
\hypo{ y: \tau }
431431
\hypo{ p: x \syneq_{\tau} y }
@@ -450,7 +450,7 @@ \section{Dependent types}\label{sec:dependent_types}
450450
We also have the following \hyperref[rem:type_theory_rule_classification/equality/comp]{computation rule} based on \cite[\S A.2.10]{UnivalentFoundationsProgram2013HoTT}:
451451
\small
452452
\begin{equation*}\taglabel[\ensuremath{ =_\beta^J }]{inf:def:identity_type/j/comp}
453-
\begin{prooftree}
453+
\begin{prooftree}[separation=1.2em]
454454
\hypo{ x: \tau }
455455
\hypo{ y: \tau }
456456
\hypo{ p: x \syneq_{\tau} y }
@@ -469,8 +469,9 @@ \section{Dependent types}\label{sec:dependent_types}
469469
\incite*[\S 9.1.3]{Mimram2020ProgramEqualsProof} additionally provides a straightforward uniqueness rule, however he claims it is \enquote{debatable} because, as shown in \cite[thm. 1]{Streicher1993IntensionalTypeTheory}, uniqueness entails the reflection rule. In particular, the uniqueness rule is not present in \cite[\S A.2.10]{UnivalentFoundationsProgram2013HoTT}.
470470

471471
\thmitem{def:identity_type/k}\mcite[13]{Streicher1993IntensionalTypeTheory} Streicher suggests the following alternative to \ref{inf:def:identity_type/j/elim}:
472+
\small
472473
\begin{equation*}\taglabel[\ensuremath{ =_-^K }]{inf:def:identity_type/k/elim}
473-
\begin{prooftree}[separation=1.3em]
474+
\begin{prooftree}
474475
\hypo{ x: \tau }
475476
\hypo{ p: x \syneq_{\tau} x }
476477
\infer[dashed]2{ \sigma: \BbbT }
@@ -484,6 +485,7 @@ \section{Dependent types}\label{sec:dependent_types}
484485
\infer4[\ref{inf:def:identity_type/k/elim}]{ \syn\Kappa (\qabs {x^{\tau}} \qabs {p^{x \syneq_{\tau} x}} \sigma) (\qabs {z^{\tau}} M) A E: \sigma[x \mapsto A, p \mapsto E] }
485486
\end{prooftree}
486487
\end{equation*}
488+
\normalsize
487489

488490
Correspondingly, we have the following computation rule:
489491
\begin{equation*}\taglabel[\ensuremath{ =_\beta^K }]{inf:def:identity_type/k/comp}
@@ -1178,9 +1180,9 @@ \section{Dependent types}\label{sec:dependent_types}
11781180
\Cref{thm:unit_type_term_uniqueness} shows how to derive a term of type \( \synx \syneq_{\syn\Bbbone} \synU_+ \). We will find it more convenient to swap the two sides (which is justified by \cref{thm:propositional_equality_equivalence_relation/symmetry}).
11791181

11801182
Let \( M: \synU_+ \syneq_{\syn\Bbbone} \synx \). We can then construct the following derivation:
1181-
\small
1183+
\footnotesize
11821184
\begin{equation*}
1183-
\begin{prooftree}[separation=1em]
1185+
\begin{prooftree}
11841186
\infer0[\ref{inf:def:dependent_unit_type/form}]{ \syn\Bbbone: \syn\BbbT }
11851187
11861188
\infer0[\ref{inf:def:dependent_unit_type/form}]{ \syn\Bbbone: \syn\BbbT }

0 commit comments

Comments
 (0)