Formal Methods for Software Engineering

Formal Methods for Software Engineering PDF

Author: Markus Roggenbach

Publisher: Springer Nature

Published: 2022-06-22

Total Pages: 538

ISBN-13: 303038800X

DOWNLOAD EBOOK →

Software programs are formal entities with precise meanings independent of their programmers, so the transition from ideas to programs necessarily involves a formalisation at some point. The first part of this graduate-level introduction to formal methods develops an understanding of what constitutes formal methods and what their place is in Software Engineering. It also introduces logics as languages to describe reasoning and the process algebra CSP as a language to represent behaviours. The second part offers specification and testing methods for formal development of software, based on the modelling languages CASL and UML. The third part takes the reader into the application domains of normative documents, human machine interfaces, and security. Use of notations and formalisms is uniform throughout the book. Topics and features: Explains foundations, and introduces specification, verification, and testing methods Explores various application domains Presents realistic and practical examples, illustrating concepts Brings together contributions from highly experienced educators and researchers Offers modelling and analysis methods for formal development of software Suitable for graduate and undergraduate courses in software engineering, this uniquely practical textbook will also be of value to students in informatics, as well as to scientists and practical engineers, who want to learn about or work more effectively with formal theories and methods. Markus Roggenbach is a Professor in the Dept. of Computer Science of Swansea University. Antonio Cerone is an Associate Professor in the Dept. of Computer Science of Nazarbayev University, Nur-Sultan. Bernd-Holger Schlingloff is a Professor in the Institut für Informatik of Humboldt-Universität zu Berlin. Gerardo Schneider is a Professor in the Dept. of Computer Science and Engineering of University of Gothenburg. Siraj Ahmed Shaikh is a Professor in the Institute for Future Transport and Cities of Coventry University. The companion site for the book offers additional resources, including further material for selected chapters, prepared lab classes, a list of errata, slides and teaching material, and virtual machines with preinstalled tools and resources for hands-on experience with examples from the book. The URL is: https://sefm-book.github.io

Formal Methods in Computer Science

Formal Methods in Computer Science PDF

Author: Jiacun Wang

Publisher: CRC Press

Published: 2019-06-21

Total Pages: 241

ISBN-13: 1498775357

DOWNLOAD EBOOK →

This textbook gives students a comprehensive introduction to formal methods and their application in software and hardware specification and verification. It has three parts: The first part introduces some fundamentals in formal methods, including set theory, functions, finite state machines, and regular expressions. The second part focuses on logi

Formal Methods

Formal Methods PDF

Author: Flemming Nielson

Publisher: Springer

Published: 2019-07-16

Total Pages: 160

ISBN-13: 3030051560

DOWNLOAD EBOOK →

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#.

Formal Methods for Discrete-Time Dynamical Systems

Formal Methods for Discrete-Time Dynamical Systems PDF

Author: Calin Belta

Publisher: Springer

Published: 2017-03-08

Total Pages: 284

ISBN-13: 331950763X

DOWNLOAD EBOOK →

This book bridges fundamental gaps between control theory and formal methods. Although it focuses on discrete-time linear and piecewise affine systems, it also provides general frameworks for abstraction, analysis, and control of more general models. The book is self-contained, and while some mathematical knowledge is necessary, readers are not expected to have a background in formal methods or control theory. It rigorously defines concepts from formal methods, such as transition systems, temporal logics, model checking and synthesis. It then links these to the infinite state dynamical systems through abstractions that are intuitive and only require basic convex-analysis and control-theory terminology, which is provided in the appendix. Several examples and illustrations help readers understand and visualize the concepts introduced throughout the book.

Understanding Formal Methods

Understanding Formal Methods PDF

Author: Jean-Francois Monin

Publisher: Springer Science & Business Media

Published: 2012-12-06

Total Pages: 288

ISBN-13: 1447100433

DOWNLOAD EBOOK →

This is an excellent introduction to formal methods which will bring anyone who needs to know about this important topic up to speed. It is comprehensive, giving the reader all the information needed to explore the field of formal methods in more detail. It offers: a guide to the mathematics required; comprehensive but easy-to-understand introductions to various methods; a run-down of how formal methods can help to develop high-quality systems that come in on time, within budget, and according to requirements.

Finding Your Way Through Formal Verification

Finding Your Way Through Formal Verification PDF

Author: Bernard Murphy

Publisher: Createspace Independent Publishing Platform

Published: 2018-03-06

Total Pages: 134

ISBN-13: 9781986274111

DOWNLOAD EBOOK →

There are already many books on formal verification, from academic to application-centric, and from tutorials for beginners to guides for advanced users. Many are excellent for their intended purpose; we recommend a few at the end of this book. But most start from the assumption that you have already committed to becoming a hands-on expert (or in some cases that you already are an expert). We feel that detailed tutorials are not the easiest place to extract the introductory view many of us are looking for - background, a general idea of how methods work, applications and how formal verification is managed in the overall verification objective. Since we're writing for a fairly wide audience, we cover some topics that some of you may consider elementary (why verification is hard), some we hope will be of general interest (elementary understanding of the technology) and others that may not immediately interest some readers (setting up a formal verification team). What we intentionally do not cover at all is how to become a hands-on expert.

