According to the propositions-as-types principle, U1 represents
the type of (small) propositions, and a function
can be interpreted as a propositional function. When we want
to stress this logical interpretation, we use the display form
Prop1 for U1 and generally Propi for Ui, and we call
Propi the proposition of leveli.
We can express general propositions in typed logic by quantifying over Propi and Ui. Here are some examples from section 2.
At this level of generality, we need to express the well-formedness of typed formulas in the logic rather than as preconditions on the formulas as we did in section 2. This can be accomplished easily using Ui and Propi. We incorporate into the rules the conditions necessary for well formedness. For example, in the rule
![]() |
![]() |
We need to know that P and Q are propositions. We express this by additional well-formedness subgoals. A complete rule might be
If we maintain the invariant that whenever we can prove
then we know A is in a Ui, and whenever we
prove
then we know P is in Propi, then we can
simplify the rule to this
![]() |
![]() |
![]() |
We need to add well-formedness conditions to the following rules,
,
,
,
.
We already
presented
;
here are the others.
![]() |
![]() |
![]() |
|
![]() |
![]() |
![]() |
![]() |
|
![]() |
|
![]() |
![]() |
![]() |