Jozef kostoLny ApplicAtion of logicAl differentiAl cAlculus And binAry decision diAgrAmin importAnce AnAlysis

System availability evaluation includes different aspects of system behaviour and one of them is the importance analysis. This analysis supposes the estimation of system component influence to system availability. There are different mathematical approaches to the development of this analysis. The structure function based approach is one of them. In this case system is presented in form of structure function that is defined the correlation of system availability and its components states. Structure function enables one to represent mathematically a system of any complexity. But computational complexity of structure function based methods is time consuming for large-scale system. Decision of this problem for the calculation of importance measures can be realized based on application of two mathematical approaches. One of them is Direct Partial Boolean Derivative. New equations for calculating the importance measures are obtained in terms of these derivatives. Other approach is Binary Decision Diagram (BDD), which supports efficient manipulation of Boolean algebra. In this paper new algorithms for calculating of importance measures by Direct Partial Boolean Derivative based on BDD are proposed. The experimental results of comparison these algorithms with other show the efficiency of new algorithms for calculating Direct Partial Boolean Derivative and importance measures.


Introduction
A mathematical representation and description or creation of mathematical model of the initial object is an important step in reliability/availability analysis.There are some types of such mathematical models in reliability engineering.As a rule the mathematical model type is conditioned by mathematical method that is used for system availability or reliability estimates.One of mathematical model is the structure function of a system that is defined by one-to-one mapping of system state and states of the system components.The structure function can be interpreted as Boolean function if the initial system has two possible states as functioning and failure only and the system analysed in the stationary state [4,32].Therefore mathematical methods of Boolean algebra can be used for the structure function analysis and as result for estimation of system availability.There are a lot of algorithms for the calculation of special indices and measures in reliability engineering based on Boolean algebra methods.Some of them are Importance Measures (IMs).
IMs were introduced by Birnbaum in [6].These measures express the contribution of a component state to system reliability/availability.At the present time there are different types of IMS that allows investigating different aspects of the influence of appointed component state change to behaviour of system reliability or availability.Every system component has a measure of its importance to the system functioning and failure according to values of IMs, that are calculated for every component.IMs have been widely used for identifying a system's weakness and supporting system improvement activities from design perspective.With the importance values of all components, proper actions can be taken on the weakest component to improve system availability at minimal cost or effort.
Detailed analysis and comparison of IMs are presented, for example, in papers [8,13,19,25].Different mathematical approaches are used and developed for calculating IMs, some of which are Boolean methods [3,8,5], Markov model [12], minimal cuts/paths set methods [11,19], and Logical Differential Calculus [35].In this paper, we develop a method for computing IMs based on Logical Differential Calculus with the application of Binary Decision Diagram (BDD).

sciENcE aNd tEchNology
Logical Differential Calculus is a mathematical approach that permits to investigate changes in Boolean function depending on changes of its variables values [1,33].Therefore, this tool can be used to evaluate the influence of every system component state change on the system performance level [24,32,37].In this paper the Direct Partial Boolean Derivatives are used for the development of algorithms for the estimation of system availability.However, the Logical Differential Calculus methods and Direct Partial Boolean Derivatives in particular are characterized by high computational complexity that increases depending on the number of system components.In Boolean algebra there are some tools to decide this problem and one of them is BDD.A BDD is one of the more effective methods for the representation of a Boolean function of large dimensions [1].
A BDD is used not only in Boolean algebra.A BDD is widely and efficiently used in reliability analysis [14,15,16,28].Methods for transformation of a Fault Tree to the ordered BDD (OBDD) are proposed in papers [17,28].These methods permit to substantiate the correct application of OBDD in reliability analysis.The development of these methods and OBDD use for other problems in reliability analysis has been proposed in a lot of papers.For example, new algorithm for the manipulation of series and parallel systems based on BDD are investigated in [31].The paper authors [18,21,22,23] consider the OBDD application for reliability analysis of dynamic, phased-mission and networking systems.
The computation of IMs by BDD is considered in papers [8] and [14].Authors of paper [14] investigated IMs definitions in terms of OBDD.In papers [14] and [22] similar algorithms for the calculation of IM as Birnbaum Importance are proposed based on equal interpretation of this measure definition/equation.The Birnbaum Importance is calculated directly using the OBDD.But these algorithms can be used for the OBDD only.
The combination of two mathematical tools for IMs computation.In this paper we develop the results that have been considered in [31,37] for BDD.The strong evidence of Logical Differential Calculus application in importance analysis is considered in [37] and new equations for computation of the IMs as Structural Importance, Birnbaum Importance and Criticality Importance in the terms of Logical Differential Calculus have been are proposed in the paper [37].In this paper we use these equations for the development a new BDD-based approach.We compare of IMs values calculated by the new algorithms and classical definition of IMs (these definition are in [3] for Structural Importance and in [6,12] for Birnbaum Importance).New algorithms allow obtaining the IMs values that are equal with the IMs values computed by the definitions in [3,6,12].Therefore the principal step of the new approach for the calculation of IM presented in this paper is the application of Logical Differential Calculus, in particular Direct Partial Boolean Derivatives that have been considered in [1,33,37].Two algorithms for the calculation of Direct Partial Boolean Derivatives are proposed in this paper and compared with alternative algorithms.
The remainder of the work is organized as follows.Section 2 introduces concepts of the system structure function, Logical Differential Calculus and BDD.In Section 3 the calculation of IMs by Logical Differential Calculus is described.In this section the definitions of IMs in terms of Logical Differential Calculus are considered.Two algorithms for the IMs quantification based on BDD are considered in this section too.These algorithms are founded on two mathematical tools: Logical Differential Calculus and BDD.A benchmark study is presented to illustrate the proposed algorithms.

