Submit manuscript...
eISSN: 2574-8092

International Robotics & Automation Journal

Review Article Volume 10 Issue 2

Timed fault-tolerant supervisory control

Ryan J Leduc,3 Aos Mulahuwaish,1 Amal Alsuwaidan2

1Department of Computer Science and Information Systems, Saginaw Valley State University, USA
2King Abdulaziz City for Science and Technology, King Abdullah Rd, Saudi Arabia
3Department of Computing and Software, McMaster University, Canada

Correspondence: Ryan J Leduc, Department of Computing and Software, McMaster University, 1280 Main St. West, Hamilton, ON, Canada, L8S 4K1, Tel 905-525-9140

Received: May 25, 2024 | Published: June 13, 2024

Citation: Mulahuwaish A, Alsuwaidan A, Leduc RJ. Timed fault-tolerant supervisory control. Int Rob Auto J. 2024;10(2):48-61. DOI: 10.15406/iratj.2024.10.00283

Download PDF

Abstract

In Mulahuwaish,1–4 we investigated the problem of fault tolerance in the framework of untimed discrete-event systems (DES). This approach is different from the typical fault-tolerant methodology as the approach does not rely on detecting faults and switching to a new supervisor; it requires a supervisor to work correctly under normal and fault conditions. This is a passive approach that relies upon inherent redundancy in the system being controlled. In this paper we extend the work of Mulahuwaish1–4 to the timed DES (TDES) setting. We introduce our setting, and then provide a set of timed fault tolerant definitions designed to capture different types of fault scenarios and to ensure that our system remains controllable in each scenario. As the nonblocking property is the same for timed and untimed DES, the untimed fault-tolerant nonblocking properties and algorithms from Mulahuwaish1–4 can also be used in the timed setting without any changes. We then present algorithms to verify these properties followed by complexity analyses and correctness proofs of the algorithms. An example is then provided to illustrate our approach.

Keywords: discrete-event systems, supervisory control, fault-tolerant

Introduction

Supervisory control theory, introduced by Ramadge and Wonham,5–7 provides a formal framework for analysing discrete-event systems (DES). In this theory, automata are used to model the system to be controlled and the specification for the desired system behaviour. The theory provides methods and algorithms to obtain a supervisor that ensures the system will produce the desired behaviour.

However, the base theory typically assumes that the system behaviour does not contain faults that would cause the actual system to deviate from the theoretical model. An example is a sensor that detects the presence of an approaching train. If the supervisor relies on this sensor to determine when the train should be stopped in order to prevent a collision, it could fail to enforce its control law if the sensor failed.

In Mulahuwaish1,3,4 we introduced a discrete-event system-based fault tolerance approach that was designed to handle intermittent faults. An intermittent fault is a malfunction of a device or system that occurs at intervals, usually irregular, in a device or system that functions normally at other times. A loose connection is an example of this kind of fault.

In the above approach, we introduced uncontrollable fault events to the system’s plant model and then categorized some common fault scenarios. By scenarios, we refer to several common fault situations that we would want our supervisors to be able to handle. The scenarios range from simple situations that are easy to verify (for example, at most one faults are allowed to occur), to ones that are more flexible in the occurrence of faults, but more expensive to verify. We then developed some properties that allowed us to determine if a supervisor will still be controllable and nonblocking in these scenarios. We note that this is a passive approach that relies upon inherent redundancy in the system being controlled.

