Discovering Specifications for Unknown Procedures - Work in Progress
2012
We study automated verification of pointer safety for heap-manipulating imperative programs with unknown procedure calls or code pointers. Given the specification of a procedure whose body contains calls to an unknown procedure, we try to infer the possible specifications for the unknown procedure from its calling contexts. We employ a forward shape analysis with separation logic and an abductive inference mechanism to synthesize both preand postconditions for the unknown procedure. The inferred specification is a partial specification of the unknown procedure. Therefore it is subject to a later verification when the code or the complete specification for the unknown procedure are available. Our inferred specifications can also be used for program understanding.
Keywords:
- Programming language
- Pointer (computer programming)
- Abductive reasoning
- Separation logic
- Work in process
- Shape analysis (digital geometry)
- Unknown procedure
- Computer science
- Homeomorphism
- Hausdorff space
- Subspace topology
- Abelian group
- Congruence relation
- Mathematics
- Spectral space
- Pure mathematics
- Prime (order theory)
- Continuous functions on a compact Hausdorff space
- Correction
- Source
- Cite
- Save
- Machine Reading By IdeaReader
19
References
1
Citations
NaN
KQI