Concise Guide to Formal Methods

Concise Guide to Formal Methods PDF

Author: Gerard O'Regan

Publisher: Springer

Published: 2017-08-08

Total Pages: 322

ISBN-13: 3319640216

DOWNLOAD EBOOK →

This invaluable textbook/reference provides an easy-to-read guide to the fundamentals of formal methods, highlighting the rich applications of formal methods across a diverse range of areas of computing. Topics and features: introduces the key concepts in software engineering, software reliability and dependability, formal methods, and discrete mathematics; presents a short history of logic, from Aristotle’s syllogistic logic and the logic of the Stoics, through Boole’s symbolic logic, to Frege’s work on predicate logic; covers propositional and predicate logic, as well as more advanced topics such as fuzzy logic, temporal logic, intuitionistic logic, undefined values, and the applications of logic to AI; examines the Z specification language, the Vienna Development Method (VDM) and Irish School of VDM, and the unified modelling language (UML); discusses Dijkstra’s calculus of weakest preconditions, Hoare’s axiomatic semantics of programming languages, and the classical approach of Parnas and his tabular expressions; provides coverage of automata theory, probability and statistics, model checking, and the nature of proof and theorem proving; reviews a selection of tools available to support the formal methodist, and considers the transfer of formal methods to industry; includes review questions and highlights key topics in every chapter, and supplies a helpful glossary at the end of the book. This stimulating guide provides a broad and accessible overview of formal methods for students of computer science and mathematics curious as to how formal methods are applied to the field of computing.

Formal Verification

Formal Verification PDF

Author: Erik Seligman

Publisher: Elsevier

Published: 2023-05-26

Total Pages: 428

ISBN-13: 0323956130

DOWNLOAD EBOOK →

Formal Verification: An Essential Toolkit for Modern VLSI Design, Second Edition presents practical approaches for design and validation, with hands-on advice to help working engineers integrate these techniques into their work. Formal Verification (FV) enables a designer to directly analyze and mathematically explore the quality or other aspects of a Register Transfer Level (RTL) design without using simulations. This can reduce time spent validating designs and more quickly reach a final design for manufacturing. Building on a basic knowledge of SystemVerilog, this book demystifies FV and presents the practical applications that are bringing it into mainstream design and validation processes. Every chapter in the second edition has been updated to reflect evolving FV practices and advanced techniques. In addition, a new chapter, Formal Signoff on Real Projects, provides guidelines for implementing signoff quality FV, completely replacing some simulation tasks with significantly more productive FV methods. After reading this book, readers will be prepared to introduce FV in their organization to effectively deploy FV techniques that increase design and validation productivity. Covers formal verification algorithms that help users gain full coverage without exhaustive simulation Helps readers understand formal verification tools and how they differ from simulation tools Shows how to create instant testbenches to gain insights into how models work and to find initial bugs Presents insights from Intel insiders who share their hard-won knowledge and solutions to complex design problems

Formal Methods Teaching

Formal Methods Teaching PDF

Author: João F. Ferreira

Publisher: Springer Nature

Published: 2021-11-23

Total Pages: 159

ISBN-13: 3030915506

DOWNLOAD EBOOK →

This book constitutes the refereed proceedings of the 4th International Workshop and Tutorial, FMTea 2021, Held as Part of the 4th World Congress on Formal Methods, FM 2021, as a virtual event in November 2021. The 8 full papers presented together with 2 short papers were carefully reviewed and selected from 12 submissions. The papers are organized in topical sections named: experiences and proposals related with online FM learning and teaching, integrating/embedding FM teaching/thinking within other computer science courses, teaching FM for industry, and innovative learning and teaching methods for FM.

Formal Methods in Manufacturing

Formal Methods in Manufacturing PDF

Author: Javier Campos

Publisher: CRC Press

Published: 2014-02-25

Total Pages: 719

ISBN-13: 1466561556

DOWNLOAD EBOOK →

Illustrated with real-life manufacturing examples, Formal Methods in Manufacturing provides state-of-the-art solutions to common problems in manufacturing systems. Assuming some knowledge of discrete event systems theory, the book first delivers a detailed introduction to the most important formalisms used for the modeling, analysis, and control of manufacturing systems (including Petri nets, automata, and max-plus algebra), explaining the advantages of each formal method. It then employs the different formalisms to solve specific problems taken from today’s industrial world, such as modeling and simulation, supervisory control (including deadlock prevention) in a distributed and/or decentralized environment, performance evaluation (including scheduling and optimization), fault diagnosis and diagnosability analysis, and reconfiguration. Containing chapters written by leading experts in their respective fields, Formal Methods in Manufacturing helps researchers and application engineers handle fundamental principles and deal with typical quality goals in the design and operation of manufacturing systems.