4
IEEE TRANSACTIONS ON RELIABILITY, VOL. R-33, NO. 4, OCTOBER 1984 329 Disjoint Boolean Products via Shannon's Expansion W. G. Schneeweiss, Senior Member IEEE discussed. In section 2 a more complicated example, which FernUniversitat, Hagen is amply discussed in the literature, is investigated. Com- plexity investigations are left to [9]. The appendix repeats the philosophy of Abraham's algorithm [3] to make this Key Words-Boolean function, Disjoint product, Fault tree evalua- paper self-contained. tion, Shannon expansion. Reader Aids- Trivial Example Purpose: Tutorial Special math needed for explanations: Boolean algebra As a trivial example of (3), f = xi U Xk yields: Special math needed to use results: Same Results useful to: Reliability analysts X' i 4 = Xi + X/. (4) Abstract-It is shown how the well-known expansion theorem of Boolean (switching) functions theory can be used as the kernel of a as does Abraham's algorithm; see the appendix. powerful and extremely simple algorithm for producing a short disjoint products form of a Boolean function. Its efficiency may challenge other algorithms. Its ease of full documentation is a further positive feature, at least for teachers. v S Consider the Boolean function f of the 2-out-of-3:G system: 1. INTRODUCTION f = X1X2 U X2X3 U X1X3. (5) Let f 11-x2 U x2x3 U x3,f10 X2X3. (6) f-f(x); x (x1, ..., x,,); xi E {O, 1}, 0, 1 integers, Hence, by (3) and the absorption: x2 U x2x3 = x2 fij-f(xl, . .., xi-,, j, xi+, ..** , XJ; j EE {°, I I f = X1(X2 U X2X3 U X3) + X1X2X3 = X1(X2 U X3) + X1X2X3. all be Boolean functions (of indicator variables). Then the well known Shannon (Lagrangian) expansion theorem [1] (7) holds (with U for OR): Finally, (4) yields f = x1fil U x if i0; x = NOT xi. (1) f = X1(X2 + X2X3) + X1x2x3 = xlx2 + xIX2x3 + X IX2X3. The xfji1 and xj1io are disjoint. Hence, because: (8) x-xi = 0 Now, in the spirit of Abraham [3]. Start with the first term xi U Xk = xi + Xk - XiXk,xi =1 -X x (2) xlx2 of (5), the second term (more precisely: the set of its minterms) is split in two parts; one contained in x1x2, the as explained in [2], other disjoint with it f = xAf1 + XA x2x3 = x1x2x3 - "contained" in x1x2 Pr{f = I } = Pr{xJi1 = 1 } + Pr{xJio = 1.} (3) U X1X2X3 - disjoint with X1X2. This is the basis of an algorithm which seems to The third term of (5) is split likewise and only parts disjoint challenge other algorithms for producing disjoint Boolean with both x1x2 and xi1x2x3 are retained: products [3]. Details are explained in [8]. Here only the philosophy of this new approach (as it was found in- x1x3 = x1x2x3 - in x1x2 dependently by me in 1983 January) is explained and com- pared with [3]. U x1x2x3 - disjoint with x1x2 and k1x2x3. To give a first impression of what is implied, the following trivial example and a very simple example are Finally, Abraham's algorithm yields (8). 0018-9529/84/l1000-0329$01.00©(C 1984 IEEE

Disjoint Boolean Products via Shannon's Expansion

  • Upload
    w-g

  • View
    225

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Disjoint Boolean Products via Shannon's Expansion

IEEE TRANSACTIONS ON RELIABILITY, VOL. R-33, NO. 4, OCTOBER 1984 329

Disjoint Boolean Products via Shannon's Expansion

W. G. Schneeweiss, Senior Member IEEE discussed. In section 2 a more complicated example, whichFernUniversitat, Hagen is amply discussed in the literature, is investigated. Com-

plexity investigations are left to [9]. The appendix repeatsthe philosophy of Abraham's algorithm [3] to make this

Key Words-Boolean function, Disjoint product, Fault tree evalua- paper self-contained.tion, Shannon expansion.

Reader Aids- Trivial ExamplePurpose: TutorialSpecial math needed for explanations: Boolean algebra As a trivial example of (3), f = xi U Xk yields:Special math needed to use results: SameResults useful to: Reliability analysts X'

i

4 = Xi + X/. (4)Abstract-It is shown how the well-known expansion theorem of

Boolean (switching) functions theory can be used as the kernel of a as does Abraham's algorithm; see the appendix.powerful and extremely simple algorithm for producing a short disjointproducts form of a Boolean function. Its efficiency may challenge otheralgorithms. Its ease of full documentation is a further positive feature, atleast for teachers. v S

Consider the Boolean function f of the 2-out-of-3:Gsystem:

1. INTRODUCTION f = X1X2 U X2X3 U X1X3. (5)

Letf 11-x2 U x2x3 U x3,f10 X2X3. (6)

f-f(x); x (x1, ..., x,,); xi E {O, 1}, 0, 1 integers,Hence, by (3) and the absorption: x2 U x2x3 = x2

fij-f(xl, . .., xi-,, j, xi+, ..** , XJ; j EE {°, I If = X1(X2 U X2X3 U X3) + X1X2X3 = X1(X2 U X3) + X1X2X3.

all be Boolean functions (of indicator variables). Then thewell known Shannon (Lagrangian) expansion theorem [1] (7)holds (with U for OR):

Finally, (4) yieldsf = x1fil U x ifi0; x = NOT xi. (1)

f = X1(X2 + X2X3) + X1x2x3 = xlx2 + xIX2x3 + XIX2X3.The xfji1 and xj1io are disjoint. Hence, because:

(8)x-xi = 0

Now, in the spirit of Abraham [3]. Start with the first termxi U Xk = xi + Xk - XiXk,xi =1-X x (2) xlx2 of (5), the second term (more precisely: the set of its

minterms) is split in two parts; one contained in x1x2, theas explained in [2], other disjoint with it

f = xAf1 + XA x2x3 = x1x2x3 - "contained" in x1x2

Pr{f = I } = Pr{xJi1 = 1 } + Pr{xJio = 1.} (3) U X1X2X3 - disjoint with X1X2.

This is the basis of an algorithm which seems to The third term of (5) is split likewise and only parts disjointchallenge other algorithms for producing disjoint Boolean with both x1x2 and xi1x2x3 are retained:products [3]. Details are explained in [8]. Here only thephilosophy of this new approach (as it was found in- x1x3 = x1x2x3 - in x1x2dependently by me in 1983 January) is explained and com-pared with [3]. U x1x2x3 - disjoint with x1x2 and k1x2x3.

To give a first impression of what is implied, thefollowing trivial example and a very simple example are Finally, Abraham's algorithm yields (8).

0018-9529/84/l1000-0329$01.00©(C 1984 IEEE

Page 2: Disjoint Boolean Products via Shannon's Expansion

330 IEEE TRANSACTIONS ON RELIABILITY, VOL. R-33, NO. 4, OCTOBER 1984

2. STANDARD EXAMPLE Suppress some elementary intermediate steps:

In [2, 4-6] the following Boolean function is dis- fIV= X3 U X4X7 U X5X7 =X3 +X3x7(x4 U x5)cussed:

= X3 + X3X4X7 + X3X4XSX7, (lOc)f = X6X7 U X1X2X3 U X1X4X7 U X3X5X6 U X1x2XSX7

=v x7 + X3XSX7. (10d)U XlX3X4X5 U X2X3X4X6. (9)

Move upward step by step, finally (9) is transformed to:

f = X6X7 + X3X5XCX 7 + X1X2X3X.SXCX7Shannon's Expansion

Choose i = 6; use: a U ab = a (for Boolean a, b) in the + x1x2x3x4x5x6x7 + X1X2X3X6 + XlX2X3X4X6X7first term below, as shown by the [expressions]; factor an + x1x2x3x4x5x6x' + x1xx4x7 + x1x2x3x4x5x6x7.xl from the second term below, as shown by the [xJ; then(1) yields: (11)

f = X6(1X7] U X1X2X3 U [X1X4X7] U X3X5 U [XX2X25X7]Abraham's Algorithm

U x1x3x4x5 U x2x3x4) + X6([Xj]X2X3 U [Xj]X4X7Now I try to get the same result via Abraham's

U [X1]X2X5X7 U [X1jX3x4X5) algorithm. I choose x6x7 as the starting term followed bythat part of the term x1x2x3 which is disjoint with x6x7.

= X6(X7 U X1X2X3 U X3X5 U X2X3X4) + X6X1(X2X3 U X4X7 Thus:

U X2X5X7 U X3X4X5) f = x6x7 U x1x2x3X6 U x1x2x3x&X7 U ... (12)

x6fI + x6XlfII (10) The next term of (9) to be processed is:

The basic expansion step is repeated with f1 and fjI: XlX4X7.

f= x7(1 U X1X2X3 U X3X5 U X2X3X4) The first term of (12) changes it to:

+ X7(X1X2X3 U X3X5 U X2X3X4) X1X4X7X6.

The second term of (12) changes it to:= X7 + 7X3(XlX2 U X.5 U X2X4) -X7 + X7X3LI,.

X1x4x7X6ii2 U x1x4x7x6X23.Expand one step further:

The third term of (12) does nothing. Hence the new termsfIII = X5(X1X2 U 1 U X2X4) + Y5(X1X2 U X2X4) off are:

= X5 + XiX2(Xl U X4) = X5 + X5X2(XI + XX14) X1X2X4X6X7, X1X2X3X*X6X7= XS + x1x,jix5 + 1x2xs4x5. (lOa) Likewise the term x3x5x6 of (9) yields the new terms:

Return to (10); absorption is illustrated with the [*] in the x1x3x5x6x7, x1x2x3x5x6x7.first term, and factoring is illustrated therewith in the se-cond term: The term x1x2x5x7 yields:

A= X2X3 U X4X7 U X2X51X7 U x3x4x5 x1x2x3X4xsk6x7.= X2(1X3] U X4X7 U x5,x7 U [x3x4x5]) Next x1x3x4x5 is processed yielding:

+ X2([X4]x7 U X3[X4]X5) x1x2x3x4x5iX6ii7.

= X2(X3 U X4X7 U X5,X7) + X~2X4(X7 U X3X5) Finally, x2x3x4x6 yields:

-x2f1v + x2x4fv. (lOb) x1x2x3x4x5x6x7.

Page 3: Disjoint Boolean Products via Shannon's Expansion

SCHNEEWEISS: DISJOINT BOOLEAN PRODUCTS VIA SHANNON'S EXPANSION 331

Sum and observe that all 10 terms of (12) are pairwise dis- s i n g e m i n ternijoint with each other:

f = X6X7 + XIX2X3X6 + X1X2X3X6X7 + X1X2X4X6X7 T_ _ _ _ _ _ V * , , ',~~~~~~ ~ ~~~~~~~~~~~>\\~T

+ X X2X3X4X6X7+ X1X3X4X6X7X+7X\XX*/,X

+ XlX2X3X4X 5X6X + (13) 1 i

3. DISCUSSIONT2x . .. xt

* That the Boolean expansion algorithm gives a slight- 1ly shorter (better) result is not typical. Other choices of xiin the diverse applications of (1) and other sequences of the Fig. 1. Minterms of T2 contained in the set of minterms of T1.processed terms of (9) for Abraham's algorithm give h _ _Usomewhat (though not drastically) different results, at least hj - if X f2 Uf f2f3 U . l . I

with the above example.* The length of the presentation of the competing (A-3)

algorithms is probably not a good measure of their com-plexity. In my opinion the Boolean expansion algorithm is with all terms disjoint (from each other); proof, eg, in [3].easier to document in full detail. Let xe , ..., xe. fi E {1, ., n) factors of T1 but not of

* The expansion algorithm allows for ample parallel T2. Then multiplying T2 with hj yields j + 1 pairwise dis-processing; a binary tree multiprocessor would be optimal. joint terms, the first of which is part of T1 and the others

are not. Hence the final result is:

APPENDIXf= T1 U T2 =T1 U T2k,I U T2X,l f2 ...UT xQ12-XF IXPhilosophy of Abraham's Algorithm

The basic idea of Abraham's algorithm [3] is to get = Tl + T2= T1 + T25£1 +T2XfIx 2two product terms T1and T2 disjoint without changing T,and their disjunction (OR) - +... +T2x,,...Xf,iIXV; (A4)

f = T, U T2 (A-1) For more examples see [7]. The fact that the algorithm of[7] works in something like a reverse order does not seem

such that - in my notation - one can write, see figure 1: to influence its overall complexity. What is meant byreverse order is depicted in figure 2. Both versions first

f = T1 U T2 = T1 + T2. (A-2) produce T7, then T2, then T3 etc.

The T2 can be a sum of product terms all of which are dis-joint with each other and with Tl. For 3 initially-given 1 T T1terms, ie, for - 212

f = T1 U T'2 U T3,

in the first step T3 is not regarded and in the second step T3 T3is made disjoint with T, U T2 without changing T1 U T2.This yields -

Fig. 2. Abraham's algorithm in two versions.

f = T1 + T2 + T3.

If 77 consists of several terms it is advisable to make T3 REFERENCESdisjoint with (the single term) T2, even though this means [1] A. Thayse, "Boolean calculus of differences", Lecture Notes inmaking T3 twice disjoint with T1 nl T2. This is done in [3] Computer Science, vol 101, Springer, 1981.without comment. [2] W. G. Schneeweiss, "Calculating the probability of Boolean expres-

So much for the recursion part of the algorithm. The sion being 1", IEEE Trans. Reliability, vol R-26, 1977 Apr, pp 16-22.processofdiscrding tose pars of T2that ar "con- 3] J. A. Abraham, "An improved algorithm for network reliability",inoes (otdisjoidnt wth)s Taris done viathetfollowng IEEE Trans. Reliability, vol R-28, 1979 Apr, pp 58-61.

tamned'i ntdson ih 1isdn l h olwn R. G. Bennetts, "On the analysis of fault trees", IEEE Trans.simple expansion: Reliability, vol R-24, 1975 Aug, pp 175-185.

Page 4: Disjoint Boolean Products via Shannon's Expansion

332 IEEE TRANSACTIONS ON RELIABILITY, VOL. R-33, NO. 4, OCTOBER 1984

[5] Aggarwal, Gupta, Misra, "A simplified method for reliability Winfrid G. Schneeweiss (M'76, SM'83) received the Diplom-evaluation of a communication system, IEEE Trans. Communica- Physicist degree from Frankfurt/Main University, in 1957; the PhDtions, vol COM-23, 1975 May, pp 563-566. degree of Munich Technical University in 1968; and the Venia Legendi for

[6] R. Tiwari, M. Verma, "An algebraic technique for reliability computer science of Karlsruhe University in 1973. He worked with theevaluation", IEEE Trans. Reliability, vol R-29, 1980 Dec, pp Max-Planck society as a computer engineer ('58-'62), the DFVLR (Ger-311-313. man Aerospace Research Establishment) as a control engineer ('62-'69),

[7] R. G. Bennetts, "Analysis of reliability block diagrams by Boolean the Siemens-Corp. as an R&D engineer with emphasis on FTCS ('69-'77).techniques", IEEE Trans. Reliability, vol R-31, 1982 June, pp Since 1977 he has been a professor of computer engineering at the cor-159-166. respondence university at Hagen. He is author of the books Reliability

[8] G. C. Corynen, "A fast procedure for the exact computation of the Theory (1973, in German), Random Processes in Dynamic Systems (1974,performance of complex probabilistic systems", pp 1296-1310 in in German), Reliability Systems Theory (1980, in German), Fundamen-Proc. Intern. ANS/ENS Topical Meeting on Probabilistic Risk tals for Practical Reliability Analyses (1981, in German) and BooleanAssessment, Port Chester, N.Y. 1981. Functions of Indicator Variables with Engineering Applications (forth-

[9] G. C. Corynen (Forthcoming report on computational complexity; coming, in English). He has written about 70 tutorial and research paperssee [8].) in German and English. His main interest is with fault-tolerant computer

systems including reliability, coding, diagnostics and queueing for

AUTHORmultiprocessor systems.

Prof. Dr. W. Schneeweiss; Fernuniversitat; Postfach 940; D 5800 Hagen; Manuscript TR83-003 received 1983 January 11; revised 1984 August 10.

Fed. Rep. GERMANY.

Annual Reliability & Maintainability SymposiumProceedings Price List for 1984

Copies of past Proceedings are available (at the prices given below) at each Symposium or by mail from either of twoplaces. Copies of recent proceedings are also available from the IEEE at prices set by the IEEE.

ASQC National Symposium on Reliability & Quality Control (inTechnical Literature Dept. Electronics)230 West Wells Street First-Eleventh (1954-1965) ............. not availableMilwaukee, Wisconsin 53203 USA Reliability & Maintainability Conference

First-Tenth (1962-1971) ..... ... not available

Ann. Reliability & Maintainability Symp. Annual Symposium on Reliabilityd/o Evans Associates 1966-1971 . . .not available804 Vickers AvenueDurham, North Carolina 27701 USA Annual Reliability & Maintainability Symposium- ~~~~1972 ........not available

1973, 1974, 1975, 1976, 1977, 1978, 1979 . . $18.00 eachThere is a 1501o discount if payment is enclosed. Non- 1980, 1981, 1982, 1983 .. ...... $24.00 each

USA purchasers, please write for details. Price includes 1984 .. ...... $40.00 eachpostage by slow surface mail. 1984 Tutorial Notes .. ...... $24.00 each