+353-1-416-8900REST OF WORLD
+44-20-3973-8888REST OF WORLD
1-917-300-0470EAST COAST U.S
1-800-526-8630U.S. (TOLL FREE)


An Introduction to Practical Formal Methods Using Temporal Logic. Edition No. 1

  • ID: 2170463
  • Book
  • April 2011
  • 360 Pages
  • John Wiley and Sons Ltd
The name "temporal logic" may sound complex and daunting; but while they describe potentially complex scenarios, temporal logics are often based on a few simple, and fundamental, concepts - highlighted in this book. An Introduction to Practical Formal Methods Using Temporal Logic provides an introduction to formal methods based on temporal logic, for developing and testing complex computational systems. These methods are supported by many well-developed tools, techniques and results that can be applied to a wide range of systems.

Fisher begins with a full introduction to the subject, covering the basics of temporal logic and using a variety of examples, exercises and pointers to more advanced work to help clarify and illustrate the topics discussed. He goes on to describe how this logic can be used to specify a variety of computational systems, looking at issues of linking specifications, concurrency, communication and composition ability. He then analyses temporal specification techniques such as deductive verification, algorithmic verification, and direct execution to develop and verify computational systems. The final chapter on case studies analyses the potential problems that can occur in a range of engineering applications in the areas of robotics, railway signalling, hardware design, ubiquitous computing, intelligent agents, and information security, and explains how temporal logic can improve their accuracy and reliability.

  • Models temporal notions and uses them to analyze computational systems
  • Provides a broad approach to temporal logic across many formal methods - including specification, verification and implementation
  • Introduces and explains freely available tools based on temporal logics and shows how these can be applied
  • Presents exercises and pointers to further study in each chapter, as well as an accompanying website providing links to additional systems based upon temporal logic as well as additional material related to the book.
Note: Product cover images may vary from those shown

Preface vii

1 Introduction 1

1.1 Aims of the book 2

1.2 Why temporal logic? 3

1.3 What is temporal logic? 4

1.4 Structure of the book 6

2 Temporal logic 9

2.1 Intuition 10

2.2 Syntactic aspects 12

2.3 Semantics 14

2.4 Reactive system properties 22

2.5 What is temporal logic? 25

2.6 Normal form 28

2.7 Büchi automata and temporal logic 29

2.8 Advanced topics 37

2.9 Final exercises 47

3 Specification 49

3.1 Describing simple behaviours 49

3.2 A semantics of imperative programs 53

3.3 Linking specifications 60

3.4 Advanced topics 74

3.5 Final exercises 82

3.6 Where to next? 83

4 Deduction 85

4.1 Temporal proof 85

4.2 Clausal temporal resolution 87

4.3 The TSPASS system 108

4.4 Advanced topics 122

4.5 Final exercises 127

5 Model checking 129

5.1 Algorithmic verification 129

5.2 Automata-theoretic model checking 135

5.3 The Spin system 143

5.4 Advanced topics 171

5.5 Final exercises 181

6 Execution 185

6.1 From specifications to programs 185

6.2 MetateM: executing temporal formulae 188

6.3 The Concurrent MetateM system 211

6.4 Advanced topics 233

7 Selected applications 243

7.1 Model checking programs 243

7.2 Security protocol analysis 246

7.3 Recognizing temporal patterns 251

7.4 Parameterized systems 255

7.5 Reasoning with intervals 260

7.6 Planning 264

8 Summary 267

A Review of classical logic 269

A.1 Introduction 269

A.2 Propositional logic 271

A.3 Normal forms 276

A.4 Propositional resolution 279

A.5 Horn clauses 286

A.6 First-order logic 288

B Solutions to exercises 307

References 321

Index 349

Note: Product cover images may vary from those shown
Michael Fisher University of Liverpool, UK.
Note: Product cover images may vary from those shown