Abstract
We present a static correlation analysis that computes a safe approximation of what part of an input state of a function is copied to the output state. This information is to be used by an interactive theorem prover to automate the discharging of proof obligations concerning unmodified parts of the state. The analysis is defined for a strongly-typed, functional language that handles structures, variants and arrays. It uses partial equivalence relations as approximations of fine-grained correlations between inputs and outputs. The analysis is interprocedural and summarizes not only what is modified but also how and to what extent. We have applied it to a functional specification of a microkernel, and obtained results that demonstrate both its precision and its scalability.
Cite
CITATION STYLE
Andreescu, O. F., Jensen, T., & Lescuyer, S. (2016). Correlating structured inputs and outputs in functional specifications. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 9763, pp. 85–103). Springer Verlag. https://doi.org/10.1007/978-3-319-41591-8_7
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.