In this paper, we will extend the work of Mulahuwaish1–4 to the timed DES (TDES) setting.8–10 Timed DES extends untimed DES theory by adding a new tick (τ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaiaacIcacqaHep aDcaGGPaaaaa@3A2A@ event, corresponding to the tick of a global clock. The event set of a TDES contains the tick event as well as other non-tick events called activity events ( Σ act ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaabmaabaaeaa aaaaaaa8qacqqHJoWudaWgaaWcbaGaamyyaiaadogacaWG0baabeaa aOWdaiaawIcacaGLPaaaaaa@3D45@ . This is a powerful extension as TDES adds to untimed DES the ability to express when an event is possible, when it must occur by (possibly infinite upper bound), and the ability to force certain events (called forcible events) to occur in a specified time frame (before the next clock tick). As TDES is more expressive, both in modelling and enforcement, extending fault-tolerant supervisors to the TDES setting clearly will be useful.

The primary difference between our timed and untimed fault-tolerant results is that the tick event must not be a fault event, and that the controllability condition for TDES differs from the untimed setting. We thus have to adapt the fault-tolerant definitions and algorithms to use the timed controllabilty definition (which also ensures forcing of events is done properly). Fortunately, verifying nonblocking (a weak check to make sure the system does not deadlock or livelock) is the same for both timed and untimed DES so we don’t have to develop timed nonblocking fault-tolerant properties; we can simply re-use the fault-tolerant nonblocking properties and algorithms developed in Mulahuwaish.1–4

Illustrative example

We now introduce an example to illustrate our method. We will briefly introduce the example here, and then use it to explain the various aspects of our approach as we introduce them. After we have fully introduced our method, we will provide the remaining portions of the example in Section 7, and then discuss the results of applying our approach to the example.

Example setting

Our example is based on the manufacturing testbed from Leduc.11 The testbed was designed to simulate a manufacturing workcell using model train equipment, in particular problems of routing and collision. Figure 1 shows conceptually the structure of the full testbed and sensors.

Figure 1 N=57; Epidemiological distribution of the pathological fractures, traumatic fractures, and nonunion.

We will initially focus on only a single track loop, shown in Figure 2. The loop contains eight sensors and two trains (train 1, train 2). Train 1 starts between sensors 9 and 10, while train 2 starts between sensors 15 and 16. Both trains can only traverse the tracks in a counter clockwise direction.

Figure 2 N=57; Epidemiological distribution of the pathological fractures, traumatic fractures, and nonunion.

The sensor models, shown in Figure 3, indicate when a given train is present, and when no trains are present. Also, they state that only one train can activate a given sensor at a time. The figure shows the original sensor model, one for each sensor J{ 9, . . . ,16 } MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa8NsaiabgIGio=aadaGadaqaa8qacaaI5aGaaiilaiaabcca caGGUaGaaeiiaiaac6cacaqGGaGaaiOlaiaabccacaGGSaGaaGymai aaiAdaa8aacaGL7bGaayzFaaaaaa@4423@ , before fault events were added to the plant model.

Figure 3 N=57; Epidemiological distribution of the pathological fractures, traumatic fractures, and nonunion.

Figure 4 N=57; Epidemiological distribution of the pathological fractures, traumatic fractures, and nonunion.

Figures 5 and 6 show the sensor’s interdependencies with respect to a given train. With respect to the starting position of a particular train (represented by the initial state), sensors can only be reached in a particular order, dictated by their physical location on the track. Both DES already show the added fault events.

Figure 5 N=57; Epidemiological distribution of the pathological fractures, traumatic fractures, and nonunion.

Figure 6 N=57; Epidemiological distribution of the pathological fractures, traumatic fractures, and nonunion.

We note that in the DES diagrams, circles represent unmarked states, while filled circles represent marked states. Two concentric, unfilled circles represent the initial state. If the initial state is also marked, the inner circle is filled. Uncontrollable events are indicated by an “!” preceding the event’s name, such as "!t1_atJ" MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaaiOiaGqaciaa=fcacaWG0bGaa8xmaiaac+facaWGHbGaamiDaiaa dQeacaGGIaaaaa@3E61@

Adding intermittent faults

To add faults to the model, we assumed that sensors 9, 10, and 16 could have an intermittent fault; sometimes the sensor would detect the presence of a train, sometimes it would fail to do so. We modelled this by adding to all the plant models a new event t1f_atJ, J{ 9, . . . ,16 } MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqacabaaaaaaa aapeGaa8hDaiaa=fdacaWFMbGaai4xaiaadggacaWG0bGaamOsaiaa cYcacaqGGaGaamOsaiaaykW7cqGHiiIZpaWaaiWaaeaapeGaaGyoai aacYcacaqGGaGaaiOlaiaabccacaGGUaGaaeiiaiaac6cacaqGGaGa aiilaiaaigdacaaI2aaapaGaay5Eaiaaw2haaaaa@4D26@ , for each t1_atJ MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamiDaGqaciaa=fdacaGGFbGaamyyaiaadshacaWGkbaaaa@3C73@ event. For each t1_atJ MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamiDaGqaciaa=fdacaGGFbGaamyyaiaadshacaWGkbaaaa@3C73@ transition in a plant model, we added an identical t1f_atJ MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqacabaaaaaaa aapeGaa8hDaiaa=fdacaWFMbGaai4xaiaadggacaWG0bGaamOsaaaa @3D56@ transition. The idea is we can now get the original detection event or the new fault one instead. We made similar changes for train 2. Figure 4 shows the new sensor models with the added fault events. We note that the fault events must be uncontrollable events as it would be unrealistic if supervisor could simply disable a fault event and prevent the fault from occurring.

Now consider the problem of preventing a second train from entering the track segment bounded by sensors 11 and 13, when this section is already occupied by the first train. Ideally, we would monitor sensor 10 for the arrival of the second train, and halt that train until the first train has left the protected track segment. However, if sensor 10 faulted, the train would not stop and we would have a collision. We could make our controller more redundant by monitoring both sensors 9 and 10, and we could then safely stop the train as long as both sensors did not fail. In such a situation, we could tolerate a single fault, but not two in a row.

We further note that we cannot allow our supervisor to make decisions based on the occurrence of the sensor fault events as we cannot realistically expect such faults to be observable. The supervisor must only change its control actions based on observing non fault events.

Literature review

Currently in the DES literature, the most common approach when a fault is detected is to switch to a new supervisor to handle the system in its degraded mode. Such an approach focuses on fault recovery as opposed to fault tolerance. This requires the construction of a second supervisor, and requires that there be a means to detect the occurrence of the fault in order to initiate the switch. In our approach, we use a single supervisor that will behave correctly for the original system without faults, and for the system with added fault events that are restricted to the fault scenarios that we are addressing. This is a passive approach that relies on the inherent redundancy in the system being controlled. Our method has the advantage that we only need to design a single supervisor for our system, and that we do not need to detect that a fault has occurred for our approach to work. We will now discuss some relevant, related work.

Two closely related topics to fault-tolerance and fault recovery are robust and adaptive supervisory control as discussed by.12–14 In both approaches, the system G of interest is not specified exactly, but either belongs to a set of possible plants, or we are given a set of “lower” and “upper” bounds. For robust control, the goal is to construct a supervisor that will achieve a desired behavior for all of the possible plants. This is 6 analogous to our passive approach to fault-tolerance.

Adaptive control, on the other hand, monitors system behavior and uses the information to resolve or reduce the uncertainty in the system’s behavior in order to improve the performance of the system. This is analogous to active fault recovery methods. It is worth noting that both methods involve synthesis, where our approach is based on user designed supervisors and verification. As synthesis algorithms have higher complexity than verification algorithms,15 our approach should be applicable to larger systems. Also, modular supervisors are typically easier to understand and implement than the results of synthesis.

An additional drawback with active fault recovery methods is that they require that a fault be detected, and possibly identified if there are multiple faults, before the fault recovery response can be applied. Constructing a fault diagnoser can be expensive,16 and has the additional concern that it may not detect the fault in time to respond appropriately. As our approach is passive and can handle the original and faulted system, response time is not a concern for us. However, the tradeoff is that our approach may result in an overly cautious supervisor.

While adaptive and robust control are related, neither has a concept of fault events and thus cannot be used directly for fault-tolerance or recovery as their supervisors could be designed to take action on the occurrence of a fault event which should be unobservable to supervisors. However, methods such as Saboori et al.,14 which make use of partial observations, could perhaps be adapted by setting fault events to be unobservable, and using a model without faults, and a post-fault model.

This of course raises the question of how the post-fault model would be obtained. Simply adding fault events to an existing model often results in a system with strings that contain so many faults in them that no controllable and nonblocking supervisor would exist. Where it is true they could make use of the models generated by our approach, but then robust/adaptive control would be unnecessary as synthesis could just be done directly on the resulting model as there would be no uncertainty left.

Finally, it might be possible to use robust/adaptive control on the original plant model without fault events, and new post-fault models without fault events. However if the system contains multiple faults, generating separate models for each possible post fault system (i.e. system behavior after a specific sequence of faults have occurred) could be tedious, error prone, and time consuming. Our approach on the other hand, uses a single system model with all faults already added. We provide a simple approach and methodology for adding faults to an existing system model that could be easily automated

Qin Wen et al.,17 introduces a framework for fault-tolerant supervisory control of discrete-event systems. In this framework, plants contain both normal behavior and behavior with faults, as well as a submodel that contains only the normal behavior. The goal of fault-tolerant supervisory control is to enforce a specification for the normal behavior of the plant and to enforce another specification for the overall plant behavior. This includes ensuring that the plant recovers from any fault within a bounded delay so that after the recovery, the system state is equivalent to a state in the normal plant behavior. They formulate this notion of fault-tolerant supervisory control and provide a necessary and sufficient condition for the existence of such a supervisor. The condition involves notions of controllability, observability and relative-closure together with the notion of stability.

In Paoli et al.,18 they propose to detect faults and switch to a different supervisor before the nominal system behaviour is violated. The controller is updated based on the information provided by online diagnostics. The supervisor needs to detect the malfunctioning component in the system in order to achieve the desired specification. The authors propose the idea of safe diagnosability as a step to achieve fault-tolerant control.

In Park et al.,19 they present necessary and sufficient conditions for fault-tolerant robust supervisory control of discrete-event systems that belong to a set of models. When these conditions are satisfied, fault-tolerance can be achieved based on the identification of tolerable fault sequences. In the paper, the results were applied to the design, modelling, and control of a workcell consisting of arc welding (GMAW) robots, a sensor, and a conveyor.

Brandin et al.,8–10 added a new dimension to the basic DES theory by introducing timed discrete-event systems (TDES). They introduced the concept of a global clock and tick event. Also, they introduced the ability to specify when certain events must occur.

Research has been conducted to discuss faults in the TDES setting. However, this research focused on fault recovery and fault detection, as opposed to fault tolerance.

In,20 the main goal of Allahham et al.,20 was to detect system faults as early as possible. Their proposed idea was to construct a TDES with two clocks: one clock would reflect the task state and and the other clock would measure the elapsed time since the task had been started. They assumed that each task had normal behavior with no faults, and acceptable behavior with intermittent faults within a bounded delay. Their approach was to give each task a time interval. Then, they would check if the task had finished in the defined time interval or before it, which means the system had no faults or it had intermittent faults that the system can tolerate. They monitored the TDES with stopwatch automaton that modeled the acceptable behavior for a specific task. The stopwatch had three locations: initial, normal execution, and interruption, to specify the task status.

In, Moosaei et al.,21 introduced fault recovery to TDES. Their system consists of the plant and a diagnosis system, both modeled using activity transition graphs (ATG). The plant model describes its behavior in both normal and faulty conditions. The diagnosis system was assumed to be available to detect and isolate faults whenever they occurred. They have introduced three modes for their system: normal when no faults occur, transient when a fault occurs, and recovery when the fault was detected and isolated. Their design consists of a normal-transient supervisor, and multiple recovery supervisors for each failure mode.

As we will see in the following section, our approach is quite different to the preceding methods. Rather than focus on synthesis approaches, ours is based on verification. We assume that the designer has used their understanding of the given system and its possible faults to attempt to design a supervisor that is controllable and nonblocking for the system both without faults, and when faults occur according to our specified scenarios. Our goal is to provide a method to verify if they have achieved this.

Overview

This paper is organized as follows. Section 1 provides an introduction to our topic. Section 2 discusses DES preliminaries. Section 3 introduces fault events and the fault scenarios to which they apply. Section 4 presents our timed fault-tolerant controllability definitions. Section 5 presents algorithms to verify the timed fault-tolerant controllability properties and provides a complexity analysis. Section 6 presents algorithm correctness proofs and Section 7 provides a small manufacturing example to illustrate our approach. Finally, Section 8 provides conclusions and future work.

Preliminaries

We now present a summary of the DES terminology that we use in this paper. For more details, please refer to.22,34

Strings and languages

Let Σ be a finite set of distinct symbols (events). Let Σ+ denote the set of all finite, non-empty sequences of events, and Σ* be the set of all finite sequences of events including ∈, the empty string. We can then define : + { } MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaiabggHiLdbaaa aaaaaapeWaaWbaaSqabeaacqGHxiIkaaGcpaGaaiOoaiabggHiLpaa CaaaleqabaGaey4kaScaaOGaeSOkIu1aaiWaaeaapeGaeyicI4mapa Gaay5Eaiaaw2haaaaa@4286@ . For s ,| s | MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaiaadohacaaMc8 UaeyicI4SaaGPaVlaaykW7cqGHris5qaaaaaaaaaWdbmaaCaaaleqa baGaey4fIOcaaOGaaiilaiaaykW7caaMc8+aaqWaaeaacaWGZbaaca GLhWUaayjcSdaaaa@48F3@ equals the length (number of events) of the string.

Let L MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamitaiabgAOinlaaykW7paGaeyyeIu+dbmaaCaaaleqabaGaey4f IOcaaaaa@3E68@ be a language over Σ. A string t MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamiDaiaaykW7paGaeyicI4SaeyyeIu+dbmaaCaaaleqabaGaey4f IOcaaaaa@3E13@ is a prefix of s s MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaiaadohacaaMc8 UaeyicI4SaaGPaVlaaykW7cqGHris5qaaaaaaaaaWdbmaaCaaaleqa baGaey4fIOcaaaaa@4109@  (written ts MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamiDaiabgsMiJkaaykW7caaMc8Uaam4Caaaa@3DE8@ ) if s=tu MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaam4Caiabg2da9iaadshacaWG1baaaa@3B1D@ , for some u MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamyDaiaaykW7paGaeyicI4SaeyyeIu+dbmaaCaaaleqabaGaey4f IOcaaaaa@3E14@ . The prefix closure of language L (denoted L¯) is defined as L ¯ :={t | ts MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Waa0aaaeaacaWGmbaaaiaaykW7caaMc8UaaiOoaiaaykW7cqGH9aqp caaMc8UaaGPaVlaaykW7caGG7bGaamiDa8aacqGHiiIZcqGHris5pe WaaWbaaSqabeaacqGHxiIkaaGcdaabbaqaaiaadshacqGHKjYOcaaM c8UaaGPaVlaadohacaaMc8oacaGLhWoaaaa@5354@ for some sL} MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaiaadohacaaMc8 UaeyicI4SaaGPaVlaadYeacaGG9baaaa@3E70@ . Let Pwr() MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaiaa=bfaca WF3bGaa8NCaiaacIcacqGHris5caGGPaaaaa@3CCE@ denote the set of all possible subsets of Σ. For language L, the eligibility operator, Eli g L : Pwr() MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa8xraiaa=XgacaWFPbGaa83zamaaBaaaleaacaWGmbaabeaa kiaaykW7caaMc8UaaiOoaiaaykW7caaMc8+daiabggHiL=qadaahaa WcbeqaaiabgEHiQaaakiabgkziU+aacaWFqbGaa83Daiaa=jhacaGG OaGaeyyeIuUaaiykaaaa@4D49@ , is given by Eli g L (s):={σ| sσL} MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa8xraiaa=XgacaWFPbGaa83zamaaBaaaleaacaWGmbaabeaa kiaacIcacaWGZbGaaiykaiaaykW7caaMc8UaaiOoaiaaykW7cqGH9a qpcaaMc8UaaGPaVlaaykW7caGG7bGaeq4WdmNaaGPaVlaaykW7caaM c8+daiabgIGiolaaykW7caaMc8UaeyyeIu+dbmaaeeaabaGaam4Cai abeo8aZjaaykW7caaMc8+daiabgIGio=qacaaMc8oacaGLhWoapaGa amitaiaac2haaaa@634C@  for s MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaiaadohacaaMc8 UaeyicI4SaaGPaVlaaykW7cqGHris5qaaaaaaaaaWdbmaaCaaaleqa baGaey4fIOcaaaaa@4109@ .

Timed DES

Timed DES (TDES)8–10 extends untimed DES theory by adding a new tick (τ ) event, corresponding to the tick of a global clock. The event set of a TDES contains the tick event as well as other non-tick events called activity events ( act ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaiaacIcacqGHri s5daWgaaWcbaGaamyyaiaadogacaWG0baabeaakiaacMcaaaa@3D06@ .

A TDES automaton is represented as a 5-tuple G=( Q, Σ, δ,  q o ,  Q m ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqababaaaaaaa aapeGaa83raiabg2da98aadaqadaqaa8qacaWGrbGaaiilaiaabcca cqqHJoWucaGGSaGaaeiiaiabes7aKjaacYcacaqGGaGaamyCamaaBa aaleaacaWGVbaabeaakiaacYcacaqGGaGaamyuamaaBaaaleaacaWG TbaabeaaaOWdaiaawIcacaGLPaaaaaa@4824@ where Q MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaamyuaaaa@3802@ is the state set, = act ˙ { τ } MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaiabggHiLlabg2 da9iabggHiLpaaBaaaleaacaWGHbGaam4yaiaadshaaeqaaOGaaGPa VlqblQIivzaacaWaaiWaaeaaqaaaaaaaaaWdbiabes8a0bWdaiaawU hacaGL9baaaaa@4542@ is the event set, the partial function δ:Q × Σ  Q MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaeqiTdqMaaiOoaiaadgfacaqGGaGaey41aqRaaeiiaiabfo6atjaa bccacqGHsgIRcaqGGaGaamyuaaaa@434F@ is the transition function, q o MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamyCamaaBaaaleaacaWGVbaabeaaaaa@3942@  is the initial state, and Q m MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamyuamaaBaaaleaacaWGTbaabeaaaaa@3920@ is the set of marker states. We extend δ to δ : Q × Σ Q MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaeqiTdqMaaeiiaiaadshacaWGVbGaaeiiaiabes7aKjaabccacaGG 6aGaaeiiaiaadgfacaqGGaGaey41aqRaaeiiaiabfo6atjaabccacq GHxiIkcqGHsgIRcaWGrbaaaa@49B9@ in the natural way. The notation δ( q,s )! MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaeqiTdq2damaabmaabaWdbiaadghacaGGSaGaaGPaVlaadohaa8aa caGLOaGaayzkaaWdbiaacgcaaaa@3F66@ means the transition is defined. The closed behavior of G is defined to be L( G ) := { s | δ( q o , s )! } MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaamita8aadaqadaqaaGqab8qacaWFhbaapaGaayjkaiaawMcaa8qa caqGGaGaaiOoaiabg2da9iaabccapaWaaiWaaeaapeGaam4CaiabgI Gio=aacqGHris5peWaaWbaaSqabeaacqGHxiIkaaGcpaGaaiiFa8qa caqGGaGaeqiTdq2damaabmaabaWdbiaadghadaWgaaWcbaGaam4Baa qabaGccaGGSaGaaeiiaiaadohaa8aacaGLOaGaayzkaaWdbiaacgca a8aacaGL7bGaayzFaaaaaa@4FA2@ . The marked behavior is defined as L m ( G ):= { s  L( G )| δ( q o , s ) Q m } MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamitamaaBaaaleaacaWGTbaabeaak8aadaqadaqaaGqab8qacaWF hbaapaGaayjkaiaawMcaa8qacaGG6aGaeyypa0Jaaeiia8aadaGada qaa8qacaWGZbGaaeiiaiabgIGiolaabccacaWGmbWdamaabmaabaWd biaadEeaa8aacaGLOaGaayzkaaGaaiiFa8qacaqGGaGaeqiTdq2dam aabmaabaWdbiaadghadaWgaaWcbaGaam4BaaqabaGccaGGSaGaaeii aiaadohaa8aacaGLOaGaayzkaaWdbiabgIGiolaadgfadaWgaaWcba GaamyBaaqabaaak8aacaGL7bGaayzFaaaaaa@54A6@ .

The reachable state subset of DES G MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqababaaaaaaa aapeGaa83raaaa@37FE@ , denoted Q r MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamyuamaaBaaaleaacaWGYbaabeaaaaa@3925@ , is: Q r :={ qQ| s )δ( q o , s )=q } MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamyuamaaBaaaleaacaWGYbaabeaakiaacQdacqGH9aqpcaaMc8Ua aGPaV=aadaGadaqaa8qacaWGXbGaeyicI4Saamyua8aacaGG8bWdbi aabccacqGHdicjcaWGZbGaaGPaVlaaykW7caaMc8UaeyicI4SaaGPa V=aacqGHris5peWaaWbaaSqabeaacqGHxiIkaaGccaGGPaGaaGPaVl aaykW7cqaH0oazpaWaaeWaaeaapeGaamyCamaaBaaaleaacaWGVbaa beaakiaacYcacaqGGaGaam4CaaWdaiaawIcacaGLPaaacqGH9aqppe GaamyCaiaaykW7a8aacaGL7bGaayzFaaaaaa@6101@ . A DES G is reachable if Q r =Q MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamyuamaaBaaaleaacaWGYbaabeaakiabg2da9iaadgfaaaa@3B0B@ . We will always assume that a DES is reachable, has a finite state and event set, and is deterministic (single initial state and at most a single transition leaving a given state for a given event).

TDES contain forcible ( Σ for ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaabmaabaaeaa aaaaaaa8qacqqHJoWudaWgaaWcbaGaamOzaiaad+gacaWGYbaabeaa aOWdaiaawIcacaGLPaaaaaa@3D54@ , and prohibitable events ( Σ hib ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaabmaabaaeaa aaaaaaa8qacqqHJoWudaWgaaWcbaGaamiAaiaadMgacaWGIbaabeaa aOWdaiaawIcacaGLPaaaaaa@3D40@ . Forcible events are non-tick events which can be relied upon to preempt tick, when needed. The method used by a TDES supervisor to indicate that an event σ Σ for MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaiabeo8aZjaayk W7caaMc8oeaaaaaaaaa8qacqGHiiIZcaaMc8UaaGPaVlabfo6atnaa BaaaleaacaWGMbGaam4Baiaadkhaaeqaaaaa@4525@  or should be forced (made to occur before the next tick) at a given state, is to “disable” tick at this state. This has the effect of removing the now impossible behavior that tick could occur before σ. Prohibitable events are non-tick events that can be disabled. The set of controllable events are Σ c = Σ hib ˙ { τ } MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadogaaeqaaOGaeyypa0Jaeu4Odm1aaSba aSqaaiaadIgacaWGPbGaamOyaaqabaGcpaGafSOkIuLbaiaadaGada qaa8qacqaHepaDa8aacaGL7bGaayzFaaaaaa@44AF@ , and the uncontrollable events are Σ u =Σ Σ c MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadwhaaeqaaOGaeyypa0Jaeu4OdmLaeyOe I0Iaeu4Odm1aaSbaaSqaaiaadogaaeqaaaaa@3FEF@ .

Let Σ=  Σ 1 Σ 2 , MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4OdmLaeyypa0Jaaeiiaiabfo6atnaaBaaaleaacaaIXaaabeaa kiablQIivjabfo6atnaaBaaaleaacaaIYaaabeaakiaacYcaaaa@4126@   L 1 1 * MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamitamaaBaaaleaacaaIXaaabeaakiaaykW7caaMc8UaeyOHI0Sa aGPaVlaaykW7paGaeyyeIu+aa0baaSqaaiaaigdacaaMc8UaaGPaVd qaaiaacQcaaaaaaa@477A@ , and L 2 2 * MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamitamaaBaaaleaacaaIYaGaaGPaVdqabaGccaaMc8UaeyOHI0Sa aGPaVlaaykW7paGaeyyeIu+aa0baaSqaaiaaikdacaaMc8UaaGPaVd qaaiaacQcaaaaaaa@477C@ . For i= 1, 2, s  MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa8xAaiabg2da9iaabccacaaIXaGaaiilaiaabccacaaIYaGa aiilaiaabccacaWGZbGaaeiiaiabgIGio=aacqGHris5peWaaWbaaS qabeaacqGHxiIkaaaaaa@43E3@ , and σΣ MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeq4WdmNaeyicI4Saeu4Odmfaaa@3BF7@ , we define the natural projection P i  : i * MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamiuamaaBaaaleaacaWGPbaabeaakiaabccacaGG6aWdaiabggHi L=qadaahaaWcbeqaaiabgEHiQaaakiabgkziU+aacqGHris5daqhaa WcbaGaamyAaiaaykW7caaMc8oabaGaaiOkaaaaaaa@45EE@ according to:

P i ( )=, P i ( σ )={ ifσ Σ i σif Σ i , P i ( sσ )= P i ( s ) P i ( σ ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamiuamaaBaaaleaacaWGPbaabeaakmaabmaabaGaeyicI4macaGL OaGaayzkaaGaaGPaVlaaykW7cqGH9aqpcaaMc8UaaGPaVlaaykW7ca aMc8UaeyicI4SaaiilaiaaykW7caaMc8UaaGPaVlaaykW7caaMc8Ua aGPaVlaadcfadaWgaaWcbaGaamyAaaqabaGcdaqadaqaaiabeo8aZb GaayjkaiaawMcaaiabg2da9iaaykW7caaMc8+aaiqaaeaafaqabeGa baaabaGaeyicI4SaaGPaVlaaykW7caaMc8ocbaqcLbsacaWFPbGaa8 NzaOGaaGPaVlabeo8aZjaaykW7caaMc8UaeyycI8SaaGPaVlaaykW7 cqqHJoWudaWgaaWcbaGaamyAaaqabaGccaaMc8oabaGaeq4WdmNaaG PaVlaaykW7jugibiaa=LgacaWFMbGccaaMc8UaeyicI4SaaGPaVlaa ykW7cqGHjiYZcaaMc8UaaGPaVlabfo6atnaaBaaaleaacaWGPbaabe aaaaaakiaawUhaaiaacYcacaaMc8UaaGPaVlaadcfadaWgaaWcbaGa amyAaaqabaGcdaqadaqaaiaadohacqaHdpWCaiaawIcacaGLPaaacq GH9aqpcaWGqbWaaSbaaSqaaiaadMgaaeqaaOWaaeWaaeaacaWGZbaa caGLOaGaayzkaaGaamiuamaaBaaaleaacaWGPbaabeaakmaabmaaba Gaeq4WdmhacaGLOaGaayzkaaaaaa@9DB7@

The map P i 1 :Pwr( i * )Pwr MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamiuamaaDaaaleaacaWGPbaabaGaeyOeI0IaaGymaaaakiaaykW7 caGG6aGaaGPaVlaaykW7caWGqbGaam4Daiaadkhadaqadaqaa8aacq GHris5daqhaaWcbaGaamyAaiaaykW7caaMc8oabaGaaiOkaaaaaOWd biaawIcacaGLPaaacqGHsgIRcaWGqbGaam4DaiaadkhapaGaeyyeIu +dbmaaCaaaleqabaGaey4fIOcaaaaa@52BE@  is the inverse image of P i   MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamiuamaaBaaaleaacaWGPbaabeaakiaabccaaaa@39C8@ such that for L 1 * MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamitaiaaykW7caaMc8UaeyOHI0SaaGPaVlaaykW7paGaeyyeIu+a a0baaSqaaiaaigdacaaMc8UaaGPaVdqaaiaacQcaaaaaaa@4689@ , P i 1 L:{ s  | P i ( s )L } MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamiuamaaDaaaleaacaWGPbaabaGaeyOeI0IaaGymaaaakiaaykW7 caWGmbGaaiOoaiaaykW7caaMc8+aaiWaaeaacaWGZbGaaeiiaiabgI Gio=aacqGHris5peWaaWbaaSqabeaacqGHxiIkaaGccaaMc8+aaqqa aeaacaWGqbWaaSbaaSqaaiaadMgaaeqaaOWaaeWaaeaacaWGZbaaca GLOaGaayzkaaGaaGPaVlabgIGiolaadYeaaiaawEa7aaGaay5Eaiaa w2haaaaa@54B0@ Definition 1. For G i  = ( Q i ,  Σ i ,  δ i ,  q o , i , Q m , i ) ( i= 1,2 ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqababaaaaaaa aapeGaa83ramaaBaaaleaacaWGPbaabeaakiaabccacqGH9aqpcaqG GaWdamaabmaabaWdbiaadgfadaWgaaWcbaGaamyAaaqabaGccaGGSa Gaaeiiaiabfo6atnaaBaaaleaacaWGPbaabeaakiaacYcacaqGGaGa eqiTdq2aaSbaaSqaaiaadMgaaeqaaOGaaiilaiaabccacaWGXbWaaS baaSqaaiaad+gaaeqaaOGaaiilamaaBaaaleaacaWGPbaabeaakiaa cYcacaaMc8UaaGPaVlaadgfadaWgaaWcbaGaamyBaaqabaGccaGGSa WaaSbaaSqaaiaadMgaaeqaaaGcpaGaayjkaiaawMcaa8qacaqGGaWd amaabmaabaWdbiaadMgacqGH9aqpcaqGGaGaaGymaiaacYcacaaMc8 UaaGOmaaWdaiaawIcacaGLPaaaaaa@5CC8@ , we define the synchronous product G= G 1 G 2 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaiaadEeacqGH9a qpieqaqaaaaaaaaaWdbiaa=DeadaWgaaWcbaGaaGymaaqabaGcdaqb baqaaiaa=DeadaWgaaWcbaGaaGOmaaqabaaakiaawMa7aaaa@3E12@ of the two DES as:

G := ( Q 1  ×  Q 2 ,  Σ 1 Σ 2 , δ,( q o ,1,  q o , 2 ),  Q m,1  ×  Q m,2 ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaam4raiaabccacaGG6aGaeyypa0Jaaeiia8aadaqadaqaa8qacaWG rbWaaSbaaSqaaiaaigdaaeqaaOGaaeiiaiabgEna0kaabccacaWGrb WaaSbaaSqaaiaaikdaaeqaaOGaaiilaiaabccacqqHJoWudaWgaaWc baGaaGymaaqabaGccqWIQisvcqqHJoWudaWgaaWcbaGaaGOmaaqaba GccaGGSaGaaeiiaiabes7aKjaacYcapaWaaeWaaeaapeGaamyCamaa BaaaleaacaWGVbaabeaakiaacYcacaaIXaGaaiilaiaabccacaWGXb WaaSbaaSqaaiaad+gaaeqaaOGaaiilamaaBaaaleaacaaIYaaabeaa aOWdaiaawIcacaGLPaaapeGaaiilaiaabccacaWGrbWaaSbaaSqaai aad2gacaGGSaGaaGymaaqabaGccaqGGaGaey41aqRaaeiiaiaadgfa daWgaaWcbaGaamyBaiaacYcacaaIYaaabeaaaOWdaiaawIcacaGLPa aaaaa@64A7@

where δ( ( q 1 ,  q 2 ), σ ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaeqiTdq2damaabmaabaWaaeWaaeaapeGaamyCamaaBaaaleaacaaI XaaabeaakiaacYcacaqGGaGaamyCamaaBaaaleaacaaIYaaabeaaaO WdaiaawIcacaGLPaaapeGaaiilaiaabccacqaHdpWCa8aacaGLOaGa ayzkaaaaaa@4468@ is only defined and equals

( q 1 , q 2 )ifσ ( Σ 1 Σ 2 ), δ 1 ( q 1 , σ )= q 1 , δ 2 ( q 2 , σ )= q 2 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaabmaabaGabm yCayaafaWaaSbaaSqaaiaaigdaaeqaaOGaaiilaiaaykW7caaMc8Ua bmyCayaafaWaaSbaaSqaaiaaikdaaeqaaOGaaGPaVdGaayjkaiaawM caaiaaykW7caaMc8ocbaGaa8xAaabaaaaaaaaapeGaa8NzaiaaykW7 cqaHdpWCcaqGGaGaeyicI48aaeWaaeaacqqHJoWudaWgaaWcbaGaaG ymaaqabaGccaaMc8UaaGPaVlaaykW7cqWIPisscaaMc8UaaGPaVlaa ykW7cqqHJoWudaWgaaWcbaGaaGOmaaqabaaakiaawIcacaGLPaaaca GGSaGaaGPaVlaaykW7cqaH0oazdaWgaaWcbaGaaGymaaqabaGcpaWa aeWaaeaapeGaamyCamaaBaaaleaacaaIXaaabeaakiaacYcacaqGGa Gaeq4WdmhapaGaayjkaiaawMcaaiabg2da9iqadghagaqbamaaBaaa leaacaaIXaaabeaakiaacYcacaaMc8UaaGPaV=qacqaH0oazdaWgaa WcbaGaaGOmaaqabaGcpaWaaeWaaeaapeGaamyCamaaBaaaleaacaaI YaaabeaakiaacYcacaqGGaGaeq4WdmhapaGaayjkaiaawMcaaiabg2 da9iqadghagaqbamaaBaaaleaacaaIYaaabeaakiaaykW7caaMc8oa aa@8068@ or

( q 1 , q 2 )ifσ  Σ 1 Σ 2 , δ 1 ( q 1 , σ )= q 1 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaabmaabaGabm yCayaafaWaaSbaaSqaaiaaigdaaeqaaOGaaiilaiaaykW7caaMc8Ua amyCamaaBaaaleaacaaIYaaabeaaaOGaayjkaiaawMcaaGqaaiaa=L gaqaaaaaaaaaWdbiaa=zgacaaMc8Uaeq4WdmNaaeiiaiabgIGiolab fo6atnaaBaaaleaacaaIXaaabeaakiaaykW7caaMc8UaeyOeI0IaaG PaVlaaykW7cqqHJoWudaWgaaWcbaGaaGOmaaqabaGccaGGSaGaaGPa VlaaykW7cqaH0oazdaWgaaWcbaGaaGymaaqabaGcpaWaaeWaaeaape GaamyCamaaBaaaleaacaaIXaaabeaakiaacYcacaqGGaGaeq4Wdmha paGaayjkaiaawMcaaiabg2da9iqadghagaqbamaaBaaaleaacaaIXa aabeaaaaa@63A8@ or

( q 1 , q 2 )ifσ  Σ 2 Σ 1 , δ 2 ( q 2 , σ )= q 2 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaabmaabaGaam yCamaaBaaaleaacaaIXaaabeaakiaacYcacaaMc8UaaGPaVlqadgha gaqbamaaBaaaleaacaaIYaaabeaaaOGaayjkaiaawMcaaGqaaiaa=L gaqaaaaaaaaaWdbiaa=zgacaaMc8Uaeq4WdmNaaeiiaiabgIGiolab fo6atnaaBaaaleaacaaIYaaabeaakiaaykW7caaMc8UaeyOeI0IaaG PaVlaaykW7cqqHJoWudaWgaaWcbaGaaGymaaqabaGccaGGSaGaaGPa Vlabes7aKnaaBaaaleaacaaIYaaabeaak8aadaqadaqaa8qacaWGXb WaaSbaaSqaaiaaikdaaeqaaOGaaiilaiaabccacqaHdpWCa8aacaGL OaGaayzkaaGaeyypa0JabmyCayaafaWaaSbaaSqaaiaaikdaaeqaaO GaaGPaVlaaykW7aaa@6540@ .

It follows that L( G )= P 1 1 L( G 1 ) P 2 1 L( G 2 ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamitaiaaykW7daqadaqaaGqabiaa=DeapaGaaGPaVdWdbiaawIca caGLPaaacqGH9aqpcaWGqbWaa0baaSqaaiaaigdaaeaacqGHsislca aIXaaaaOGaaGPaVlaadYeacaaMc8UaaGPaVpaabmaabaGaa83ramaa BaaaleaacaaIXaaabeaaaOGaayjkaiaawMcaaiaaykW7caaMc8UaeS ykIKKaamiuamaaDaaaleaacaaIYaaabaGaeyOeI0IaaGymaaaakiaa ykW7caWGmbWaaeWaaeaacaWFhbWaaSbaaSqaaiaaikdaaeqaaaGcca GLOaGaayzkaaaaaa@5800@ and L m ( G )= P 1 1 L m ( G 1 ) P 2 1 L m ( G 2 ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamitamaaBaaaleaacaWGTbaabeaakmaabmaabaacbeGaa83ra8aa caaMc8oapeGaayjkaiaawMcaaiabg2da9iaadcfadaqhaaWcbaGaaG ymaaqaaiabgkHiTiaaigdaaaGccaaMc8UaamitamaaBaaaleaacaWG TbaabeaakmaabmaabaGaa83ramaaBaaaleaacaaIXaaabeaaaOGaay jkaiaawMcaaiaaykW7caaMc8UaeSykIKKaamiuamaaDaaaleaacaaI YaaabaGaeyOeI0IaaGymaaaakiaaykW7caWGmbWaaSbaaSqaaiaad2 gaaeqaaOWaaeWaaeaacaWFhbWaaSbaaSqaaiaaikdaaeqaaaGccaGL OaGaayzkaaaaaa@56D7@ . We note that if Σ 1 = Σ 2 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaaigdaaeqaaOGaeyypa0Jaeu4Odm1aaSba aSqaaiaaikdaaeqaaaaa@3D13@ , we get L( G )=L( G 1 )L( G 2 ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamitaiaaykW7daqadaqaaGqabiaa=DeapaGaaGPaVdWdbiaawIca caGLPaaacqGH9aqpcaWGmbGaaGPaVlaaykW7daqadaqaaiaa=Deada WgaaWcbaGaaGymaaqabaaakiaawIcacaGLPaaacaaMc8UaeSykIKKa aGPaVlaaykW7caWGmbGaaGPaVlaaykW7daqadaqaaiaa=DeadaWgaa WcbaGaaGOmaaqabaaakiaawIcacaGLPaaaaaa@52AC@ and L m ( G )= L m ( G 1 ) L m ( G 2 ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamitamaaBaaaleaacaWGTbaabeaakmaabmaabaacbeGaa83ra8aa caaMc8oapeGaayjkaiaawMcaaiabg2da9iaadYeadaWgaaWcbaGaam yBaaqabaGcpaWaaeWaaeaapeGaa83ramaaBaaaleaacaaIXaaabeaa aOWdaiaawIcacaGLPaaapeGaaGPaVlaaykW7cqWIPisscaWGmbWaaS baaSqaaiaad2gaaeqaaOWaaeWaaeaacaWFhbWaaSbaaSqaaiaaikda aeqaaaGccaGLOaGaayzkaaaaaa@4D20@

For DES, the two main properties we want to check are nonblocking and controllability.

Definition 2. A DES G is said to be nonblocking if

L m ( G ) ¯  = L( G ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaanaaabaaeaa aaaaaaa8qacaWGmbWaaSbaaSqaaiaad2gaaeqaaOWdamaabmaabaac beWdbiaa=Deaa8aacaGLOaGaayzkaaaaa8qacaqGGaGaeyypa0Jaae iiaiaadYeacaaMc8+aaeWaaeaacaWFhbWdaiaaykW7a8qacaGLOaGa ayzkaaaaaa@4472@  

Definition 3. Supervisor S is controllable with respect to plant G if for all s  L( S )  L( G ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaam4CaiaabccacqGHiiIZcaqGGaGaamita8aadaqadaqaaGqab8qa caWFtbaapaGaayjkaiaawMcaa8qacaqGGaGaeSykIKKaaeiiaiaadY eacaaMc8+aaeWaaeaacaWFhbWdaiaaykW7a8qacaGLOaGaayzkaaaa aa@4726@ ,

Eli g L ( S ) ( s ){ Eli g L ( G ) ( s )( Σ u {τ} ) ifEli g L( S ) L( G ) ( s ) Σ for = 0 Eli g L ( G ) ( s ) Σ u ifEli g L( S ) L( G ) ( s ) Σ for 0   MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa8xraiaa=XgacaWFPbGaa83zamaaBaaaleaacaWGmbaabeaa k8aadaWgaaWcbaWaaeWaaeaaieqapeGaa43uaaWdaiaawIcacaGLPa aaaeqaaOWaaeWaaeaapeGaam4CaaWdaiaawIcacaGLPaaapeGaey4H IO8aaiqaaeaafaqabeGacaaabaGaa8xraiaa=XgacaWFPbGaa83zam aaBaaaleaacaWGmbaabeaak8aadaWgaaWcbaWaaeWaaeaapeGaa43r aaWdaiaawIcacaGLPaaaaeqaaOWaaeWaaeaapeGaam4CaaWdaiaawI cacaGLPaaapeGaeSykIK0damaabmaabaWdbiabfo6atnaaBaaaleaa caWG1baabeaakiablQIiv9aacaGG7bWdbiabes8a09aacaGG9baaca GLOaGaayzkaaaapeqaa8aacaWFPbWdbiaa=zgacaaMc8UaaGPaVlaa =veacaWFSbGaa8xAaiaa=DgadaWgaaWcbaGaamita8aadaqadaqaa8 qacaGFtbaapaGaayjkaiaawMcaa8qacqWIPisscaqGGaGaamitaiaa ykW7daqadaqaaiaa+DeapaGaaGPaVdWdbiaawIcacaGLPaaaaeqaaO WdamaabmaabaWdbiaadohaa8aacaGLOaGaayzkaaWdbiablMIijjaa ykW7caaMc8UaaGPaVlabfo6atnaaBaaaleaacaWGMbGaam4Baiaadk haaeqaaOGaeyypa0JabGimayaawaGaaGPaVdqaaiaa=veacaWFSbGa a8xAaiaa=DgadaWgaaWcbaGaamitaaqabaGcpaWaaSbaaSqaamaabm aabaWdbiaa+Deaa8aacaGLOaGaayzkaaaabeaakmaabmaabaWdbiaa dohaa8aacaGLOaGaayzkaaWdbiablMIijjaaykW7caaMc8UaaGPaVl abfo6atnaaBaaaleaacaWG1baabeaakiaaykW7aeaapaGaa8xAa8qa caWFMbGaaGPaVlaaykW7caWFfbGaa8hBaiaa=LgacaWFNbWaaSbaaS qaaiaadYeapaWaaeWaaeaapeGaa43uaaWdaiaawIcacaGLPaaapeGa eSykIKKaaeiiaiaadYeacaaMc8+aaeWaaeaacaGFhbWdaiaaykW7a8 qacaGLOaGaayzkaaaabeaak8aadaqadaqaa8qacaWGZbaapaGaayjk aiaawMcaa8qacqWIPisscaaMc8UaaGPaVlaaykW7cqqHJoWudaWgaa WcbaGaamOzaiaad+gacaWGYbaabeaakiabgcMi5kqaicdagaGfaiaa bccaaaaacaGL7baaaaa@B666@  

TDES properties

For TDES, we have the addition properties of activity loop free and proper timed behavior. The first definition ensures that the clock tick cannot be delayed indefinitely, while the second ensures that either a tick or an untimed event (which cannot be disabled) is always possible in the plant.

Definition 4. TDES G=( Q, Σ, δ,  q o ,  Q m ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqababaaaaaaa aapeGaa83raiabg2da98aadaqadaqaa8qacaWGrbGaaiilaiaabcca cqqHJoWucaGGSaGaaeiiaiabes7aKjaacYcacaqGGaGaamyCamaaBa aaleaacaWGVbaabeaakiaacYcacaqGGaGaamyuamaaBaaaleaacaWG TbaabeaaaOWdaiaawIcacaGLPaaaaaa@4824@ is activity-loop-free (ALF) if

( q Q r )( s   act * )δ( q, s )q  MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaabmaabaaeaa aaaaaaa8qacqGHaiIicaWGXbGaeyicI4SaamyuamaaBaaaleaacaWG YbaabeaaaOWdaiaawIcacaGLPaaadaqadaqaa8qacqGHaiIicaWGZb GaaeiiaiabgIGiolaabccapaGaeyyeIu+dbmaaDaaaleaacaWGHbGa am4yaiaadshaaeaacaGGQaaaaaGcpaGaayjkaiaawMcaa8qacqaH0o azpaWaaeWaaeaapeGaamyCaiaacYcacaqGGaGaam4CaaWdaiaawIca caGLPaaapeGaeyiyIKRaamyCaiaabccaaaa@53D7@

Definition 5. A plant TDES G has proper time behavior if:

( q Q r )( σ   Σ u τ  )δ( q, σ )! MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaabmaabaaeaa aaaaaaa8qacqGHaiIicaWGXbGaeyicI4SaamyuamaaBaaaleaacaWG YbaabeaaaOWdaiaawIcacaGLPaaadaqadaqaa8qacqGHdicjcqaHdp WCcaqGGaGaeyicI4Saaeiiaiabfo6atnaaBaaaleaacaWG1baabeaa kiablQIivjabes8a0jaabccaa8aacaGLOaGaayzkaaWdbiabes7aK9 aadaqadaqaa8qacaWGXbGaaiilaiaabccacqaHdpWCa8aacaGLOaGa ayzkaaWdbiaacgcaaaa@5396@  

Fault-tolerant setting

In this section, we will introduce our concept of fault events, a consistency property that our systems must satisfy, and the four fault scenarios that we want our supervisors to be able to handle. Our eventual goal will be to be able to determine if our supervisor will be controllable for our plant in a given fault scenario. In the following section, we will assume that all DES are deterministic, and that we are given plant G = ( Y, Σ, δ,  y o ,  Y m ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqababaaaaaaa aapeGaa83raiaabccacqGH9aqpcaqGGaWdamaabmaabaWdbiaadMfa caGGSaGaaeiiaiabfo6atjaacYcacaqGGaGaeqiTdqMaaiilaiaabc cacaWG5bWaaSbaaSqaaiaad+gaaeqaaOGaaiilaiaabccacaWGzbWa aSbaaSqaaiaad2gaaeqaaaGcpaGaayjkaiaawMcaaaaa@4982@  and supervisor

S = ( X, Σ, ξ,  x o ,  X m ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqababaaaaaaa aapeGaa83uaiaabccacqGH9aqpcaqGGaWdamaabmaabaWdbiaadIfa caGGSaGaaeiiaiabfo6atjaacYcacaqGGaGaeqOVdGNaaiilaiaabc cacaWG4bWaaSbaaSqaaiaad+gaaeqaaOGaaiilaiaabccacaWGybWa aSbaaSqaaiaad2gaaeqaaaGcpaGaayjkaiaawMcaaaaa@49A9@  

Fault events

In this paper, our approach will be to add a set of uncontrollable events to our plant model to represent the possible faults in the system. Our goal will be to design supervisors that will still behave correctly (i.e. stay controllable and nonblocking) when a fault event occurs, even though they can’t detect the fault event directly. We start by defining a group of m0 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamyBaiabgwMiZkaaicdaaaa@3A9E@ mutually exclusive sets of fault events.

Σ Fi Σ u , i=1, . . . ,m MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadAeacaWGPbaabeaakiabgAOinlabfo6a tnaaBaaaleaacaWG1baabeaakiaacYcacaqGGaGaamyAaiabg2da9i aaigdacaGGSaGaaeiiaiaac6cacaqGGaGaaiOlaiaabccacaGGUaGa aeiiaiaacYcacaaMc8UaamyBaaaa@4BD5@  

The idea here is to group related faults into sets such that faults of a given set represent a common fault situation, while faults of a different set represent a different fault situation. Consider our illustrative example from Section 1.1, specifically the track loop shown in Figure 2. It would make sense to group the fault events for sensors 9 and 10 as they could both be used to detect a train before it enters the next track segment. However, a fault event for sensor 16 would not be relevant for this task so we would put it into a different fault set.

Definition 6. We refer to faults in Σ Fi , i=1, . . . ,m, MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadAeacaWGPbaabeaakiaacYcacaqGGaGa amyAaiabg2da9iaaigdacaGGSaGaaeiiaiaac6cacaqGGaGaaiOlai aabccacaGGUaGaaeiiaiaacYcacaWGTbGaaiilaaaa@4645@ collectively as standard fault events:  

Σ F  :=  ˙ i=1, . . . ,m Σ Fi MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadAeaaeqaaOGaaeiiaiaacQdacqGH9aqp caqGGaWaaCbeaeaacuWIQisvgaGaaaWcbaGaamyAaiabg2da9iaaig dacaGGSaGaaeiiaiaac6cacaqGGaGaaiOlaiaabccacaGGUaGaaeii aiaacYcacaaMc8UaamyBaaqabaGccqqHJoWudaWgaaWcbaGaamOrai aadMgaaeqaaaaa@4CD0@

We note that for m=0,  Σ F = 0 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamyBaiabg2da9iaaicdacaGGSaGaaeiiaiabfo6atnaaBaaaleaa caWGgbaabeaakiabg2da9iqaicdagaGfaaaa@3F93@ .

The standard fault events are the faults that will be used to define the various fault scenarios that our supervisors will need to be able to handle. However, there are two additional types of faults that we need to define in order to handle two special cases. The first type is called unrestricted fault events, denoted Σ F Σ u MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaamXvP5wqSX2qVrwzqf2zLnharyqtHX2z15gi h9gDOL2yaGqbaiaa=zsicaWGgbaabeaakiabgAOinlabfo6atnaaBa aaleaacaWG1baabeaaaaa@49EF@ . These are faults that a supervisor can always handle and thus are allowed to occur unrestricted. For our example in Section 1.1, this might be a fault associated with a sensor that is not used at all by the system’s supervisor and could thus be safely ignored.

The second type is called excluded fault events, denoted Σ ΔF Σ u MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiabfs5aejaadAeaaeqaaOGaeyOHI0Saeu4O dm1aaSbaaSqaaiaadwhaaeqaaaaa@3FC2@ . These are faults that cannot be handled at all and thus are essentially removed in our scenarios. The idea is that this would allow us to still design a fault-tolerant supervisory for the remaining faults.

From our example in Section 1.1, consider sensor 13 from Figure 2. If we wished to stop a train at this sensor so it could be loaded by a crane, we would be unable to do so if the sensor failed as there is not a second sensor located close enough to stop the train at the correct location. If we modelled a fault at this sensor, we would have to make it an excluded fault or the system would fail all fault-tolerant tests. This is an example of a fault that could not be handled by a supervisor, and would need to be addressed by adding an additional backup sensor to the system.

For each fault set, Σ Fi , i=1, . . . ,m, MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadAeacaWGPbaabeaakiaacYcacaqGGaGa amyAaiabg2da9iaaigdacaGGSaGaaeiiaiaac6cacaqGGaGaaiOlai aabccacaGGUaGaaeiiaiaacYcacaWGTbGaaiilaaaa@4645@ we also need to define a matching set of reset events, denoted Σ Ti Σ MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadsfacaWGPbaabeaakiabgAOinlabfo6a tbaa@3E32@ . These events will be explained in Section 3.3, when we describe the resettable fault scenario.

Timed fault-tolerant consistency

We now present a consistency requirement that our timed system must satisfy, the timed fault-tolerant (TFT) consistency definition. This is an extension of the faulttolerant (FT) consistency definition from Mulahuwaish,1,3,4 where the only difference is that Point 7 is new. It thus follows that if a system is TFT consistent it is also FT consistent. We note that as the tick event is controllable, Definition 7 implies that tick cannot be a fault event.

Definition 7. A system, with a plant G = ( Y, Σ, δ,  y o ,  Y m ), MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqababaaaaaaa aapeGaa83raiaabccacqGH9aqpcaqGGaWdamaabmaabaWdbiaadMfa caGGSaGaaeiiaiabfo6atjaacYcacaqGGaGaeqiTdqMaaiilaiaabc cacaWG5bWaaSbaaSqaaiaad+gaaeqaaOGaaiilaiaabccacaWGzbWa aSbaaSqaaiaad2gaaeqaaaGcpaGaayjkaiaawMcaa8qacaGGSaaaaa@4A42@ a supervisor S = ( X, Σ, ξ,  x o ,  X m ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqababaaaaaaa aapeGaa83uaiaabccacqGH9aqpcaqGGaWdamaabmaabaWdbiaadIfa caGGSaGaaeiiaiabfo6atjaacYcacaqGGaGaeqOVdGNaaiilaiaabc cacaWG4bWaaSbaaSqaaiaad+gaaeqaaOGaaiilaiaabccacaWGybWa aSbaaSqaaiaad2gaaeqaaaGcpaGaayjkaiaawMcaaaaa@49A9@ and fault and reset sets Σ Fi ,  Σ Ti  ( i = 1, .., m ),  Σ ΔF , MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadAeacaWGPbaabeaakiaacYcacaqGGaGa eu4Odm1aaSbaaSqaaiaadsfacaWGPbaabeaakiaabccapaWaaeWaae aapeGaamyAaiaabccacqGH9aqpcaqGGaGaaGymaiaacYcacaqGGaGa aiOlaiaac6cacaGGSaGaaeiiaiaad2gaa8aacaGLOaGaayzkaaWdbi aacYcacaqGGaGaeu4Odm1aaSbaaSqaaiabfs5aejaadAeaaeqaaOGa aiilaaaa@50BC@ and Σ F MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaamXvP5wqSX2qVrwzqf2zLnharyqtHX2z15gi h9gDOL2yaGqbaiaa=zsicaWGgbaabeaaaaa@453A@ is timed fault-tolerant (TFT) consistent if:

(1) Σ ΔF Σ F Σ F Σ u MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiabfs5aejaadAeaaeqaaOGaeSOkIuLaaGPa VlaaykW7cqqHJoWudaWgaaWcbaWexLMBbXgBd9gzLbvyNv2CaeHbnf gBNvNBGC0B0HwAJbacfaGaa8NjHiaadAeaaeqaaOGaeSOkIuLaeu4O dm1aaSbaaSqaaiaadAeaaeqaaOGaeyOHI0Saeu4Odm1aaSbaaSqaai aadwhaaeqaaaaa@55D9@

(2) Σ ΔF ,  Σ F ,  Σ Fi  ( i = 0, .., m ), MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiabfs5aejaadAeaaeqaaOGaaiilaiaabcca cqqHJoWudaWgaaWcbaWexLMBbXgBd9gzLbvyNv2CaeHbnfgBNvNBGC 0B0HwAJbacfaGaa8NjHiaadAeaaeqaaOGaaiilaiaabccacqqHJoWu daWgaaWcbaGaamOraiaadMgaaeqaaOGaaeiia8aadaqadaqaa8qaca WGPbGaaeiiaiabg2da9iaabccacaaIWaGaaiilaiaabccacaGGUaGa aiOlaiaacYcacaqGGaGaamyBaaWdaiaawIcacaGLPaaapeGaaiilaa aa@5B52@ are pair-wise disjoint.

(3) ( i  1, .., m ) Σ Fi 0 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaabmaabaaeaa aaaaaaa8qacqGHaiIicaWGPbGaaeiiaiabgIGiolaabccacaaIXaGa aiilaiaabccacaGGUaGaaiOlaiaacYcacaqGGaGaamyBaaWdaiaawI cacaGLPaaapeGaeu4Odm1aaSbaaSqaaiaadAeacaWGPbaabeaakiab gcMi5kqaicdagaGfaaaa@4924@

(4) ( i  1, .., m ) Σ Fi Σ Ti = 0 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaabmaabaaeaa aaaaaaa8qacqGHaiIicaWGPbGaaeiiaiabgIGiolaabccacaaIXaGa aiilaiaabccacaGGUaGaaiOlaiaacYcacaqGGaGaamyBaaWdaiaawI cacaGLPaaapeGaeu4Odm1aaSbaaSqaaiaadAeacaWGPbaabeaakiab lMIijjabfo6atnaaBaaaleaacaWGubGaamyAaaqabaGccqGH9aqpce aIWaGbaybaaaa@4D09@

(5) Supervisor S is deterministic.

(6) ( xX )( σ( Σ F Σ ΔF Σ F ) ) ξ( x, σ )=x MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaabmaabaaeaa aaaaaaa8qacqGHaiIicaWG4bGaeyicI4SaamiwaaWdaiaawIcacaGL Paaadaqadaqaa8qacqGHaiIicqaHdpWCcqGHiiIZpaWaaeWaaeaape Gaeu4Odm1aaSbaaSqaamXvP5wqSX2qVrwzqf2zLnharyqtHX2z15gi h9gDOL2yaGqbaiaa=zsicaWGgbaabeaakiablQIivjabfo6atnaaBa aaleaacqqHuoarcaWGgbaabeaakiablQIivjabfo6atnaaBaaaleaa caWGgbaabeaaaOWdaiaawIcacaGLPaaaaiaawIcacaGLPaaapeGaae iiaiabe67a49aadaqadaqaa8qacaWG4bGaaiilaiaabccacqaHdpWC a8aacaGLOaGaayzkaaWdbiabg2da9iaadIhaaaa@6598@

(7) ( Σ ΔF Σ F Σ F   ) Σ for = 0 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaabmaabaaeaa aaaaaaa8qacqqHJoWudaWgaaWcbaGaeuiLdqKaamOraaqabaGccqWI QisvcqqHJoWudaWgaaWcbaWexLMBbXgBd9gzLbvyNv2CaeHbnfgBNv NBGC0B0HwAJbacfaGaa8NjHiaadAeaaeqaaOGaeSOkIuLaeu4Odm1a aSbaaSqaaiaadAeaaeqaaOGaaeiiaaWdaiaawIcacaGLPaaapeGaeS ykIKKaeu4Odm1aaSbaaSqaaiaadAgacaWGVbGaamOCaaqabaGccqGH 9aqpceaIWaGbaybaaaa@57F5@

Point (1) says that fault events are uncontrollable since allowing a supervisor to disable fault events would be unrealistic. Point (2) requires that the indicated sets of faults be disjoint since they must each be handled differently. Point (3) says that fault sets Σ Fi MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadAeacaWGPbaabeaaaaa@3A95@ are non-empty. Point (4) says a fault set must be disjoint from its corresponding set of reset events so we can distinguish them.

Points (5) and (6) say that S is deterministic and that at every state in S, there is a selfloop for each fault event in the system. This means a supervisor cannot change state (and thus change enablement information) based on a fault event. This is a key concept as it effectively makes fault events unobservable to supervisors. If S is defined over a subset ΣΣ MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4OdmLaeyOmGiQaeyOGIWSaeu4Odmfaaa@3DB0@ instead, we could equivalently require that Σ MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4OdmLaeyOmGikaaa@3A30@ contain no fault events.

Point (7) says that there are no forcible, fault events. This is because it would be unrealistic to be able to make a fault event occur on command.

We note that the above definition implies that we do not need to make use of the observability property,36 saving us the cost of verifying it. Essentially, the observability property is used to check if a partial observation supervisor (one that can only see a subset of the available events) exists that will provide the same closed-loop behavior as an existing supervisor, who can observe all events. As our approach is a verification method that assumes we are given a supervisor that is already forced by the fault-tolerant consistency definition to treat fault events as effectively unobservable (it can’t change state based on them), there is no need to verify the observability property as our existing supervisor is already sufficient for our needs.

Fault scenarios

When faults are added to a plant model, we typically can have strings containing so many faults in a row that any controllability or nonblocking test would fail. However, we are typically only interested in knowing if a system will be controllable and nonblocking if only a certain pattern of faults have occurred. For example, we might only want to know if at most one fault occurs, will our system be controllable and nonblocking? Our fault scenarios are an attempt to characterize common fault situations that we would want our supervisors to handle.

In this paper, we will use five faults scenarios that were presented in Mulahuwaish et al.,1–4 as they are still applicable in the TDES setting. The scenarios range from simple situations easy to verify, to ones that are more flexible in terms of how faults can occur and how often, but more expensive to verify. They are by no means exhaustive, but we felt that they represented a good characterization of situations that would likely be of interest.

The first is the default fault scenario where the supervisor must be able to handle any non-excluded fault event that occurs. The second scenario is the N0 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamOtaiabgwMiZkaaicdaaaa@3A7F@ fault scenario where the supervisor is only required to handle at most N non-excluded fault events and all unrestricted fault events. Consider our illustrative example from Section 1.1, specifically the track loop shown in Figure 2. If we wished to prevent a collision in the track segment bounded by sensors 11 and 13, we could stop the train at sensors 9 or 10. We could handle N=1 faults (i.e. sensor 9 or 10 failed but not both), but we could not handle N=2 faults (both sensors failed at the same time).

The next scenario is the one-repeatable fault scenario where the supervisor is only required to handle at most one non-excluded fault event and all unrestricted fault events. This is similar to the N fault scenario with N=1, except that once a given fault has occurred, it can continue to occur, but no other standard fault events may occur.

Consider our illustrative example from Section 1.1, specifically the track loop shown in Figure 2. Applying this scenario, we could for example have a fault occur at sensor 10, but once that occurs we could no longer have faults at sensors 9 and 16, but could continue to have faults at sensor 10. Rather than focusing on how many fault events occurred, the one-repeatable fault scenario focuses on how many components fail. It essentially says at most one component in the system can have a fault, but doesn’t restrict how often the component exhibits this fault.

The next scenario is the m-one-repeatable fault scenario where the supervisor is required to handle all unrestricted fault events, but no more than one fault event from any given Σ Fi  ( i=0, . . . , m ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadAeacaWGPbaabeaakiaabccapaWaaeWa aeaapeGaamyAaiabg2da9iaaicdacaGGSaGaaeiiaiaac6cacaqGGa GaaiOlaiaabccacaGGUaGaaeiiaiaacYcacaqGGaGaamyBaaWdaiaa wIcacaGLPaaaaaa@473E@ fault set, but those events can occur multiple times. This definition allows the designer to group faults together in fault sets such that a fault occurring from one set does not affect a supervisor’s ability to handle a fault from a different set.

This scenario extends the one-repeatable fault scenario to allow at most one component to fail per system area associated with a given fault set. If we assume the fault sets from the example in Section 3.1, then this scenario would allow multiple faults to occur at sensors 10 and 16 as they are from separate fault sets, but once a fault occurs at sensor 10, we could no longer get faults at sensor 9 as it is from the same fault set. The last scenario we consider is the resettable fault scenario. This is designed to capture the situation where at most one fault event from each Σ Fi  ( i = 1, . . . , m ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadAeacaWGPbaabeaakiaabccapaWaaeWa aeaapeGaamyAaiaabccacqGH9aqpcaqGGaGaaGymaiaacYcacaqGGa GaaiOlaiaabccacaGGUaGaaeiiaiaac6cacaqGGaGaaiilaiaabcca caWGTbaapaGaayjkaiaawMcaaaaa@4885@  fault set can be handled by the supervisor during each pass through a part of the system, but this ability resets for the next pass. For this to work, we need to be able to detect when the current pass has completed and it is safe for another fault event from the same fault set to occur. We use the fault set’s corresponding set of reset events to achieve this. The idea is that once a reset event has occurred, the current pass can be considered over and it is safe for another fault event to occur.

If we continue the above example, we could have sensors 9 and 10 in one fault set, and set the corresponding reset event set to only contain the detection event for sensor 11. If we get a fault event from sensor 9 and 10 in a row, we would be unable to stop the train. However, if we got a fault from sensor 10 only and then the detection event for sensor 11, we would know we could now safely get a second fault event from sensor 9 or 10 (but not both) and still be able to stop the train. Such a supervisor could handle an infinite number of faults from sensors 9 and 10, as long as they don’t both fail during the same pass.

Timed fault-tolerant controllability definitions

In this section, we introduce new timed fault-tolerant controllability definitions so that we can verify if our TDES supervisor will stay controllable for the fault scenarios that we introduced in the previous section. In essence, these definitions characterize strings that belong to the desired fault scenario, and only require supervisors to satisfy the controllability definitions for these strings.

We note that we don’t need to introduce corresponding timed fault-tolerant nonblocking definitions, as the ones from Mulahuwaish,1–4 still apply. This is because the nonblocking property is the same for both the timed and untimed setting. It is also important that the tick event can’t be a fault event as this ensures that the nonblocking fault-tolerant properties do not have conflicting definitions.

Due to space limitations, we will only present results for the default, one-repeatable and m-one-repeatable fault scenarios. Please refer to Alsuwaidan23 for timed properties, algorithms, and correctness proofs for the N0 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamOtaiabgwMiZkaaicdaaaa@3A7F@  and resettable fault scenarios.

Timed fault-tolerant controllability

The first fault-tolerant property that we present is designed to handle the default fault scenario. First, we need to define the language of excluded faults. This is the set of all strings that include at least one fault from Σ ΔF MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiabfs5aejaadAeaaeqaaaaa@3B0D@ .

Definition 8. We define the language of excluded faults as:

L ΔF  =  Σ * . Σ ΔF . Σ * MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamitamaaBaaaleaacqqHuoarcaWGgbaabeaakiaabccacqGH9aqp caqGGaGaeu4Odm1aaWbaaSqabeaacaGGQaaaaOGaaiOlaiabfo6atn aaBaaaleaacqqHuoarcaWGgbaabeaakiaac6cacqqHJoWudaahaaWc beqaaiaacQcaaaaaaa@46C7@

Definition 9. A system, with a plant G = ( Y, Σ, δ,  y o ,  Y m ), MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqababaaaaaaa aapeGaa83raiaabccacqGH9aqpcaqGGaWdamaabmaabaWdbiaadMfa caGGSaGaaeiiaiabfo6atjaacYcacaqGGaGaeqiTdqMaaiilaiaabc cacaWG5bWaaSbaaSqaaiaad+gaaeqaaOGaaiilaiaabccacaWGzbWa aSbaaSqaaiaad2gaaeqaaaGcpaGaayjkaiaawMcaa8qacaGGSaaaaa@4A42@ a supervisor S = ( X, Σ, ξ,  x o ,  X m ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqababaaaaaaa aapeGaa83uaiaabccacqGH9aqpcaqGGaWdamaabmaabaWdbiaadIfa caGGSaGaaeiiaiabfo6atjaacYcacaqGGaGaeqOVdGNaaiilaiaabc cacaWG4bWaaSbaaSqaaiaad+gaaeqaaOGaaiilaiaabccacaWGybWa aSbaaSqaaiaad2gaaeqaaaGcpaGaayjkaiaawMcaaaaa@49A9@ and fault sets Σ Fi  ( i = 1, . . . , m ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadAeacaWGPbaabeaakiaabccapaWaaeWa aeaapeGaamyAaiaabccacqGH9aqpcaqGGaGaaGymaiaacYcacaqGGa GaaiOlaiaabccacaGGUaGaaeiiaiaac6cacaqGGaGaaiilaiaabcca caWGTbaapaGaayjkaiaawMcaaaaa@4885@  and Σ ΔF MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiabfs5aejaadAeaaeqaaaaa@3B0D@ , is timed fault-tolerant (T-FT) controllable if it is TFT consistent and:

( sL( S ) L( G ) )( s  L ΔF   )  MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaabmaabaaeaa aaaaaaa8qacqGHaiIicaWGZbGaeyicI4Saamita8aadaqadaqaaGqa b8qacaWFtbaapaGaayjkaiaawMcaa8qacqWIPisscaqGGaGaamita8 aadaqadaqaa8qacaWFhbaapaGaayjkaiaawMcaaaGaayjkaiaawMca amaabmaabaWdbiaadohacqGHjiYZcaqGGaGaamitamaaBaaaleaacq qHuoarcaWGgbaabeaakiaabccaa8aacaGLOaGaayzkaaWdbiaabcca cqGHshI3aaa@5043@

Eli g L ( S ) ( s ){ Eli g L ( G ) ( s )( Σ u {τ} ) ifEli g L( S ) L( G ) ( s ) Σ for = 0 Eli g L ( G ) ( s ) Σ u ifEli g L( S ) L( G ) ( s ) Σ for 0   MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa8xraiaa=XgacaWFPbGaa83zamaaBaaaleaacaWGmbaabeaa k8aadaWgaaWcbaWaaeWaaeaaieqapeGaa43uaaWdaiaawIcacaGLPa aaaeqaaOWaaeWaaeaapeGaam4CaaWdaiaawIcacaGLPaaapeGaey4H IO8aaiqaaeaafaqabeGacaaabaGaa8xraiaa=XgacaWFPbGaa83zam aaBaaaleaacaWGmbaabeaak8aadaWgaaWcbaWaaeWaaeaapeGaa43r aaWdaiaawIcacaGLPaaaaeqaaOWaaeWaaeaapeGaam4CaaWdaiaawI cacaGLPaaapeGaeSykIK0damaabmaabaWdbiabfo6atnaaBaaaleaa caWG1baabeaakiablQIiv9aacaGG7bWdbiabes8a09aacaGG9baaca GLOaGaayzkaaaapeqaa8aacaWFPbWdbiaa=zgacaaMc8UaaGPaVlaa =veacaWFSbGaa8xAaiaa=DgadaWgaaWcbaGaamita8aadaqadaqaa8 qacaGFtbaapaGaayjkaiaawMcaa8qacqWIPisscaqGGaGaamitaiaa ykW7daqadaqaaiaa+DeapaGaaGPaVdWdbiaawIcacaGLPaaaaeqaaO WdamaabmaabaWdbiaadohaa8aacaGLOaGaayzkaaWdbiablMIijjaa ykW7caaMc8UaaGPaVlabfo6atnaaBaaaleaacaWGMbGaam4Baiaadk haaeqaaOGaeyypa0JabGimayaawaGaaGPaVdqaaiaa=veacaWFSbGa a8xAaiaa=DgadaWgaaWcbaGaamitaaqabaGcpaWaaSbaaSqaamaabm aabaWdbiaa+Deaa8aacaGLOaGaayzkaaaabeaakmaabmaabaWdbiaa dohaa8aacaGLOaGaayzkaaWdbiablMIijjaaykW7caaMc8UaaGPaVl abfo6atnaaBaaaleaacaWG1baabeaakiaaykW7aeaapaGaa8xAa8qa caWFMbGaaGPaVlaaykW7caWFfbGaa8hBaiaa=LgacaWFNbWaaSbaaS qaaiaadYeapaWaaeWaaeaapeGaa43uaaWdaiaawIcacaGLPaaapeGa eSykIKKaaeiiaiaadYeacaaMc8+aaeWaaeaacaGFhbWdaiaaykW7a8 qacaGLOaGaayzkaaaabeaak8aadaqadaqaa8qacaWGZbaapaGaayjk aiaawMcaa8qacqWIPisscaaMc8UaaGPaVlaaykW7cqqHJoWudaWgaa WcbaGaamOzaiaad+gacaWGYbaabeaakiabgcMi5kqaicdagaGfaiaa bccaaaaacaGL7baaaaa@B666@

For brevity, when it clear to which fault sets we are referring, we can state this property more concisely as S is timed fault-tolerant controllable for G.

The above definition is essentially the standard timed controllability definition but ignores strings that include excluded fault events. We note that if Σ ΔF = 0 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiabfs5aejaadAeaaeqaaOGaeyypa0JabGim ayaawaaaaa@3CF4@ , then Definition 9 reduces to the standard controllability definition.

Timed one-repeatable fault-tolerant controllability

The next fault-tolerant property that we introduce is designed to handle the onerepeatable fault scenario. First, we need to define the language of one-repeatable fault events. This is the set of strings that contain at most one fault event from Σ F MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadAeaaeqaaaaa@39A7@ , but that event can occur multiple times in the string.

Definition 10. We define the language of one-repeatable fault events as:

L 1RF = ( Σ Σ F   ) σ Σ F ( ( ΣΣF  ) .σ.( Σ( ΣF{σ} ) ) ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamitamaaBaaaleaacaaIXaGaamOuaiaadAeaaeqaaOGaeyypa0Zd amaabmaabaWdbiabfo6atjabgkHiTiabfo6atnaaBaaaleaacaWGgb aabeaakiaabccaa8aacaGLOaGaayzkaaWdbmaaCaaaleqabaGaey4f IOcaaOGaeyOkIGSaaGPaVlaaykW7daWfqaqaaiablQIivbWcbaGaeq 4WdmNaeyicI4Saeu4Odm1aaSbaaWqaaiaadAeaaeqaaaWcbeaak8aa daqadaqaamaabmaabaWdbiabfo6atjabgkHiTiabfo6atjaadAeaca qGGaaapaGaayjkaiaawMcaa8qadaahaaWcbeqaaiabgEHiQaaakiaa c6cacqaHdpWCcaGGUaWdamaabmaabaWdbiabfo6atjabgkHiT8aada qadaqaa8qacqqHJoWucaWGgbGaeyOeI0YdaiaacUhapeGaeq4Wdm3d aiaac2haaiaawIcacaGLPaaaaiaawIcacaGLPaaapeGaey4fIOcapa GaayjkaiaawMcaaaaa@6B11@  

Definition 11. A system, with a plant G = ( Y, Σ, δ,  y o ,  Y m ), MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqababaaaaaaa aapeGaa83raiaabccacqGH9aqpcaqGGaWdamaabmaabaWdbiaadMfa caGGSaGaaeiiaiabfo6atjaacYcacaqGGaGaeqiTdqMaaiilaiaabc cacaWG5bWaaSbaaSqaaiaad+gaaeqaaOGaaiilaiaabccacaWGzbWa aSbaaSqaaiaad2gaaeqaaaGcpaGaayjkaiaawMcaa8qacaGGSaaaaa@4A42@  a supervisor S = ( X, Σ, ξ,  x o ,  X m ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqababaaaaaaa aapeGaa83uaiaabccacqGH9aqpcaqGGaWdamaabmaabaWdbiaadIfa caGGSaGaaeiiaiabfo6atjaacYcacaqGGaGaeqOVdGNaaiilaiaabc cacaWG4bWaaSbaaSqaaiaad+gaaeqaaOGaaiilaiaabccacaWGybWa aSbaaSqaaiaad2gaaeqaaaGcpaGaayjkaiaawMcaaaaa@49A9@  and fault sets Σ Fi  ( i = 1, . . . , m ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadAeacaWGPbaabeaakiaabccapaWaaeWa aeaapeGaamyAaiaabccacqGH9aqpcaqGGaGaaGymaiaacYcacaqGGa GaaiOlaiaabccacaGGUaGaaeiiaiaac6cacaqGGaGaaiilaiaabcca caWGTbaapaGaayjkaiaawMcaaaaa@4885@ and Σ ΔF MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiabfs5aejaadAeaaeqaaaaa@3B0D@ is timed one repeatable fault-tolerant (T-1-R-FT) controllable if it is TFT consistent and:

( s  L( S )L( G ) )( s L ΔF   )( s   L 1RF   )  MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaabmaabaaeaa aaaaaaa8qacqGHaiIicaWGZbGaaeiiaiabgIGiolaabccacaWGmbWd amaabmaabaacbeWdbiaa=nfaa8aacaGLOaGaayzkaaWdbiabgMIihl aadYeapaWaaeWaaeaapeGaa83raaWdaiaawIcacaGLPaaaaiaawIca caGLPaaadaqadaqaa8qacaWGZbGaeyycI8SaamitamaaBaaaleaacq qHuoarcaWGgbaabeaakiaabccaa8aacaGLOaGaayzkaaWdbiabgEIi z=aadaqadaqaa8qacaWGZbGaaeiiaiabgIGiolaabccacaWGmbWaaS baaSqaaiaaigdacaWGsbGaamOraaqabaGccaqGGaaapaGaayjkaiaa wMcaa8qacaqGGaGaeyO0H4naaa@5BFA@

Eli g L ( S ) ( s ){ Eli g L ( G ) ( s )( Σ u {τ} ) ifEli g L( S ) L( G ) ( s ) Σ for = 0 Eli g L ( G ) ( s ) Σ u ifEli g L( S ) L( G ) ( s ) Σ for 0   MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa8xraiaa=XgacaWFPbGaa83zamaaBaaaleaacaWGmbaabeaa k8aadaWgaaWcbaWaaeWaaeaaieqapeGaa43uaaWdaiaawIcacaGLPa aaaeqaaOWaaeWaaeaapeGaam4CaaWdaiaawIcacaGLPaaapeGaey4H IO8aaiqaaeaafaqabeGacaaabaGaa8xraiaa=XgacaWFPbGaa83zam aaBaaaleaacaWGmbaabeaak8aadaWgaaWcbaWaaeWaaeaapeGaa43r aaWdaiaawIcacaGLPaaaaeqaaOWaaeWaaeaapeGaam4CaaWdaiaawI cacaGLPaaapeGaeSykIK0damaabmaabaWdbiabfo6atnaaBaaaleaa caWG1baabeaakiablQIiv9aacaGG7bWdbiabes8a09aacaGG9baaca GLOaGaayzkaaaapeqaa8aacaWFPbWdbiaa=zgacaaMc8UaaGPaVlaa =veacaWFSbGaa8xAaiaa=DgadaWgaaWcbaGaamita8aadaqadaqaa8 qacaGFtbaapaGaayjkaiaawMcaa8qacqWIPisscaqGGaGaamitaiaa ykW7daqadaqaaiaa+DeapaGaaGPaVdWdbiaawIcacaGLPaaaaeqaaO WdamaabmaabaWdbiaadohaa8aacaGLOaGaayzkaaWdbiablMIijjaa ykW7caaMc8UaaGPaVlabfo6atnaaBaaaleaacaWGMbGaam4Baiaadk haaeqaaOGaeyypa0JabGimayaawaGaaGPaVdqaaiaa=veacaWFSbGa a8xAaiaa=DgadaWgaaWcbaGaamitaaqabaGcpaWaaSbaaSqaamaabm aabaWdbiaa+Deaa8aacaGLOaGaayzkaaaabeaakmaabmaabaWdbiaa dohaa8aacaGLOaGaayzkaaWdbiablMIijjaaykW7caaMc8UaaGPaVl abfo6atnaaBaaaleaacaWG1baabeaakiaaykW7aeaapaGaa8xAa8qa caWFMbGaaGPaVlaaykW7caWFfbGaa8hBaiaa=LgacaWFNbWaaSbaaS qaaiaadYeapaWaaeWaaeaapeGaa43uaaWdaiaawIcacaGLPaaapeGa eSykIKKaaeiiaiaadYeacaaMc8+aaeWaaeaacaGFhbWdaiaaykW7a8 qacaGLOaGaayzkaaaabeaak8aadaqadaqaa8qacaWGZbaapaGaayjk aiaawMcaa8qacqWIPisscaaMc8UaaGPaVlaaykW7cqqHJoWudaWgaa WcbaGaamOzaiaad+gacaWGYbaabeaakiabgcMi5kqaicdagaGfaiaa bccaaaaacaGL7baaaaa@B666@

The above definition is essentially the standard timed controllability definition, but ignores strings that include excluded fault events, and strings that contain more than two unique fault events from Σ F MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadAeaaeqaaaaa@39A7@ . We note that if m=0 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamyBaiabg2da9iaaicdaaaa@39DE@ we get Σ F = 0 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadAeaaeqaaOGaeyypa0JabGimayaawaaa aa@3B8E@ . This means Definition 11 simplifies to the TFT controllable definition.

Timed m-one-repeatable fault-tolerant controllability

The next fault-tolerant property that we introduce is designed to handle the m-one repeatable fault scenario. First, we need to define the language of m-one-repeatable fault events. This is the set of all strings that contain at most one fault event from a given fault set Σ Fi  ( i = 1, . . . , m ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadAeacaWGPbaabeaakiaabccapaWaaeWa aeaapeGaamyAaiaabccacqGH9aqpcaqGGaGaaGymaiaacYcacaqGGa GaaiOlaiaabccacaGGUaGaaeiiaiaac6cacaqGGaGaaiilaiaabcca caWGTbaapaGaayjkaiaawMcaaaaa@4885@ , but that event can occur multiple times in the string. We note that a string in L 1R F m MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamitamaaBaaaleaacaaIXaGaamOuaiaadAeadaWgaaadbaGaamyB aaqabaaaleqaaaaa@3BB0@ could potentially contain a unique event from each different fault set, but no two unique events from the same fault set.

Definition 12. We define the language of m-one-repeatable fault events as:

L 1R F m =  i=1 m ( ΣΣ F i )* σ Σ Fi ( ΣΣ F i )* .σ.( Σ( Σ F i {σ} ) ) * ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamitamaaBaaaleaacaaIXaGaamOuaiaadAeadaWgaaadbaGaamyB aaqabaaaleqaaOGaeyypa0JaaeiiamaauahabaGaaGPaVlaacIcaaS qaaiaadMgacqGH9aqpcaaIXaaabaGaamyBaaqdcqWIPissaOGaeu4O dmLaeyOeI0Iaeu4OdmLaamOramaaBaaaleaacaWGPbaabeaakiaacM cacaGGQaGaeSOkIuLaaGPaVlaaykW7caaMc8+aaqbuaeaadaqadaqa aiabfo6atjabgkHiTiabfo6atjaadAeadaWgaaWcbaGaamyAaaqaba aakiaawIcacaGLPaaacaGGQaGaaGPaVlaaykW7aSqaaiabeo8aZjab gIGiolabfo6atnaaBaaameaacaWGgbGaamyAaaqabaaaleqaniablM IijbGccaGGUaGaeq4WdmNaaiOla8aadaqadaqaa8qacqqHJoWucqGH sislpaWaaeWaaeaapeGaeu4OdmLaamOramaaBaaaleaacaWGPbaabe aakiabgkHiT8aacaGG7bWdbiabeo8aZ9aacaGG9baacaGLOaGaayzk aaaacaGLOaGaayzkaaWaaeGaaeaacaGGQaaacaGLPaaaaaa@786C@

Definition 13. A system, with plant G = ( Y, Σ, δ,  y o ,  Y m ), MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqababaaaaaaa aapeGaa83raiaabccacqGH9aqpcaqGGaWdamaabmaabaWdbiaadMfa caGGSaGaaeiiaiabfo6atjaacYcacaqGGaGaeqiTdqMaaiilaiaabc cacaWG5bWaaSbaaSqaaiaad+gaaeqaaOGaaiilaiaabccacaWGzbWa aSbaaSqaaiaad2gaaeqaaaGcpaGaayjkaiaawMcaa8qacaGGSaaaaa@4A42@ supervisor S = ( X, Σ, ξ,  x o ,  X m ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqababaaaaaaa aapeGaa83uaiaabccacqGH9aqpcaqGGaWdamaabmaabaWdbiaadIfa caGGSaGaaeiiaiabfo6atjaacYcacaqGGaGaeqOVdGNaaiilaiaabc cacaWG4bWaaSbaaSqaaiaad+gaaeqaaOGaaiilaiaabccacaWGybWa aSbaaSqaaiaad2gaaeqaaaGcpaGaayjkaiaawMcaaaaa@49A9@ and fault sets Σ Fi  ( i = 1, . . . , m ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadAeacaWGPbaabeaakiaabccapaWaaeWa aeaapeGaamyAaiaabccacqGH9aqpcaqGGaGaaGymaiaacYcacaqGGa GaaiOlaiaabccacaGGUaGaaeiiaiaac6cacaqGGaGaaiilaiaabcca caWGTbaapaGaayjkaiaawMcaaaaa@4885@ and Σ ΔF MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiabfs5aejaadAeaaeqaaaaa@3B0D@ is timed m-one-repeatable fault tolerant (T-m-1-R-FT) controllable, if it is TFT consistent and:

( s  L( S )L( G ) )( s L ΔF   )( s  L1R F m ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaabmaabaaeaa aaaaaaa8qacqGHaiIicaWGZbGaaeiiaiabgIGiolaabccacaWGmbWd amaabmaabaacbeWdbiaa=nfaa8aacaGLOaGaayzkaaWdbiabgMIihl aadYeapaWaaeWaaeaapeGaa83raaWdaiaawIcacaGLPaaaaiaawIca caGLPaaadaqadaqaa8qacaWGZbGaeyycI8SaamitamaaBaaaleaacq qHuoarcaWGgbaabeaakiaabccaa8aacaGLOaGaayzkaaWdbiabgEIi z=aadaqadaqaa8qacaWGZbGaaeiiaiabgIGiolaabccacaWGmbGaaG ymaiaadkfacaWGgbWaaSbaaSqaaiaad2gaaeqaaaGcpaGaayjkaiaa wMcaa8qacqGHshI3aaa@5BA6@

Eli g L ( S ) ( s ){ Eli g L ( G ) ( s )( Σ u {τ} ) ifEli g L( S ) L( G ) ( s ) Σ for = 0 Eli g L ( G ) ( s ) Σ u ifEli g L( S ) L( G ) ( s ) Σ for 0   MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa8xraiaa=XgacaWFPbGaa83zamaaBaaaleaacaWGmbaabeaa k8aadaWgaaWcbaWaaeWaaeaaieqapeGaa43uaaWdaiaawIcacaGLPa aaaeqaaOWaaeWaaeaapeGaam4CaaWdaiaawIcacaGLPaaapeGaey4H IO8aaiqaaeaafaqabeGacaaabaGaa8xraiaa=XgacaWFPbGaa83zam aaBaaaleaacaWGmbaabeaak8aadaWgaaWcbaWaaeWaaeaapeGaa43r aaWdaiaawIcacaGLPaaaaeqaaOWaaeWaaeaapeGaam4CaaWdaiaawI cacaGLPaaapeGaeSykIK0damaabmaabaWdbiabfo6atnaaBaaaleaa caWG1baabeaakiablQIiv9aacaGG7bWdbiabes8a09aacaGG9baaca GLOaGaayzkaaaapeqaa8aacaWFPbWdbiaa=zgacaaMc8UaaGPaVlaa =veacaWFSbGaa8xAaiaa=DgadaWgaaWcbaGaamita8aadaqadaqaa8 qacaGFtbaapaGaayjkaiaawMcaa8qacqWIPisscaqGGaGaamitaiaa ykW7daqadaqaaiaa+DeapaGaaGPaVdWdbiaawIcacaGLPaaaaeqaaO WdamaabmaabaWdbiaadohaa8aacaGLOaGaayzkaaWdbiablMIijjaa ykW7caaMc8UaaGPaVlabfo6atnaaBaaaleaacaWGMbGaam4Baiaadk haaeqaaOGaeyypa0JabGimayaawaGaaGPaVdqaaiaa=veacaWFSbGa a8xAaiaa=DgadaWgaaWcbaGaamitaaqabaGcpaWaaSbaaSqaamaabm aabaWdbiaa+Deaa8aacaGLOaGaayzkaaaabeaakmaabmaabaWdbiaa dohaa8aacaGLOaGaayzkaaWdbiablMIijjaaykW7caaMc8UaaGPaVl abfo6atnaaBaaaleaacaWG1baabeaakiaaykW7aeaapaGaa8xAa8qa caWFMbGaaGPaVlaaykW7caWFfbGaa8hBaiaa=LgacaWFNbWaaSbaaS qaaiaadYeapaWaaeWaaeaapeGaa43uaaWdaiaawIcacaGLPaaapeGa eSykIKKaaeiiaiaadYeacaaMc8+aaeWaaeaacaGFhbWdaiaaykW7a8 qacaGLOaGaayzkaaaabeaak8aadaqadaqaa8qacaWGZbaapaGaayjk aiaawMcaa8qacqWIPisscaaMc8UaaGPaVlaaykW7cqqHJoWudaWgaa WcbaGaamOzaiaad+gacaWGYbaabeaakiabgcMi5kqaicdagaGfaiaa bccaaaaacaGL7baaaaa@B666@

The above definition is essentially the standard timed controllability definition, but ignores strings that include excluded fault events, and strings that contain more than one unique fault event from the same fault set. We note that if m=0 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamyBaiabg2da9iaaicdaaaa@39DE@ we get Σ F = 0 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadAeaaeqaaOGaeyypa0JabGimayaawaaa aa@3B8E@ . This means Definition 13 simplifies to the TFT controllable definition.

Algorithms

In this section, we will present algorithms to construct and verify the timed faulttolerant controllability properties that we defined in Section 4. We will not present an algorithm for the TFT consistency property as its individual points can easily be checked by adapting various standard algorithms.

We assume that the our TDES system consists of a plant G = ( Y, Σ, δ,  y o ,  Y m ), MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqababaaaaaaa aapeGaa83raiaabccacqGH9aqpcaqGGaWdamaabmaabaWdbiaadMfa caGGSaGaaeiiaiabfo6atjaacYcacaqGGaGaeqiTdqMaaiilaiaabc cacaWG5bWaaSbaaSqaaiaad+gaaeqaaOGaaiilaiaabccacaWGzbWa aSbaaSqaaiaad2gaaeqaaaGcpaGaayjkaiaawMcaa8qacaGGSaaaaa@4A42@ supervisor S = ( X, Σ, ξ,  x o ,  X m ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqababaaaaaaa aapeGaa83uaiaabccacqGH9aqpcaqGGaWdamaabmaabaWdbiaadIfa caGGSaGaaeiiaiabfo6atjaacYcacaqGGaGaeqOVdGNaaiilaiaabc cacaWG4bWaaSbaaSqaaiaad+gaaeqaaOGaaiilaiaabccacaWGybWa aSbaaSqaaiaad2gaaeqaaaGcpaGaayjkaiaawMcaaaaa@49A9@ and fault and reset sets Σ Fi MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadAeacaWGPbaabeaaaaa@3A95@ , Σ Ti  ( i = 1, . . . , m ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadsfacaWGPbaabeaakiaabccapaWaaeWa aeaapeGaamyAaiaabccacqGH9aqpcaqGGaGaaGymaiaacYcacaqGGa GaaiOlaiaabccacaGGUaGaaeiiaiaac6cacaqGGaGaaiilaiaabcca caWGTbaapaGaayjkaiaawMcaaaaa@4893@ , Σ ΔF MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiabfs5aejaadAeaaeqaaaaa@3B0D@ , and Σ F MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaamXvP5wqSX2qVrwzqf2zLnharyqtHX2z15gi h9gDOL2yaGqbaiaa=zsicaWGgbaabeaaaaa@453A@ . We also assume that the timed controllability and synchronous product algorithms are given. We use vTCont (Plant, Sup) to indicate timed controllability verification, and to indicate timed controllability verification, and to indicate the synchronous product operation.

Similar to the untimed fault-tolerant algorithms in Mulahuwaish,1–4 our approach will be to construct plant components to synchronize with our plant G such that the new TDES will restrict the occurrence of faults to match the given timed fault-tolerant controllability definitions. We can then synchronize the plant components together and then use a standard controllability algorithm to check the property. This approach allows us to automatically take advantage of existing scalability methods such as incremental24 and binary decision diagram-based (BDD) algorithms.25–30

Since every TDES must contain the tick event, we add a tick event selflooped at every state in the plants we construct. Moreover, all the constructed plants have all of their states marked so that we do not directly change the system’s marked behavior.

Algorithms to construct plants

We will now discuss the algorithms required to construct the needed plant components for the various timed fault-tolerant algorithms. This will require the construction of two different types of plants. Figures 7 and 8 show examples of these plants. We will not discuss the plant component needed to verify the timed one-repeatable fault-tolerant properties as it is essentially a special case of the timed m-one-repeatable fault-tolerant plant component. Please refer to Mulahuwaish1 for details.

Figure 7 shows an example timed excluded faults plant, G tΔF MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa83ramaaBaaaleaacaWF0bGaa8hLdiaa=zeaaeqaaaaa@3AFD@ . This is a TDES with event set Σ ΔF { τ } MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiabfs5aejaadAeaaeqaaOGaeyOkIG8damaa cmaabaWdbiabes8a0bWdaiaawUhacaGL9baaaaa@40DB@ one selflooped transition for tick, and a marked, initial state. This will have the effect of removing any Σ ΔF MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiabfs5aejaadAeaaeqaaaaa@3B0D@ transitions from any DES it is synchronized with. The algorithm to construct G tΔF MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa83ramaaBaaaleaacaWF0bGaa8hLdiaa=zeaaeqaaaaa@3AFD@ is given by Algorithm 1.

Figure 7 N=57; Epidemiological distribution of the pathological fractures, traumatic fractures, and nonunion.

Algorithm 1 construct- G tΔF MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqababaaaaaaa aapeGaa83ramaaBaaaleaacaWF0bGaa8hLdiaa=zeaaeqaaaaa@3AFE@

1: Y 1 { y 0 } MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamywamaaBaaaleaacaaIXaaabeaakiabgcziS+aadaGadaqaa8qa caWG5bWaaSbaaSqaaiaaicdaaeqaaaGcpaGaay5Eaiaaw2haaaaa@3F31@

   

2: Y m,1 Y 1 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamywamaaBaaaleaacaWGTbGaaiilaiaaigdaaeqaaOGaeyiKHWQa amywamaaBaaaleaacaaIXaaabeaaaaa@3E4B@

   

3: δ 1 δ 1 { ( y 0 , τ,  y 0 ) }  MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaeqiTdq2aaSbaaSqaaiaaigdaaeqaaOGaeyiKHWQaeqiTdq2aaSba aSqaaiaaigdaaeqaaOGaeyOkIG8damaacmaabaWaaeWaaeaapeGaam yEamaaBaaaleaacaaIWaaabeaakiaacYcacaqGGaGaeqiXdqNaaiil aiaabccacaWG5bWaaSbaaSqaaiaaicdaaeqaaaGcpaGaayjkaiaawM caaaGaay5Eaiaaw2haa8qacaqGGaaaaa@4CC3@

   

4: return ( Y 1 ,  Σ ΔF { τ },  δ 1 ,  y o , Y m,1 )  MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaabmaabaaeaa aaaaaaa8qacaWGzbWaaSbaaSqaaiaaigdaaeqaaOGaaiilaiaabcca cqqHJoWudaWgaaWcbaGaeuiLdqKaamOraaqabaGccqGHQicYpaWaai WaaeaapeGaeqiXdqhapaGaay5Eaiaaw2haa8qacaGGSaGaaeiiaiab es7aKnaaBaaaleaacaaIXaaabeaakiaacYcacaqGGaGaamyEamaaBa aaleaacaWGVbaabeaakiaacYcacaWGzbWaaSbaaSqaaiaad2gacaGG SaGaaGymaaqabaaak8aacaGLOaGaayzkaaWdbiaabccaaaa@51DD@

 

 

Figure 8 shows an example timed m-one-repeatable faults plant, G t1RF ,i  ( i  {1, . . . , m} ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqababaaaaaaa aapeGaa83ramaaBaaaleaacaWF0bGaa8xmaiaa=jfacaWFgbaabeaa kmaaBaaaleaajugWaiaa=XcacaWFPbaaleqaaOGaaeiia8aadaqada qaa8qacaWGPbGaaeiiaiabgIGiolaabccapaGaai4Ea8qacaaIXaGa aiilaiaabccacaGGUaGaaeiiaiaac6cacaqGGaGaaiOlaiaabccaca GGSaGaaeiiaiaad2gapaGaaiyFaaGaayjkaiaawMcaaaaa@4EFE@ .  This is a TDES with event set Σ Fi { τ } MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadAeacaWGPbaabeaakiabgQIii=aadaGa daqaa8qacqaHepaDa8aacaGL7bGaayzFaaaaaa@4063@ , and k+1 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaam4AaiabgUcaRiaaigdaaaa@39B9@  marked states, where  k=| Σ Fi | MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaam4Aaiabg2da98aadaabdaqaa8qacqqHJoWudaWgaaWcbaGaamOr aiaadMgaaeqaaaGcpaGaay5bSlaawIa7aaaa@3FE5@ . It has a transition for each fault event in Σ Fi MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadAeacaWGPbaabeaakiaaykW7caaMc8oa aa@3DB5@ from the initial state to a new state unique to that fault event. There is also a selflooped transition at that state for that event. Moreover, it creates one selflooped transition for tick at each state. Synchronizing with this TDES will allow at most on unique fault event from Σ Fi MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadAeacaWGPbaabeaakiaaykW7caaMc8oa aa@3DB5@ to occur, but that event can occur multiple times. The algorithm to construct G t1RF ,i MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqababaaaaaaa aapeGaa83ramaaBaaaleaacaWF0bGaa8xmaiaa=jfacaWFgbaabeaa kmaaBaaaleaajugWaiaa=XcacaWFPbaaleqaaaaa@3E71@ is given by Algorithm 2.

Figure 8 N=57; Epidemiological distribution of the pathological fractures, traumatic fractures, and nonunion.

Algorithm 2 construct- G t1RF ,i MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqababaaaaaaa aapeGaa83ramaaBaaaleaacaWF0bGaa8xmaiaa=jfacaWFgbaabeaa kmaaBaaaleaajugWaiaa=XcacaWFPbaaleqaaaaa@3E71@

1: k| Σ F i | MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaam4AaiabgcziSoaaemaapaqaa8qacaqGJoWdamaaBaaaleaapeGa amOra8aadaWgaaadbaWdbiaadMgaa8aabeaaaSqabaaak8qacaGLhW UaayjcSdaaaa@40F4@

   

2: Y 1 { y 0 ,, y k } MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaamywa8aadaWgaaWcbaWdbiaaigdaa8aabeaak8qacqGHqgcRdaGa daWdaeaapeGaamyEa8aadaWgaaWcbaWdbiaaicdaa8aabeaak8qaca GGSaGaeyOjGWRaaiilaiaadMhapaWaaSbaaSqaa8qacaWGRbaapaqa baaak8qacaGL7bGaayzFaaaaaa@44EF@

   

3: Y m,1 Y 1 MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaamywa8aadaWgaaWcbaWdbiaad2gacaGGSaGaaGymaaWdaeqaaOWd biabgcziSkaadMfapaWaaSbaaSqaa8qacaaIXaaapaqabaaaaa@3EB8@

   

4: δ 1 0 MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaeqiTdq2damaaBaaaleaapeGaaGymaaWdaeqaaOWdbiabgcziSkqa icdagaGfaaaa@3CC1@

   

5: j1 MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamOAaiabgcziSkaaigdaaaa@3AC0@

   

6: δ 1 δ 1 { ( y 0 ,τ, y 0 ),( y j ,τ, y j ) } MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaeqiTdq2damaaBaaaleaapeGaaGymaaWdaeqaaOWdbiabgcziSkab es7aK9aadaWgaaWcbaWdbiaaigdaa8aabeaak8qacqGHQicYdaGada WdaeaapeWaaeWaa8aabaWdbiaadMhapaWaaSbaaSqaa8qacaaIWaaa paqabaGcpeGaaiilaiabes8a0jaacYcacaWG5bWdamaaBaaaleaape GaaGimaaWdaeqaaaGcpeGaayjkaiaawMcaaiaacYcadaqadaWdaeaa peGaamyEa8aadaWgaaWcbaWdbiaadQgaa8aabeaak8qacaGGSaGaeq iXdqNaaiilaiaadMhapaWaaSbaaSqaa8qacaWGQbaapaqabaaak8qa caGLOaGaayzkaaaacaGL7bGaayzFaaaaaa@5612@

   

7: for σ Σ F i MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeq4WdmNaeyicI4Saae4Od8aadaWgaaWcbaWdbiaadAeapaWaaSba aWqaa8qacaWGPbaapaqabaaaleqaaaaa@3E07@  

   

8: δ 1 δ 1 { ( y 0 ,σ, y j ),( y j ,σ, y j ) } MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaeqiTdq2damaaBaaaleaapeGaaGymaaWdaeqaaOWdbiabgcziSkab es7aK9aadaWgaaWcbaWdbiaaigdaa8aabeaak8qacqGHQicYdaGada WdaeaapeWaaeWaa8aabaWdbiaadMhapaWaaSbaaSqaa8qacaaIWaaa paqabaGcpeGaaiilaiabeo8aZjaacYcacaWG5bWdamaaBaaaleaape GaamOAaaWdaeqaaaGcpeGaayjkaiaawMcaaiaacYcadaqadaWdaeaa peGaamyEa8aadaWgaaWcbaWdbiaadQgaa8aabeaak8qacaGGSaGaeq 4WdmNaaiilaiaadMhapaWaaSbaaSqaa8qacaWGQbaapaqabaaak8qa caGLOaGaayzkaaaacaGL7bGaayzFaaaaaa@5643@

   

9: jj+1 MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamOAaiabgcziSkaadQgacqGHRaWkcaaIXaaaaa@3C91@

   

10: end for

 

11: return ( Y 1 , Σ F i { τ }, δ 1 , y o , Y m,1 ) MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape WaaeWaa8aabaWdbiaadMfapaWaaSbaaSqaa8qacaaIXaaapaqabaGc peGaaiilaiaabo6apaWaaSbaaSqaa8qacaWGgbWdamaaBaaameaape GaamyAaaWdaeqaaaWcbeaak8qacqGHQicYdaGadaWdaeaapeGaeqiX dqhacaGL7bGaayzFaaGaaiilaiabes7aK9aadaWgaaWcbaWdbiaaig daa8aabeaak8qacaGGSaGaamyEa8aadaWgaaWcbaWdbiaad+gaa8aa beaak8qacaGGSaGaamywa8aadaWgaaWcbaWdbiaad2gacaGGSaGaaG ymaaWdaeqaaaGcpeGaayjkaiaawMcaaaaa@4FED@

 

Verify timed fault-tolerant controllability

We will now discuss the algorithms to verify our timed fault-tolerant controllability properties. We will not discuss the algorithms to verify the timed one-repeatable fault-tolerant controllability property as they are essentially a special case m=1 MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamyBaiabg2da9iaaigdaaaa@39E0@ of the timed m-one-repeatable fault-tolerant controllability property. Please refer to Mulahuwaish1 for details. m=1 MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamyBaiabg2da9iaaigdaaaa@39E0@

Algorithm 3 shows how to verify timed fault-tolerant controllability for G and . TDES G tΔF MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa83ramaaBaaaleaacaWF0bGaa8hLdiaa=zeaaeqaaaaa@3AFD@ contains the excluded fault events but no transitions except for a   tick  selfloop at the initial state, synchronizing with G tΔF MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa83ramaaBaaaleaacaWF0bGaa8hLdiaa=zeaaeqaaaaa@3AFD@ will remove all the excluded fault transitions, but allow   tick  transitions to occur without restriction. Checking that  is controllable for the resulting behavior will have the effect of verifying timed fault-tolerant controllability.

Algorithm 3 Verify timed fault-tolerant controllability

1: G tΔF  construct  G tΔF ( Σ ΔF ) MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqababaaaaaaa aapeGaa83ra8aadaWgaaWcbaWdbiaa=rhacaWFuoGaa8NraaWdaeqa aOWdbiabgcziSkaacckacaWGJbGaam4Baiaad6gacaWGZbGaamiDai aadkhacaWG1bGaam4yaiaadshacqGHsislcaGGGcGaa83ra8aadaWg aaWcbaWdbiaa=rhacaWFuoGaa8NraaWdaeqaaOWdbmaabmaapaqaa8 qacaqGJoWdamaaBaaaleaapeGaaeiLdiaadAeaa8aabeaaaOWdbiaa wIcacaGLPaaaaaa@5231@

       

2: G'G|| G tΔF MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqababaaaaaaa aapeGaa83raiaabEcacqGHqgcRcaWFhbGaaiiFaiaacYhacaWFhbWd amaaBaaaleaapeGaa8hDaiaa=r5acaWFgbaapaqabaaaaa@4150@

       

3: pass← vTCont ( G',S ) MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape WaaeWaa8aabaacbeWdbiaa=DeacaqGNaGaaiilaGqaaiaa+nfaaiaa wIcacaGLPaaaaaa@3BDD@

     

4: return pass

 

 

 

Algorithm 4 shows how to verify timed m-one-repeatable fault-tolerant controllability for G and S. As G tΔF MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa83ramaaBaaaleaacaWF0bGaa8hLdiaa=zeaaeqaaaaa@3AFD@ removes any excluded fault transitions, and each G t1RF,i MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqababaaaaaaa aapeGaa83ra8aadaWgaaWcbaWdbiaa=rhacaWFXaGaa8Nuaiaa=zea caWFSaGaa8xAaaWdaeqaaaaa@3D31@ allows at most one unique fault event but that event can occur multiple times, checking that  is controllable for the resulting behavior will have the effect of verifying timed m-one-repeatable fault-tolerant controllability.

Algorithm 4 Verify timed m-one-repeatable fault-tolerant controllability

1: G tΔF  construct  G tΔF ( Σ ΔF ) MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqababaaaaaaa aapeGaa83ra8aadaWgaaWcbaWdbiaa=rhacaWFuoGaa8NraaWdaeqa aOWdbiabgcziSkaacckacaWGJbGaam4Baiaad6gacaWGZbGaamiDai aadkhacaWG1bGaam4yaiaadshacqGHsislcaGGGcGaa83ra8aadaWg aaWcbaWdbiaa=rhacaWFuoGaa8NraaWdaeqaaOWdbmaabmaapaqaa8 qacaqGJoWdamaaBaaaleaapeGaaeiLdiaadAeaa8aabeaaaOWdbiaa wIcacaGLPaaaaaa@5231@  

           

2: for i=1,,m MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamyAaiabg2da9iaaigdacaGGSaGaeyOjGWRaaiilaiaad2gaaaa@3DBC@

           

3: G t1RF,i  construct G t1RF,i ( Σ F i ,i ) MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqababaaaaaaa aapeGaa83ra8aadaWgaaWcbaWdbiaa=rhacaWFXaGaa8Nuaiaa=zea caWFSaGaa8xAaaWdaeqaaOWdbiabgcziSkaacckacaWGJbGaam4Bai aad6gacaWGZbGaamiDaiaadkhacaWG1bGaam4yaiaadshacqGHsisl caWFhbWdamaaBaaaleaapeGaa8hDaiaa=fdacaWFsbGaa8Nraiaa=X cacaWFPbaapaqabaGcpeWaaeWaa8aabaWdbiaabo6apaWaaSbaaSqa a8qacaWGgbWdamaaBaaameaapeGaamyAaaWdaeqaaaWcbeaak8qaca GGSaGaamyAaaGaayjkaiaawMcaaaaa@56DE@

           

4: end for

         

5: G'G| | G tΔF | | G t1RF,1 | | | | G t1RF,m MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqababaaaaaaa aapeGaa83raiaabEcacqGHqgcRcaWFhbWaaqWaa8aabaWdbmaaemaa paqaa8qacaWFhbWdamaaBaaaleaapeGaa8hDaiaa=r5acaWFgbaapa qabaaak8qacaGLhWUaayjcSdaacaGLhWUaayjcSdGaa83ra8aadaWg aaWcbaWdbiaa=rhacaWFXaGaa8Nuaiaa=zeacaWFSaGaa8xmaaWdae qaaOWdbmaaemaapaqaa8qadaabdaWdaeaapeGaeyOjGWlacaGLhWUa ayjcSdaacaGLhWUaayjcSdGaa83ramaaBaaaleaacaWF0bGaa8xmai aa=jfacaWFgbGaa8hlaiaa=1gaaeqaaaaa@59A8@  

           

6: pass←  vTCont ( G',S ) MathType@MTEF@5@5@+= feaagKart1ev2aqatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape WaaeWaa8aabaacbeWdbiaa=DeacaqGNaGaaiilaGqaaiaa+nfaaiaa wIcacaGLPaaaaaa@3BDD@

           

7: return pass

 

 

 

 

 

Algorithm complexity analysis

In this section, we provide a complexity analysis for the timed fault-tolerant controllability algorithms. In the following subsections, we assume that our system consists of a plant G = ( Y, Σ, δ,  y o ,  Y m ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa83raiaabccacqGH9aqpcaqGGaWdamaabmaabaWdbiaadMfa caGGSaGaaeiiaiabfo6atjaacYcacaqGGaGaeqiTdqMaaiilaiaabc cacaWG5bWaaSbaaSqaaiaad+gaaeqaaOGaaiilaiaabccacaWGzbWa aSbaaSqaaiaad2gaaeqaaaGcpaGaayjkaiaawMcaaaaa@4981@ , supervisor S = ( X, Σ, ξ,  x o ,  X m ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqababaaaaaaa aapeGaa83uaiaabccacqGH9aqpcaqGGaWdamaabmaabaWdbiaadIfa caGGSaGaaeiiaiabfo6atjaacYcacaqGGaGaeqOVdGNaaiilaiaabc cacaWG4bWaaSbaaSqaaiaad+gaaeqaaOGaaiilaiaabccacaWGybWa aSbaaSqaaiaad2gaaeqaaaGcpaGaayjkaiaawMcaaaaa@49A9@ , and fault and reset sets Σ Fi ,  Σ Ti  ( i = 1, . . . , m ),  Σ ΔF , MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadAeacaWGPbaabeaakiaacYcacaqGGaGa eu4Odm1aaSbaaSqaaiaadsfacaWGPbaabeaakiaabccapaWaaeWaae aapeGaamyAaiaabccacqGH9aqpcaqGGaGaaGymaiaacYcacaqGGaGa aiOlaiaabccacaGGUaGaaeiiaiaac6cacaqGGaGaaiilaiaabccaca WGTbaapaGaayjkaiaawMcaa8qacaGGSaGaaeiiaiabfo6atnaaBaaa leaaieaacaWFuoGaamOraaqabaGccaGGSaaaaa@5312@  and Σ ΩF MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaae4Od8aadaWgaaWcbaWdbiabfM6axjaabAeaa8aabeaaaaa@3B06@ .

In this paper, we will base our analysis on the complexity analysis from Cassandras  et al.,22 that states that the untimed controllability algorithms have a complexity of O( | Σ || Y ||X| ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaam4ta8aadaqadaqaamaaemaabaWdbiabfo6atbWdaiaawEa7caGL iWoadaabdaqaa8qacaWGzbaapaGaay5bSlaawIa7aiaacYhapeGaam iwa8aacaGG8baacaGLOaGaayzkaaaaaa@4578@ , where | Σ | MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaaemaabaaeaa aaaaaaa8qacqqHJoWua8aacaGLhWUaayjcSdaaaa@3BE1@  is the size of the system event set | Y | MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape WaaqWaa8aabaWdbiaadMfaaiaawEa7caGLiWoaaaa@3B4B@ , is the size of the plant state set, and | X | MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape WaaqWaa8aabaWdbiaadIfaaiaawEa7caGLiWoaaaa@3B4A@  is the size of the supervisor state set. In the analysis that follows, | Y tΔF | MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape WaaqWaa8aabaWdbiaadMfapaWaaSbaaSqaa8qacaWG0bGaaeiLdiaa dAeaa8aabeaaaOWdbiaawEa7caGLiWoaaaa@3E9D@ is the size of the state set for Y tΔF MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaaGPaVlaadMfadaWgaaWcbaacbaGaa8hDaiaa=r5acaWFgbaabeaa aaa@3C9E@  (constructed by Algorithm 1).

Examining untimed and timed controllability algorithms, (see Rudie15 and Alsuwaidan23) it’s easy to see they differ in the constant number of operations they each perform per transition that leaves each reachable state of the closed-loop system. As such, timed controllability also has complexity O( | Σ || Y ||X| ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaam4ta8aadaqadaqaamaaemaabaWdbiabfo6atbWdaiaawEa7caGL iWoadaabdaqaa8qacaWGzbaapaGaay5bSlaawIa7aiaacYhapeGaam iwa8aacaGG8baacaGLOaGaayzkaaaaaa@4578@ .

Timed FT controllability algorithm

In Algorithm 3, we replace our plant DES by G'G|| G tΔF MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa83raiaabEcacqGHqgcRcaWFhbGaaiiFaiaacYhacaWFhbWa aSbaaSqaaiaa=rhacaWFuoGaa8Nraaqabaaaaa@4120@ . This gives us a worst case state space of | Y  || Y tΔF |  MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaaemaabaaeaa aaaaaaa8qacaWGzbGaaeiiaaWdaiaawEa7caGLiWoadaabdaqaa8qa caWGzbWdamaaBaaaleaapeGaamiDaiaabs5acaWGgbaapaqabaaaki aawEa7caGLiWoapeGaaeiiaaaa@43E3@  for G' MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa83raiaabEcaaaa@38A7@ . Substituting this into our base algorithm’s complexity for the size of our plant’s state set gives O( | Σ || Y  || Y tΔF   ||X| ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaam4ta8aadaqadaqaamaaemaabaWdbiabfo6atbWdaiaawEa7caGL iWoadaabdaqaa8qacaWGzbGaaeiiaaWdaiaawEa7caGLiWoadaabda qaa8qacaWGzbWdamaaBaaaleaapeGaamiDaiaabs5acaWGgbaapaqa baGcpeGaaeiiaaWdaiaawEa7caGLiWoacaGG8bWdbiaadIfapaGaai iFaaGaayjkaiaawMcaaaaa@4E2F@ . As | Y tΔF |=1 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaaemaabaaeaa aaaaaaa8qacaWGzbWdamaaBaaaleaapeGaamiDaiaabs5acaWGgbaa paqabaaakiaawEa7caGLiWoapeGaeyypa0JaaGymaaaa@403F@  by Algorithm 1, it follows that our complexity is O( | Σ || Y ||X| ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaam4ta8aadaqadaqaamaaemaabaWdbiabfo6atbWdaiaawEa7caGL iWoadaabdaqaa8qacaWGzbaapaGaay5bSlaawIa7aiaacYhapeGaam iwa8aacaGG8baacaGLOaGaayzkaaaaaa@4578@ which is the same as our base algorithm.

Timed one-repeatable FT controllability algorithm

The complexity of the timed one-repeatable FT controllability algorithm can be obtained from the analysis of the timed m-one-repeatable FT controllability algorithm by taking N F =| Σ F | MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamOtamaaBaaaleaacaWGgbaabeaakiabg2da98aadaabdaqaa8qa cqqHJoWudaWgaaWcbaGaamOraaqabaaak8aacaGLhWUaayjcSdaaaa@3FDB@  and m=1 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamyBaiabg2da9iaaigdaaaa@39DF@ . It thus follows that verifying timed one-repeatable FT controllability increases the complexity of verifying controllability by a factor of | Σ F |+1 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaaemaabaaeaa aaaaaaa8qacqqHJoWudaWgaaWcbaGaamOraaqabaaak8aacaGLhWUa ayjcSdWdbiabgUcaRiaaigdaaaa@3E8F@

Timed m-one-repeatable FT controllability algorithm

For Algorithm 4, we replace our plant DES by G=G| | G tΔF | | G t1RF,1 | |  . . .  | | G t1RF,m MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa83raiabgkdiIkabg2da9iaa=DeapaWaaqWaaeaadaabdaqa a8qacaWFhbWaaSbaaSqaaiaadshacqqHuoarcaWGgbaabeaaaOWdai aawEa7caGLiWoaaiaawEa7caGLiWoapeGaa83ramaaBaaaleaacaWG 0bGaaGymaiaadkfacaWGgbGaaiilaiaaigdaaeqaaOWdamaaemaaba WaaqWaaeaapeGaaeiiaiaac6cacaqGGaGaaiOlaiaabccacaGGUaGa aeiiaaWdaiaawEa7caGLiWoaaiaawEa7caGLiWoapeGaa83ramaaBa aaleaacaWG0bGaaGymaiaadkfacaWGgbGaaiilaiaad2gaaeqaaaaa @5CC4@ .This gives us a worst case state space of | Y || Y tΔF || Y t1RF,1 | . . . | Y t1RF,m | MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaaemaabaaeaa aaaaaaa8qacaWGzbaapaGaay5bSlaawIa7amaaemaabaWdbiaadMfa daWgaaWcbaGaamiDaiabfs5aejaadAeaaeqaaaGcpaGaay5bSlaawI a7amaaemaabaWdbiaadMfadaWgaaWcbaGaamiDaiaaigdacaWGsbGa amOraiaacYcacaaIXaaabeaaaOWdaiaawEa7caGLiWoapeGaaeiiai aac6cacaqGGaGaaiOlaiaabccacaGGUaGaaeiia8aadaabdaqaa8qa caWGzbWaaSbaaSqaaiaadshacaaIXaGaamOuaiaadAeacaGGSaGaam yBaaqabaaak8aacaGLhWUaayjcSdaaaa@59DE@  for G' MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa83raiaabEcaaaa@38A7@ , where | Y t1RF,i | MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaaemaabaacba aeaaaaaaaaa8qacaWFzbWaaSbaaSqaaiaadshacaaIXaGaamOuaiaa dAeacaGGSaGaamyAaaqabaaak8aacaGLhWUaayjcSdaaaa@406A@  is the size of the state set for G t1RF,i MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaam4ra8aadaWgaaWcbaWdbiaadshacaaIXaGaamOuaiaadAeacaGG SaGaamyAaaWdaeqaaaaa@3D46@ ( i=1,,m ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape WaaeWaa8aabaWdbiaadMgacqGH9aqpcaaIXaGaaiilaiabgAci8kaa cYcacaWGTbaacaGLOaGaayzkaaaaaa@3F63@ , which is constructed by Algorithm 2 . Substituting this into our base algorithm’s complexity gives

O( | Σ || Y || Y tΔF   || Y t1RF,1 | . . . | Y t1RF,m ||X| ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaam4ta8aadaqadaqaamaaemaabaWdbiabfo6atbWdaiaawEa7caGL iWoadaabdaqaa8qacaWGzbaapaGaay5bSlaawIa7amaaemaabaWdbi aadMfadaWgaaWcbaacbaGaa8hDaiaa=r5acaWFgbaabeaakiaabcca a8aacaGLhWUaayjcSdWaaqWaaeaapeGaamywamaaBaaaleaacaWF0b Gaa8xmaiaa=jfacaWFgbGaa8hlaiaa=fdaaeqaaaGcpaGaay5bSlaa wIa7a8qacaqGGaGaaiOlaiaabccacaGGUaGaaeiiaiaac6cacaqGGa WdamaaemaabaWdbiaadMfadaWgaaWcbaGaa8hDaiaa=fdacaWFsbGa a8Nraiaa=XcacaWFTbaabeaaaOWdaiaawEa7caGLiWoacaGG8bGaam iwaiaacYhaaiaawIcacaGLPaaaaaa@6415@ .

We note that | Y ΔF   |=1 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaaemaabaaeaa aaaaaaa8qacaWGzbWaaSbaaSqaaiabfs5aejaadAeaaeqaaOGaaeii aaWdaiaawEa7caGLiWoapeGaeyypa0JaaGymaaaa@4016@  by Algorithm 1, and | Y t1RF,i |=| Σ Fi   |+1 (i= 1, . . . , m) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaaemaabaacba aeaaaaaaaaa8qacaWFzbWaaSbaaSqaaiaadshacaaIXaGaamOuaiaa dAeacaGGSaGaamyAaaqabaaak8aacaGLhWUaayjcSdWdbiabg2da98 aadaabdaqaa8qacqqHJoWudaWgaaWcbaGaamOraiaadMgaaeqaaOGa aeiiaaWdaiaawEa7caGLiWoapeGaey4kaSIaaGymaiaabccapaGaai ika8qacaWGPbGaeyypa0JaaeiiaiaaigdacaGGSaGaaeiiaiaac6ca caqGGaGaaiOlaiaabccacaGGUaGaaeiiaiaacYcacaqGGaGaamyBai aacMcaaaa@5797@ by Algorithm 2. If we take N F MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamOta8aadaWgaaWcbaWdbiaadAeaa8aabeaaaaa@3924@  as an upper bound of all | Σ Fi | MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaaemaabaaeaa aaaaaaa8qacqqHJoWudaWgaaWcbaGaamOraiaadMgaaeqaaaGcpaGa ay5bSlaawIa7aaaa@3DD0@ , we get O( ( NF 1 )m| Σ || Y ||X| ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaam4ta8aadaqadaqaamaabmaabaWdbiaad6eacaWGgbGaaeiiaiaa igdaa8aacaGLOaGaayzkaaWdbiaad2gapaWaaqWaaeaapeGaeu4Odm fapaGaay5bSlaawIa7amaaemaabaWdbiaadMfaa8aacaGLhWUaayjc SdGaaiiFa8qacaWGybWdaiaacYhaaiaawIcacaGLPaaaaaa@4B2D@ . It thus follows that verifying timed m-one-repeatable FT controllability increases the complexity of verifying controllability by a factor of ( N F +1) m MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaaiikaiaad6eapaWaaSbaaSqaa8qacaWGgbaapaqabaGcpeGaey4k aSIaaGymaiaacMcapaWaaWbaaSqabeaapeGaamyBaaaaaaa@3D72@ .

Algorithm correctness

In this section, we introduce several propositions and theorems that show that the algorithms introduced in Section 5 correctly verify that a TFT consistent system satisfies the corresponding timed fault-tolerant controllability properties from Section 4.

Timed fault-tolerant propositions

The propositions in this section will be used to support the timed fault-tolerant controllability theorems in Section 6.2. Timed fault-tolerant controllability definitions are essentially controllability definitions with the added restriction that a string s is only tested if it is satisfies the appropriate timed fault-tolerant property from Section 4.

The timed fault-tolerant controllability verification algorithms are intended to replace the original plant with a new plant G' MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaam4raiaacEcaaaa@38A3@ , such that G' MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaam4raiaacEcaaaa@38A3@ is restricted to strings with the desired property. Propositions 1-2 essentially assert that string  belongs to the closed behaviour of G' MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaam4raiaacEcaaaa@38A3@ , if and only if  satisfies the appropriate timed fault-tolerant controllable property from Section 4 (i.e. the string belongs to the desired scenario).

The first proposition asserts that string  belongs to the closed behaviour of G' MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaam4raiaacEcaaaa@38A3@ , if and only if  satisfies the needed pre-requisite for the timed fault-tolerant controllable property.

Proposition 1  Let system with supervisor S = ( X, Σ, ξ,  x o ,  X m ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa83uaiaabccacqGH9aqpcaqGGaWdamaabmaabaWdbiaadIfa caGGSaGaaeiiaiabfo6atjaacYcacaqGGaGaeqOVdGNaaiilaiaabc cacaWG4bWaaSbaaSqaaiaad+gaaeqaaOGaaiilaiaabccacaWGybWa aSbaaSqaaiaad2gaaeqaaaGcpaGaayjkaiaawMcaaaaa@49A8@  and plant G = ( Y, Σ, δ,  y o ,  Y m ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa83raiaabccacqGH9aqpcaqGGaWdamaabmaabaWdbiaadMfa caGGSaGaaeiiaiabfo6atjaacYcacaqGGaGaeqiTdqMaaiilaiaabc cacaWG5bWaaSbaaSqaaiaad+gaaeqaaOGaaiilaiaabccacaWGzbWa aSbaaSqaaiaad2gaaeqaaaGcpaGaayjkaiaawMcaaaaa@4981@  be TFT consistent, and let G' MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa83raiaabEcaaaa@38A7@ be the plant constructed in Algorithm 3. Then:

( sL( G ) )s L ΔF s L( G ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaabmaabaaeaa aaaaaaa8qacqGHaiIicaWGZbGaeyicI4Saamita8aadaqadaqaa8qa caWGhbaapaGaayjkaiaawMcaaaGaayjkaiaawMcaa8qacaWGZbGaey ycI8SaamitamaaBaaaleaacqqHuoarcaWGgbaabeaakiabgsDiBlaa dohacqGHiiIZcaqGGaGaamita8aadaqadaqaa8qacaWGhbGaeyOmGi kapaGaayjkaiaawMcaaaaa@4F6A@  

Proof. See Appendix.

The next proposition asserts that string S belongs to the closed behaviour of G' MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaam4raiaacEcaaaa@38A3@ , if and only if S satisfies the needed pre-requisite for the timed m-one-repeatable fault-tolerant controllable property.

 

Proposition 2  Let system with supervisor S = ( X, Σ, η,  x o ,  X m ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa83uaiaabccacqGH9aqpcaqGGaWdamaabmaabaWdbiaadIfa caGGSaGaaeiiaiabfo6atjaacYcacaqGGaGaeq4TdGMaaiilaiaabc cacaWG4bWaaSbaaSqaaiaad+gaaeqaaOGaaiilaiaabccacaWGybWa aSbaaSqaaiaad2gaaeqaaaGcpaGaayjkaiaawMcaaaaa@4991@ and plant G=( Y, Σ, δ,  y o ,  Y m ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaam4raiabg2da98aadaqadaqaa8qacaWGzbGaaiilaiaabccacqqH JoWucaGGSaGaaeiiaiabes7aKjaacYcacaqGGaGaamyEamaaBaaale aacaWGVbaabeaakiaacYcacaqGGaGaamywamaaBaaaleaacaWGTbaa beaaaOWdaiaawIcacaGLPaaaaaa@4836@ be TFT consistent, and let G' MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaam4raiaacEcaaaa@38A3@ be the plant constructed in Algorithm 4. Then:

( sL( G ) )( s L ΔF )( s L 1RFm )sL( G ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaabmaabaaeaa aaaaaaa8qacqGHaiIicaWGZbGaeyicI4Saamita8aadaqadaqaa8qa caWGhbaapaGaayjkaiaawMcaaaGaayjkaiaawMcaamaabmaabaWdbi aadohacqGHjiYZcaWGmbWaaSbaaSqaaiabfs5aejaadAeaaeqaaaGc paGaayjkaiaawMcaa8qacqGHNis2paWaaeWaaeaapeGaam4CaiabgI GiolaadYeadaWgaaWcbaGaaGymaiaadkfacaWGgbGaamyBaaqabaaa k8aacaGLOaGaayzkaaWdbiabgsDiBlaadohacqGHiiIZcaWGmbWdam aabmaabaWdbiaadEeacqGHYaIOa8aacaGLOaGaayzkaaaaaa@5AB6@  

Proof. See Appendix.

Timed fault-tolerant controllable theorems

In this section we present theorems that show the timed fault-tolerant controllable algorithms in Section 5 will return  true if and only if the timed fault-tolerant consistent system satisfies the corresponding timed fault-tolerant controllability property. Due to space limitations, we will not present results for the timed one-repeatable fault-tolerant controllability and nonblocking properties as they can be handled as a special case ( m=1 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamyBaiabg2da9iaaigdaaaa@39DF@ ) of the timed m-one-repeatable fault-tolerant properties. Please refer to Mulahuwaish3 for details.

Theorem 1 states that verifying that our system is timed fault-tolerant controllable is equivalent to verifying that our supervisor is controllable for the plant G' MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaam4raiaabEcaaaa@38A2@  constructed by Algorithm 3. We will only give the proof for Theorem 2 as it is very similar, but more complicated.

Theorem 1

Let system with supervisor S = ( X, Σ, ξ,  x o ,  X m ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa83uaiaabccacqGH9aqpcaqGGaWdamaabmaabaWdbiaadIfa caGGSaGaaeiiaiabfo6atjaacYcacaqGGaGaeqOVdGNaaiilaiaabc cacaWG4bWaaSbaaSqaaiaad+gaaeqaaOGaaiilaiaabccacaWGybWa aSbaaSqaaiaad2gaaeqaaaGcpaGaayjkaiaawMcaaaaa@49A8@ and plant G = ( Y, Σ, δ,  y o ,  Y m ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa83raiaabccacqGH9aqpcaqGGaWdamaabmaabaWdbiaadMfa caGGSaGaaeiiaiabfo6atjaacYcacaqGGaGaeqiTdqMaaiilaiaabc cacaWG5bWaaSbaaSqaaiaad+gaaeqaaOGaaiilaiaabccacaWGzbWa aSbaaSqaaiaad2gaaeqaaaGcpaGaayjkaiaawMcaaaaa@4981@ be TFT consistent, and let G' MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa83raiaabEcaaaa@38A7@ be the plant constructed in Algorithm 3. Then is timed fault-tolerant controllable for iff is controllable for G' MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa83raiaabEcaaaa@38A7@ .

Proof. See Alsuwaidan.23

Theorem 2 states that verifying that our system is timed m-one-repeatable fault-tolerant controllable is equivalent to verifying that our supervisor is controllable for the plant G' MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa83raiaabEcaaaa@38A7@ constructed by Algorithm 4.

Theorem 2  Let system with supervisor S = ( X, Σ, ξ,  x o ,  X m ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa83uaiaabccacqGH9aqpcaqGGaWdamaabmaabaWdbiaadIfa caGGSaGaaeiiaiabfo6atjaacYcacaqGGaGaeqOVdGNaaiilaiaabc cacaWG4bWaaSbaaSqaaiaad+gaaeqaaOGaaiilaiaabccacaWGybWa aSbaaSqaaiaad2gaaeqaaaGcpaGaayjkaiaawMcaaaaa@49A8@ and plant G = ( Y, Σ, δ,  y o ,  Y m ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa83raiaabccacqGH9aqpcaqGGaWdamaabmaabaWdbiaadMfa caGGSaGaaeiiaiabfo6atjaacYcacaqGGaGaeqiTdqMaaiilaiaabc cacaWG5bWaaSbaaSqaaiaad+gaaeqaaOGaaiilaiaabccacaWGzbWa aSbaaSqaaiaad2gaaeqaaaGcpaGaayjkaiaawMcaaaaa@4981@ be TFT consistent, and let G' MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa83raiaabEcaaaa@38A7@ be the plant constructed in Algorithm 4. Then  is timed m-one repeatable fault-tolerant controllable for G iff is controllable for G' MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaGqaaabaaaaaaa aapeGaa83raiaabEcaaaa@38A7@ .

Proof. See Appendix.

Manufacturing example

This example is based on the small example from Mulahuwaish,2,3 which in turn was based on the system described in Leduc.32 The testbed was designed to simulate a manufacturing workcell using model train equipment, in particular problems of routing and collision. We will discuss a single-loop version of the example, as shown in Figure 2. This example consists of eight sensors and two trains ( train 1,  train 2). Train 1 starts between sensors 9 and 10, while train 2 starts between sensors 15 and 16. Both trains can only traverse the tracks in a counter-clockwise direction.

This example builds upon the illustrative example that we introduced in Section 1.1, providing the remaining plant models for the example, as well as the details of how we applied our timed fault-tolerant approach to the example. We recommend that you reread Section 1.1 to refresh your memory of the details presented there, as they will not be repeated below.

Plant models

The plant models, for the portion of the testbed we are currently considering, consists of the following basic elements: sensors, trains and the relationship between sensors and trains.

 Sensor Models

 In Section 1.1, we introduced the eight TDES plant models for our eight sensors. We first presented the original sensor models (without fault events added) in Figure 3. We then presented new models, for sensors J{ 9,10,16 } MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamOsaiabgIGiopaacmaapaqaa8qacaaI5aGaaiilaiaaigdacaaI WaGaaiilaiaaigdacaaI2aaacaGL7bGaayzFaaaaaa@40E2@ , with the added fault events. For this example, we will use the original models for sensors J{ 11,,15 } MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamOsaiabgIGiopaacmaapaqaa8qacaaIXaGaaGymaiaacYcacqGH MacVcaGGSaGaaGymaiaaiwdaaiaawUhacaGL9baaaaa@41AD@ , and the new models for sensors J{ 9,10,16 } MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamOsaiabgIGiopaacmaapaqaa8qacaaI5aGaaiilaiaaigdacaaI WaGaaiilaiaaigdacaaI2aaacaGL7bGaayzFaaaaaa@40E2@ as we are assuming that only these sensors have faults. This restriction is done to simplify the example and make it easier to illustrate our approach.

We now need to define our fault and reset event sets for the example. We set Σ ΔF = Σ F = 0 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaGqaaiaa=r5acaWFgbaabeaakiabg2da9iab fo6atnaaBaaaleaatCvAUfeBSn0BKvguHDwzZbqeg0uySDwDUbYrVr hAPngaiuaacaGFMeIaamOraaqabaGccqGH9aqpceaIWaGbaybaaaa@4BC8@  as our example does not require any fault events of this type. We also set m=4, Σ F1 ={ t1F_at9, t1F_at10 } MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadAeacaaIXaaabeaakiabg2da98aadaGa daqaa8qacaWG0bacbiGaa8xmaiaadAeacaGGFbGaamyyaiaadshaca aI5aGaaiilaiaabccacaWG0bGaa8xmaiaadAeacaGGFbGaamyyaiaa dshacaWFXaGaa8hmaaWdaiaawUhacaGL9baaaaa@4BC5@ , Σ F2 ={ t1F_at16 } MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadAeacaaIYaaabeaakiabg2da98aadaGa daqaa8qacaWG0bacbiGaa8xmaiaadAeacaGGFbGaamyyaiaadshaca WFXaGaa8NnaaWdaiaawUhacaGL9baaaaa@447E@ , Σ F3  = { t2F_at9, t2F_at10 } MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadAeacaaIZaaabeaakiaabccacqGH9aqp caqGGaWdamaacmaabaWdbiaadshaieGacaWFYaGaamOraiaac+faca WGHbGaamiDaiaa=LdacaGGSaGaaeiiaiaadshacaWFYaGaamOraiaa c+facaWGHbGaamiDaiaa=fdacaWFWaaapaGaay5Eaiaaw2haaaaa@4D06@ , Σ F4  = { t2F_at16 } MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadAeacaaI0aaabeaakiaabccacqGH9aqp caqGGaWdamaacmaabaWdbiaadshaieGacaWFYaGaamOraiaac+faca WGHbGaamiDaiaa=fdacaWF2aaapaGaay5Eaiaaw2haaaaa@45C7@ . We group our fault events in this manner as sensors 9 and 10 are both relevant to preventing a train from entering the track segment delineated by sensors 11 and 13, while sensor 16 is not. Also, the faults in detecting one train, are not relevant to the faults in detecting the other train, for our example.

Finally, we define our corresponding reset event sets as follows: Σ T1  = { t1_at11 } MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadsfacaaIXaaabeaakiaabccacqGH9aqp caqGGaWdamaacmaabaWdbiaadshaieGacaWFXaGaai4xaiaadggaca WG0bGaa8xmaiaa=fdaa8aacaGL7bGaayzFaaaaaa@4501@ , Σ T2  = { t1_at14 } MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadsfacaaIYaaabeaakiaabccacqGH9aqp caqGGaWdamaacmaabaWdbiaadshaieGacaWFXaGaai4xaiaadggaca WG0bGaa8xmaKqzGeGaa8hnaaGcpaGaay5Eaiaaw2haaaaa@459E@ , Σ T3  = { t2_at11 } MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadsfacaaIZaaabeaakiaabccacqGH9aqp caqGGaWdamaacmaabaWdbiaadshaieGacaWFYaGaa83xaiaadggaca WG0bGaa8xmaiaa=fdaa8aacaGL7bGaayzFaaaaaa@4501@ , and Σ T4  = { t2_at14 } MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaeu4Odm1aaSbaaSqaaiaadsfacaaI0aaabeaakiaabccacqGH9aqp caqGGaWdamaacmaabaWdbiaadshaieGacaWFYaGaai4xaiaadggaca WG0bGaa8xmaKqzGeGaa8hnaaGcpaGaay5Eaiaaw2haaaaa@45A1@ . These are chosen as they represent the given train reaching a section of track past the sensors associated with the given fault set.

Train models

The train models are shown in Figure 9 for train K ( K=1,2 ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape WaaeWaa8aabaWdbiaadUeacqGH9aqpcaaIXaGaaiilaiaaikdaaiaa wIcacaGLPaaaaaa@3CD1@ . Train K can only move when its enablement event  en_trainK occurs, and then it can move at most a single unit of distance (event  umv_trainK), before another  en_trainK must occur. This allows a supervisor to precisely control the movement of the train by enabling and disabling event en_trainK as needed.

Figure 9 N=57; Epidemiological distribution of the pathological fractures, traumatic fractures, and nonunion.

 

Relationship between sensors and trains models

Figure 10 shows the relationship between train K’s ( K=1,2 ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape WaaeWaa8aabaWdbiaadUeacqGH9aqpcaaIXaGaaiilaiaaikdaaiaa wIcacaGLPaaaaaa@3CD1@ movement, and a sensor detecting the train. It captures the idea that a train can reach at most one sensor during a unit movement, and no sensors if it is disabled, also Figure 10 shows the replacement model, one for each train, with fault events added. We now seen that our plant model contains 14 DES in total.

Figure 10 N=57; Epidemiological distribution of the pathological fractures, traumatic fractures, and nonunion.

Adding forcing

To extend Alsuwaidan’s example, we have added forcing for events en_trainK ( K=1,2 ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape WaaeWaa8aabaWdbiaadUeacqGH9aqpcaaIXaGaaiilaiaaikdaaiaa wIcacaGLPaaaaaa@3CD1@ . However, this is not straightforward to do in a modular way as these events are not always possible in the plant. Also, multiple supervisors will need to enable and force these events. If a supervisor tries to force the event when either it isn’t possible in the plant or disabled by another supervisor, the result could be uncontrollable.

To handle this problem, we have introduced two new controllable events forceT1 and forceT2, shown in Figures 11 and 12. Now, the collision protection supervisors in Section 7.2 will disable these events instead of en_trainK events, to signal when the train is allowed to move or not. We note that as these events are added as part of the supervisor’s implementation, they are assumed to occur very quickly after they are enabled.

Figure 11 N=57; Epidemiological distribution of the pathological fractures, traumatic fractures, and nonunion.

Figure 12 N=57; Epidemiological distribution of the pathological fractures, traumatic fractures, and nonunion.

We now need to add supervisors to force the en_trainK events to occur right away, as long as they are eligible and not disabled. This is accomplished by the doForceTK supervisors, shown in Figures 13 and 14. These supervisors handle the forcing by first waiting until the en_trainK event is possible in the plant, and then waiting for the forceTK event to occur. Once forceTK occurs, the tick event is disabled until the en_trainK event has occurred, forcing the event. The forceTK event is required to coordinate with the collision protection supervisors so that doForceTk doesn’t try to force the en_trainK event when it has been disabled, which would have caused the supervisor to be uncontrollable.

Figure 13 N=57; Epidemiological distribution of the pathological fractures, traumatic fractures, and nonunion.

Figure 14 N=57; Epidemiological distribution of the pathological fractures, traumatic fractures, and nonunion.

Modular supervisors

After the plant models were developed, four supervisors were designed to prevent collisions in the track sections with sensors 11-13, 15-16, 12-14, and 9-10. The idea is to ensure that only one train uses this track section at a time.

Below we present two versions of the collision protection supervisors. The first version is based upon the original collision protection supervisors from Leduc11 which were designed with the assumption that the system did not contain faults. The second version is a new fault-tolerant version with added redundancy.

Collision protection supervisors                                                                                                                                                      

Figure 15 shows the fault-tolerant collision protection supervisor (CPS-11-13FT) for the track section containing sensors 11 and 13. The original version (CPS-11-13) is identical except that the t1_at9 and the t2_at9 transitions are not present. Once a train has reached sensor 11, the other train is stopped at sensor 10 until the first train reaches sensor 15, which indicates it has left the protected area. The stopped train is then allowed to continue. Figures 17, and  show similar fault-tolerant supervisors for two of the remaining track sections. Again, the original version is identical except that the t1_at9 and the t2_at9 transitions are not present.

Figure 15 N=57; Epidemiological distribution of the pathological fractures, traumatic fractures, and nonunion.

Figure 16, shows the final collision protection supervisor. It is unchanged as it does not depend on the sensors with faults. We also note that supervisors CPS-15-16 and CPS-9-10 have nonstandard initial states in order to reflect the starting locations of the two trains.

Figure 16 N=57; Epidemiological distribution of the pathological fractures, traumatic fractures, and nonunion.

Figure 17 N=57; Epidemiological distribution of the pathological fractures, traumatic fractures, and nonunion.

It’s easy to see that the original supervisor CPS-11-13 will not be fault-tolerant as it relies solely on sensor 10 to detect when a second train arrives. If sensor 10 fails, the train continues and could collide with the first train. Supervisors CPS-9-10 and CPS-12-14 will also not be fault-tolerant because of sensor 10. A failure at sensor 10 could cause supervisor CPS-9-10 to miss a train entering the protected zone, and could cause supervisor CPS-12-14 to miss a train leaving the protected zone.

Fault-tolerant collision protection supervisors

We next modified supervisor CPS-11-13 to make it more fault-tolerant. The result is shown in Figure 15. We have added at states 1 and 4 a check for both sensor 9 or sensor 10. That way if sensor 10 fails but sensor 9 doesn’t, we can still stop the train at sensor 9 and avoid the collision. We made similar changes to supervisors CPS-12-14, and CPS-9-10, as shown in Figures 17, and 18.

Figure 18 N=57; Epidemiological distribution of the pathological fractures, traumatic fractures, and nonunion.

Discussion of results

Using our software research tool, DESpot,32 we were able to determine that the system is timed one-repeatable FT controllable, and timed m-one-repeatable FT controllable. We also not that the system failed the FT controllable and nonblocking properties as expected, since they would allow the fault events to occur unrestricted. Table 1 shows the test results, system state sizes, and runtime for these tests. Runtime data is from DESpot’s binary decision diagram-based (BDD)25­–30 algorithms as the timed m-one-repeatable fault-tolerant statesize was too large for the automata-based algorithms.

We next examine the state sizes of each evaluated system, which includes the plant components added as part of the verification process. We first note that for our example, we have m=4 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamyBaiabg2da9iaaisdaaaa@39E2@ , | Σ F |=35 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaaemaabaaeaa aaaaaaa8qacqqHJoWudaWgaaWcbaGaamOraaqabaaak8aacaGLhWUa ayjcSdWdbiabg2da9iaaiodacaaI1aaaaa@3F74@ , N F =2 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape GaamOta8aadaWgaaWcbaWdbiaadAeaa8aabeaak8qacqGH9aqpcaaI Yaaaaa@3B00@ , and a base-system state size of 10,502,000. From Section 5.3, we expect that (worst case) the one-repeatable FT and m-one-repeatable FT algorithms would multiply our base-system state size by factors of | Σ F |+1=36 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaaemaabaaeaa aaaaaaa8qacqqHJoWudaWgaaWcbaGaamOraaqabaaak8aacaGLhWUa ayjcSdWdbiabgUcaRiaaigdacqGH9aqpcaaIZaGaaGOnaaaa@4112@ and ( N F +1) m = 3 4 =81 MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaaiikaiaad6eapaWaaSbaaSqaa8qacaWGgbaapaqabaGcpeGaey4k aSIaaGymaiaacMcapaWaaWbaaSqabeaapeGaamyBaaaakiabg2da9i aaiodapaWaaWbaaSqabeaapeGaaGinaaaakiabg2da9iaaiIdacaaI Xaaaaa@42D6@ , respectively.

Examining Table 1, we see that these two algorithms actually contribute multiplying factors of 4.75, and 25.82, respectively. We see immediately that the actual increase in complexity for this example is much less than expected, in particular for the one-repeatable FT algorithms.

 

 

 Verification Time (seconds)

  Property

  State Size

  Timed Cont.

  Nonblocking

  Timed fault-tolerant

10,502,000

    0        F

0            F

   

 

 

 Timed one-repeatable fault-tolerant

49,933,600

    0        P

 1            P

   

 

 

 Timed m-one-repeatable fault-tolerant

271,118,000

     0       P

 1            P

Table 1 Example results

Conclusions and future work

In this paper we investigated the problem of fault-tolerance (FT) for timed discreteevent systems. We extended the existing fault-tolerant supervisory control approach of Mulahuwaish1–4 to include timing information. We introduced our setting and providing different fault scenarios. We then provide three timed fault-tolerant definitions to verify that the system will remain controllable in each scenario.

This approach is different from the typical fault-tolerant methodology as the approach does not rely on detecting faults and switching to a new supervisor; it requires a supervisor to work correctly under normal and fault conditions. This is a passive approach that relies upon inherent redundancy in the system being controlled.

Our approach provides an easy method for users to add fault events to a system model and is based on user designed supervisors and verification. As synthesis algorithms have higher complexity than verification algorithms, our approach should be applicable to larger systems than existing active fault-recovery methods that are synthesis based. Also, modular supervisors are typically easier to understand and implement than the results of synthesis.

Finally, our approach does not require expensive (in terms of algorithm complexity) fault diagnosers to work. Diagnosers are, however, required by existing methods to know when to switch to a recovery supervisor. As a result, the response time of diagnosers is not an issue for us. Our supervisors are designed to handle the original and the faulted system. However, the tradeoff is that our approach may result in an overly cautious supervisor.

We then present a set of algorithms to verify timed controllability for each scenario. We then proved that the algorithms correctly evaluated the timed fault-tolerant controllability properties that we introduced. They can instantly take advantage of existing controllability and nonblocking software, as well as scalability approaches such as incremental verification and binary decision diagrams (BDD).

We then present a set of algorithms to verify the timed fault-tolerant properties. As these algorithms involve adding new plant components and then checking standard timed controllability, they can instantly take advantage of existing controllability software, as well as scalability approaches such as incremental verification and binary decision diagrams (BDD).

For each algorithm, we provide a complexity analysis showing that the TFT algorithms multiply the complexity of the standard algorithms by a factor of (1), ( | Σ F |+1 ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaabmaabaWaaq WaaeaaqaaaaaaaaaWdbiabfo6atnaaBaaaleaacaWGgbaabeaaaOWd aiaawEa7caGLiWoapeGaey4kaSIaaGymaaWdaiaawIcacaGLPaaaaa a@4027@ , and ( N F +1) m MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaaabaaaaaaaaape Gaaiikaiaad6eapaWaaSbaaSqaa8qacaWGgbaapaqabaGcpeGaey4k aSIaaGymaiaacMcapaWaaWbaaSqabeaapeGaamyBaaaaaaa@3D72@  where m is the number of fault sets, | Σ F | MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaaemaabaaeaa aaaaaaa8qacqqHJoWudaWgaaWcbaGaamOraaqabaaak8aacaGLhWUa ayjcSdaaaa@3CE2@ is the number of fault events, and  is an upper bound of all | Σ Fi | ( i = 1, . . . , m ) MathType@MTEF@5@5@+= feaagKart1ev2aaatCvAUfeBSjuyZL2yd9gzLbvyNv2CaerbuLwBLn hiov2DGi1BTfMBaeXatLxBI9gBaerbd9wDYLwzYbItLDharqqtubsr 4rNCHbGeaGqkY=Mj0xXdbba91rFfpec8Eeeu0xXdbba9frFj0=OqFf ea0dXdd9vqaq=JfrVkFHe9pgea0dXdar=Jb9hs0dXdbPYxe9vr0=vr 0=vqpWqaaeaabiGaaiaacaqabeaadaqaaqaaaOqaamaaemaabaaeaa aaaaaaa8qacqqHJoWudaWgaaWcbaGaamOraiaadMgaaeqaaaGcpaGa ay5bSlaawIa7a8qacaqGGaWdamaabmaabaWdbiaadMgacaqGGaGaey ypa0JaaeiiaiaaigdacaGGSaGaaeiiaiaac6cacaqGGaGaaiOlaiaa bccacaGGUaGaaeiiaiaacYcacaqGGaGaamyBaaWdaiaawIcacaGLPa aaaaa@4BC6@ . We then prove the correctness of the algorithms.

We finish with a small manufacturing example that illustrates how the theory can be applied.

For future work, it would be useful to extend a timed fault-tolerant method to the sampled-data setting32 in order to address concurrency and implementation issues. We would also like to extend the approach to the hierarchical interface-based supervisory control (HISC).33–36 The information hiding and encapsulation properties of HISC should allow us to scale our approach up to handle much larger systems.

Acknowledgments

None.

Conflicts of interest

Authors declare that there is no conflict of interest.

References

  1. Mulahuwaish A. Fault-tolerant supervisory control. PhD. thesis, Department of Computing and Software, McMaster University, 2019.
  2. Mulahuwaish A, Leduc RJ. Fault-tolerant supervisory control with permanent faults. Int J Control. 2020;96(4):823–839.
  3. Mulahuwaish A, Radel S, Dierikx O, et al. Fault tolerant supervisory control. IFAC-PapersOnLine. 2021;48(7):124–131.
  4. Radel S, Mulahuwaish A, Leduc R. Fault tolerant controllability. American control conference, Chicago: USA. 2015
  5. Ramadge P, Wonham WM. Supervisory control of a class of discrete-event processes. SIAM J Control Optim. 1987;25(1):206–230.
  6. Wonham WM, Cai K. Supervisory Control of Discrete-Event Systems. Springer; 2019.
  7. Wonham, WM, Ramadge P. On the supremal controllable sublanguage of given language. SIAM J Control Optim. 1987;25(3):637–659
  8. Brandin B, Wonham W. The supervisory control of timed discrete-event systems. in decision and control. In: Proceedings of the 31st IEEE Conference on. 1992;4:3357–3362.
  9. Brandin B, Wonham WM. Supervisory control of timed discrete-event systems. IFAC-PapersOnLine. 1994;39(2):329–342.
  10. Brandin BA. Real-time supervisory control of automated manufacturing systems. Ph.D. thesis, Department of Electrical Engineering, University of Toronto. 1993. Also appears as Systems Control Group technical report # 9302, Department of Electrical Engineering, University of Toronto.
  11. Leduc R. PLC implementation of a DES supervisor for a manufacturing testbed: an implementation perspective. Master’s thesis, Dept. of Elec and Comp Eng, University of Toronto, Toronto, Ont; 1996.
  12. Bourdon S, Lawford M, Wonham W. Robust nonblocking supervisory control of discrete-event systems. IEEE Transactions on Automatic Control. 2005;50(12):2015–2021.
  13. Lin F. Robust and adaptive supervisory control of discrete event systems. IEEE Trans. Automatic Control. 1993;38(12):1848–1852.
  14. Saboori A, Zad SH. Robust nonblocking supervisory control of discrete-event systems under partial observation. Systems & Control Letters. 2006;55(10):839–848.
  15. Rudie K. Software for the control of discrete-event systems: A complexity study. Master’s thesis, Dept. of Electrical and Computer Engineering, University of Toronto, Toronto, Ont; 1988.
  16. Sampath M. Sengupta R, Lafortune S, et al. Failure diagnosis using discrete-event models. IEEE Trans Control System Technology. 1996;4(2):105–124.
  17. Wen Q, Kumar R, Huang J, et al. A framework for fault-tolerant control of discrete event systems. IEEE Trans on Automatic Control. 2008;53(8);1839–1849.
  18. Paoli A, Sartini M, Lafortune S. Active fault tolerant control of discrete event systems using online diagnostics. Automatica 2011;47(4):639–649.
  19. Park SJ, Lim JT. Fault-tolerant robust supervisor for discrete event systems with model uncertainty and its application to a workcell. IEEE Transactions on Robotics and Automation. 1999;15(2):386–391.
  20. Allahham A, Alla H. Monitoring of timed discrete events systems with interrupts. automation science and engineering. IEEE Transactions. 2010;7(1):146–150.
  21. Moosaei M, Zad S. Modular fault recovery in timed discrete-event systems: application to a manufacturing cell. In: Proceedings of 2005 IEEE Conference on Control Applications. 2005:928–933.
  22. Cassandras C, Lafortune S. Introduction to discrete event systems. 2nd edn. Springer. 2009.
  23. Alsuwaidan A. Timed fault tolerant supervisory control. Master’s thesis; Dept. of computing and software, McMaster University. 2016.
  24. Brandin BA, Malik R, Malik P. Incremental verification and synthesis of discrete-event systems guided by counter-examples. IEEE Trans. on Control Systems Technology. 2004;12(3):387–401.
  25. Bryant AE. Symbolic boolean manipulation with ordered binary-decision diagrams. ACM Computing Surveys. 1992;24:293–318.
  26. Ma C. Nonblocking supervisory control of state tree structures. PhD. thesis, Department of Electrical and Computer Engineering, University of Toronto. 2004.
  27. Song R, Ryan J  Ledu C. Symbolic synthesis and verification of hierarchical interface-based supervisory control. Master’s thesis, Dept. of Comput. and Softw., McMaster University, Hamilton,Ont;2006.
  28. Vahidi A, Lennartson B, Fabian M. Efficient analysis of large discrete-event systems with binary decision diagrams. In: Proc. of the 44th IEEE Conf. Decision Contr. and and 2005 European Contr. Conf. 2005;2751–2756.
  29. Wang YB. Eng. Sampled-data supervisory control. Master’s thesis, Dept. of Computing and Software, McMaster University, Hamilton, Ont; 2009.
  30. Zhang Z. Smart TCT: an efficient algorithm for supervisory control design. Master’s thesis, Dept. of Electrical and Computer Engineering, University of Toronto, Toronto, Ont; 2001.
  31. Leduc RJ, Wang Y, Ahmed F. Sampled-data supervisory control. Discrete Event Dynamic Systems. 2014;24(4):541–579.
  32. DESpot: DESpot project. 2013.
  33. Leduc RJ. Hierarchical interface-based supervisory control with data events. International Journal of Control. 2009;82(5):783–800.
  34. Leduc RJ, Brandin BA, Lawford M, et al. Hierarchical interface-based supervisory control, part I: Serial case. IEEE Trans. Automatic Control. 2005;50(9):1322–1335.
  35. Leduc RJ, Lawford M, Dai P. Hierarchical interface-based supervisory control of a flexible manufacturing system. IEEE Trans. on Control Systems Technology. 2006;14(4):654–668.
  36. Leduc RJ, Lawford M, Wonham WM. Hierarchical interface-based supervisory control, part II: Parallel case. IEEE Trans. Automatic Control. 2005;50(9):1336–1348.
  37. Lin F, Wonham W. On observability of discete-event systems. Inform Sci. 1988;44(3):173–198.
Creative Commons Attribution License

©2024 Mulahuwaish, et al. This is an open access article distributed under the terms of the, which permits unrestricted use, distribution, and build upon your work non-commercially.