A Set Theory Based Method to Derive Network

9 downloads 0 Views 375KB Size Report
A novel set theory based method for deriving terminal reliability expressions of complex system configurations ... The reliability formula of a networked system is expressed as sum of disjoint products, where the product terms represent conjunctions of Boolean .... how their negations are false proves the inequalities.
SELECTED TOPICS in APPLIED COMPUTING

A Set Theory Based Method to Derive Network Reliability Expressions of Complex System Topologies PADMANABHAN BALASUBRAMANIAN†, and NIKOS E. MASTORAKIS§ † School of Computer Science, The University of Manchester, Oxford Road, Manchester M13 9PL, UNITED KINGDOM. [email protected] § Division of Electrical Engineering and Computer Science, Military Institutions of University Education, Hellenic Naval Academy, Piraeus 18539, GREECE. [email protected] Abstract: - Network reliability evaluation is important for the planning, design and control of arbitrary systems. A novel set theory based method for deriving terminal reliability expressions of complex system configurations is described in this paper. The reliability formula of a networked system is expressed as sum of disjoint products, where the product terms represent conjunctions of Boolean variables and are all mutually exclusive. We approach the problem of deriving minimized sum of disjoint products given a complex system topology from a logic synthesis perspective, and show how our proposed method fares well in comparison with the results generated using a widely preferred two-level logic minimizer for some benchmarks. Key Words: - System reliability, Sum of disjoint products, Binary coherent system, and Boolean function. inversion or multiple variable inversions. Herein, we consider only single variable inversion as this paves the way for analyzing the efficiency of our set theory based approach vis-à-vis the output of a standard two-level logic minimizer. The remaining part of this paper is organized as follows. Section 2 introduces the set theory terminologies that are associated with logic function manipulation. Also, the axioms governing the logic operations are elucidated, accompanied by proofs. The proposed method for deriving SODP expression from a reduced sum of products (SOP) form is given in Section 3. Section 4 presents the results of our analysis corresponding to some benchmark systems. The conclusions are drawn in the final section.

1 Introduction Network reliability theory finds extensive applications in many commercial system studies, such as transportation systems, computer and communication systems, oil/gas production systems, power transmission and distribution systems [1] – [4] etc. Network reliability governs the probability of connection between a source terminal (source node) and a sink terminal (sink node), also referred to as terminal reliability. With respect to the modeling of an arbitrary system as a binary coherent system, the reliability equation is expressed in the sum of disjoint products (SODP) format, where the products1 are all mutually exclusive (orthogonal). In this context, it is interesting to note that a widely preferred two-level logic minimizer can be used for obtaining the SODP form that represents the reliability expression of an arbitrary non-seriesparallel complex system. The SODP expression of the reliability formula can be obtained by resorting to either single variable

2 Background A Boolean equation is said to be in SODP form, if it is described by a logical sum of product terms that are all disjoint, i.e. there is no common minterm2

1

2

A literal refers to a Boolean variable, say x or its complement (x’). The product term specifies a logical conjunction of literals.

ISSN: 1792-5908

A minterm is a canonical product term, which consists of a unique combination of all the primary input variables.

108

ISBN: 978-960-474-236-3

SELECTED TOPICS in APPLIED COMPUTING

between two product terms when they are expanded. While SOP minimization can be likened to a set covering problem, SODP minimization can be likened to the problem of finding a minimum exact disjoint cover, which is NP-hard [5]. For example, the number of essential prime implicants comprising the SOP expression of an Achilles’ heel function [5]

2.3 Describing Disjoint Product Terms When two Boolean products P1 and P2 are said to be disjoint, the following inequalities hold. Showing how their negations are false proves the inequalities. |PSI [S(P1), S(P2)]| ≥ 1

(6)

is given by O n

|PDI [D(P1), D(P2)]| ≥ 0

(7)

prime implicants constituting its logically equivalent