Mathematical background 2.1. The system structure function
Consider the mathematical model of the system of n components.The component state is denoted asx i (i = 1, …, n).The value x i = 1 corresponds to the operable state of the i-th component, and x i = 0, to its failure.Every system component is characterized by probabilities of its states.Theprobability of i-th component failure is: Then, the probability of operability of the i-th component is defined as: (2) Consider the system in stationary state.The system availability in stationary state is represented mathematically by the structure function [4,27]: where the vector x = (x 1 , …, x n ) is the vector of the system components states.Note, the structure function (3) can be interpreted as Boolean function.As a rule, a coherent system is investigated in reliability engineering.Such system will be considered in this paper.The structure function of a coherent system has the following assumptions [6]: The system and its components have two states: up (working) and (a) down (failed); All system components are relevant to the system; (b) The system structure function is monotone non-decreasing: The failure and repair rate of the components are constant; (d) Repaired components are as good as new.(e) Principal indices and measures of the system can be calculated based on the structure function.The one of them is the system unavailability that is the probability of the system failure [27]: and the system availability that is probability of the system functioning state: The system unavailability and availability correlate by the equation: The system unavailability (4) and availability (5) are calculated based on every system component state x i probabilities (1) and (2).For example, the structure function of the system in Fig. 1 of 4 components is defined as: ϕ (x) = AND(x 1 ,OR(x 2 , AND(x 3 , x 4 ))) = x 1 ∧(x 2 ∧ (x 3 ∧x 4 )).( 6) Fig. 1.The series-parallel system example sciENcE aNd tEchNology The system availability is calculated according to (5) taking into account the truth table of the structure function or its canonical DNF: and the system availability is calculated according to (5): A pq p p pp q q pp q p pp p q pp p p pp p p p = + + + + = + (7 The system unavailability (4) and availability (5) are important measures, but these measures don't allow to investigate all aspect of the system availability.Therefore other measures must be defined that permit to estimate of the system behavior in point of view of reliability analysis.It can be, for example, IMs or other indices.The use of these measures and indices are caused the development of special methods and algorithms for these estimations.There are different mathematical approaches that are used for development and calculation of reliability indices and measures.And one of them are based on Boolean algebra, because the structure function (3) can be interpreted as a Boolean function.Two mathematical tools will be used in this paper: BDD and Logical Differential Calculus.
A BDD is a graphical form of a Boolean function [1] that is efficiency for the representation and analysis of a Boolean function of large dimension.The second tool is the Logical Differential Calculus [2,10,33].Mathematical methods of Logical Differential Calculus permit to investigate the influence of a variable value change to the Boolean function value.In papers [24,32,37] some methods and algorithms of applying Logical Differential Calculus in reliability engineering are considered.In this case the system availability agrees with a Boolean function value and the i-th component state is interpreted as the i-th variable value.Consider these tools below.

Logical Differential Calculus in Reliability Analysis
The application of Logical Differential Calculus in reliability analysis has been considered in [24,32,37].Authors of these papers use Boolean Derivative (Boolean Difference).In this paper we propose to use other derivative that allows analysis of the influence of variable value change to a function value in more detail.It is Direct Partial Boolean Derivative.
Definition 1.The Direct Partial Boolean Derivative of the function ϕ(x) with respect to variable x i reflects the fact of changing the function from j to j when the value of variable x i changes from s to s [34]: 1 if and 0, other and ≡ is the symbol of equivalence operation.
Direct Partial Boolean Derivatives allows mathematical representationof a system fault that is caused by the i-th system component failure by derivatives 1 0 x i describe the system renewal if the i-th component repaired Direct Partial Boolean Derivative of a coherent system has the following properties for monotone function [29,37]: Because the structure function of a coherent system ϕ(x) is monotone (assumption c) we will investigate the derivatives of a system fault ∂ Therefore the denotation will be used for these derivatives below: and the Direct Partial Boolean Derivative ∂ϕ(x)/∂x i is calculated as [34,37]: Direct Partial Boolean Derivative (11) permits us to determine the boundary states of a system for which the change of the i-th component state cause the change of the system availability.Nonzero values of the derivatives indicate the system states (the vector of system components states) for which the i-th component fault causes the system failure (Fig. 2).
For example, consider the system in Fig. 1 with the structure function (6).The structure function truth table of this system and Direct Partial Boolean Derivatives with respect to variable x i (i =1, 2, 3, 4) are shown in Table 1.Note, the symbol "*" in this table marks the state vectors for which derivatives don't exist.The nonzero values of derivatives indicate the boundary states of the system.These states are defined by the vector states: Direct Partial Boolean Derivative with respect to the first variable x 1 has 5 nonzero values that indicate boundary states.In this case, astate change of the first component influences the system availability.Vector state x= (1↔0, 0, 1, 1)indicates that the first component failure causes the system failure if the second component isn't functioning and the third and forth components are working.Vector statesx = (1↔0, 1, 0, 0),x = (1↔0, 1, 0, 1), x = (1↔0, 1, 1, 0), x = (1↔0, 1, 1, 1) define the system failure for any states of the third and the forth components if the second component is functioning.Other derivatives in Table 1 have similar meanings.
The algorithms for calculating Direct Partial Boolean Derivatives have been considered in numerous papers.Trivial algorithm has been considered by Akers in [2].This result has been developed by Bochmann, Posthoff and Steinbach [7,26].In paper [30] a parallel version of these algorithms has been proposed.The calculation of Boolean Derivative (Boolean Difference) based on the BDD has been investigated in [24].However, this algorithm cannot be used for Direct

Binary Decision Diagram
Consider some background of BDD before the development of algorithm for the calculation of Direct Partial Boolean Derivatives based on BDD.
BDD is a widely used tool for reliability analysis.Some methods for reliability analysis based on this tool are discussed in papers [14,15,16].BDD is based on a disjoint decomposition of Boolean function called the Shannon expansion [14].This expansion for the structure function (3) can be defined as: In order to express Shannon decomposition concisely, the ifthen-else (ite) format [9] is defined as: A BDD is a directed acyclic graph of a Boolean function representation [9].For structure function (3), this graph has two terminal nodes, labelled 0 and 1.Each non-terminal node is labelled with a structure function variable x i and has two outgoing edges.The left edge is labelled "0" and represents the fail state of system component.The other outgoing edge is labelled "1" and represents the operational state of a system component.
Terminal nodes of the BDD correspond to the system state.Nonterminal node outgoing edges are interpreted as component states.The probabilistic interpretation of the system assumes that every edge from the node to which the variable x i is assigned with the label s i is marked by the i-th component state probability p i or q i (Fig. 3).The node in this diagram assigned with the i-th variable x i , and the outgoing edges corresponding to ϕ(1 i , x) and ϕ(0 i , x)that correspond to the Shannon decomposition (12).This equation in arithmetic form is the following: Node probability is calculated using the equation [14]: Pr ( , ) Note that the paths from the root to the terminal node in a BDD are mutually disjoint.Therefore the system availability can be calculated based on (12) and (14) for the system that is represented in form of the BDD: and conforms with the probability of the sum of paths from the root node to the terminal node "1".Rules for this calculation are presented Table 1.The structure function and Direct Boolean Derivatives of the series-parallel system (Fig. 1) in Fig. 3.The system unavailability is calculated similarly but paths from the root node to the terminal node labelled "0" are analysed in this case.For example, consider a system 2-out-of-3 with structure function (6).The system is defined by the BDD (Fig. 4).The calculation of the system availability and unavailability is implemented based on two sub-diagrams.Every diagram is the sum of paths from the BDD top to one of the terminal nodes (Fig. 5).

Fig. 3. Interpretation of component state and basic computational rules in BDD
According to the sub-diagrams in Fig. 5 the system availability and unavailability are calculated as: U = q 1 + p 1 q 2 (q 3 + p 3 q 4 ).
The system availability ( 16) is equal to the system availability (7) that was defined according to typical rules.Therefore, BDD can be used for the calculation of the system's availability and unavailability.

Importance Analysis
System's unavailability (4) and availability (5) are widely used measures in reliability engineering, but these measures do not enable the analysis of a change of the system availability depending on a change of the component states.There are measures for estimating the influence of component states' changes on system availability called IMs.Importance analysis allows the estimation of influence of every system component breakdown to the system failure.This paper provides new algorithms for importance analysis based on Direct Partial Boolean Derivative and BDD of structure function.

Importance Measures
Consider some of IMs and calculation algorithms based on on Direct Partial Boolean Derivative.
Structural Importance (SI).The SI is one of the simplest measures in importance analysis and this measure focuses on the topological aspects of a system.According to the definition in papers [3] this measure determines the proportion of working states of a system in which the working of the i-th component makes the difference between system failure and operation: where ρ i is the number of system states when the change in compo- nent state results in system failure.
The number ρ i in [3] is defined by special analysis of values of the structure function, but according to the definition 1 this number can be calculated as the number of nonzero values of the Direct Partial Boolean Derivatives ( 11) ∂φ(x)/∂x i .
There is one more definition of SI [37].It is Modified Structural Importance (MSI) that represents the influence of the i-th system component failure to system failure: where ρ i=1 is the number of system states for which ϕ(1 i , x) = 1 (it is defined by the structure function ( 3)).
The values of SI (18) and MSI (19) are presented in Table 2.According to this Table the first system component has maximal influence to the system availability in terms of the system's topology.The values of the MSI indices show that the first component is dominant in terms of system topology because only this component'sfault causes the system's failure.The breakdown of the third or the forth component has minimal influence to the system failure according values of SI and MSI (Table 2).
Birnbaum Importance (BI).The BI is one of basic IMs and this measure is defined as the probability that the system is sensitive to inoperative state of the i-th system component [19]: In paper [37] new equation for the BI calculation has been proposed based on Direct Partial Boolean Derivatives: According to [37] this equation is proofed as: Pr ( , ) P r ( , ) Pr ( , ) and for a coherent system with a monotonically structure function [29]: Pr ( , . For example, the structure function of the system (Table 1) has 5 nonzero values for the derivatives ∂ϕ(x)/∂x 1 , so the first component BI is calculated as: IB 1 =Pr{∂ϕ(x)/∂x 1 =1}=q 2 p 3 p 4 +p 2 q 3 q 4 +p 2 q 3 p 4 +p 2 p 3 q 4 +p 2 p 3 p 4 , Fig. 5. Sub-diagrams for the system availability and unavailability calculation and for other components: IB 2 =Pr{∂ϕ(x)/∂x 2 = 1} =p 1 q 3 q 4 +p 1 q 3 p 4 +p 1 p 3 q 4 .
Therefore SI, MSI and BI indices can be calculated based on Direct Partial Boolean Derivatives.Criticality Importance (CI).BI (20) describes the influence of a failure of the i-th system component on the system's availability, but doesn't take into account the probability of this component's failure.CI adjusts it and is defined as the probability that the i-th system component is relevant to the system's failure if it has failed [19]: where BI i is the i-th system component BI measure (20); q i is probability of the i-th system failure (1) and U is the system's unavailability (4).Dynamic Reliability Indices (DRI).DRI have been considered in paper [36].DRIs allow the estimation of a component relevant to system failure.There are two groups of DRI: Component Dynamic Reliability Indices (CDRI) and Dynamic Integrated Reliability Indices (DIRI).
CDRI indicates the influence of the i-th component'sfault on the system's failure and is similar to the definition of modified SI, but CDRI includestwo probabilities: (a) the probability of the system's failure caused by the i-th component's inoperation and (b) the probability of a component failure: where MSI i is defined by (19); q i is probability of a component failure (1).DIRI is the probability of system failure that is caused by one of the system components in-operation (one of n): Therefore SI, MSI, BI, CI, CDRI and DIRI indices can be calculated based on Direct Partial Boolean Derivatives and the development of the algorithm for computation of these derivatives is important step in importance analysis based on quantification estimation of IMs.

Direct Partial Boolean Derivative Calculation based on BDD
One of possible BDD-basedmethod for calculat-ingIMs has been presented in [14].The authors of the paper [14] proposed to define components states by the structure function BDD for computation of IM according to typical equation of IMs.Logical Differential Calculus has been used for calculation of some IMs in [35].However, the proposed algo-rithms don't account for specific of the system with two states (available and unavailable).
We develop two algorithms for calculating Direct Partial Boolean Derivative (11) based on BDD of the structure function.These algorithms have identical basic principle: it is construction of the "tree of paths" by analyzing the paths from the root to the sink node of the BDD that agrees with conditions: Therefore the tree of paths for condition ϕ(0 i , x) = 0 unites all paths from the root to the sink node 0 that include out coming edges of the non-sink node x i labelled 0. The tree of paths for the condition ϕ(1 i , x) = 1 is constructed similarly.
For example, consider the construction of the tree of paths for the series-parallel system by the BDD (Fig. 4).Form the tree of paths of the derivative ∂ϕ(x)/∂x 2 for the condition ϕ(0 2 , x) = 0 (Fig. 6).The variable, on which the derivative is calculated, isn't included in the  sciENcE aNd tEchNology tree of paths and conforms to the root labelled "S".It is the second variable x 2 in this example.Two paths are analysed for the specified condition (Fig. 6).The first (left) path has value of the first variable as 0 (x 1 = 0) and doesn't include the variablesx 3 and x 4 .Therefore these variables(x 3 and x 4 ) can have any value (these values are indicated in the tree of paths by dotted line).The second path has variable x 1 = 1 and variable x 3 with two values.In case of x 3 = 0 the variable x 4 can have any value because it is absent in this path.But the variable x 4 = 0 if x 3 = 1.Therefore the tree of paths in Fig. 6 locates all paths for the condition ϕ (0 2 , x) = 0.
Two algorithms are developed for the Direct Partial Boolean Derivative (11) calculation by the BDD based on the use of the trees of paths.
The Algorithm 1 has three steps.The tree of paths for the condition ϕ(0 i , x) = 0 is formed at the first step.The tree of paths for the condition ϕ(1 i , x) = 1 is constructed at the second step.The third step of the algorithm compares these two trees.The general part of these trees is a decision that is corresponded to non-zero values of the Direct Boolean Derivative (11).
For example, Fig. 7 illustrates the calculation of the Direct Partial Boolean Derivative ∂ϕ(x)/∂x 1 based on the Algorithm 1 for BDD of the structure function ( 6) of the series-parallel system in Fig. 1 with the structure function (6).The BDD of this function is presented in Fig. 4. The first step of the algorithm is forming the tree of paths for condition ϕ(0 1 , x) = 0.This tree building is shown in detail for the second variable ϕ(0 2 , x) = 0above (Fig. 6).The tree for condition ϕ(0 1 , x) = 0 includes all possible values of variables x 2 , x 3 and x 4 , because the subdiagram for this condition doesn't include nodes of these variables.The second step of the algorithm permits to obtain the tree of paths for condition ϕ(1 1 , x) = 1.This tree includes all paths from the out-coming edge labelled 1 of the first variable x 1 to the sink node 1 of the BDD.The third step of the algorithm is comparing two trees that satisfy condition ϕ(0 1 , x) = 0 and ϕ(1 1 , x) = 1 accordingly.The final tree of paths (the algorithm result) includes paths that are equal for two trees.Therefore, the final tree includes 5 paths that are conformed with non-zero values of the derivative ∂ϕ(x)/∂x 1 :x= (1↔0, 0, 1, 1), x = (1↔0, 1, 0, 0), x = (1↔0, 1, 0, 1), x = (1↔0, 1, 1, 0), x = (1↔0, 1, 1, 1).
Algorithm 1 and Algorithm 2 are tested based on the sets of benchmarks LGSynth91 with the tool ABC (A System for Sequential Synthesis and Verification developed by Berkeley Verification and Synthesis Research Center) [20].This benchmark has the PLA -EXPRESSO format and Table 3 summarizes the selected benchmarks, specifying the number of input variables, the number of output functions, the number of product terms appearing in the benchmark and their analysis for BDDs construction.These benchmarks are used for the comparison, control and examination of two algorithms.In addition these algorithms have been compared with the similar algorithm that has been proposed in [16] and with algorithm proposed in [38].Experiments permit the computational complexity of the proposed algorithms to be estimated.Computational complexities such as the number of recursive calls of algorithms are shown in Fig. 9 and the t`ime for computation of non-zero values of Direct Partial Boolean Derivatives is presented in Fig. 10.
The analysis of the data in Fig. 9 and Fig. 10 shows that the two proposed algorithms have similar characteristics but Algorithm 2 has lesser computational complexity, which is well seen in the chart on Fig. 9. Characteristics of the algorithms in [16] and [38] are worse in comparison of proposed algorithms.Therefore, the Algorithm 2 can be used for the calculation of non-zero values of Direct Partial Boolean Derivatives for the structure function preferable.The non-zero values of Direct Partial Boolean Derivatives permit to calculate IMs ( 18) - (23).It is important that these equations are agree with well know definitions of IMs.Therefore IMs values calculated by the proposed Algorithm 1and Algorithm 2 based on the definitions ( 18) -( 23) are equal IMs values computed by the definition from [3,6,12].

Conclusions and Future Work
This work presented an efficient approach to analyze the reliability and importance analysis.This approach can be summarized in following characteristics.First characteristic of proposed approach is possibility of calculating IMs using mathematical apparatus Direct Partial Boolean Derivatives, which is based on new equations for IMs ( 18) - (23).The background of this approach is the computation of non-zero values of derivatives that are used in these equations of IMs.
Next aspect is based on development of new algorithms for calculation of Direct Partial Boolean Derivatives based on BDD, which allows analysis of the function of large dimensions.The last important point of presented work is the introduction an experimental analysis based on BDD algorithms, which are highly efficientlyboth in computational time and storage demand for importance analysis and they also make it possible for us to study practical and large systems.Research based on this approach as sensitivity analysis, importance measures, and optimal design issues of large systems will become more important in the future.Algorithms proposed in this work can be generalized for the non-coherent system.In this case the calculation of IMs will be based on the  .Proposed algorithms can be modified for the integration to IMs [13,19], which could allow investigating of influence of some system components to reliability or availability of system.These measures will be defined based on the Direct Partial Boolean Derivative with respect to variable vector [36].All these generalization (for non-co-herent system and integrated IMs) can be implemented based on nonimportant modification of Direct Partial Logic Derivatives.The derivative with respect to variable vector will be exploited for the integrated IMs calculation.

Fig. 2 .
Fig. 2. The interpretation of Direct Partial Boolean Derivative

Fig. 4 .
Fig. 4. Graphical and software implementation of the BDD of system

Fig. 6 .
Fig.6.The tree of paths for condition of the BDD in Fig.4

Fig. 9 .
Fig. 9. Comparison of algorithms computational complexity by number of recursive calls

Table 2 .
SI and MSI indices for the system in Fig.1

Table 3 .
Benchmark characteristics and analysis for BDD

Table 4
SI, BI and CI values are shown that are calculated by new algorithm (Algorithm 2) and traditional algorithm.This Table consists of two parts.The first of them include IMs values that are calculated based on the definitions in papers [3, 6, 12].IMs values computed by new algorithms are described in the second part of this Table.Note IMs values are equal for two proposed algorithms (Algorithm 1 and Algorithm 2).Therefore IMs values for two different approaches are equal, because new algorithms realize equations for IMs calculation (

Table 4 .
The calculation of indexes SI, SIM, BI, CI, CDRI for benchmark rd84 This work was partially supported by grant of Scientific Grant Agency of the Ministry of Education of Slovak Republic (Vega 1/0498/14).