English

Technical Report: Using Loop Scopes with for-Loops

Programming Languages 2019-01-25 v2 Logic in Computer Science

Abstract

Loop scopes have been shown to be a helpful tool in creating sound loop invariant rules which do not require program transformation of the loop body. Here we extend this idea from while-loops to for-loops and also present sound loop unrolling rules for while- and for-loops, which require neither program transformation of the loop body, nor the use of nested modalities. This approach allows for-loops to be treated as first-class citizens -- rather than the usual approach of transforming for-loops into while-loops -- which makes semi-automated proofs easier to follow for the user, who may need to provide help in order to finish the proof.

Cite

@article{arxiv.1901.06839,
  title  = {Technical Report: Using Loop Scopes with for-Loops},
  author = {Nathan Wasser and Dominic Steinhöfel},
  journal= {arXiv preprint arXiv:1901.06839},
  year   = {2019}
}
R2 v1 2026-06-23T07:17:20.467Z