Assume the inequality: |PSI [S(P1), S(P2)]| ≥ 1 is not valid. This implies that |PSI [S(P1), S(P2)]| = 0 and as a result PSI [S(P1), S(P2)] = Ø. The second inequality would be automatically satisfied as a fallout as we negate the current assumption, because |PDI [D(P1), D(P2)]| < 0 is an invalid starting argument since any product term would consist of at least a single literal. Given the present assumption (PSI [S(P1), S(P2)] = Ø), it becomes obvious that no variable would be shared between P1 and P2 and the function can only be classified as read-once implying that it is basically expressed in its minimum SOP form [6]. In such a situation, the product terms of the function would definitely overlap [6] and hence there is no mutualexclusiveness exhibited between the products. When the function is expressed in its canonical form, the common minterm(s) would eventually manifest. It should be noted that the above discussion assumed P1 and P2 to be non-identical. Provided P1 and P2 are identical, a stronger constraint needs to be enforced, which is given in the next section.

 2 , while the number of essential

n SODP expression is specified by O  2 2 1 ,  

where ‘n’ represents the number of primary inputs. Some terminologies, which are based on the notion of set theory, are first defined for the sake of clarity, before propounding the set theory based method to derive SODP equation from a SOP form.

2.1 Support Set and Dependency Set The support set of a product term P, say S(P), entails the enumeration of all the variables that are a function of the product, while a product’s dependency set D(P) entails the enumeration of all its literals in their actual form (complemented or uncomplemented) for its evaluation to a logic ‘1’. Given a product term, P specified by ab'c'd, its S(P) and D(P) are: S(P) = {a,b,c,d}

(1)

