DECENTRALIZED DIAGNOSIS OF EVENT-DRIVEN SYSTEMS FOR SAFELY REACTING TO FAILURES. Wenbin Qiu and Ratnesh Kumar

Similar documents
Decentralized Failure Diagnosis of Discrete Event Systems

Diagnosis of Dense-Time Systems using Digital-Clocks

A Polynomial Algorithm for Testing Diagnosability of Discrete Event Systems

Failure Diagnosis of Discrete Event Systems With Linear-Time Temporal Logic Specifications

Diagnosis of Repeated/Intermittent Failures in Discrete Event Systems

Intersection Based Decentralized Diagnosis: Implementation and Verification

Decentralized Diagnosis of Discrete Event Systems using Unconditional and Conditional Decisions

Achieving Fault-tolerance and Safety of Discrete-event Systems through Learning

Decentralized Control of Discrete Event Systems with Multiple Local Specializations 1

Online Failure Diagnosis of Stochastic Discrete Event Systems

Semi-asynchronous. Fault Diagnosis of Discrete Event Systems ALEJANDRO WHITE DR. ALI KARIMODDINI OCTOBER

A Learning-based Active Fault-tolerant Control Framework of Discrete-event Systems

Diagnosability Analysis of Discrete Event Systems with Autonomous Components

Supervisory control under partial observation is an important problem

Extremal Solutions of Inequations over Lattices with Applications to Supervisory Control 1

Semi-asynchronous Fault Diagnosis of Discrete Event Systems

Extension based Limited Lookahead Supervision of Discrete Event Systems

On the Design of Adaptive Supervisors for Discrete Event Systems

Decentralized Failure Diagnosis of Stochastic Discrete Event Systems

Coordinated Decentralized Protocols for Failure Diagnosis of Discrete Event Systems

Masked Prioritized Synchronization for Interaction and Control of Discrete Event Systems

FORMULAS FOR CALCULATING SUPREMAL CONTROLLABLE AND NORMAL SUBLANGUAGES 1 R. D. Brandt 2,V.Garg 3,R.Kumar 3,F.Lin 2,S.I.Marcus 3, and W. M.

Optimal Non-blocking Decentralized Supervisory Control Using G-Control Consistency

Resolution of Initial-State in Security Applications of DES

A Discrete Event Systems Approach for Protocol Conversion

Diagnosis of Discrete-Event Systems in Rules-based Model using First-order Linear Temporal Logic

Failure Diagnosis of Discrete-Time Stochastic Systems subject to Temporal Logic Correctness Requirements

On Controllability and Normality of Discrete Event. Dynamical Systems. Ratnesh Kumar Vijay Garg Steven I. Marcus

Synthesis of Maximally Permissive Non-blocking Supervisors for Partially Observed Discrete Event Systems

On Supervisory Control of Concurrent Discrete-Event Systems

IN THIS paper we investigate the diagnosability of stochastic

On Properties and State Complexity of Deterministic State-Partition Automata

SUPERVISORY CONTROL AND FAILURE DIAGNOSIS OF DISCRETE EVENT SYSTEMS: A TEMPORAL LOGIC APPROACH

Bridging the Gap between Reactive Synthesis and Supervisory Control

Language Stability and Stabilizability of Discrete Event Dynamical Systems 1

Author's personal copy

MOST OF the published research on control of discreteevent

Decentralized Modular Control of Concurrent Fuzzy Discrete Event Systems

Petri Net Diagnoser for DES Modeled by Finite State Automata

Symbolic Decentralized Supervisory Control

TIMED-EVENT-STATE-BASED DIAGNOSER FOR MANUFACTURING SYSTEMS

Monitoring and Active Diagnosis for Discrete-Event Systems

Decentralized Control of Discrete Event Systems with Bounded or Unbounded Delay Communication

748 IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. 54, NO. 4, APRIL 2009

Stéphane Lafortune. August 2006

Towards Decentralized Synthesis: Decomposable Sublanguage and Joint Observability Problems

Fault Tolerant Controllability

The State Explosion Problem

A Scalable Jointree Algorithm for Diagnosability

DISTINGUING NON-DETERMINISTIC TIMED FINITE STATE MACHINES

EE249 - Fall 2012 Lecture 18: Overview of Concrete Contract Theories. Alberto Sangiovanni-Vincentelli Pierluigi Nuzzo

Decentralized Control of Discrete Event Systems with Bounded or Unbounded Delay Communication 1

Automatic Synthesis of Distributed Protocols

THEORY OF COMPUTATION (AUBER) EXAM CRIB SHEET

Monitoring and Fault-Diagnosis with Digital Clocks

Supervisory Control of Manufacturing Systems with Time Specifications

Supervision Patterns in Discrete Event Systems Diagnosis

Integrated Fault Diagnosis Based on Petri Net Models

IEEE TRANSACTIONS ON SYSTEMS, MAN, AND CYBERNETICS PART B: CYBERNETICS, VOL. 40, NO. 3, JUNE /$ IEEE

Timed Fault Tolerant Supervisory Control

The algorithmic analysis of hybrid system

