TY - GEN
T1 - Certified Verification of Relational Properties
AU - Blatter, Lionel
AU - Kosmatov, Nikolai
AU - Prevosto, Virgile
AU - Le Gall, Pascale
N1 - Publisher Copyright:
© 2022, Springer Nature Switzerland AG.
PY - 2022/1/1
Y1 - 2022/1/1
N2 - The use of function contracts to specify the behavior of functions often remains limited to the scope of a single function call. Relational properties link several function calls together within a single specification. They can express more advanced properties of a given function, such as non-interference, continuity, or monotonicity. They can also relate calls to different functions, for instance, to show that an optimized implementation is equivalent to its original counterpart. However, relational properties cannot be expressed and verified directly in the traditional setting of modular deductive verification. Self-composition has been proposed to overcome this limitation, but it requires complex transformations and additional separation hypotheses for real-life languages with pointers. We propose a novel approach that is not based on code transformation and avoids those drawbacks. It directly applies a verification condition generator to produce logical formulas that must be verified to ensure a given relational property. The approach has been fully formalized and proved sound in the Coq proof assistant.
AB - The use of function contracts to specify the behavior of functions often remains limited to the scope of a single function call. Relational properties link several function calls together within a single specification. They can express more advanced properties of a given function, such as non-interference, continuity, or monotonicity. They can also relate calls to different functions, for instance, to show that an optimized implementation is equivalent to its original counterpart. However, relational properties cannot be expressed and verified directly in the traditional setting of modular deductive verification. Self-composition has been proposed to overcome this limitation, but it requires complex transformations and additional separation hypotheses for real-life languages with pointers. We propose a novel approach that is not based on code transformation and avoids those drawbacks. It directly applies a verification condition generator to produce logical formulas that must be verified to ensure a given relational property. The approach has been fully formalized and proved sound in the Coq proof assistant.
U2 - 10.1007/978-3-031-07727-2_6
DO - 10.1007/978-3-031-07727-2_6
M3 - Conference contribution
AN - SCOPUS:85131914999
SN - 9783031077265
T3 - Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
SP - 86
EP - 105
BT - Integrated Formal Methods - 17th International Conference, IFM 2022, Proceedings
A2 - ter Beek, Maurice H.
A2 - Monahan, Rosemary
PB - Springer Science and Business Media Deutschland GmbH
T2 - 17th International Conference on Integrated Formal Methods, IFM 2022
Y2 - 7 June 2022 through 10 June 2022
ER -