Abstract
Step-indexed separation logic has proven to be a powerful tool for modular reasoning about higher-order stateful programs. However, it has only been used to reason about safety properties, never liveness properties. In this paper, we observe that the inability of step-indexed separation logic to support liveness properties stems fundamentally from its failure to validate the existential property, connecting the meaning of existential quantification inside and outside the logic. We show how to validate the existential property-and thus enable liveness reasoning-by moving from finite step-indices (natural numbers) to transfinite step-indices (ordinals). Concretely, we transform the Coq-based step-indexed logic Iris to Transfinite Iris, and demonstrate its effectiveness in proving termination and termination-preserving refinement for higher-order stateful programs.
Author supplied keywords
Cite
CITATION STYLE
Spies, S., Gäher, L., Gratzer, D., Tassarotti, J., Krebbers, R., Dreyer, D., & Birkedal, L. (2021). Transfinite Iris: Resolving an existential dilemma of step-indexed separation logic. In Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (PLDI) (pp. 80–95). Association for Computing Machinery. https://doi.org/10.1145/3453483.3454031
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.