Chapter 32 owns the following notation within its three separate cards.
| notation |
scope and role |
non-transfer condition |
| notation |
scope and role |
non-transfer condition |
| Γ |
value variables in System 𝖷𝗂 and Effekt; term variables in tunnelling |
the surrounding judgment fixes the context grammar |
| Δ |
block variables in System 𝖷𝗂 and Effekt; effect variables in tunnelling and Olaf |
no equality between these contexts is implied |
| Ξ |
ordered allocation stack in System 𝖷𝗂; label context in tunnelling; lifetime constants in Olaf |
in Ξ0,ℓ :𝜏,Ξ+, Ξ0 is the capability’s birth prefix and Ξ+ contains later delimiters |
| 𝑃 |
tunnelling handler-variable context |
does not occur in System 𝖷𝗂 or Effekt |
| Θ |
abbreviation for a translated System-𝖷𝗂 block context; lifetime-variable context in the separate Olaf boundary |
the surrounding card fixes which role is active |
| #ℓ{𝑠} |
System-𝖷𝗂 runtime delimiter |
introduced only by handler reduction |
| 𝖼𝖺𝗉ℓ{(𝑥,𝑘) ⇒𝑠} |
System-𝖷𝗂 runtime capability |
second class and usable only under matching #ℓ |
| ⇑ℎ |
tunnelling request constructor |
names a handler value, not merely an operation |
| ⇓ℓ[𝑇]¯𝑒𝑡 |
tunnelling delimiter |
distinct from System-𝖷𝗂’s #ℓ |
| ℓ ⇝̸𝐾 |
context 𝐾 does not bind label ℓ |
a syntactic side condition, not set nonmembership |
Δ ∣𝑃 ∣Γ ∣Ξ ⊧
𝑡1 ⪯𝗅𝗈𝗀𝑡2 :[𝑇]¯𝑒 |
open logical-refinement judgment |
⊧ marks the judgment; ⪯𝗅𝗈𝗀 relates terms |
𝖢𝖺𝗉𝖳𝗒,𝖢𝖺𝗉𝖤𝖿𝖿
𝖢𝖺𝗉𝖲𝗍𝗆𝗍Σ,Δ |
named Effekt-to-System-𝖷𝗂 syntax translation |
not semantic double brackets |
O,T,K,S
V,H,U,W |
tunnelling logical-relation components |
indexed only by the displayed worlds and environments |
| ▹𝑃 |
step-indexed later modality in the tunnelling logical relation |
lowers the numerical index; it does not extend the label context Ξ |
All context extensions in the tunnelling card bind fresh names. In particular, Ξ,ℓ :[𝑇]¯𝑒 carries the side condition ℓ ∉dom(Ξ); the separate condition ℓ ∉fl(𝑇,¯𝑒) prevents that fresh label from escaping the delimiter’s result interface.
The glyphs ⇑ and ⇓ are owned by Chapter 32’s tunnelling syntax. Elsewhere in the book, raw arrows retain their usual order, reduction, or implication roles. The symbol ⪯𝗅𝗈𝗀 denotes logical refinement only when accompanied by the tunnelling or Olaf typing contexts. The symbol ⇝̸ is a syntactic no-binding judgment.
The three effect carriers are deliberately distinct: 𝜀={𝐹1,…,𝐹𝑛}in Effekt,¯𝑒=𝛼,ℓ,ℎ.𝗅𝖻𝗅,…in tunnelling,𝑐=𝑒1,…,𝑒𝑛in Olaf. Their union, substitution, and scope laws belong to their own cards. An Effekt set is not silently interpreted as a tunnelling effect sequence, and an Olaf lifetime effect is not a System-𝖷𝗂 runtime label.