Lecture Notes On THEORY OF COMPUTATION MODULE -1 UNIT - 2

Diagnosability of Stochastic Discrete-Event Systems Under Unreliable Observations

Let us first give some intuitive idea about a state of a system and state transitions before describing finite automata.

Bisimulation, the Supervisory Control Problem and Strong Model Matching for Finite State Machines

A Canonical Contraction for Safe Petri Nets

A. Disjunctive Prognosers

Characterizing Fault-Tolerant Systems by Means of Simulation Relations

Approximately Bisimilar Finite Abstractions of Stable Linear Systems

Logic Model Checking

FAULT diagnosis is crucial for ensuring the safe operation

This lecture covers Chapter 7 of HMU: Properties of CFLs

Approximation Metrics for Discrete and Continuous Systems

Chapter 2: Finite Automata

T (s, xa) = T (T (s, x), a). The language recognized by M, denoted L(M), is the set of strings accepted by M. That is,

Sanjit A. Seshia EECS, UC Berkeley

540 IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. 43, NO. 4, APRIL Algorithmic Analysis of Nonlinear Hybrid Systems

Alan Bundy. Automated Reasoning LTL Model Checking

Temporal Logic. Stavros Tripakis University of California, Berkeley. We have designed a system. We want to check that it is correct.

Timo Latvala. March 7, 2004

Temporal logics and explicit-state model checking. Pierre Wolper Université de Liège

Decision, Computation and Language

Distribution of reactive systems

CDS 270 (Fall 09) - Lecture Notes for Assignment 8.

Finally the Weakest Failure Detector for Non-Blocking Atomic Commit

CS 154, Lecture 3: DFA NFA, Regular Expressions

Comparing diagnosability in Continuous and Discrete-Event Systems

Computer-Aided Program Design

ONR MURI AIRFOILS: Animal Inspired Robust Flight with Outer and Inner Loop Strategies. Calin Belta

Runtime Verification. Grigore Roşu. University of Illinois at Urbana-Champaign

Theory of Computation

Diagnosis of Labeled Time Petri Nets Using Time Interval Splitting

An Active Learning Approach For Inferring Discrete Event Automata

Finite Automata and Regular languages

Abstractions and Decision Procedures for Effective Software Model Checking

Complexity Issues in Automated Addition of Time-Bounded Liveness Properties 1

Supervisory Control: Advanced Theory and Applications

arxiv: v2 [cs.dc] 18 Feb 2015

Notes on State Minimization

Automata-based Verification - III

Transcription:

DECENTRALIZED DIAGNOSIS OF EVENT-DRIVEN SYSTEMS FOR SAFELY REACTING TO FAILURES Wenbin Qiu and Ratnesh Kumar Department of Electrical and Computer Engineering Iowa State University Ames, IA 50011, U.S.A. {wqiu,rkumar}@iastate.edu Abstract: We introduce the notion of safe-codiagnosability, extending the notion of safe-diagnosability (Paoli and Lafortune, 2003) to the decentralized setting, where there exist multiple diagnosers performing diagnosis using their own observations without communicating to each other. For a system, a certain sub-behavior is deemed safe (captured via a safety specification), and a further sub-behavior is deemed non-faulty (captured via a non-fault specification). Safe-codiagnosability requires that when the system executes a trace that is faulty, there exists at least one diagnoser that can detect this within bounded delay and also before the safety specification is violated. The above notion of safe-codiagnosability may also be viewed as an extension of the notion of codiagnosability (Qiu and Kumar, 2004), where the latter did not have any safety requirement. We show that safe-codiagnosability is equivalent to codiagnosability together with zerodelay codiagnosability of boundary safe traces. (A safe trace is a boundary safe trace, if exists a single-event extension that is unsafe.) We give an algorithm of polynomial complexity for verifying safe-codiagnosability. For a safe-codiagnosable system, the same methods as those proposed in (Qiu and Kumar, 2004) can be applied for off-line synthesis of individual diagnosers, as well as for on-line diagnosis using them. Keywords: Discrete-event systems, Fault diagnosis, Safety analysis, Decentralized systems 1. INTRODUCTION Failure diagnosis is an active area of research, and has received considerable attention in the literature. A failure is a deviation from an expected or desired behavior. Various approaches 1 The research was supported in part by the National Science Foundation under the grants NSF-ECS-0218207, NSF-ECS-0244732, NSF-EPNES-0323379, and NSF-ECS- 0424048, and a DoD-EPSCoR grant through the Office of Naval Research under the grant N000140110621. have been proposed for failure diagnosis, including fault-trees, expert systems, neural networks, fuzzy logic, Bayesian networks, and analytical redundancy (Pouliezos and Stavrakakis, 1994). These are broadly categorized into non-model based (where observed behavior is matched to known failures), and model based (where observed behavior is compared against model predictions for any abnormality). For discrete event systems (DESs) systems with discrete states that change when certain

