Reasoning About a Machine with Local Capabilities: Provably Safe Stack and Return Pointer Management - Technical Appendix Including Proofs and Details
Lau Skorstengaard, Dominique Devriese, Lars Birkedal

TL;DR
This paper introduces a calling convention for capability machines that guarantees local state encapsulation and correct control flow, supported by formal proofs and practical examples.
Contribution
It presents a novel calling convention for capability machines with local capabilities, along with formal correctness proofs and illustrative program examples.
Findings
The calling convention ensures local-state encapsulation.
Formal proofs verify correct behavior of programs.
Practical examples demonstrate the convention's effectiveness.
Abstract
We propose a calling convention for capability machines with local capabilities. The calling convention ensures local-state encapsulation and well-bracketed control flow. We use the calling convention in a hand-full of program examples and prove that they behave correctly. The correctness proofs use a logical relation that is also presented in this appendix. This is the technical appendix for the paper with the same name and authors accepted at ESOP18 and under review for TOPLAS.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsSecurity and Verification in Computing · Distributed systems and fault tolerance · Parallel Computing and Optimization Techniques
