Logic-Enriched Type Theory and Predicative Mathematics
Prerequisites. Direct starred prerequisites: none. No later core chapter depends on this route.
The assertion that a natural number is even needs no computational payload in order to define the set of even numbers. Under propositions-as-types, however, the assertion and its proofs inhabit the same typed term language as the number. Classical double-negation elimination then becomes a data constructor with no reduction rule. A predicative development has a second reason to resist this identification: a set may be defined by quantifying over numbers without thereby permitting quantification over the totality of all sets.
Write 𝖤𝗏𝖾𝗇(𝑛):=∃𝑘:𝖭.𝑛=𝑘+𝑘. The expression 𝖤𝗏𝖾𝗇(𝑛) below is a proposition, not a type, and a derivation of it is not a term stored beside 𝑛. This separation is the operation performed by a logic-enriched type theory: its logical judgments may depend on typed terms, while its term judgments do not acquire proof objects merely because the logic is classical.
The system 𝖫𝖳𝖳0 used in this chapter is the Adams–Luo subsystem corresponding to 𝖠𝖢𝖠0. Its type component contains natural numbers, products, functions, a Tarski universe 𝖴 of small types, and 𝖲𝖾𝗍(𝐴). The codes in 𝖴 are generated by ̂𝖭 and binary product; function and set types have no codes. Natural-number recursion may return only a decoded small type.
There are four principal judgments: Γ⊢𝐴𝗍𝗒𝗉𝖾,Γ⊢𝑡:𝐴,Γ⊢𝑃𝖯𝗋𝗈𝗉,Γ;Δ⊢𝑃. Here Γ contains typed term variables and Δ is a finite list of propositions. The last judgment records derivability in classical predicate logic. A proof is a derivation of that judgment; the object syntax contains no proof variable and no proof term. Small propositions additionally have codes 𝑝𝗉𝗋𝗈𝗉 with decoding 𝖵(𝑝)𝖯𝗋𝗈𝗉.
The stronger system 𝖫𝖳𝖳∗0 differs only by allowing induction on analytic propositions: their quantifiers range over decoded small types or 𝖲𝖾𝗍(𝖭). The unrestricted Weyl system 𝖫𝖳𝖳W allows elimination into every type and induction on every proposition. No theorem below transfers that unrestricted strength to 𝖫𝖳𝖳0.
The context split has a visible consequence. If ℎ:𝖤𝗏𝖾𝗇(𝑛) were a term variable, then Γ,ℎ:𝖤𝗏𝖾𝗇(𝑛) would be a term context, which is ill formed because 𝖤𝗏𝖾𝗇(𝑛) is not a type. The correct hypothesis is 𝖤𝗏𝖾𝗇(𝑛)∈Δ.
The proposition grammar needed here is 𝑃,𝑄::=⊥∣𝑠=𝑎𝑡∣𝑠∈𝑎𝑋∣𝑃⇒𝑄∣∀𝑥:𝐴.𝑃. The annotation 𝑎:𝖴 satisfies 𝐴≡𝖳(𝑎). A proposition is small when every quantified type is decoded from a code in 𝖴. The small-proposition codes are generated in the same order: ̂⊥,𝑠̂=𝑎𝑡,𝑠̂∈𝑎𝑋,𝑝̂⇒𝑞,̂∀𝑥:𝑎.𝑝. Their decoding equations are judgmental; for example, 𝖵(̂∀𝑥:𝑎.𝑝)≡∀𝑥:𝖳(𝑎).𝖵(𝑝).
The logical formation rules are stated before their proof rules. The omitted well-formedness premises are restored where a dependency matters.
Γ𝗏𝖺𝗅𝗂𝖽
Γ⊢⊥𝖯𝗋𝗈𝗉
LTT–F
Γ⊢𝑃𝖯𝗋𝗈𝗉Γ⊢𝑄𝖯𝗋𝗈𝗉
Γ⊢𝑃⇒𝑄𝖯𝗋𝗈𝗉
LTT–F
Γ⊢𝐴𝗍𝗒𝗉𝖾Γ,𝑥:𝐴⊢𝑃𝖯𝗋𝗈𝗉
Γ⊢∀𝑥:𝐴.𝑃𝖯𝗋𝗈𝗉
LTT–F
Γ⊢𝑎:𝖴Γ⊢𝑡:𝖳(𝑎)Γ⊢𝑋:𝖲𝖾𝗍(𝖳(𝑎))
Γ⊢𝑡∈𝑎𝑋𝖯𝗋𝗈𝗉
LTT–F
Classical entailment is generated by the following introduction, elimination, and classical rules together with structural exchange, weakening, and contraction on Δ.
𝑃∈Δ
Γ;Δ⊢𝑃
LTT-Hyp
Γ;Δ,𝑃⊢𝑄
Γ;Δ⊢𝑃⇒𝑄
LTT–I
Γ;Δ⊢𝑃⇒𝑄Γ;Δ⊢𝑃
Γ;Δ⊢𝑄
LTT–E
Γ,𝑥:𝐴;Δ⊢𝑃𝑥∉FV(Δ)
Γ;Δ⊢∀𝑥:𝐴.𝑃
LTT–I
Γ;Δ⊢∀𝑥:𝐴.𝑃Γ⊢𝑡:𝐴
Γ;Δ⊢𝑃[𝑡/𝑥]
LTT–E
Γ;Δ,𝑃⇒⊥⊢⊥
Γ;Δ⊢𝑃
LTT-Classical
For example, let 𝑃 be well formed. The derivation
𝑃∈Δ,𝑃
Γ;Δ,𝑃⊢𝑃
LTT-Hyp
Γ;Δ⊢𝑃⇒𝑃
LTT–I
has no corresponding term 𝜆𝑝.𝑝 in the type language. Its absence is not proof irrelevance; there are simply no proof terms to compare.
For 𝑎:𝖴, the formation, introduction, elimination, computation, and extensional uniqueness rules for sets are
Γ⊢𝑎:𝖴
Γ⊢𝖲𝖾𝗍(𝖳(𝑎))𝗍𝗒𝗉𝖾
LTT-Set-F
Γ⊢𝑎:𝖴Γ,𝑥:𝖳(𝑎)⊢𝑝𝗉𝗋𝗈𝗉
Γ⊢{𝑥:𝖳(𝑎)∣𝑝}:𝖲𝖾𝗍(𝖳(𝑎))
LTT-Set-I
Γ⊢𝑋:𝖲𝖾𝗍(𝖳(𝑎))Γ⊢𝑡:𝖳(𝑎)
Γ⊢𝑡∈𝑎𝑋𝖯𝗋𝗈𝗉
LTT-Set-E
Γ,𝑥:𝖳(𝑎)⊢𝑝𝗉𝗋𝗈𝗉Γ⊢𝑡:𝖳(𝑎)
Γ;∅⊢(𝑡∈𝑎{𝑥:𝖳(𝑎)∣𝑝})⇔𝖵(𝑝[𝑡/𝑥])
LTT-Set-β
Γ⊢𝑋:𝖲𝖾𝗍(𝖳(𝑎))Γ⊢𝑌:𝖲𝖾𝗍(𝖳(𝑎))Γ;∅⊢∀𝑥:𝖳(𝑎).(𝑥∈𝑎𝑋⇔𝑥∈𝑎𝑌)
Γ⊢𝑋≡𝑌:𝖲𝖾𝗍(𝖳(𝑎))
LTT-Set-η
Here 𝑃⇔𝑄 abbreviates (𝑃⇒𝑄)∧(𝑄⇒𝑃) in the classical logic. Rule LTT-Set-I permits quantification in 𝑝 only over coded small types. A quantifier over 𝖲𝖾𝗍(𝖭) is therefore forbidden inside a set comprehension even though it is permitted in an ordinary proposition.
Let ̂𝖤𝗏𝖾𝗇(𝑛) be a code for ∃𝑘:𝖭.𝑛=𝑘+𝑘. The set 𝐸:={𝑛:𝖭∣̂𝖤𝗏𝖾𝗇(𝑛)} is well formed. At 6, membership computes by LTT-Set-𝛽 to ∃𝑘:𝖭.6=𝑘+𝑘, and the witness 3 proves that proposition. At 5, classical arithmetic proves its negation. Neither proof changes the runtime representation of 𝐸; 𝐸 is a characteristic specification, not a list containing certificates.
The tempting set {𝑛:𝖭∣∀𝑋:𝖲𝖾𝗍(𝖭).𝑛∈𝑋⇒𝑛∈𝑋} is rejected. Its predicate is analytic but not small. Analyticity is enough for induction in 𝖫𝖳𝖳∗0, not for comprehension in either predicative subsystem.
★★☆ Classify each proposition as small, analytic but not small, or neither: ∀𝑛:𝖭.𝑛=𝑛,∀𝑋:𝖲𝖾𝗍(𝖭).0∈𝑋⇒0∈𝑋,∀𝐹:𝖲𝖾𝗍2(𝖭).⊥. For each class, state whether it may occur in comprehension, in 𝖫𝖳𝖳0 induction, and in 𝖫𝖳𝖳∗0 induction.
Define 𝖽𝗈𝗎𝖻𝗅𝖾(𝑛) by recursion with 𝑧=0 and 𝑠(𝑘,𝑟)=𝑟+2. Its first three reductions are 𝖽𝗈𝗎𝖻𝗅𝖾(2)𝐿𝑇𝑇−𝑁𝑎𝑡−𝑟𝑒𝑐−𝑆≡𝖽𝗈𝗎𝖻𝗅𝖾(1)+2𝐿𝑇𝑇−𝑁𝑎𝑡−𝑟𝑒𝑐−𝑆≡𝖽𝗈𝗎𝖻𝗅𝖾(0)+2+2𝐿𝑇𝑇−𝑁𝑎𝑡−𝑟𝑒𝑐−0≡4. The derivation that 𝖽𝗈𝗎𝖻𝗅𝖾(𝑛) is even is instead an instance of LTT-Nat-Ind0. Its step uses the arithmetic implication 𝖤𝗏𝖾𝗇(𝑟)⇒𝖤𝗏𝖾𝗇(𝑟+2); no certificate appears in the recursive output.
The exact conservativity calculation
Write ⟨𝑡⟩ for the translation of a second-order arithmetic term into a term of 𝖭, and ⟨𝑃⟩ for the translation of a formula into an LTT proposition. The decisive clauses are ⟨𝑛∈𝑋⟩:=⟨𝑛⟩∈̂𝖭𝑋,⟨∀𝑛.𝑃⟩:=∀𝑛:𝖭.⟨𝑃⟩,⟨∀𝑋.𝑃⟩:=∀𝑋:𝖲𝖾𝗍(𝖭).⟨𝑃⟩,⟨𝑃⇒𝑄⟩:=⟨𝑃⟩⇒⟨𝑄⟩. An arithmetical formula also has a small code |𝑃| satisfying 𝖵(|𝑃|)≡⟨𝑃⟩. This equation is what converts the arithmetical comprehension axiom into LTT-Set-I.
Let 𝑃 be a formula of second-order arithmetic with free number variables ¯𝑛 and free set variables ¯𝑋.
If 𝖠𝖢𝖠0⊢𝑃, then ¯𝑛:𝖭,¯𝑋:𝖲𝖾𝗍(𝖭);∅⊢⟨𝑃⟩ in 𝖫𝖳𝖳0.
If that LTT entailment is derivable, then 𝖠𝖢𝖠0⊢𝑃.
Replacing unrestricted formula induction on the arithmetic side by 𝖠𝖢𝖠 and analytic induction on the LTT side gives the corresponding two implications for 𝖫𝖳𝖳∗0.
Proof of Theorem 92.5 — Displayed conservativity pair
Proof. For the first implication, translate an 𝖠𝖢𝖠0 derivation rule by rule. Logical rules map to the rules above. An arithmetical comprehension instance ∃𝑋.∀𝑛.(𝑛∈𝑋⇔𝑃(𝑛)) maps to the set {𝑛:𝖭∣|𝑃(𝑛)|}; rule LTT-Set-𝛽 supplies the translated biconditional. Set induction maps to LTT-Nat-Ind0 because its predicate has a small code.
The reverse implication is the imported half. Adams and Luo first define the satisfaction relation for the exact bounded signatures 𝐵𝑛 in Definitions 5.30 and 5.31, prove its soundness and completeness in Theorems 5.32 and 5.33, and derive Corollary 5.33.1: 𝐽a𝐵𝑛judgment,𝐵𝑛+1⊢𝐽⟹𝐵𝑛⊢𝐽. Corollaries 5.33.2 and 5.33.3 then compose the exact chain 𝖫𝖳𝖳0⟶𝑇𝜔𝑈⟶𝑇𝜔⟶𝑇2⟶𝖠𝖢𝖠0. In the notation of this theorem, Corollary 5.33.3 has precisely the signature ¯𝑛:𝖭,¯𝑋:𝖲𝖾𝗍(𝖭);∅⊢⟨𝑃⟩⟹𝖠𝖢𝖠0⊢𝑃. We import that corollary, including its satisfaction definitions and the well-formedness hypotheses on the displayed contexts, from pages 35–36 of the primary source. For the analytic system we import Theorem 6.1 and the three transferred corollaries listed immediately after it on page 37; they replace 𝑇2,𝑇𝜔,𝑇𝜔𝑈,𝖫𝖳𝖳0 by their starred signatures and conclude conservativity over 𝖠𝖢𝖠. This import widens induction, not comprehension [AL10a]. ◻
Dropping the smallness premise from comprehension destroys the displayed argument: the characteristic predicate can quantify over the very collection of sets being encoded, so depth lowering no longer produces an arithmetical membership formula. The theorem makes no conservativity claim for that impredicative extension or for 𝖫𝖳𝖳W.
★★☆ Translate the 𝖠𝖢𝖠0 instance ∃𝑋.∀𝑛.(𝑛∈𝑋⇔∃𝑘.𝑛=𝑘⋅𝑘) into 𝖫𝖳𝖳0. Give the set term and derive both directions of the membership biconditional from LTT-Set-𝛽.
A bounded increasing rational sequence 𝑞:𝖭→ℚ determines a lower cut without quantifying over sets: 𝐿𝑞:={𝑟:ℚ∣̂∃𝑛:𝖭.𝑟<𝑞(𝑛)}. The predicate is small because its only quantifier ranges over 𝖭. If 𝑟∈𝐿𝑞 and 𝑠<𝑟, choose 𝑛 with 𝑟<𝑞(𝑛); transitivity gives 𝑠<𝑞(𝑛) and hence 𝑠∈𝐿𝑞. If 𝑟∈𝐿𝑞, choose 𝑛 with 𝑟<𝑞(𝑛) and then a rational 𝑡 with 𝑟<𝑡<𝑞(𝑛); thus 𝑡∈𝐿𝑞. These two calculations prove downward closure and roundedness. The construction does not form the set of all upper bounds of an arbitrary set of reals; that tempting neighbor quantifies over a large set type and lies outside small comprehension.
Five architectures, five answers
System
propositions are types
proofs are terms
classical rule here
𝖫𝖳𝖳0
no
no
LTT-Classical
propositions-as-types MLTT
yes
yes
not derivable in the base
CIC 𝖯𝗋𝗈𝗉
yes, in a sort
yes
an added axiom
HOL
Boolean-valued terms
theorem derivations
classical kernel logic
Nuprl meaning theory
types are PERs
programs realize judgments
source-dependent
The rows do not define translations. In particular, the conservative translation above does not transport an arbitrary theorem from HOL, CIC, or Nuprl into 𝖫𝖳𝖳0.
The recovered Plastic distribution accepts the historical chain weyl.lf -> set.lf -> nat.lf and the pluralist chain construct.lf -> example1.lf. This is preservation evidence for those scripts under the 2010–2011 i386 checker. The Weyl formalization index marks later results that remain axioms, and the replay neither audits the historical kernel nor reproves theorem 92.5.
★★☆ For the proposition ∀𝑋:𝖲𝖾𝗍(𝖭).∃𝑛:𝖭.𝑛∈𝑋, write its translation to the type-free second-order language. Then explain why the translation does not make the proposition small. Identify the exact quantifier that prevents its use in comprehension.
★★★ Reconstruct the comprehension and induction cases of the first implication in theorem 92.5. For the imported reverse implication, write the exact four-stage chain from 𝖫𝖳𝖳0 to 𝖠𝖢𝖠0, identify the satisfaction soundness/completeness result that lowers 𝐵𝑛+1 to 𝐵𝑛, and state why this semantic import supplies no effective proof translator.
★★★Practical project.ltt-predicativity-classifier Implement in Kappa a classifier for proposition syntax with quantifiers over 𝖭, 𝖲𝖾𝗍(𝖭), and 𝖲𝖾𝗍(𝖲𝖾𝗍(𝖭)). Maintain the invariant that small implies analytic. The program must print, for each named input, whether comprehension, 𝖫𝖳𝖳0 induction, and 𝖫𝖳𝖳∗0 induction are permitted. It must accept number-only quantification for all three operations, reject a set-of-naturals quantifier for comprehension and 𝖫𝖳𝖳0 induction while accepting it for 𝖫𝖳𝖳∗0 induction, and reject a set-of-sets quantifier for all three. Mutating the comprehension check to use analyticity must make the acceptance test fail.
Sources. The exact calculi, translations, and depth-lowering conservativity proof are from Adams and Luo’s classical predicative LTT development [AL10a]. The Weyl case study supplies the rational and set constructions and the historical Plastic chain. The pluralist development supplies the distinct script-reuse example under a displayed translation [AL11, AL10b]. These artifact replays establish acceptance of frozen scripts, not conservativity or modern kernel correctness.