events occur, a certain model based approach for failure diagnosis is proposed in (Sampath et al., 1995). The property of diagnosability requires that once a failure has occurred, it be detected and diagnosed within bounded delay (within bounded number of transitions). The diagnosability can be tested polynomially as shown later in (Jiang et al., 2001; Yoo and Lafortune, 2002). In (Sampath and Lafortune, 1998), the notion of active failure diagnosis was introduced where control is exercised to meet given specifications while satisfying diagnosability. In (Das and Holloway, 2000; Pandalai and Holloway, 2000), a template based approach was developed for failure diagnosis in timed discrete event system. The above approaches can be thought to be event-based as failure is modeled as execution of certain faulty events. An equivalent state-based approach was considered in (Lin, 1994; Zad et al., 2003), where the occurrence of a failure is modeled as reaching of certain faulty states. To facilitate generalization of failure specifications, linear-time temporal logic (LTL) based specification and diagnosis of its failure was proposed in (Jiang and Kumar, 2004). A theory for failure diagnosis of repeatedly-occurring/intermittent failures was introduced in (Jiang et al., 2003). The above mentioned work dealt with centralized failure diagnosis, where a central diagnoser is responsible for failure detection and diagnosis in the system. (Debouk et al., 2000) addressed the problem of distributed failure diagnosis based on a coordinated decentralized architecture, where local diagnosers do not communicate with each other directly, but send local information to a coordinator. Then the coordinator makes the final diagnosis decision. (Sengupta and Tripakis, 2002) discussed the distributed diagnosis problem, where communication directly exists between local diagnosers, and is assumed to be lossless, and in order. Notion of decentralized diagnosis was formulated, which was proved to be undecidable. The decentralized diagnosis problem with asymmetric communication was discussed in (Boel and van Schuppen, 2002), where communication is oneway and without delays. In a prior work (Qiu and Kumar, 2004), we studied the problem of decentralized failure diagnosis, where the system failure is diagnosed by multiple local diagnosers. A notion of codiagnosability was introduced to capture the fact that the occurrence of any failure must be diagnosed within bounded delay by at least one local diagnoser using its own observations of the system execution. Polynomial algorithms were provided for (i) testing codiagnosability, (ii) computing the delay bound of diagnosis, (iii) off-line synthesis of diagnosers, and (iv) on-line diagnosis using them. In order to react to a failure in a timely fashion, while it is necessary that the failure be detected within a bounded delay, such a property alone is not sufficient. It is also needed that the detection occur before the system behavior becomes unsafe. To capture this additional requirement for failure detection, the notion of safe-diagnosability was introduced in (Paoli and Lafortune, 2003). We extend this notion to the decentralized setting, where there exist multiple diagnosers performing diagnosis using their own observations without communicating to each other, by formulating the notion of safe-codiagnosability. For a system, a certain sub-behavior is deemed safe (captured via a safety specification), and a further sub-behavior is deemed non-faulty (captured via a non-fault specification). The safe behavior includes all of non-faulty behavior and some of post-fault behavior where system performance may be degraded but still tolerable. Safe-codiagnosability requires that when the system executes a trace that is faulty, then exists at least one diagnoser that can detect this within bounded delay and also before the safety specification is violated. The above notion of safe-codiagnosability may also be viewed as an extension of the notion of codiagnosability (Qiu and Kumar, 2004), where the latter did not have any safety requirement. We show that safe-codiagnosability is equivalent to codiagnosability together with zero-delay codiagnosability of boundary safe traces. (A safe trace is a boundary safe trace, if exists a singleevent extension that is unsafe.) We give an algorithms of polynomial complexity for verifying safecodiagnosability. (The verification algorithm presented in (Paoli and Lafortune, 2003) was based upon the structural property of a deterministic diagnoser, and had an exponential complexity owing to the exponential size of the diagnoser.) For a safe-codiagnosable system, the same methods as those proposed in (Qiu and Kumar, 2004) can be applied for off-line synthesis of individual diagnosers, as well as for on-line diagnosis using them. 2. NOTIONS AND PRELIMINARIES Given an event set Σ, Σ is used to denote the set of all finite length event sequences over Σ, including the zero length event sequence ɛ. A member of Σ is a trace and a subset of Σ is a language. Given a language K Σ, the complement of K, denoted K c Σ, is defined as K c := Σ K. If trace t is a prefix of trace s, it is denoted as t s. Given a language K Σ, its prefix-closure, denoted pr(k), is defined as, pr(k) := {s Σ t K s.t. s t}, and K is said to be prefix-closed if K = pr(k). The supremal prefix-closed sublanguage of K, denoted supp (K) K, is defined as, supp (K) := {s K pr(s) K}. The quotient of K 1 with respect to K 2 is defined as K 1 /K 2 := {s Σ t

K 2 s.t. st K 1 }. The set of deadlocking traces of a language K are those traces from which no further extensions exist in K, i.e., s K is deadlocking trace if {s}σ K = {s}. A DES is modeled as a finite state machine (FSM)/finite automaton (FA) G and is denoted by G(X, Σ, α, x 0 ), where X is the set of states, Σ is the finite set of events, x 0 X is the initial state, and α : X Σ 2 X is the transition function, where Σ := Σ {ɛ}. G is said to be deterministic if α(, ) 1 and α(, ɛ) = 0; otherwise, it is called nondeterministic. (x, σ, x ) X Σ X is a transition of G if x α(x, σ); it is an ɛ-transition if σ = ɛ. Letting ɛ (x) denote the set of states reachable from x in zero or more ɛ-transitions, the transition function α can be extended from domain X Σ to domain X Σ recursively as follows: x X, s Σ, σ Σ, α(x, ɛ) = ɛ (x), and α(x, sσ) = ɛ (α(α(x, s), σ))). The generated language by G is defined as L(G) := {s Σ α(x 0, s) }, i.e., it includes all traces that can be executed from the initial state of G. States reached by execution of deadlocking traces in L(G) are called deadlocking states. A path in G is a sequence of transitions (x 1, σ 1, x 2,, σ n 1, x n ), where σ i Σ and x i+1 α(x i, σ i ) for all i {1,, n 1}. The path is called a cycle if x 1 = x n. Given an automaton G = {X, Σ, α, x 0 }, the complete model of G is defined as G = {X, Σ, α, x 0 }, where X := X {F }, and α is defined as follows. x X, σ Σ, α(x, σ) := { α(x, σ), if [x X] [α(x, σ) ] F, if [x = F ] [α(x, σ) = ]. Since all events are defined at each state, the complete model G generates the language Σ, i.e., L(G) = Σ. Given two automata G = (X, Σ, α, x 0 ) and R = (Y, Σ, β, y 0 ), the synchronous composition of G and R is defined as, G R = (X Y, Σ, γ, (x 0, y 0 )) such that (x, y) X Y, σ Σ, γ((x, y), σ) := { α(x, σ) β(y, σ), if σ ɛ; (α(x, ɛ) {y}) ({x} β(y, ɛ)), otherwise. If the system execution is observed through a single global observer, we can define a global observation mask as M : Σ with M(ɛ) = ɛ, where := {ɛ} and is the set of observed symbols. The definition of M can be extended from events to event sequences inductively as follows: M(ɛ) = ɛ; s Σ, σ Σ, M(sσ) = M(s)M(σ). Given an automaton G and mask M, M(G) is the masked automaton of G with each transition (x, σ, x ) of G replaced by (x, M(σ), x ). The local observation masks associated with different local observers are defined as M i : Σ i (i I = {1,, m}), where m is the number of local observers, i := i {ɛ} and i is the set of locally observed symbols. 3. SAFE-CODIAGNOSABILITY In this section, we present the definition of safecodiagnosability and the separation property of safe-codiagnosability. As described in (Qiu and Kumar, 2004), for the purpose of diagnosis, a system with deadlocking states can be converted to a deadlock free system by adding a self-loop labeled ɛ at each of its deadlocking state without affecting the diagnosis analysis. So without loss of generality, we assume a system to be diagnosed, a plant, to be deadlock free. Definition 1. (Qiu and Kumar, 2004) Let L be the prefix-closed language generated by a plant, and K be a prefix-closed sublanguage specifying the non-faulty plant behavior (K = pr(k) L). Assume there are m local sites with observation masks M i : Σ i (i I = {1,, m}). (L, K) is said to be codiagnosable with respect to {M i } if ( n N )( s L K)( st L K, t n) ( i I)( u i M i (st) L, u L K) (1) In the following lemma we provide an alternative definition of codiagnosability. Lemma 1. Let L and K be prefix-closed plant and non-fault specification languages respectively, and for i I, M i be observation mask of site i. Then (L, K) is codiagnosable with respect to {M i } if and only if n N : [(L K)Σ n L] Proof: The condition (1) in definition of codiagnosability requires that exists a local site i such that any st-indistinguishable u at site i is faulty (u L K). This can be rephrased as saying that it is not the case that for each site i exists a st-indistinguishable non-faulty trace u i K, i.e., ( i I)( u i i M i (st) L, u i K) (2) The set of traces, {w i I, u i i M i (w) L, u i K}

is same as the set of traces i M i (K). Thus the condition (2) can be equivalently written as, st M i (K). i Further since st L is a feasible extension of a faulty trace s L K with length of t at least the delay bound n, st L (L K)Σ n. It follows that the definition of codiagnosability of (L, K) may be rephrased as, n N : [(L K)Σ n L] Remark 1. We can introduce the notion of zero delay codiagnosability by setting n = 0 in the definition of codiagnosability provided by Lemma 1. Then (L, K) is said to be zero-delay codiagnosable with respect to {M i } if (L K) (3) We say a faulty sublanguage H L K is zero-delay codiagnosable with respect to {M i } if H Note that (3) is equivalent to, i M i (K) L K, i.e., (L, K) is zero-delay codiagnosable if and only if the non-faulty behavior K is decomposable (Rudie and Wonham, 1992) with respect to the non-faulty+faulty (plant) behavior L. Definition 1 captures the system property that a failure event can be diagnosed within bounded delay after its occurrence by at least one of the local sites. In order to react to a failure in a timely fashion, it is also needed that a failure be detected before system behavior becomes unsafe. Safe behavior includes all of non-faulty behavior and some of post-fault behavior where system performance may be degraded but still tolerable. The safety specification, denoted K S, is another prefixclosed sublanguage of plant language, containing the non-fault specification, i.e., K K S L. Then the notion of safe-codiagnosability can be formalized as follows. Definition 2. Let L be the prefix-closed language generated by a plant, and K and K S be prefixclosed non-fault and safety specification languages contained in L, respectively (K K S L). Assume there are m local sites with observation masks M i : Σ i (i I = {1,, m}). (L, K, K S ) is said to be safe-codiagnosable with respect to {M i } if ( n N )( s L K)( st L K, t n) ( i I)( v pr(st) K S ) ( u i M i (v) L, u L K) (4) Definition 2 has the following meaning. A system is safe-codiagnosable if there exists a delay bound n such that for all faulty trace s L K and all extension t of s with length longer than delay bound ( t n), there exists a site i and a safe prefix v of st such that for all v- indistinguishable u at site i, u is a faulty trace in L K. Informally, Definition 2 means that for any faulty trace, there exists at least one local site that can unambiguously detect that failure within bounded delay and before safety is violated. Just as we provided an alternative definition of codiagnosability in Lemma 1, we provide an alternative definition of safe-codiagnosability in the following lemma. Lemma 2. Let L, K, and K S be prefix-closed plant, non-fault specification, and safety specification languages respectively, and for i I, M i be observation mask of site i. Then (L, K, K S ) is safe-codiagnosable with respect to {M i } if and only if n N : [(L K)Σ n L] supp [ i M i (K) K c S] =. Proof: The condition (4) in definition of codiagnosability requires that exists a local site i and a safe prefix v st such that any v- indistinguishable u at site i is faulty (u L K). This can be rephrased as saying that it is not the case that for each site i for each safe prefix v st exists a v-indistinguishable nonfaulty trace u i K, i.e., The set of traces, ( i I)( v pr(st) K S ) ( u i i M i (v) L, u i K) (5) {w i I, v pr(w) K S, u i i M i (v) L, u i K} is same as the set of traces, {w pr(w) K S i which is the same set of traces, {w pr(w) which is the set i M i (K)}, M i (K) K c S},

supp [ i M i (K) K c S], Note that a trace w belongs to this last set if and only if pr(w) [ i M i (K) KS c ], i.e., each prefix of w has the property that it is either unsafe (belongs to KS c ) or for each i exists M i- indistinguishable trace u i K. Thus the condition (5) can be equivalently written as, st supp [ i M i (K) KS c ]. On the other hand, based on the arguments used in the proof of Lemma 1, we know that st L (L K)Σ n. It follows that the definition of safe-codiagnosability of (L, K) may be rephrased as, n N : [(L K)Σ n L] supp [ i M i (K) K c S] =. To facilitate the development of a test for safecodiagnosability, we show that the property of safe-codiagnosability can be separated into codiagnosability together with zero-delay codiagnosability of set of boundary safe traces, where a boundary safe trace is a safe trace for which exists a single-event extension that is unsafe. Definition 3. Given prefix-closed plant language L and safety specification language K S, a safe trace s K S is called a boundary safe trace if exists σ Σ such that sσ L K S, i.e., s [(L K S )/Σ] K S. The set of all boundary safe traces is called the boundary safe language, denoted KS, and is given by KS = [(L K S)/Σ] K S. We need the result of the following lemma before establishing the main separation result. Lemma 3. Consider the prefix-closed non-fault specification language K and the observation masks {M i } (i I). Then M i (K) is prefix-closed. i Proof: Prefix-closure of K implies prefix-closure of i M i (K) for each i I. So the result follows since prefix-closure is preserved under intersection. The following theorem presents the separation property of safe-codiagnosability, based on which we develop the test for safe-codiagnosability. Theorem 1. Let L, K and K S be plant language, non-fault specification language, and safety specification language, respectively. (L, K, K S ) is safecodiagnosable with respect to {M i } if and only if 1. (L, K) codiagnosable with respect to {M i }: n N : [(L K)Σ n L] i M i (K) = ; 2. KS zero-delay codiagnosable with respect to {M i }: KS Proof: ( ) From the property of codiagnosability exists a delay bound n such that condition of codiagnosability is satisfied. We claim that the same delay bound works for the definition of safecodiagnosability. To see this, pick s L K and t Σ such that t n and st L. Then st [(L K)Σ n L]. We need to show that st supp [ M i (K) KS c ], i.e., exists a i prefix v st such that v i M i (K) K c S. Since L K = (K S K) (L K S ), st L K implies either st K S K or st L K S. For the first case (st K S K), we can set v = st. Then v is a prefix of st, and also since v = st K S, it holds that v KS c. It remains to be shown that v = st M i (K), which i holds from the property of codiagnosability since st [(L K)Σ n L] and [(L K)Σ n L] For the second case (st L K S ), suppose for contradiction that for every prefix v st, it holds that v i M i (K) KS c. Since st L K S, exists a prefix w st that is a boundary safe trace, i.e., w KS. From our supposition, w M i (K) KS c. So, i w [L K S )/Σ K S ] [ i M i (K) K c S] = [L K S )/Σ K S ] [ i M i (K)]. Then we arrive at a contradiction to the condition: KS ( ) From Lemma 2 we have, This implies, n N : [(L K)Σ n L] supp [ i M i (K) K c S] =. n N : [(L K)Σ n L] supp [ i M i (K)] =. Further from Lemma 3, supp [ i M i (K)] = M i (K). So we also have i n N : [(L K)Σ n L] i M i (K) =, establishing the codiagnosability. Next to show the zero-delay codiagnosability of boundary safe traces, pick a boundary safe

