Abstract
To make sure that Design by Contract specifications are easily readable and understandable, it is important that they are presented at the right level of abstraction. In particular, one often does not want the specification to be a direct copy of the code, but instead, it should capture the intention of the code.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
More on the difference between the mathematical type integer and the computer type int in Acsl can be found in Section 2.2.4 of the Acsl language specification [18].
- 2.
Jml also provides an even more advanced construct, namely a dependency clause, but we do not discuss that in this book.
- 3.
Admittedly, in this case, a functional represents clause //@ represents _credit_list = credit_list would also have worked, but the specification in Fig. 8.7 nicely illustrates the definition of a non-functional represents clause.
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
Copyright information
© 2023 The Author(s), under exclusive license to Springer Nature Switzerland AG
About this chapter
Cite this chapter
Huisman, M., Wijs, A. (2023). Abstract Specifications. In: Concise Guide to Software Verification. Texts in Computer Science. Springer, Cham. https://doi.org/10.1007/978-3-031-30167-4_8
Download citation
DOI: https://doi.org/10.1007/978-3-031-30167-4_8
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-031-30166-7
Online ISBN: 978-3-031-30167-4
eBook Packages: Computer ScienceComputer Science (R0)