“The exposition is in general clear, precise, often elegant and gradually progressing from simplicity to depth, which makes the reading a pleasant one … . I think that this book is a pleasant and thought-provoking reading for many readers interested in FMs ... .” (Dino Mandrioli, fmeurope.org, March 18, 2022)<br />

This textbook is an introduction to the use of formal methods ranging from semantics of key programming constructs to techniques for the analysis and verification of programs. The authors use program graphs as the mechanism for representing the control structure of programs in order to find a balance between generality and conceptual complexity. The early chapters on program graphs and the Guarded Commands language are sufficient introduction for most readers to then enjoy a plug-and-play approach to the remaining chapters. These explain formal methods for analysing the behaviour of programs in various ways ranging from verification, via program analysis and language-based security, to model checking. The remaining chapters present language extensions with procedures and concurrency and cover their semantics. The book is suitable for advanced undergraduate and graduate courses in software development, and the text is supported throughout with exercises of varying grades of difficulty. The authors have developed an online learning environment that allows students to create examples beyond those covered in the main text, and in the book appendices they present programming projects aimed at implementing central parts of the development using the functional language F#.
Les mer
Program Graphs.- Guarded Commands.- Program Verification.- Program Analysis.- Language-Based Security.- Model Checking.- Procedures.- Concurrency.- Epilogue.- App. A, The MicroC Language.- App. B, Programming Projects.- App. C, Realisation in F#.- App. D, A Learning Environment.- Symbols.- Index.
Les mer
This textbook is an introduction to the use of formal methods ranging from semantics of key programming constructs to techniques for the analysis and verification of programs. The authors use program graphs as the mechanism for representing the control structure of programs in order to find a balance between generality and conceptual complexity.The early chapters on program graphs and the Guarded Commands language are sufficient introduction for most readers to then enjoy a plug-and-play approach to the remaining chapters. These explain formal methods for analysing the behaviour of programs in various ways ranging from verification, via program analysis and language-based security, to model checking. The remaining chapters present language extensions with procedures and concurrency and cover their semantics.The book is suitable for advanced undergraduate and graduate courses in software development, and the text is supported throughout with exercises of varying gradesof difficulty. The authors have developed an online learning environment that allows students to create examples beyond those covered in the main text, and in the book appendices they present programming projects aimed at implementing central parts of the development using the functional language F#.
Les mer
Uses program graphs to represent the control structure of programs Class-tested and suitable for advanced undergraduate and graduate courses Appendices include a guide to realization using F# Online tool at FormalMethods.dk allows students to experiment with most chapters
Les mer
GPSR Compliance The European Union's (EU) General Product Safety Regulation (GPSR) is a set of rules that requires consumer products to be safe and our obligations to ensure this. If you have any concerns about our products you can contact us on ProductSafety@springernature.com. In case Publisher is established outside the EU, the EU authorized representative is: Springer Nature Customer Service Center GmbH Europaplatz 3 69115 Heidelberg, Germany ProductSafety@springernature.com
Les mer

Produktdetaljer

ISBN
9783030051556
Publisert
2019-07-25
Utgiver
Vendor
Springer Nature Switzerland AG
Høyde
279 mm
Bredde
210 mm
Aldersnivå
Upper undergraduate, P, 06
Språk
Product language
Engelsk
Format
Product format
Innbundet

Biographical note

Flemming Nielson and Hanne Riis Nielson are full professors at the Technical University of Denmark (DTU), where they research formal methods for safe and secure systems in the Dept. of Applied Mathematics and Computer Science. They have written successful textbooks, including the Springer titles "Semantics with Applications: An Appetizer" and "Principles of Program Analysis", and they have lectured on these topics at Aalborg University, Aarhus University, the University of Kiel, Saarland University, and the Technical University of Denmark.