trace w KS. Then exists σ Σ such that wσ L K S, and we need to show that w i M i (K). Set s = wσ L K S L K, and pick t such that t n and st L (which is possible from our underlying assumption of plant being deadlock free). Then st [(L K)Σ n L]. From the assumption of safe-codiagnosability, st supp [ M i (K) KS c ], which implies i every prefix of st, including w K c S. From this it follows that w as desired. i i 4. VERIFICATION OF SAFE-CODIAGNOSABILITY M i (K) M i (K), The algorithm for verifying safe-codiagnosability is based upon checking whether there exists a situation that violates the conditions of safecodiagnosability. From Theorem 1, we know that safe-codiagnosability can be verified by checking codiagnosability of (L, K) together with zerodelay codiagnosability of KS, the set of boundary safe traces. Algorithm 1. Consider the finite state machine models, G = (X, Σ, α, x 0 ), R = (Y, Σ, β, y 0 ), and R S = (Y S, Σ, β S, y0 S ), respectively, of the plant, the non-fault specification, and the safety specification. The corresponding plant, non-fault specification, and safety specification languages are L = L(G), K = L(R), and K S = L(R S ), respectively, where K K S L. Let M i be the observation mask of site i (i I). To check the safe-codiagnosability of (L, K, K S ), perform the following steps: Step 1: Check the codiagnosability of (L, K) Construct a testing automaton T = (G R) R R for verifying the codiagnosability of (L, K). This automaton is defined as T = (Z, Σ T, γ, z 0 ), where. Z = (X Y ) Y Y.. Σ T = Σ 3, where Σ = Σ {ɛ}.. z 0 = ((x 0, y 0 ), y 0, y 0 ).. γ : Z Σ 3 Z is defined as: z = ((x, y), y 1, y 2 ) Z, σ T = (σ, σ 1, σ 2 ) Σ T {(ɛ, ɛ, ɛ)}, γ(z, σ T ) := ((α(x, σ), β(y, σ)), β(y 1, σ 1 ), β(y 2, σ 2 )) if and only if [M 1 (σ) = M 1 (σ 1 )] [M 2 (σ) = M 2 (σ 2 )] [(α(x, σ) ) (β(y, σ) ) (β(y 1, σ 1 ) ) (β(y 2, σ 2 ) )] Note that the silent-transition ɛ is defined at each state of any automaton as a self loop by default. The testing automaton T is used to track if exists a triplet of traces s, u 1 and u 2 such that u i is a s- indistinguishable non-fault trace under mask M i (i {1, 2}). Then check if exists an offending cycle cl T = (z k, σ k T, zk+1,, z l, σ l T, zk ) such that i [k, l] s.t. (y i = F ) (σ i ɛ), (6) where z i = ((x i, y i ), y i 1, y i 2) Z, and σ i T = (σ i, σ i 1, σ i 2) Σ T. If the answer is yes, then (L, K) is not codiagnosable, and (L, K, K S ) is not safecodiagnosable as well. Otherwise, go to the next step. Step 2: Compute the set of boundary safe states B in G R S Construct the composition G R S, and define the set of boundary safe states as, B := {(x, y S ) X Y S σ Σ : α(x, σ), β S (y S, σ) = }. Note that if s L(G R S ) = L(G) L(R S ) = L K S = K S is such that execution of s results in reaching a state (x, y S ) B, then exists σ Σ such that sσ L K S, i.e., s (L K S )/Σ. It follows that s KS. Step 3: Check the zero-delay codiagnosability of K S with respect to {M i} Construct a testing automaton T S = (G R S ) R R for verifying the zero-delay codiagnosability of K S, where T S is obtained by replacing R by R S in the testing automaton T constructed above. Let T S = (Z S, Σ T, γ S, z S 0 ), where Z S, γ S, and z S 0 of T S are defined similarly as Z, γ, and z 0 of T, respectively (with R replaced by R S ). Then check if exists an offending state ((x, y S ), y 1, y 2 ) in T S with (x, y S ) B. KS is zero-delay codiagnosable if and only if the answer is no. If KS is zero-delay codiagnosable, then (L, K, K S) is safe-codiagnosable as well (since (L, K) was determined to be codiagnosable above). Otherwise, (L, K, K S ) is not safe-codiagnosable. Since the correctness of the test for checking codiagnosability was established in (Qiu and Kumar, 2004, Theorem 1), in the following theorem we show the correctness of the test for checking zero-delay codiagnosability of K S. Theorem 2. KS is not zero-delay codiagnosable with respect to {M i } if and only if there exists a state z S = ((x, y S ), y 1, y 2 ) in the testing automaton T S with (x, y S ) B. Proof: ( ) If there is a state ((x, y S ), y 1, y 2 ) in T S such that (x, y S ) B, then exist traces

