ETT extends the raw binding signature by 𝖤𝗊𝐴(𝑎,𝑏) of arity (0,0,0) and the annotated constructor 𝖾𝗊𝗋𝖾𝖿𝗅𝑎 of arity (0). We print the latter as 𝗋𝖾𝖿𝗅 when its expected type determines 𝑎.
Γ𝖼𝗍𝗑Γ⊢𝐴𝗍𝗒𝗉𝖾Γ⊢𝑎:𝐴Γ⊢𝑏:𝐴
Γ⊢𝖤𝗊𝐴(𝑎,𝑏)𝗍𝗒𝗉𝖾
Eq-F
Γ𝖼𝗍𝗑Γ⊢𝐴𝗍𝗒𝗉𝖾Γ⊢𝑎:𝐴
Γ⊢𝗋𝖾𝖿𝗅:𝖤𝗊𝐴(𝑎,𝑎)
Eq-I
When Russell universes are present, the additional closure rule is
Γ𝖼𝗍𝗑Γ⊢𝐴:U𝑖Γ⊢𝑎:𝐴Γ⊢𝑏:𝐴
Γ⊢𝖤𝗊𝐴(𝑎,𝑏):U𝑖
Eq-Form-U
Γ𝖼𝗍𝗑Γ⊢𝐴𝗍𝗒𝗉𝖾Γ⊢𝑎:𝐴Γ⊢𝑏:𝐴Γ⊢𝑝:𝖤𝗊𝐴(𝑎,𝑏)
Γ⊢𝑎≡𝑏:𝐴
Eq-Reflect
Γ𝖼𝗍𝗑Γ⊢𝐴𝗍𝗒𝗉𝖾Γ⊢𝑎:𝐴Γ⊢𝑏:𝐴Γ⊢𝑝:𝖤𝗊𝐴(𝑎,𝑏)
Γ⊢𝑝≡𝗋𝖾𝖿𝗅:𝖤𝗊𝐴(𝑎,𝑏)
Eq-Uniq
The classified congruence rules are
Γ⊢𝐴≡𝐴′𝗍𝗒𝗉𝖾Γ⊢𝑎≡𝑎′:𝐴Γ⊢𝑏≡𝑏′:𝐴
Γ⊢𝖤𝗊𝐴(𝑎,𝑏)≡𝖤𝗊𝐴′(𝑎′,𝑏′)𝗍𝗒𝗉𝖾
Eq-F-eq
Γ⊢𝑎≡𝑎′:𝐴
Γ⊢𝖾𝗊𝗋𝖾𝖿𝗅𝑎≡𝖾𝗊𝗋𝖾𝖿𝗅𝑎′:𝖤𝗊𝐴(𝑎,𝑎)
Eq-I-eq
The optional ETT propositional-truncation delta is the following. In Tr-E, the equality premise says that 𝐶 is a proposition. Its raw signature adds ‖𝐴‖ and |𝑎| of arity (0) and the recursor 𝗋𝖾𝖼‖𝐴‖(𝑥.𝑐,𝑡) of arity (1,0), binding 𝑥 in 𝑐.
After conversion of the primed data to the displayed common types, recursor congruence is
Γ⊢𝐶≡𝐶′𝗍𝗒𝗉𝖾Γ,𝑦:𝐶,𝑧:𝐶⊢𝑦≡𝑧:𝐶Γ,𝑥:𝐴⊢𝑐≡𝑐′:𝐶Γ⊢𝑡≡𝑡′:‖𝐴‖
Γ⊢𝗋𝖾𝖼‖𝐴‖(𝑥.𝑐,𝑡)≡𝗋𝖾𝖼‖𝐴‖(𝑥.𝑐′,𝑡′):𝐶
Tr-E-eq
There is no separate computation rule: both the recursor applied to |𝑎| and 𝑐[𝑎/𝑥] inhabit the proposition 𝐶, so the displayed proof-irrelevance premise already makes them judgmentally equal. No base rule is removed; equality reflection makes transport silent and derives UIP and function extensionality.