The Theory of Timed I/O Automata Second Edition
Total Page:16
File Type:pdf, Size:1020Kb
The Theory of Timed I/O Automata Second Edition Synthesis Lectures on Distributed Computing Theory Editor Nancy Lynch, Massachusetts Institute of Technology Synthesis Lectures on Distributed Computing Theory is edited by Nancy Lynch of the Massachusetts Institute of Technology. The series will publish 50- to 150 page publications on topics pertaining to distributed computing theory. The scope will largely follow the purview of premier information and computer science conferences, such as ACM PODC, DISC, SPAA, OPODIS, CONCUR, DialM-POMC, ICDCS, SODA, Sirocco, SSS, and related conferences. Potential topics include, but not are limited to: distributed algorithms and lower bounds, algorithm design methods, formal modeling and verification of distributed algorithms, and concurrent data structures. The Theory of Timed I/O Automata - Second Edition Dilsun K. Kaynar, Nancy Lynch, Roberto Segala, and Frits Vaandrager 2010 Principles of Transactional Memory Rachid Guerraoui and Michal Kapalka 2010 Fault-tolerant Agreement in Synchronous Message-passing Systems Michel Raynal 2010 Communication and Agreement Abstractions for Fault-Tolerant Asynchronous Distributed Systems Michel Raynal 2010 The Mobile Agent Rendezvous Problem in the Ring Evangelos Kranakis, Danny Krizanc, and Euripides Markou 2010 Copyright © 2011 by Morgan & Claypool All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted in any form or by any means—electronic, mechanical, photocopy, recording, or any other except for brief quotations in printed reviews, without the prior permission of the publisher. The Theory of Timed I/O Automata - Second Edition Dilsun K. Kaynar, Nancy Lynch, Roberto Segala, and Frits Vaandrager www.morganclaypool.com ISBN: 9781608450022 paperback ISBN: 9781608450039 ebook DOI 10.2200/S00310ED1V01Y201011DCT005 A Publication in the Morgan & Claypool Publishers series SYNTHESIS LECTURES ON DISTRIBUTED COMPUTING THEORY Lecture #5 Series Editor: Nancy Lynch, Massachusetts Institute of Technology Series ISSN Synthesis Lectures on Distributed Computing Theory Print 2155-1626 Electronic 2155-1634 The Theory of Timed I/O Automata Second Edition Dilsun K. Kaynar CyLab, Carnegie Mellon University Nancy Lynch MIT Computer Science and Artificial Intelligence Laboratory Roberto Segala Dipartimento di Informatica, Università di Verona Frits Vaandrager Institute for Computing and Information Sciences, Radboud University Nijmegen SYNTHESIS LECTURES ON DISTRIBUTED COMPUTING THEORY #5 M &C Morgan& cLaypool publishers ABSTRACT This monograph presents the Timed Input/Output Automaton (TIOA) modeling framework, a basic mathematical framework to support description and analysis of timed (computing) systems. Timed systems are systems in which desirable correctness or performance properties of the system depend on the timing of events, not just on the order of their occurrence. Timed systems are employed in a wide range of domains including communications, embedded systems, real-time operating systems, and automated control. Many applications involving timed systems have strong safety, reliability, and predictability requirements, which make it important to have methods for systematic design of systems and rigorous analysis of timing-dependent behavior. The TIOA framework also supports description and analysis of timed distributed algorithms—distributed algorithms whose correctness and performance depend on the relative speeds of processors, accuracy of local clocks, or communication delay bounds. Such algorithms arise, for example, in traditional and wireless communications, networks of mobile devices, and shared-memory multiprocessors. The need to prove rigorous theoretical results about timed dis- tributed algorithms makes it important to have a suitable mathematical foundation. An important feature of the TIOA framework is its support for decomposing timed system descriptions. In particular, the framework includes a notion of external behavior for a timed I/O automaton, which captures its discrete interactions with its environment.The framework also defines what it means for one TIOA to implement another, based on an inclusion relationship between their external behavior sets, and defines notions of simulations, which provide sufficient conditions for demonstrating implementation relationships. The framework includes a composition operation for TIOAs, which respects external behavior, and a notion of receptiveness, which implies that a TIOA does not block the passage of time. The TIOA framework also defines the notion of a property and what it means for a property to be a safety or a liveness property. It includes results that capture common proof methods for showing that automata satisfy properties. KEYWORDS timed computing systems, distributed algorithms, formal modeling and verification, I/O automata vii Contents Acknowledgments ........................................................ xi Notations ..............................................................xiii 1 Introduction ..............................................................1 1.1 Overview.............................................................. 1 1.2 Evolution of the TIOA framework ........................................ 3 1.3 Related work ........................................................... 5 1.4 Organization of the Book ................................................ 7 2 Mathematical Preliminaries ................................................9 2.1 Functions and Relations ................................................. 9 2.2 Sequences ............................................................ 10 2.3 Partial Orders ......................................................... 10 2.4 A Basic Graph Lemma ................................................. 11 3 Describing Timed System Behavior ....................................... 13 3.1 Time ................................................................ 13 3.2 Static and Dynamic Types .............................................. 13 3.3 Trajectories ........................................................... 15 3.3.1 Basic Definitions ................................................ 15 3.3.2 Prefix Ordering ................................................. 16 3.3.3 Concatenation .................................................. 16 3.4 Hybrid Sequences ..................................................... 17 3.4.1 Basic Definitions ................................................ 18 3.4.2 Prefix Ordering ................................................. 19 3.4.3 Concatenation .................................................. 20 3.4.4 Restriction ..................................................... 20 4 Timed Automata ........................................................ 23 4.1 Definition of Timed Automata .......................................... 23 4.2 Executions and Traces .................................................. 31 viii 4.3 Invariants ............................................................. 36 4.4 Special Kinds of Timed Automata ....................................... 38 4.5 Implementation Relationships ........................................... 40 4.6 Simulation Relations ................................................... 41 4.6.1 Forward Simulations ............................................. 42 4.6.2 Refinements .................................................... 45 4.6.3 Backward Simulations ............................................ 47 4.6.4 History Relations ................................................ 50 4.6.5 Prophecy Relations .............................................. 54 5 Operations on Timed Automata ........................................... 57 5.1 Composition .......................................................... 57 5.1.1 Definitions and Basic Results ...................................... 57 5.1.2 Substitutivity Results ............................................. 63 5.2 Hiding ............................................................... 67 5.3 Extending Timed Automata with Bounds ................................. 68 6 Properties for Timed Automata ........................................... 77 6.1 Properties for Hybrid Sequences ......................................... 77 6.2 Properties for Timed Automata .......................................... 81 6.3 Implementation ....................................................... 82 6.4 Operations ........................................................... 83 7 Timed I/O Automata .................................................... 85 7.1 Definition of Timed I/O Automata ...................................... 85 7.2 Executions and Traces .................................................. 86 7.3 Special Kinds of Timed I/O Automata .................................... 86 7.3.1 Feasible and I/O Feasible TIOAs .................................. 86 7.3.2 Progressive TIOAs ............................................... 87 7.3.3 Receptive Timed I/O Automata ................................... 88 7.4 Implementation Relationships ........................................... 90 7.5 Simulation Relations ................................................... 90 8 Operations on Timed I/O Automata ....................................... 91 8.1 Composition .......................................................... 91 8.1.1 Definitions and Basic Results ...................................... 91 8.1.2 Substitutivity Results ............................................. 93 ix 8.1.3 Composition of Special