s L(G R S ), u i L(R) = K such that (i) s KS = (L K S)/Σ K S, and (ii) M i (s) = M i (u i ). This implies that s KS M i (K), i i.e., KS i M i (K). Thus, KS is not zerodelay codiagnosable with respect to {M i }. ( ) If KS is not zero-delay codiagnosable with respect to {M i }, then exists a boundary safe trace s KS such that s i M i (K), which implies that for i = 1, 2, there exist u i K such that M i (u i ) = M i (s). Then execution of the trace triple (s, u 1, u 2 ) in T S results in a state ((x, y S ), y 1, y 2 ). Since s KS, (x, y ) B, S proving the assertion. From Lemma 2 and (Qiu and Kumar, 2004), we get the following corollary showing the correctness of Algorithm 1. Corollary 1. Let G = (X, Σ, α, x 0 ), R = (Y, Σ, β, y 0 ) and R S = (Y S, Σ, β S, y S 0 ) be the plant, non-fault specification and safety specification models, respectively, with [K = L(R)] [K S = L(R S )] [L = L(G)]. Let M i be the observation mask of site i (i I). (L, K, K S ) is not safe-codiagnosable with respect to {M i } if and only if one of the following conditions holds: 1. There exists an offending cycle cl T = (z k, σ k T, z k+1,, z l, σ l T, z k ) as defined in (6) in the testing automaton T ; 2. There exists a offending state z S = ((x, y S ), y 1, y 2 ) in the testing automaton T S with (x, y S ) B. Remark 2. Let X, Y and Y S be the number of states in plant G, non-fault specification R, and safety specification R S respectively, and Σ be the number of events. L = L(G), K = L(R), K S = L(R S ). Assume there are m local sites. It was shown in (Qiu and Kumar, 2004) that the complexity for constructing the testing automaton T and checking codiagnosability of (L, K) is O( X Y m+1 Σ m+1 ). Using a similar analysis, we can verify that the complexity for constructing the testing automaton T S and checking the zerodelay codiagnosability of K S is O( X Y S Y m Σ m+1 ). It follows that overall complexity of checking safe-codiagnosability of (L, K, K S ) is, O( X ( Y + Y S ) Y m Σ m+1 ). Remark 3. In Algorithm 1, we use two testing automata T and T S to verify safe-codiagnosability of (L, K, K S ). These two testing automata can be combined into a testing automaton T = (G R S R) R R by replacing R by R S R in T. Then, (L, K, K S ) is not safe-codiagnosable if and only if there exists an offending cycle containing a state with the third coordinate labeled by F, or exists an offending state with its first pair of coordinates contained in B. However, in this case, the complexity is O( X Y S Y m+1 Σ m+1 ), which is an order higher. Thus the separation result obtained in Theorem 1 provides an order reduction in the complexity of testing safecodiagnosability. Once a system is deemed safe-codiagnosable, the same methods as those presented in (Qiu and Kumar, 2004) can be applied for the synthesis of local diagnosers as well as for on-line diagnosis using them. This is because a diagnoser simply observes the plant behavior and reports a fault when it becomes certain about it. The property of safe-codiagnosability guarantees that at least one diagnoser become certain within bounded delay of the occurrence of a fault and prior to the system behavior becoming unsafe. Details are omitted here. The following example illustrates how to verify the safe-codiagnosability using Algorithm 1. Example 1. Figure 1 (a), (b) and (c) show a plant model G, a non-fault specification model R, and a safety specification model R S. The set of events is given by Σ = {a, b, f}. There are two local sites, with their observation masks given as follows:. M 1 (a) = a, M 1 (b) = M 1 (f) = ɛ;. M 1 (b) = b, M 2 (a) = M 2 (f) = ɛ. It can be verified that (L(G), L(R)) is codiagnosable with respect to {M i } by constructing a testing automaton T = (G R) R R, which is omitted here. Since L = L(G) = pr(ab + faab ) and K S1 = pr(ab + fa), the boundary safe language KB 1 = [(L K S1 )/Σ] K S1 = {fa}. Following the trace fa, state 3 in G and state 3 in R S1 are reached. Thus, the set of boundary safe states is given by, B 1 = {(3, 3)}. Figure 1 (d) shows a part of the testing automaton T S1 = (G R S1 ) R R, where an offending state ((3, 3), 1, 1) is reached. Therefore, KB 1 is not zero-delay codiagnosable with respect to {M i }, and thus (L, K, K S1 ) is not safe-codiagnosable with respect to {M i } as well. Now, if we relax the safety requirement by considering a new enlarged safety specification model R S2 as shown in Figure 2 (a), the system becomes safe-codiagnosable. To see this, since K S2 = pr(ab + faa), the boundary safe language is given by, KB 2 = [(L K S2 )/Σ] K S2 = {faa}. Thus, the set of boundary safe states is given by, B 2 = {(4, 4)}. The new testing automaton T S2 = (G R S2 ) R R is shown in Figure 2 (b), where no offending states (states with first pair of coordinates being (4, 4)) are reached. Therefore, KB 2 is zero-delay codiagnosable with respect to

