exercise 94.1.
From 𝑡 :𝑇[𝑡/𝑥], S-Self-Gen yields 𝑡 :𝜄𝑥.𝑇; then S-Self-Inst yields 𝑡 :𝑇[𝑡/𝑥] again. Both steps retain the Curry subject, so every erasure is erase(𝑡). The instantiation rule substitutes the subject actually classified, namely 𝑡. It supplies neither a conversion with 𝑇[𝑢/𝑥] nor an equality 𝑡 =𝑢, so no equation involving an unrelated 𝑢 follows.
exercise 94.2.
In context 𝐴 :U0, the nil constructor has type 𝖵𝖾𝖼(𝐴,𝟢) and erases to 𝜆𝑧.𝜆𝑠.𝑧. Indeed, for 𝐶:∏𝑘:𝖭𝖺𝗍𝖵𝖾𝖼(𝐴,𝑘)→U0,𝑧:𝐶(𝟢,𝗏𝗇𝗂𝗅), it returns 𝑧.
For 𝑘 :𝖭𝖺𝗍, 𝑎 :𝐴, and 𝑥𝑠 :𝖵𝖾𝖼(𝐴,𝑘), the cons constructor has type 𝖵𝖾𝖼(𝐴,𝖲(𝑘)) and erases to 𝜆𝑧.𝜆𝑠.𝑠𝑘𝑎𝑥𝑠(𝑥𝑠𝑧𝑠). Self instantiation at 𝑥𝑠 gives 𝑥𝑠 𝑧 𝑠 :𝐶(𝑘,𝑥𝑠), so the step premise gives 𝑠𝑘𝑎𝑥𝑠(𝑥𝑠𝑧𝑠):𝐶(𝖲(𝑘),𝗏𝖼𝗈𝗇𝗌(𝑘,𝑎,𝑥𝑠)). Rule S-Self-Gen closes both constructor typings.
Finally fix 𝑛 :𝖭𝖺𝗍 and 𝑣 :𝖵𝖾𝖼(𝐴,𝑛). Rule S-Self-Inst substitutes the classified subject 𝑣 for the self variable and yields 𝑣 𝑧 𝑠 :𝐶(𝑛,𝑣). Abstracting over 𝑣 and then 𝑛 gives ∏𝑛:𝖭𝖺𝗍∏𝑣:𝖵𝖾𝖼(𝐴,𝑛)𝐶(𝑛,𝑣). The binder 𝑛 is explicit in the context and in the result; no free length variable remains. Erasure is the ordinary Church-vector fold.
exercise 94.3.
Fix 𝐶,𝑠,𝑧,𝑛. From 𝑛 :𝖭𝖺𝗍, S-Self-Inst gives 𝑛:∀𝐶.(∀𝑘.𝐶(𝑘)→𝐶(𝑆𝑘))→𝐶(0)→𝐶(𝑛). Implicit elimination at 𝐶, then application to 𝑠 and 𝑧, yields 𝑛 𝑠 𝑧 :𝐶(𝑛). The occurrence of 𝑛 in this result is exactly the subject substituted by self instantiation. Abstracting supplies the theorem’s type. If 𝐶 is constant at 𝐷, the erasure is 𝜆𝑠.𝜆𝑧.𝜆𝑛.𝑛 𝑠 𝑧 :(𝐷 →𝐷) →𝐷 →𝐷, the Church iterator.
exercise 94.4.
In 1 +𝑋 ×𝑋, both occurrences are positive, so the closure admits it. In 𝑋 →𝖭, the occurrence is in an arrow domain and is negative, so it is rejected. In (𝑋 →𝖭) →𝖭, the two domain crossings restore positive polarity, so it is admitted. For the rejected body, candidate monotonicity would require 𝑅 ⊆𝑆 ⇒(𝑅 ⇒𝑁) ⊆(𝑆 ⇒𝑁). Function-space variance gives the reverse inclusion instead, so the fixed point construction cannot use it as a monotone operator.