Exercise 120.1.
An element of [[𝐷𝑖]]𝑋 is a triple (𝑗,𝑟,𝑥) with 𝑗 :𝐼, 𝑟 :𝑅(𝑖,𝑗), and 𝑥 :𝑋(𝑗). Hence 𝗆𝖺𝗉𝐷𝑖(𝑓)(𝑗,𝑟,𝑥)=(𝑗,𝑟,𝑓𝑗(𝑥)):[[𝐷𝑖]]𝑌. Structural induction follows theorem 120.6. The only changed clause is the parameter case: 𝗆𝖺𝗉𝐗(𝑗)(𝗂𝖽)(𝑥) ≡𝗂𝖽𝑗(𝑥) ≡𝑥. The dependent-sum and constant-product cases leave 𝑗 and 𝑟 fixed and apply this induction hypothesis to 𝑥, so the entire triple is judgmentally unchanged.
Exercise 120.2.
For maps 𝑔 :𝐴 →𝐵 and 𝑓 :𝐵 →𝐶, constructor computation gives 𝗆𝖺𝗉𝑓(𝗆𝖺𝗉𝑔[])⟶[], and, for [𝑎1,𝑎2], two outer and two inner constructor reductions give [𝑓(𝑔(𝑎1)),𝑓(𝑔(𝑎2))], the same constructor form as 𝗆𝖺𝗉(𝑓 ∘𝑔)[𝑎1,𝑎2]. For a neutral 𝑛, constructor reduction cannot fire; the single compaction step is 𝗆𝖺𝗉𝑓(𝗆𝖺𝗉𝑔𝑛)⟶𝗆𝖺𝗉(𝑓∘𝖫𝗂𝗌𝗍𝑔)𝑛. No identity expansion is used.
Exercise 120.3.
For (𝑔,𝑓) :(𝐴,𝐵) →(𝐴′,𝐵′), where 𝑔 :𝐴′ →𝐴 and 𝑓 :Π𝑥 :𝐴′.𝐵(𝑔𝑥) →𝐵′(𝑥), the action is 𝑀(𝑔,𝑓)(ℎ) =𝜆𝑥.𝑓𝑥(ℎ(𝑔𝑥)). Identity reduces pointwise to 𝜆𝑥.ℎ𝑥 and eta gives ℎ. For composable (𝑔1,𝑓1) and (𝑔2,𝑓2), both nested action and action of the componentwise composite reduce to 𝜆𝑥.𝑓2,𝑥(𝑓1,𝑔2𝑥(ℎ(𝑔1(𝑔2𝑥)))), whose intermediate fiber is 𝐵1(𝑔1(𝑔2𝑥)). Reversing the domain map to 𝑔 :𝐴 →𝐴′ makes the first occurrence ℎ(𝑔𝑥) ill typed: 𝑥 :𝐴′, so the reversed 𝑔 cannot be applied to 𝑥.