j F C C k _ C {M i }, and thus (L, K, K S2 ) is safe-codiagnosable with respect to {M i } as well.!" #%$&' ( *)!+!,-.. -!!. $*0/ -!1,0)!+!,-!.. -!!. $&0/3254 6 &7,). 80&( $&9:! $&<;24= "?> >/324 @A/B@A/ Fig. 1. Models G, R and R S1, and testing automaton T S1 (right) G G HI H J I H I K J D D E CC5D G G K I K J I K I H J C5CD D D E5N D OE l m n P CQRC F ST5U SV W F W V CX W YZ\[] ^ G G H I H J I H5I H J D OD CCC G G K I K J I K I K J OOON5OD OND OD F D D G G M5I M J I H5I H J CC5C G G L5I L J I K I K J D OD D D E CCD P _ Q` ST X W Za Cb5X Yc CX YZ3d] ^efp g0h h [] ^ Qi [ i [ G G MI M J I H I K J CC5D D D E N D OE G G L5I L J I K I H J Fig. 2. Safe specification model R S2 and testing automaton T S2 5. CONCLUSION This paper studies the property of being able to react safely to failures in a decentralized setting. For this purpose a notion of safe-codiagnosability is introduced by extending the notion of safediagnosability (Paoli and Lafortune, 2003) to the decentralized setting. Safe-codiagnosability captures the property that when a system executes a trace that is faulty, there exists at least one diagnoser that can detect this within bounded delay and also before the system behavior becomes unsafe. Necessary and sufficient conditions for safecodiagnosability are established, showing that safe-codiagnosability can be separated into the properties of codiagnosability together with zerodelay codiagnosability of boundary safe traces. Algorithm with polynomial complexity is provided for verifying safe-codiagnosability. For a safe-codiagnosable system, the same methods as those for a codiagnosable system are applicable for the synthesis of local diagnosers as well as for on-line diagnosis using them. D OD REFERENCES Boel, R. K. and J. H. van Schuppen (2002). Decentralized failure diagnosis for discrete-event systems with constrained communication between diagnosers. In: Proceedings of International Workshop on Discrete Event Systems. Das, S. R. and L. E. Holloway (2000). Characterizing a confidence space for discrete event timings for fault monitoring using discrete sensing and actuation signals. IEEE Transactions on Systems, Man, and Cybernetics Part A: Systems and Humans 30(1), 52 66. Debouk, R., S. Lafortune and D. Teneketzis (2000). Coordinated decentralized protocols for failure diagnosis of discrete event systems. Discrete Event Dynamical Systems: Theory and Applications 10, 33 79. Jiang, S. and R. Kumar (2004). Failure diagnosis of discrete event systems with lineartime temporal logic fault specifications. 49(6), 934 945. Jiang, S., R. Kumar and H. E. Garcia (2003). Diagnosis of repeated/intermittent failures in discrete event systems. IEEE Transactions on Robotics and Automation 19(2), 310 323. Jiang, S., Z. Huang, V. Chandra and R. Kumar (2001). A polynomial time algorithm for diagnosability of discrete event systems. 46(8), 1318 1321. Lin, F. (1994). Diagnosability of discrete event systems and its applications. Discrete Event Dynamic Systems: Theory and Applications 4(1), 197 212. Pandalai, D. and L. Holloway (2000). Template languages for fault monitoring of timed discrete event processes. IEEE Transactions on Automatic Control 45(5), 868 882. Paoli, A. and S. Lafortune (2003). Safe diagnosability of discrete event systems. In: Proceedings of IEEE Conference on Decision and Control. Vol. 3. Hawaii, USA. pp. 2658 2664. Pouliezos, A. D. and G. S. Stavrakakis (1994). Real time fault monitoring of industrial processes. Kluwer Academic Publishers. Boston, MA. Qiu, W. and R. Kumar (2004). Decentralized failure diagnosis of discrete event systems. In: Proceedings of 2004 International Workshop on Discrete Event Systems. Reim, France. Rudie, K. and W. M. Wonham (1992). Think globally, act locally: decentralized supervisory control. IEEE Transactions on Automatic Control 37(11), 1692 1708. Sampath, M. and S. Lafortune (1998). Active diagnosis of discrete event systems. 43(7), 908 929.

Sampath, M., R. Sengupta, S. Lafortune, K. Sinaamohideen and D. Teneketzis (1995). Diagnosability of discrete event systems. 40(9), 1555 1575. Sengupta, R. and S. Tripakis (2002). Decentralized diagnosis of regular language is undecidable. In: Proceedings of IEEE Conference on Decision and Control. Las Vegas, NV. pp. 423 428. Yoo, T. S. and S. Lafortune (2002). Polynomialtime verification of diagnosability of partially observed discrete-event systems. IEEE Transactions on Automatic Control 47(9), 1491 1495. Zad, S. H., R. H. Kwong and W. M. Wonham (2003). Fault diagnosis in discrete-event systems: Framework and model reduction. 48(7), 1199 1212.