D(P) = {a,b’,c',d}

(2)

2.4 Disjoint Set and Degree of Disjointness

2.2 PSI Set, PDI Set and Polarity Eliminated PDI Set

Two product terms are said to be disjoint if their conjunction (achieved by the Boolean AND operator) yields a null. The disjoint (DJ) set identifies the input variables that are responsible for making two Boolean products (say, P1 and P2) mutually disjoint. It is given by the set-theoretic difference of PSI and PDI_PE, corresponding to the products P1 and P2. In other words, it amounts to finding the relative complement of PDI_PE in PSI.

The intersection of the support set of two products is characterized by variables that are common to the support set of both the products, referred to as the PSI set. Similarly, the intersection of the dependency set of two products may yield common literals, which form the elements of the PDI set. The polarity eliminated PDI set, PDI_PE set, consists of all the literals of the PDI set represented in their normal (uncomplemented) form. Thus the elements of the PDI_PE set correspond to the variables of the PDI set. For example, with the elements of D(P1) and D(P2) being {a’,b,c,d} and {a’,b’,c,f} respectively, the corresponding PSI, PDI and PDI_PE sets are: PSI [S(P1), S(P2)] = {a,b,c}

(3)

PDI [D(P1), D(P2)] = {a’,c}

(4)

PDI_PE [D(P1), D(P2)] = {a,c}

(5)

ISSN: 1792-5908

DJ [P1, P2] = PSI [S(P1), S(P2)] \ PDI_PE [D(P1), D(P2)] (8) The degree of disjointness (DDJ) is an integer measure of the number of primary inputs, which are responsible for making two products P1 and P2 mutually disjoint. It is given by (9). Any two nonoverlapping product terms would satisfy the inequality condition highlighted by (10). DDJ = |DJ [P1, P2]|

109

(9)

ISBN: 978-960-474-236-3

SELECTED TOPICS in APPLIED COMPUTING

DDJ ≥ 1

(10) 

If between any two dissimilar products, say between P1 and P2, the above inequality constraint would not be satisfied, i.e. DDJ = 0, then the possible reason for this scenario is depicted by (11), which is a direct consequence of the two products featuring a disjoint support; for example, with product terms P1 and P2 represented by abcd and efg respectively. This would then revert back to the situation described in section 2.3, wherein the products were found to overlap when expanded; thereby no disjointness shall exist between them. Therefore, the condition described by (12) would be satisfied. In this case, DDJ is zero and so there is no variable that could make the two products disjoint as they would be governed by the properties mentioned in (13) and (14). If P1 and P2 are similar, then DJ [P1, P2] = DJ [P2, P1] = Ø.



PSI [S(P1), S(P2)] = PDI_PE [D(P1), D(P2)] = Ø (11) DJ [P1, P2] = Ø

(12) 

|PSI [S(P1), S(P2)]| = |PDI [D(P1), D(P2)]| (13) PSI [S(P1), S(P2)] = PDI_PE [D(P1), D(P2)] (14)

 

3 Set Theory Based Method to Deduce SODP Equation from a SOP Equation The proposed procedure to deduce SODP format from a SOP expression is described from a highlevel perspective through the following steps.  



Step 1: Obtain the SOP expression of a logic function. Step 2: Compare each product with every other product in the SOP form to check whether they are disjoint. If and only if each product exhibits mutual disjointness with every other product in the SOP form go to Step 11, else proceed with Step 3. Step 3: Enumerate all the overlapping pairs of products that have a non-disjoint support. If only pairs of products with a disjoint

support3 exist go to Step 8, else proceed with Step 4. Step 4: From among the overlapping pairs of product terms that feature a non-disjoint support, choose that pair of products, which feature the highest degree of logic sharing among its constituents. If many such pairs of products exist, which exhibit a similar highest degree of commonality, an arbitrary choice is made. Step 5: Use the distributive axiom [ab+ac = a(b+c)] to extract the kernel4. Apply the converse of the absorption axiom of Boolean algebra (a+a’b = a+b) to transform the kernel comprising overlapping products5 with a disjoint support into non-overlapping products with a non-disjoint support. Apply the distributive property of Boolean algebra [a(b+c) = ab+ac] to enumerate the product terms. Should the kernel comprise products whose dimensions are greater than unity, apply the identity axiom (a+a’ = 1) to the product of least dimension. The products are enumerated using the distributive law. Step 6: Check whether any product contains any other product in the function; if so, the covering product absorbs the covered product6. Also, check whether any product is duplicated in the logic function. If so, the redundancy is eliminated by applying the idempotency axiom [a+a = a]. Step 7: Go to Step 2. Step 8: Consider any two products with a disjoint support, which also have the least support set cardinalities. If many choices result, then a random selection is made. Between such a pair of products, the identity law of Boolean algebra is applied to any of the pair of products considered, which would result in a product expansion by utilization of the distributive axiom.

3

Disjoint products are orthogonal, whereas products with a disjoint support are not as they do not have any common variable. 4

In ab + ac = a(b+c), (b + c) is the kernel and a is the co-kernel.

5

Two product terms are said to be overlapping if they cover a common minterm when expressed in their canonical form; otherwise, they are said to be non-overlapping. 6

Given two product terms, ab and abc, product ab is said to cover the product term abc, as ab + abc = ab. Hence, ab is the covering term and abc is the covered term.

ISSN: 1792-5908

110

ISBN: 978-960-474-236-3

SELECTED TOPICS in APPLIED COMPUTING



 

overlapping, the following set operations are to be satisfied: DJ [Px, Py] ≠ Ø, and hence DDJ ≥ 1, between any pair of arbitrary products Px and Py comprising a function output, where (x, y)  i and x ≠ y,

Step 9: If any product is found to cover any other existing product in the function, the covered product is discarded and the covering product is alone retained. Also, logic duplication, if any, is eliminated using the idempotent law. Step 10: Return to Step 2. Step 11: Terminate the routine as the desired SODP solution has been obtained.

k

given FSODP =

i 1



The set theory based SODP procedure described above has been implemented in Java and has been used to obtain the reliability equations for some benchmark systems. The proposed procedure is followed for all the SOP expression(s) of the output(s) of a logic function, independently and in parallel. In general, a function would be specified by several inputs and outputs. The reduced SOP solution for a Boolean function is obtained via multi-output minimization, by using a standard logic minimiser: Espresso [7]. The logical correctness of the SODP solution is guaranteed by the Boolean axioms used, which are well-established and proven properties. The functional correctness of the SODP solution is assured by comparison of each product with every other product forming the cover of each function output. However, such a comparison is carried out as part of the processing. The combinational equivalence of a SOP form and its corresponding SODP form is confirmed through the ‘Dverify’ option of Espresso. The final cost of the SODP solution derived for a SOP specification is represented by the count of all the unique input product terms, some/all of which may eventually be shared between the various function outputs. Depending upon the initial logic description, several iterations of some/all of the above steps may be required in order to arrive at the final solution. In general, the opportunity for making use of the absorption axiom is first exploited with respect to a logic expression before considering the usage of the identity axiom, as the former would only increase the dimension of a product term whereas the latter would increase the number of products. A possible peephole optimization would be to determine a good choice of variable order whilst applying the axioms to the enumerated sets. The following serve as guidelines for the proposed method to derive SODP expression from a SOP form, articulating some important underpinning settheoretic operations. 



i

, where the SODP form

of a function output F is said to contain k product terms. To enumerate the overlapping products as mentioned in Step 3, between say Pm and Pn in a logic expression, the condition PSI [S(Pm), S(Pn)] ≠ Ø should be upheld. To single out a pair of products that feature a non-disjoint support but differ by only a single literal as described in Step 4, the following equality relationship has to be satisfied: |PDI [D(Pm), D(Pn)]| = |D(Pm)| - 1 = |D(Pn)| - 1. Also, amongst any three overlapping products, say Pm, Pn and Po of a logic expression, if the following hold good, viz. PDI [D(Pm), D(Pn)] ≠ Ø, PDI [D(Pn), D(Po)] ≠ Ø and PDI [D(Pm), D(Po)] ≠ Ø, the choice of the pair of products made during the first iteration would depend upon the highest value corresponding to |PDI [D(Pm), D(Pn)]|, |PDI [D(Pn), D(Po)]| and |PDI [D(Pm), D(Po)]|. In case of a tie between the cardinalities of the PDI sets, an arbitrary choice is resorted to. The sorting procedure considers all the distinct products of the expression. In general, for the worst-case, a

 k (k  1)    2 

computational complexity of O 





As mentioned in Step 2, to ascertain whether all the products corresponding to each unique function output are non-

ISSN: 1792-5908

C

111

is likely to result, where ‘k’ refers to the number of irredundant products comprising a function output. When a product Pm is said to cover another product Pn in an output expression as mentioned in Step 6, then the following would be true: D(Pm)  D(Pn) and |D(Pn)| > |D(Pm)|, in which case Pm is alone retained and Pn is discarded. Additionally, if there exists a product Pp in the expression, and Pq is newly introduced due to a set operation, if D(Pp) = D(Pq), then the products Pp and Pq are said to be identical. To avoid logic duplication, either Pp or Pq is discarded and the other is retained. Between a pair of product terms, say Pm and Pn featuring a disjoint support, as specified in Step 8, the equality relation PSI [S(Pm), S(Pn)] = Ø is satisfied.

ISBN: 978-960-474-236-3

SELECTED TOPICS in APPLIED COMPUTING

conjunction (product term) on the right hand side represents the edges that are traversed from the source node to reach the sink node, i.e. a path. ‘1’ indicates the consideration of an edge for the path, while ‘-’ denotes don’t care state assignment for the corresponding edge. The SOP format specifies the possibility for traversal of more than one path between the source and sink terminals simultaneously, say adh and bfi. On the other hand, the logically equivalent SODP expression signifies the connection between the source terminal and the sink terminal through a unique path at any time instant, which enables in determining the reliability of the system. The objective is to achieve a SODP solution that would comprise minimum number of orthogonal products. To this end, Espresso has been used to generate the SODP equation for the modified ARPANET system topology and the resulting solution is represented symbolically as follows. In addition to the ‘1’ and ‘-’ states, there is also a ‘0’ state assigned to an edge in the conjunction corresponding to the SODP expression, as can be seen below, and it signifies the non-consideration of a corresponding edge. In terms of probability, the probability of the absence of a Boolean variable (say, a’) is accounted in a logical product term as 1 – P(a), where P(a) denotes the probability of edge ‘a’ being present in the path.

4 Experimentation with Benchmarks We first consider a benchmark system; modified ARPANET as portrayed by fig. 1, to demonstrate the efficiency of our SODP approach vis-à-vis the SODP feature of Espresso.

Fig. 1. Modified ARPANET network The modified ARPANET has been widely used as a benchmark for illustration in the literature [8] – [12]. We consider this example system network to compare the SODP solution derived using our set theory based method with the SODP solution obtained using Espresso. In fig. 1, nodes ‘s’ and ‘t’ denote the source and sink nodes (terminals). There are four unique nodes labeled 1 – 4, which serve as the intermediary nodes between the source and sink terminals. The connecting links between the nodes represent the edges of the network, while the nodes are referred to as the vertices of the network. As could be seen in fig. 1, there are nine distinct edges viz. a, b, c, d, e, f, g, h and i. A path from s to t is established by traversing the edges and all the edges are undirected (i.e. bidirectional). For e.g. a-d-h specifies a path from the source to the sink, which gives rise to the product term adh. The SOP form corresponding to the modified ARPANET consists of 13 possible paths and they are listed below: 1--111--1 -111--1-1 1-1--1111-1-1-1-1 -1---111-111---1-1--1-1-1 1-1-1--11--1--1-1 1-1--1--1 -1--1--1-1---1--1 1--1---1-

→ → → → → → → → → → → → →

1--111--1 0111--1-1 11110-1-1 1111101-1 1-10-111101101111-1111110 111101110 1011101-1 1-10101-1 1-1011101 010--1110110-1111100-111110101110111-1110 110111110 0111--0111110-01111110010111-0110 111110110 111100110 111111010 010-101-1 1101101-1

adefi bcdgi acfgh acegi bfgh bcdh begi aceh adgi acfi beh bfi adh

The binary values on the left hand side denote the edges listed in alphabetical order (a – i). A logical

ISSN: 1792-5908

112

ISBN: 978-960-474-236-3

SELECTED TOPICS in APPLIED COMPUTING

The SODP solution of Espresso consists of 82 disjoint product terms. In stark contrast, our proposed method has facilitated a SODP expression that comprises only 21 orthogonal product terms, thus reporting an improvement in the efficacy of our solution by an order of ¾, which is significant. The list of orthogonal products corresponding to our proposed SODP method is given below.

0110101-1 1100101-1 010-11101 011011101 110011101 1-101101101110011-101001101110110 1-1010110 101111010 10010-1-1 1001101-1 1011001-1 1101001-1 101101101 110101101 1011010-1 1-10010-1 1-1001101 1-1011001 111101001 010-11010110110111001101010-1001110110010110100111001001010-10110 110110110 011010110 110010110 110111010 010-010-1 1101010-1 0110010-1 1100010-1 010-01101 011001101 110001101 0111-1001 010-11001 011011001 110011001 10010-01100110011011000111010001100111-10 10010-110 100110110 101100110 110100110 101101010 110101010

ISSN: 1792-5908

011101010 100111001 011100101 101001110 101010101 101011-01 11-100101 1011-1001 11-001110 101001--1 011100-111-101-10 01--01110 10101--110-1--101 11-100-1-1--10101 -1--11-10 -1--10-110-1---1-1---1--1 The numbers of disjoint products resulting in the SODP solution based on our method and Espresso, for some benchmarks referred in the literature are given in Table 1. Table 1. SODP solution for benchmark systems Benchmark System Problem 1 [13] Problem 2 [14] Problem 3 [11] Problem 4 [15] Problem 5 [16] – [18] Abraham’s Problem [19] Modified ARPANET

Espresso SODP 18 10 6 20 14 65 82

Proposed SODP 15 9 6 12 9 74 21

Considering the values shown in Table 1, it is evident that the proposed method has enabled a reduction in the number of disjoint products by 32% on average compared to Espresso, emphasizing its significance. Since the proposed procedure has been automated, it can be used to derive the SODP solution for any complex system topology.

113

ISBN: 978-960-474-236-3

SELECTED TOPICS in APPLIED COMPUTING

[8] M. Veeraraghavan and K.S. Trivedi, “An improved algorithm for symbolic reliability analysis,” IEEE Trans. on Reliability, Vol. 40, No. 3, pp. 347-358, 1991. [9] S. Soh and S. Rai, “CAREL: computer aided reliability evaluator for distributed computing networks,” IEEE Trans. on Parallel and Distributed Systems, Vol. 2, No. 2, pp. 199-213, 1991. [10] S. Soh and S. Rai, “Experimental results on preprocessing of path/cut terms in sum of disjoint products technique,” IEEE Trans. on Reliability, Vol. 42, No. 1, pp. 24-33, 1993. [11] E. Chatelet, Y. Dutuit, A. Rauzy and T. Bouhoufani, “An optimized procedure to generate sums of disjoint products,” Reliability Engineering and System Safety, Vol. 65, No. 3, pp. 289-294, September 1999. [12] W.-C. Yeh, “An improved sum-of-disjointproducts technique for the symbolic network reliability analysis with known minimal paths,” Reliability Engineering and System Safety, Vol. 92, pp. 260-268, 2007. [13] H.H. Liu, W.T. Yang and C.C. Liu, “An improved minimizing algorithm for sum of disjoint products by Shannon's expansion,” Electric Power Systems Research, Vol. 24, No. 2, pp. 111-118, August 1992. [14] B. Singh, “A procedure for generating sums of disjoint products,” Microelectronics Reliability, Vol. 33, No. 15, pp. 2269-2272, December 1993. [15] K.D. Heidtmann, “Smaller sums of disjoint products by subproduct inversion,” IEEE Trans. on Reliability, Vol. 38, No. 3, pp. 305-311, August 1989. [16] K.K. Aggarwal, K.B. Misra and J.S. Gupta, “A fast algorithm for reliability evaluation,” IEEE Trans. on Reliability, Vol. R-24, No. 1, pp. 8385, 1975. [17] S.H. Ahmad, “A simple technique for computing network reliability,” IEEE Trans. on Reliability, Vol. R-31, No. 1, pp. 41-44, 1982. [18] R. Keqiang, “A method of transformation of the disjoint sum in fault tree analysis,” Reliability Engineering, Vol. 16, No. 3, pp. 207-217, 1986. [19] J.A. Abraham, “An improved algorithm for network reliability,” IEEE Trans. on Reliability, Vol. R-28, No. 1, pp. 58-61, 1979.

5 Conclusions The SODP form represents the reliability formula of a binary coherent system. Towards this end, a novel set theory based method to derive the reliability expression of an arbitrary non-series-parallel complex system topology has been proposed, and discussed in this paper. The problem of deriving an efficient SODP format has been addressed primarily from a logic synthesis perspective, by modeling the system topology as a combinatorial network. The efficacy of our proposed method in comparison with Espresso has been demonstrated by considering some benchmark system networks. The results obtained on the basis of the proposed method are very encouraging. Future work in this area would be to pursue investigation on two fronts: i) analysis with different variable ordering schemes, other than the lexicographical ordering considered in this work, and ii) incorporating multiple variable inversions as opposed to only single variable inversions. It is hoped that these could possibly help in improving the efficiency of the set theory based method to produce a SODP form starting from a SOP format. References: [1] T. Aven, “Availability evaluation of oil/gas systems,” production and transportation Reliability Engineering, Vol. 18, pp. 35-44, 1987. [2] T. Aven, “Some considerations on reliability theory and its applications,” Reliability Engineering and System Safety, Vol. 21, pp. 215223, 1988. [3] F.S. Roberts, F.K. Hwang and C. Monma, “Reliability of computer and communication networks,” DIMACS Series in Discrete Mathematics and Theoretical Computer Science, Vol. 5, 1991, AMS/ACM Publisher, NY, USA. [4] W.J. Ke and S.D. Wang, “Reliability evaluation for distributed computing networks with imperfect nodes,” IEEE Trans. on Reliability, Vol. 46, pp. 342-349, 1997. [5] T. Sasao (Ed.), Switching Theory for Logic Synthesis, Kluwer Academic Publishers, Dordrecht, The Netherlands, 1999. [6] I. Newman, “On read-once Boolean functions,” in M.S. Paterson (Ed.), Boolean Function Complexity, pp. 25-34, London Mathematical Society Lecture Note Series 169, Cambridge University Press, 1992. [7] R.K. Brayton, G.D. Hachtel, C.T. McMullen and A.L. Sangiovanni-Vincentelli, Logic Minimization Algorithms for VLSI Synthesis, Kluwer Academic Publishers, MA, USA, 1984.

ISSN: 1792-5908

114

ISBN: 978-960-474-236-3