Harnessing a Refinement Theory to Compute Loop Functions

Ali Mili, Rahma Ben Ayed, Shir Aharon, Chaitanya Nadkarni · Electronic Notes in Theoretical Computer Science · 2009

We consider a while loop on some space S and we are interested in deriving the function that this loop defines between its initial states and its final states (when it terminates). Such a capability is useful in a wide range of applications, including reverse engineering, software maintenance, program comprehension, and program verification. In the absence of a general theoretical solution to the problem of deriving the function of a loop, we explore engineering solutions. In this paper we use a relational refinement calculus to approach this complex problem in a systematic manner. Our approach has many drawbacks, some surmountable and some not (being inherent to the approach); nevertheless, it offers a way to automatically derive the function of loops or an approximation thereof, under some conditions.

Read the paper · More papers on PaperTik