System 𝖷𝗂 interface
Fix the operation signature Ω(𝐹) =𝜏1 →𝜏0; it is suppressed from every judgment below, and Δ(𝑓) is rightmost lookup. The source interface consists of Γ⊢𝑒:𝜏,Γ∣Δ∣∅⊢𝑏:𝜎,Γ∣Δ∣∅⊢𝑠:𝜏. The runtime interface replaces the empty label context by a finite Ξ. Runtime labels have answer types, capabilities have block type 𝜏1 →𝜏0, and delimiters bind one fresh label. Runtime configurations are derivation indexed: a generated capability retains the outer derivation of its handler body, and the displayed extrinsic X-Cap rule decomposes the ordered allocation stack as Ξ0,ℓ :𝜏,Ξ+ and types that body under its exact birth prefix Ξ0. Block substitutions on runtime derivations must respect these restricted occurrence contexts; crossed later delimiters remain in the reified continuation, not in the stored clause. Reduction is 𝑠 ⟶𝑠′, generated by the rules in subappendix A.29 and closed under the displayed evaluation contexts. Generatedness is the reachability predicate 𝖦𝖾𝗇Ω(𝑠), and lemma 32.4 preserves it together with scope respect across every reduction step.
The local proof chain is weakening and substitution⇓canonical forms⇓progress and preservation⇓absence of reachable undelimited capability states. The conclusion is only the printed System-𝖷𝗂 safety consequence. It is not the Effekt source theorem, abstraction safety, noninterference, or a theorem about the full implementation.
The named Effekt-to-System-𝖷𝗂 translation
Fix a canonical order on finite Effekt sets. The source name classes for values, ordinary blocks, and operations are pairwise disjoint, and target block-context lookup is rightmost so the capability introduced by a handler shadows an outer same-operation capability only in its handled premise. If Σ(𝐹) =𝜏1 →𝜏0, define 𝖢𝖺𝗉𝖮𝗉Σ(𝐹)=𝜏1→𝜏0. For ¯𝐹 =𝐹1,…,𝐹𝑛, abbreviate ―――――――𝖢𝖺𝗉𝖮𝗉Σ(¯𝐹)=𝖢𝖺𝗉𝖮𝗉Σ(𝐹1),…,𝖢𝖺𝗉𝖮𝗉Σ(𝐹𝑛). Then 𝖢𝖺𝗉𝖤𝖿𝖿Σ({¯𝐹})=𝐹1:𝖢𝖺𝗉𝖮𝗉Σ(𝐹1),…,𝐹𝑛:𝖢𝖺𝗉𝖮𝗉Σ(𝐹𝑛),𝖢𝖺𝗉𝖳𝗒Σ((¯𝜏,¯𝜎)→𝜏/{¯𝐹})=(¯𝜏,𝖢𝖺𝗉𝖳𝗒Σ(¯𝜎),―――――――𝖢𝖺𝗉𝖮𝗉Σ(¯𝐹))→𝜏. Extend 𝖢𝖺𝗉𝖳𝗒 pointwise to Δ. The statement map is directed by the source typing derivation: Σ supplies operation types, and the current Δ supplies the ordered capability list used at a block call. The short clauses are 𝖢𝖺𝗉𝖲𝗍𝗆𝗍Σ,Δ(𝑒)=𝑒,𝖢𝖺𝗉𝖲𝗍𝗆𝗍Σ,Δ(𝗏𝖺𝗅 𝑥=𝑠0;𝑠1)=𝗏𝖺𝗅 𝑥=𝖢𝖺𝗉𝖲𝗍𝗆𝗍Σ,Δ(𝑠0);𝖢𝖺𝗉𝖲𝗍𝗆𝗍Σ,Δ(𝑠1),𝖢𝖺𝗉𝖲𝗍𝗆𝗍Σ,Δ(𝑓(¯𝑒,¯𝑔))=𝑓(¯𝑒,¯𝑔,¯𝐹),𝖢𝖺𝗉𝖲𝗍𝗆𝗍Σ,Δ(𝖾𝖿𝖿𝖾𝖼𝗍 𝐹(𝑥:𝜏1):𝜏0;𝑠)=𝖢𝖺𝗉𝖲𝗍𝗆𝗍Σ,Δ(𝑠),𝖢𝖺𝗉𝖲𝗍𝗆𝗍Σ,Δ(𝖽𝗈 𝐹(𝑒))=𝐹(𝑒). The two binding clauses are 𝖢𝖺𝗉𝖲𝗍𝗆𝗍Σ,Δ(𝖽𝖾𝖿 𝑓(¯𝑥,¯𝑔):𝜏/{¯𝐹}=𝑠0;𝑠)=𝖽𝖾𝖿 𝑓={(¯𝑥,¯𝑔,¯𝐹)⇒𝖢𝖺𝗉𝖲𝗍𝗆𝗍Σ,Δ(𝑠0)};𝖢𝖺𝗉𝖲𝗍𝗆𝗍Σ,Δ(𝑠), and 𝖢𝖺𝗉𝖲𝗍𝗆𝗍Σ,Δ(𝗍𝗋𝗒{𝑠}𝗐𝗂𝗍𝗁 𝐹{(𝑥:𝜏1)⇒𝑠ℎ})=𝗁𝖺𝗇𝖽𝗅𝖾{𝐹⇒𝖢𝖺𝗉𝖲𝗍𝗆𝗍Σ,Δ(𝑠)}=𝗐𝗂𝗍𝗁{(𝑥,𝗋𝖾𝗌𝗎𝗆𝖾)⇒𝖢𝖺𝗉𝖲𝗍𝗆𝗍Σ,Δ(𝑠ℎ)}. The call clause takes ¯𝐹 from the declared source block type. Operation declarations disappear; handler translation binds the capability and resumption explicitly. In the handler proof, the common outer target context is 𝖢𝖺𝗉𝖳𝗒Σ(Δ),𝖢𝖺𝗉𝖤𝖿𝖿Σ((𝜀∖{𝐹})∪𝜀ℎ). Its handled premise receives a terminal binding for 𝐹, which shadows any outer 𝐹 required by 𝜀ℎ; the clause sees the unextended outer context. This is the exact target counterpart of source effect subtraction. The theorem interface is Γ∣Δ∣Σ⊢𝑠:𝜏∣𝜀⟹Γ∣𝖢𝖺𝗉𝖳𝗒Σ(Δ),𝖢𝖺𝗉𝖤𝖿𝖿Σ(𝜀)∣∅⊢𝖢𝖺𝗉𝖲𝗍𝗆𝗍Σ,Δ(𝑠):𝜏. The proof is theorem 32.15. Combining it with System-𝖷𝗂 safety gives the selected Effekt effect-safety corollary, not a new System-𝖷𝗂 theorem.
Tunnelling logical-relation interface
The selected source and dynamic interfaces are Δ∣𝑃∣Ξ⊢𝑇 𝗍𝗒𝗉𝖾,Δ∣𝑃∣Ξ⊢𝑒 𝖾𝖿𝖿𝖾𝖼𝗍𝗌, Δ∣𝑃∣Γ∣Ξ⊢𝑡:[𝑇]𝑒,Δ∣𝑃∣Γ∣Ξ⊢ℎ:𝖥∣𝑒,𝑡⟶𝑡′. The first two judgments and the ordinary typing rules are the chapter’s exact closure around the four characteristic rules printed in Figure 10. Appendix A.1 of Cornell technical report 1813/60202 supplies the common-effect T-App/T-Let rules, the type and effect preorders, and T-Sub. Appendix B supplies Compatibility Lemmas 7–19 for the rules it enumerates [ZM19b]; the chapter separately proves the omitted T-Let case by evaluation-context composition. Union-effect forms are derived by subsumption to a common join. These results remain theorems about the tunnelling calculus, not about a translation to System 𝖷𝗂.
The explicit label parameter is a finite well-formed context Ξ. Every context extension binds a fresh name; in particular T-Down requires both ℓ ∉dom(Ξ) before extending Ξ and ℓ ∉fl(𝑇,¯𝑒) before discharging the delimiter. The numerical step index is hidden by the later modality. The tunnelling relation does not quantify over a separate order of future label contexts. Closing environments have the shapes 𝛿(𝛼)=⟨¯ℓ1,¯ℓ2,𝜙⟩,𝜌(ℎ)=⟨𝐻ℓ11,𝐻ℓ22,𝜂⟩,𝛾(𝑥)=⟨𝑣1,𝑣2⟩. The semantic signature is W, O, T, K, S, V, H, U, with open lifting by the environments above. The compatibility lemmas state that every typing rule preserves ⪯𝗅𝗈𝗀, and together establish the fundamental property. The imported boundary is Theorems 1–3 of [ZM19a]: parametricity (the fundamental property), closed type safety, and logical-refinement soundness for the tunnelling calculus, with the report supplying the complete rule and compatibility boundary [ZM19b]. No System-𝖷𝗂 translation is part of this interface.
Olaf optional boundary
Olaf uses Δ∣Θ∣Γ∣Ξ⊢𝑡:[𝜏]𝑐,𝐿;𝑡⟶𝐿′;𝑡′. Its new invariant is that lifetime effects occur in effect sequences and its continuation types record effects on both sides of control transfer. Assuming Ξ and Γ are well formed, the imported results are Theorems 1–3 of [ZSM20]: parametricity, closed empty-effect type safety, and logical-refinement soundness for Olaf. They do not add bidirectional operations to the preceding calculi or imply linear resumptions.
Source-bounded comparison cards
The control-flow linearity card uses the local occurrence predicate 𝗎𝗌𝖾𝗌(𝑟,𝑀)≤𝑞 only to distinguish zero, one, and multiple syntactic resumption uses. It imports no theorem: Tang et al.’s soundness results require their full qualified type system, constraint entailment, and operational semantics [THLM24].
White’s locality card fixes the dependent context restriction 𝑦(Σ) and box introduction rule of §3.2, Figure 2, pp. 12–13; the reflection card fixes 𝑊Σ(𝜏), 𝗋𝖾𝗂𝖿𝗒, and 𝗋𝖾𝖿𝗅𝖾𝖼𝗍 from §3.4, Figure 4, pp. 14–15 [Whi26]. The semantic comparison in §4.8, p. 23 belongs only to that calculus. These cards import definitions and rules, not a System-𝖷𝗂, Effekt, tunnelling, or Olaf theorem.
| card |
status and locator |
exact conclusion |
excluded transfer |
| System 𝖷𝗂 |
local proofs; source Def. 4.2, Thms. 4.3–4.4, pp. 15–16 |
progress, preservation, and no reachable undelimited capability |
no Effekt, abstraction, ownership, or noninterference theorem |
| Effekt translation |
local proof matching source Thm. 5.1, p. 17 |
typed source statements translate to typed capability-passing statements |
no theorem about the full Effekt implementation |
| Effekt safety |
derived through the translation |
closed empty-effect source programs translate to nonstuck executions |
not assigned directly to System 𝖷𝗂 |
| Tunnelling |
imported Thms. 1–3, p. 22 |
parametricity, closed safety, and logical soundness |
no System-𝖷𝗂 translation or compiler correctness |
| Olaf |
imported Thms. 1–3, p. 23 |
parametricity, type safety, and logical soundness for Olaf |
no control-flow linearity or theorem for earlier cards |
| Linearity comparison |
local occurrence predicate; source boundary §§3–5 |
classifies the displayed resumption syntax by use count |
no linear-handler soundness theorem imported |
Locality and
reflection |
source Figs. 2, 4, pp. 12–15;
semantic boundary §4.8, p. 23 |
dependent restriction, box, reify, and reflect rules |
no authority-token or tunnelling theorem |
| Kappa corpus |
finite execution record in subsubappendix E.3.7 |
ten cases and five failing semantic mutations |
no progress, preservation, translation, or logical-relation proof |