deposit_hagen
Publikationsserver der Universitätsbibliothek
Mathematik und
Informatik
Informatik-Berichte 24 – 06/1982
Thomas Brand, Klaus Heidtmann
The Inversion of Sets being Decisive of System Reliability
A new method and its programming
1
1
~
The Inversion of Sets being Decisive of System Reliability
- A new method and its programming -
Thomas Brand and Klaus D. Heidtmann
Abstract
The dependence of system failure on the failures of comp- ponents can be described by the set of the systems cut sets.
Similarly the relationship between the functioning of a system and that of its components is given by the set of its path
{tie) sets. If you are for instance interested in the failure mode of a systan {perhaps in search of its weak points) and the
set of its path sets is known, you have to derive the set of the systems cut sets from it.
As the structural redundancy of a system is uniquely deter- mined by eachof the two sets mentioned above, anyone of them can serve to compute characteristic values of system reli- ability from corresponding values of its components. Thß.
smaller the fundamental sets, the simpler and shorter the com- putation becomes. Therefore it. is expedient anyway with the ex- ceptionof trivial cases to derive the set that corresponds to the given or elaborated set and to choose the smaller one. The derivation of one set from the other is called inversion.
The method of inversion described in this paper has been pro- grarnmed in PASCAL as a systematic and bounded searching algo- We thank Prof.Dr.W.schneeweiß for his valuable suggestions during
rithm. The presentation of a longer and structured version of this program enables the interested user to understand i t and to change i t as required, to translate i t into another lan- guage etc . . The included short form may serve for a quick copy and an easy distribution of the program.
C0NTENTS
Glossary of Notation 1. Introduction
2. Two-State Systems 2.1 Dichotomie Pairs 2.2 Monotony
3. Inversion of Decisive Sets 3.1 Dichotooic Systems 3.2 Monotonie Systems 4. The Program INMIN,
4.1 Description of the Program 4.1.1 0verview •
4.1.2 Description of the Procedures 4.2 Execution and Evaluation of the Program 5. References
3 5
11 1 1 20 32 33 35
36 36
36
37 44 50 6. Appendix with the Source Program and Examples of ProgramRuns 52
Glossary of Notation:
empty set
JN set of positive integers
JN~ set of integers from k to n JN~ = {I C JN
ik
s; III s;n}E
I
P(~) A ~
11is an element of11
difference of sets; A - B := {i I i E A, i (/. B}
complementary set of I for I c JNn wi th respect to JNn ; Y : = JNn - I
potential of JNn ; P(JNn) ={III c JNn}
complement of A for Ac P (JNn) P (JNn) ;
A :
= { I j I C lNn , I ~ A}with respect to
IAI cardinality of A
N. J set of all subsets of JNn with j elements;
N , : = { I j I C JNn , 1 I 1 = j } J
u,n
joint, cut of sets or events K. · component i of a systeml.
event: component K.
l. is intact, failed event: every component.
with I C ]Nn K. l.
:=
n
e1. , eIiEI
==
iEIn
e. l.for i E I
V,T set of all path, cut sets of a system
is intact, failed
<V>,<T> set of all minimal path, cut sets of a monotonic system
set of all indices of components being relevant, ir- relevant with regard to V
E,E event: system is intact, failed. For dichotomic
systems there holds , E
= LJ ( e
I n ey)IET
and for monotonic systems one obtains E
= U
eI,IE<"v>
E= u
eI .IE<T>
iff "if and only if"
x. binary variable
l
x binary vector of dimension n
~= (x1,x2,···,xn)
f(x) Boolean function f : {0,1}n-{0,1}
x.
,f(x)l X
A,
v,
binary complement of x., f(x)
l
vector of the binary complements,
x
:=(x
1,x
2, •••,xn)
logical conjunction ("and") logical adjunction ("or")
1. TntroductiOn
Frequently the problem arises to analyse the reliabiltity of a technical system using the characteristic values for the re- liability of its parts [1,2,3]. In this context a system is a unit consisting of single parts cornmonly called components, whose failure behaviour determines the failure behaviour of the whole system uniquely. A.ny part of a system looked upon as a component may be regarded as a system in its turn con- sisting of some components. and so on. So several levels of sub- systems may be present or can possibly be modelled.
This paper as nearly the whole reliability theory is based upon the assumption that a system_ and its components can only take up one out of two possible states at a time. These states are called "intact" and "failed" or "functioning" and "failed".
It is clear that in many applications especially in Computer Science- 1other applications like "on-off", "active-inactive",
"working to capacit~-not working to capacity", "working method a-working method b i s present", etc. can be more reasonable.
This shows that fundamental parts of reliabilty theory do not only fit to reliability analysis but also to other problems
[4,5]. Applying methods of reliability theory you can for
instance calculate the probability of the occurrence of one out of two states a thing can take up.
Because of the duality ("intact~-"failed") the systems mentioned by reliability theory are called dichotomic [1] or binary [6].
The dependency of the system state from the states of the com- ponents also called the structure of the system can be ex-
pressed by a Boolean function. The variables of this function can take on the values O and 1 and they indicate wither the corresponding component has failed or op~rates. Therefore they are called indicator variables. The function is called struc- ture function and it describes the interference. of binary ran- dom processes.induced by the failure behaviour of the compo- nents.
The expression "dichotomic" (olxo-roµs1v, to split into two parts) refers to another point of view. At any time the set of the n component indices (n E JN) can be partitioned into the set I c JNn of indices of functioning and the set D c JNn of indices of failed components. If at'this time the system is functioning, for graphical purposes I is called a path set or shortly a path and is an element of the set V of all paths.
If in contrast the system failed , D is called a cut set or cut and is contained in the set T of all cuts. Hence every pair of sets I,D containing all paths, cuts at a point of time y ie lds a dis j
o i
ht patition of JNn , and there holds either I E V or D_E T . This bifurcation (disjoint partition, exclusive or) accounts for the expression dichotomy.INn
I , ~\t D
' \
Ie:V v De:T
Fig. 1. Illustration of dichotomy
The structure of a system can be represented not only by the structure function but also by any of the two sets V or T . It is obvious that one of the two sets will do because they are
1 f r. t
comp ementary re ering o or its relevant subset:
I E V iff
Ir/.
T for every I c JNn respec..:tively I E¾ .
As both system representations rest on different intuitions and different mathematical formalisms (on one side function, variable and on the other side set, element and complement), they prove suitable with respect to both subject matter and form for different methods and applications. The Boolean function for example seems far more suitable for reliabiltiy calcula- tions using reduction [7,8,9] or the method of taking expec- tation after transforming. the structure function into its multi- linear form [5,7]. Whereas for instance the method of inclu- sion-exclusion and most approximation methods are much more elegant and straightforward applying the sets derived from dichotomy [4,8,10,11,12]. As anyone of the two sets V and T determines the system structure uniquely, i t must be possible to derive each of them from the other. The same applies to the minimal sets of monotonic systems. The transition from one set to the other is called inversion. It can also be interpreted as the construction of the dual system structure [8]. Inver- sion enables us
tQ
use the smaller of the two sets and so i t prevents us from an unnecessary great amount of computation, drawing etc. This results in advantages like less rounding er- rors, more clearness etc. To compute for example the reliabili- ty of a k-out-of-n system by the improved method of inclusion-exclusion derived in [10,11] you have to sum up and to derive
t (~)
summands from the j=k[nkJ
minimal paths. Using the~ [nk]
minimal cuts of this system you g~t
L_
summands.j=n-k+1
For k = 1 this means 2n - 1 summands in the f irst case and only 1 in the second. But also for 1 < k <
I
one obtains great computational advantages using the cuts instead of the paths.Frequently one of the two sets V and T or <V> and <T>
is given or is obvious from the s9ecification of the system (drawing, description, etc.) but the other set is needed.
In these cases inversion is definitely required. Until now in- version is done by symbolic manipulation of the structure func- tion using for instance De Morgans rools (x
1 x
2 = ~ v x 2 ,
[14,15]. This method is uesful for handcalcula- tions in case of small and simple structured systems (e.g. for f(x) :=x1 (x2 VX3) (X3 vx4) there is I(x)-=x1 v (x2 VX3) v (x3 vx4)
= x1 v x2x3 v X3X 4 = x1 v X3 (x2 v x 4 ) ) . f(x)
x1 X2, X
5 X
4
Fig. 2. Diagrams and Fault Trees of
a) the system with structure function f(x) and b) its dual structure
Since this kind of manipulation is hard to program and consurnes relatively much computation time, there seems to exist no such computer prograrn, although i t turns out tobe indispensable for large systems.
Based on the system representation by sets as intoduced in [10]
a method to invert sets being decisive of system reliability like paths, cuts and their minimal representatives is derived in this paper. Furthermore i t is programed as a searching algo- rithmwith computable bounds. For this we used the SET con-
cept and the prograrnrning language PASCAL. The programs are ex- plained in chapter 3 and 4 and listed in the appendix.
Finally we mention that the inversion algorithrn discussed in this paper can also serve to invert Boolean functions. A mono- tonic Boolean function f shall be given by
f (x)
= V
xII E <V>
and xI : = / \ x. . Assurne that <V> denotes iEI l.
the set of the "smallest" or "minimal" elements of a subset V of P ( JNn) . For this subset V shall hold that I E V and I C J
f O r J C ]Nn imp 1 i es J E V ( <V> :
= {
II
I E V , I - { i } r/. V , i E I } ) .Using <T> the set of the minimal elements of the inverse of V we obtain the inverse Boolean function f of f as
I(x>
=V
XIIE<T>
with XI := / \ X.
iEI l
2. Two-State Systems
This chapter contains the theoretical foundation for the pro- grams, which are discussed and listed in the next chapters. The n components of a system can be represented by their indices.
Thus for simplicity we prefer to replace the components by their indices.
2.1 Dichotomie Pairs
An essential point of this section is to distinguish between two different kinds of complements. That one referring to llin·
is denoted by a bar ference to P(llin)
- n
(I :=lli -I) and the other one with re- is marked by a tilde (Ä : = P (llin) -A) • In the following these two ways of complementation are combined to define a relation representing a subset of the Cartesian pro- duct of the potential P(llin) with itself. To invert a given subset of P (llin) means to construct the subset of P(llin) which is related to the given set as defined in 2.1.1 .
2.1.1 Definition
Two subsets A and B of the potential of llin are said to forma dichotomic pair referring to llin iff for every subset I of there holds either I E A or I E B with - n
I :=lli -I.
We briefly call B the inverse of A and vice versa or say that A and B are dichotomic.
2.1.2 Lemma
For every BCP(llin) let B equal {I!I=llin - I , IEB}.
Then two subsets A and B of P(llin) forma dichotomic pair referring to llin , iff Au
B
= p (llin)This means A and B partition P(llin)
and A n B = cf> •
disjointly.
Proof
Using B defintion 2.1.1 sounds:
A and B forma dichotomic pair with reference to JNn , iff for every I c JNn either I E A or I E B holds. Hence A and B decompose P(JNn) into two disjoint parts.
The following theorem outlines an inversion algorithm. Later on i t will be seen that i t can be applied to invert sets being decisive of system reliability.
2.1.3 Theorem
To every subset A of P(JNn) belongs exactly one subset B so that A and B forma dichotomic pair refer- ring to JNn .
B can be obtained as follows:
Defining Ä : = {II I E P ( JNn) , I
r;.
A} for every subset A ofthere holds A = A and this set (as
-
B) together wi th A forms a dichotomic pair with reference to JNn .Proof
There holds
Ä :
= { I / I C ]Nn , I r;_ A} = { I / I C llin , I f, llin - J , J E A } ( 1 )n n ~
={I/I=JN -J, JClli , Jr;.A}=:A (2)
Because A and A decompose P(JNn) disjointly and B
equals B f or every B c P ( JNn) , · lemma 2. 1. 3 implies that A and B := Ä form a dichotomic pair referring to JNn .
Assume that there exist two inverses of A denoted by B
1 and B2 . Then lemma 2 .1. 3 says A ·u B
1 = A u B
2 = P (JNn) and so we get
B1
=
(AuB1) nB
1
=
(AuB2) nB1=
(Ft:nB1) u (B2 nB1)=cp
uB 2 nB1
=B2 nB1 • In the same way B
2
=
B2 n B1 can be obtained. So we can con- clude . B
1 = B2 . , which obviously implies B 1 = B
2 •
2.1.4 Example
For A = { I
I
I C llin , .l ~ 1 I 1 ~ L} there isA
= ( fI Y
=Y -
I , .l ~ 1 I 1 ~ L, I c llin }=
{I J I cT ,
1 I 1<
n - L or n - l<
1 I 1} (3)2.1.5 Corollary
For every subset I of llin we def ine
{
max { i
I
i € I , i<
max { j J j E llin - I } } max (I) ·-.- 0 , if the above maximum does not exist,
and
I
* : = {
i J i E I , ±<
max ( I ) }{
III - II*I d ( I, I*) :,=
1 II + 1
, if , if
I * * :
= {
iI
i E llin , max ( I )<
i:.. ~ max ( I) + d ( I , I *) } . The lexicographic successor LN of I is given byLN ( I)
=
I * U I ** •The following flow chart illustrates the inversion algorithm for any Ac P ( F ) . During the procedure B grows to become the inverse of A.
S T A R T
I,B:=0
N I:=LN(X)
B:=BU{I}
N
S T p
Fig. 3. Flow chart of the inversion algorithm
2.1.6 Example
For n = 2 and A = { { 1}, { 2}} there is
A
:= { { 2}, { 1}} . Further- more we get~
<jl E
A
cause <jl ~A ,
i. e. B = cj> u { cj)} = { cj)} , { 1 } , { 2} E A cause ~ { 1 } , { 2} EA ,
{1,2}
EA
cause {1,2}~A ,
i.e. B={cj)}U{{1,2}}={q,,JN }, 22.1.7 Criterion
Now we give a criterion to test if a computed set B is the inverse of a given set A.
If B is the inverse of Ac P (JNn) , they must satisfy
I A l + I B l = 2 . n (5)
This holds for dichoto.mic pairs A,B c P (JI:iln) , because A and B forma disjoint partition of P(JNn)
so that
and IBI equals IBI ,
!Al+ IBI =!Al+ IBI = IP(JNn) 1 =2n holds.
In the foregoing example 2. 1. 6 n equals 2 and , 1 A 1 = 1
A
~ 1 = 2n is valid.2.1.8 Lemma
2. 1. 9
For any A,C c P (JNn) with Ac C the inverse of C is a sub- set of the inverse of A , i. e. C c A
Proof
Ac C implies Ac
C •
So the complement of A referring to contains that one of C.Occasionally i t suffices that the inversion of a set Ac P (JNn) refers to a proper subset of ~ , which depends on A and is denoted by RA. In this case one has to invert only a sub- set A' of the potential of RA, where A' consists of all subsets of RA whose joint with any subset of JI:iln - RA is an element of A. The inverse of A' can easily be rnade up to the inverse of A by joining every element of A' with every subset of
Definition
An elernent j E JI:iln is called relevant to A C P ( JI:iln )
'
iffthere exists an IEA with (I-{j}) tA or (IU{j}) tA
.
Elements of JNn not being relevant are said tobe irrelevant.
The set of all elements of lNn being relevant to A is de- noted by RA and the corresponding set of irrelevant elements -RA= JN - RA n is denoted by IA .
2.1.10 Remark
Whenever A and B form a dichotomic pair referring to JNn , eve:ry element of JNn being relevant to A is also relevant to B and vice versa. From now on the reference sets are not explicitly mentioned, when they appear in the context. From 2. 1. 9 it: is clear that for every Ac P (JNn)
is a disjoint partition of
n11 .
Proof
Iff j E :It-ln is relevant to A , there exists an I E A with (I - {j }) f/:. A or (I U {j }) f/:. A . As A and B form a dichotomic pair the last condition is equivalent t6 _ (I - { j}) E B or
( I u { j}) E B . Def ining J : =
I
U { j} f or J E I and J : =I - {
j}otherwise one has found a set J E B with (J - { j}) f/:. B or (J u {j }) r/. B . Starting the other way round with any JE B fol- lowing the above condition one can define I :=
J
u {j} respec- tively I :=J-{j}.2.1.11 Definition
For any Ac P (lNn) A' shall denote the relevant part cf A.
This is the set of all cuts from elements of A. This means
A'
= {
I j I = J n K, J E A, K C RA}and
subsets of RA with
( 6)
A={III=JU"K, JEA', KCIA}. (7)
2.1.12 Lemma
Let RA, IA c :IN n be the sets of the relevant or irrelevant elements of ]Nn to Ac P (JNn) . Furthermore let A' c P (RA) be the relevant part of A
ring to RA' i.e.
-
and A the inverse of
A' ;
{_I Ir= J u K, JE A', K c IA} .2.1.13 Example
A' refer-
( 9)
For n = 4 and A = { { 1 } , { 2 } , { 1 , 3 } , { 1 , 4} , { 2 , 3 } , { 2 , 4} , { 1 , 3 , 4 } , { 2 , 3 , 4 } there is RA= { 1 , 2} , IA = { 3, 4} and A' = { { 1 } , { 2}} ,
A'
= {<j>,{1,2}} (see example 2.1.6). Following the lemma above one obtainsA={III=JUK, JE{<j),{1,2}}, KC {3,4}} ~
2.1.14 Note
={<j),{3},{4},{3,4},{1,2},{1,2,3},{1,2,4},JN } . 4
This example shows that in case of IRAI <n the amount for the inversion of A can be reduced by inverting A' and de-
~iving the inverse of A from the inverse of A' as discussed in lemma 2.1.12. The loop of the flow chart in figure 2 is re- peated 2n times to invert A and 21RAI times to invert A'.
Now we turn to apply our foregoing results to reliabilty an- alysis,especially to sets being decisive of system reliability, which have been already characterised in the introduction.
2.1.15 Definition
Suppose that a system of n components is given by E and
E.
It is assumed that the system as well as any of its com- ponents can only take on one of two possible states at any point oS. time. The components may be numbered from 1 to n . A subset I of JNn is called a path (path set) of the systemiff (eI n ey) CE , and a eut (eut set) iff (er n
ey)-
CE • The set of all paths of a system is denoted by V and the set of all its cuts by T. HenceV : = { I j I C JNn , (er n eI) CE}
and
T :
= {
rI
r c JNn , (er n ey) cE}
( 10)
. ( 11 )
A system is said tobe dichotomic iff V and T forma dicho- tomic pair referring to JNn . The components with indices being relevant to V or T are also named relevant and all the o_thers are called irrelevant. A system without relevant components is trivial.
The reliability R of a system as the probability that event E occurs can be expressed by
R := Pr{E} =
L
Pr{eI n eI}IEV
( 12)
( 13)
Similarly the unreliability U of a system is given by
2.1.16 Example
For i = 1 , 2 , 4 , 5 let e. be the event that unit (component)
l
K. is functioning at a given point of time, i.e. i t can com-
l
municate with PR (process, another device, the outside) if required. Thereby either K
1 or K
2 or K
1 ,K2 and K
3_ (multi- plexer) shall be functioning. K
3 shall be functionable iff K1 and K
2 are so. This system can be illustrated by the fol- lowing diagrarn
PR
Fig. 4. Diagrarn of a dichotomic system
To this system corresponds RT = ]N' 3 , IT = { 4, 5} , T' = {{1},{2},{3},{1,2},{1,2,3}} ,
T={I!I=JUK, JET', KC{4,S}}, !Tl =20.
The inversion of T requires the inspection of 25 = 32 sets.
The inverse of T' can much easier be derived from the 23
= 8 subsets of P(JN3
) . 0ne obtains V' ={{1},{2},JN" } 3·
V={I!I=JUK, JEV', KC{4,5}}, 1v.1
=
12 , and the test IVI +!Tl= 12 + 20 = 25= 2n turns out well. The shorter sum to compute the system reliability is therefore
2.1.17 Remark
For trivial dichotomic systems holds (see 2.1.15 and (6) in 2.1.11)
, if
, if V=
q, ,
and T' looks similar. So, if
V=/-q,,
V equals P(lNn) be-- cause ofV
= {
II
I = J U K, J E V 1 , K C IV} andConsequently a dichotomic system is trivial iff either V=
q,
or V=P(T) and T
=
<t> •2.2 Monotony
Technical devices, which can be either functioning or failed, reasonably don't fail in case the state of a component changes from failed to functioning. Systems with this property are called monotonic [3] inspired by the monotony of their struc- ture function.
Regarding systems not only from a merely operational point of view, e.g. systems whose state and whose component states are
"working method a - worki~ng inethod b is present", i t may hap- pen that the change of a comporients working method from a to b implies the change of the systems working method from b to a. A special class of nonmontonic systems, the so called
k-to-l-out-of-n systems,were discussed and applied to the per- formance evaluation of computer systems in [4].
The reason to dedicate a separable section to monotonic systems is their regular structure, which results in smaller sets being decisive of system reliability and simplifying inversion.
2.2.1 Definition
A subset A of P (llin) is called monotonia, if I c J implies
JE A for all I EA and J C llin .
2.2.2 Remark
If an element I of a monotonic set Ac P ( JNn) is known, we are informed that every subset of JNn embracing I is an element of A too. As the contraposition of this assertion we obtain: If J c mn is not anelement of a monotonic set
Ac P (llin) , then A does not contain any subset of J .
Monotony is a structural property belonging to some subsets of P ( JNn) , whereas dichotomy rep.resents a relatioriship between two subsets of
follows.
P(lli). Nevertheless they can be connected as n
2.2.3 Theorem
If A is monotonic and forms a dichotomic pair with B referring to mn , then B is monotonic too.
Proof
For every subset I of mn which is an element of B and whose complement I therefore is no element of A, the mo- notony of A garantees that every
J
c mn with J c I is no element of A too. Hence every J with I c J is containedin B, which shows the monotony of B.
2.2.4 Note
It follows from 2. 2. 2 that Ac P ( ID"n) contains some elements, which comprises no other elements of A as subsets. Starting with these "minimal" elements of A we can obtain all ele- ments of A by forming any subset of m-n , which embrace at
least one of these "minimal" elements as a subset.
We gather up the "minimal" elements of A to the set <A>
and formalise the above statements by the theorem 2.2.6 using the following definition:
2.2.5 Definition
Let A be a subset of P (ID"n) and for every I c A let DI denote the set of proper subsets of I , DI : = { J
I
J c I, J f: I}.For monotonic A the set
<A> : = {
i l r
E A,Dr
n A = (j> }is called generator system of A and the elements I E <A>
are called minsets (minimal set} or~inimaZ eZements of A.
2 . 2 . 6 Remark
A subset I of m-n is only a minset of a monotonic subset A of P(ID"n) , if every element of I is relevant to A.
Furthermore every i E m- being relevant to A is contained in at least one minset of A. Altogether these holds
R A = ,.,
u
...
I . (21)I E
<A>
Proof
An element i of ]Nn is relevant to a monotonic Ac P ( JNn) if and only if there exists an IEA with (I-{i}) rJ.A and i E I , L e. every relevant i E ]N is contained in some minset of A. All elements i of I are therefore only relevant, if all sets I - { i} are not contained in A . Because of the monotony of A and remark 2.2.2 this is aquivalent to the con- dition that there is no proper subset of I being an element of A. And this is only valid for minsets of A (see 2.2.4, 2.2.5).
2.2.7 Theorem
For every monotonic set A c P ( JNn) there exists exactly one generator system <A> which satisfies
A
= .... U {
II
I c JNn ,I
c I }= ... U { I
u JI
J c JNn } ( 2 2)IE<A> . IE<A>
Proof
Assume that there are two different generator systems of A . then by (20) there would exist an
...
I E A being an element of only one of the two generator systems, so thatDI
n A 'f <P •D"" I n A
=
</l andThe existence of <A> can be concluded by (20) from the exis- tence of A. The joints in (22) are obviously equal and now we show their identitiy with A by two inclusions.
As <A> is a subset of A and A is monotonic, every I c JNn ,
....
...
f or which there eists an I E <A> wi th I c I , is an element of A.
For every I E A there holds DI n A = <P or DI n A :(= <P , i.e. I
is an element of A or there exists a proper subset J
1 E A of I
.
Once more there holds J1 E <A> or there exists a pro- per subset J
2 E A sists of at most n resul ts D J n A
=
<j>n
of
there exists a number
J1 and so on. Since every IEA con- elements, at least after n steps there
(as J = </> ) • Hence f or every n
k E JNn , so tha t Jk E A and
IEA
Therefore Jk is an element of <A> and I is an element of the joint in (22).
2.2.8 Corollary
Since any monotonic set can be uniquely represented by its ge- nerator system as stated by theorem 2.2.7, it suffices for the purpose of inversion to deduce the generator system of the in- verse from the original generator system. This can be done by the following inversion algorithm (see figure 5) for monotonic sets. Thereby the set C with elements Ci equals the in- verse <A> of <A> when the algorithm ends. At the beginning the elements of <A> were complemented with reference to JNn and the complernents Ai were arranged according to size with indices from 1 to d.
Remark 2.2.6 enables us to invert with regard to RA instead of JNn if irrelevant components occur. Another essential fa- cilitation to the inversion of monotonic sets A can be ob- tained by upper and lower bounds to the size of the elernents
..,
of <A> . Let m E JNn be f or instance a lower bound, then the search for elements of the inverse does not start with I :=</>
but wi th I : = ~ . The same applies to an upper bound.
N
. \OOP 2
---
iLOOP 3
l
N
N
STAR T
y
i:=min{j/ IÄ-1;;: 1 Il}-1 ---·---. --· .
i. i: :::Q __
. i_;_==i_tL
i=JC r
y
'. C-:-=CU{I}
I= JNn
y
S T O P
I:=LN(I)
N
L00P 1
N
N
Fig. 5 Flow chart of the inversion algorithm for generator systems of monotonic sets
2. 2. 9 Lemma
For non empty monotonic A c P ( JNn) m : = min { j
I
N . c A}J
and
n C :=
LJ
j
=
m N. Jdefine
( 22)
Then the monotony of A implies C c A and Lemma 2. 1 . 8 - ~
yields Ac C
From example 2. 1. 4 wi th L = n we obtain
~
1 nun
C={I ICJN, n-m<III}= N . • j=n-m+1 J
Consequently, every element of
A,
~ also the minimal, ought to have more than n - m elements, so that a lower bound for the size of elements of the inverse is n-- m + 1 •With
.e. : = min { 1 I 1 1 I E <A> } and
n
G :=
u
j=l N. J
(23)
;:. =-
A is a subset of G and 2. 1 • 8 yields G c A . Example 2. 1 . 4 presents
n , n-l<III}=
U
j=n - l + 1
N. • J
Thus every minset of A contains at most n - l + 1 elements.
An upper bound of the inversion alg_orithm for monotonic sets is therefore gi ven by n -
.e.
+ 1 •2. 2. 10 Remark
The lower bound derived above is accurate. This means that at least one of the wanted sets has cardinali ty n - m + 1 • Star-e- ting the search with n - m + 1 instead of cp saves to form and evaluate
~
[ni)L
sets, but needs to compute m.i=O
To find out the parameter l for the upper bound is easy, be- cause you have just to compute the cardinality of the smallest given set. But the upper bound may be much greater than the cardinality of the greatest wanted set. In this case no sa-
~
n (ni)vings may occur, though there were
L
less sets in- i=n-l+2spected. Experimentaldata for the efficiency of the bounds are tobe found in chapter 5. Especially for k-of-n systems both bounds were equal to n - k + 1 and the inversion algo- rithm is optimally bounded.
2.2.11 Note
The_question how many elements can at most belang to a minset of a monotonic system A of P(JNn) , leads us to a criterion, which can serve as a stopping condition or as a plausibility
control. In case of I E <A> there holds II 1 ~ 1 <A> 1 • So if all the minsets of A with cardinality less or equal to
l<A>f are found the computation can stop. Since the algo-
rithm runs without this stopping condition i t can be tested, if every resulting minset satisfies this last inequality.
This condition is obviously only relevant, if the cardinality of A is smaller than n . As a stopping condition i t pre- vents us from the unnessecary inspection of
t [~]
sets with p=
n i=l<A>!+1-respectively p = n - l + 1 .
Proof
Since any element of a minset I of A is relevant by 2.2.6, I - { i} is not in A f or every i E I and thus
I
u { i}=
I - { i}is an element of A. Because of the monotony of A and the relevance of the elements of I there exists f or every i E I a J. ]. c
I
wi th J..
]. U { i} E ~> and thus III ~ 1 <A>I holds.2.2.12 Rernark
The flow chart of 2.2.8 can alternatively be filled up by the subprograms (see chapter 3):
COMPUTE rn, l,rnax{ l I I j I E <A>:}.
Using m :
=
n - rn + 1 , s : = max{ l I 1 1 I E <A>} ( 2 4) and OG :=rnin{n - l + 1,s} the program (25) can start withI = llin and stop if I equals {n - l + 1, ... ,n}, {s, ... ,n}
or {OG, ••• ,n}.
Altogether Loop 1 must be repeated only
of 2n times.
L
OG(j)
times instead j=rnSTART
m:=n-m+1 OG:=min{.R,s}
COMPUTE(A)
. . .
l ::IN
m,C:=JJ!
.
•LOOP1:
.
C:=Cu{i}
.
• •
I:= IN~
STOP
Fig. 6. Flow chart of the inversion algorithm with upper and lower bounds
2.2.13 Applications
Let <V> denote the set of minpaths V i , i = 1 , ... , 1 <V> 1 , of a monotonic system. Applying the summation rule of Poincare- Sylvester yields
l<V>I
R
=
Pr { E}=
Pr {U
e i}i=1 l<V>I
=
L
j=1
-1
L
IEN.
J
Pr{
n
e }=
iEI Vi
l<V>l
L
(-1)j-1Lj=1 IEN.
J
( 2 6)
Pr{e }.
u v.
iEI l.
Using the set <T> of mincuts T. , i,= 1 , ••. , 1 <T> 1 , one obtains
l.
in the same way for the unreliability of a monotonic system
(U
= ] -
R)l<T>I
U=
L
(-1)j-1L
Pr{eU
T.} •j=1 IEN. iEI i
J
( 28)
How to compute the (un-)reliability of a particular class of non-monotonic systems is shown in [4].
Using every time the formula with the smaller upp~r index of surnrnation 12 1 <V>I - 2 1 <T> 1 1 less surnrnands need to be computed.
2.2.14 Example
Fig. 7. System of two parallel bridge structures
For this system of two parallel bridge structures with 5 com- ponents each i t is easJ to see that
<V>
= { {
1 , 4 } , { 2, 5 } , { 6, 9 } , { 7 , 10 } , { 1 , 3 , 5 } , { 2 , 3 , 4} , { 6 , 8, 10 } , {7,8,9}}and thus 1 <V> 1
=
8.There holds 1 <T> 1
=
1 6 and so1 2 1 <V> 1 - 2 1 < T> 1 1 = 2 1 6 - 2 8 = 6 5 6 80 •
Applying the forrnula of Poincare -Sylvester it is advantagous to use (27) instead of (28) in this case.
3. Inversion of Decisive Sets
The inversion algorithrr. was completely described in chapter 2.1 (see flowchart in figure 2 and the corresponding pages). By directly translating that algorithm into a computer program, adding input and output statements we obtained the following program which is a very short version of the actual program INMIN shown in appendix A. As mentioned earlier (see abstract) this short version shall offer to the user the possibility of a quick testing and understanding of the basic algorithm.
The input-string to this program must be in the following form:
the dimension n of the underlying system (1<=n<16) all path sets (respective cut sets), where each set is closed in brackets and the indices are each separated by a comma.
the character 'E' remarking the end of the input-string.
Example:
Input-format for example 2.1.16 to invert T' into V' 3(1) (2) (3) (1,2) (1,2,3)E
Don't use any blank!
PROGRAM INMIN C INPUT, OUTPUT);
<•---•)
CONST TYPE VAR
D = 16; G = 243;
Z = 1 •• D; B = 1 •• G; M = SET Of Z; V= ARRAY[B] OF M;
YA, VB: V; BA,BB,BC,BD: B; DA: INTEGER; DB : Z; ZA: O •• D;
WB, WD : BOOLEAN; ~A : M; CH: CHAR;
FUNCTION SUC( VAR MB : M ): M;
VAR DC, DD: O •• D; DE: Z; WD: BOOLEAN;
BEGI~ OD:= ZA; DC:= DA; WD:= FALSE;
WHILE CDC>= 1 ) AND NOT WO DO BEGIN IF DC IN ~B THEN
BEGIN )F DC < (DA -ZA +OD) THEN END;
END;
MB:= MB -[DC];
DC:= DC -1;
WD:= TRUE ELSE DO:= DD-1;
IF WD THEN DE:= DC +2 FOR DC:= DD TO ZA DO
ELSE BEGIN ZA:= ZA +1; OD:= 1; DE:= 1; END;
BEGIN ~B:= MB +[DEJ; DE:= DE +1; END;
SUC := MB;
END;
BE6IN
<•---..-.----
Read_Sets --~---~---~---•) READ(DA); READ(CH); BA:= O; 88:= 0;WHILE CH<>
•e•
DO BEGlN ~A:= C ];WHILE CH<> •)• 00
BEGIN READ(DB); MA:= MA +[DB]; READ{CH); END;
BA:= BA +1; VA[BA]:= MA; READ(CH); END;
<•---~-- Comple
•ent VA---•)
FOR BC:= 1 TO BA DO FOR OB:= 1 TO DA DO
lF DB IN VA[BCJ THEN VA[BC]:=VA[BCJ -CDBl ELSE YA[BCJ:= VA(BCJ +[DB];
(•--- 6enerate Inverted Sets---~---*) MA:= [ ];
wo:=
FALSE; ZA:= O;WHILE NOT WD DO
BEGIN BC:= 1 ; WB:= TRUE;
END;
WHILE ( BC <=BA) AND WB DO
IF MA=VA[BCJ THEN WB:= FALSE ELSE BC:= BC +1;
lf WB THEN BEGIN BB:= BB +1; VB[BBJ:= MA; END;
lf ZA=DA THEN WD:= TRUE ELSE MA:= SUCCMA);
<•---~---- Write Sets---,_.~---~---•)
FOR BC:= 1 TO BB DO BEGIN BD:= O; WRITE(•( ' ) ; FOR DB:= 1 TO DA DO IF DB IN VB[BC] THEN
BEGIN IF BD > 0 THEN WRITEC•, •); BD:= BD +1; WRITE(DB:2); END;
WRITE(•) ' ) ; END; WRITELN;
END.(•--- IN
MIN---~---~---•)
Application for example 2.1.16 Syste•: SIE~ENS 7.738 BS 2000
Inversion T ---> V :
(OUT) PASCAL PROGRAM INMIN START AT 00008190 BEGCODE =00008000
(IN) 5(1)(2)(3)(1,2)(1,4)(1,5)(2,4)(2,5)(3,4)(3,5)(1,2,3)(1,2,4)
(OUT)
(OUT)
( ( ( (
(1,2,5)(1,4,5)(2,4,5)(3,4,5)(1,2,3,4)(1,2,3,5)(1,2,4,5) (1,2,3,4,S)E
1 ) 2 , 2 , 1 ,
C 5 ) 4 , 2 ,
2 )
(
5 ) 3 ,
(
1 ,
(
5 )
1 ,
2 ,
1 ,
C 4 )
3 ) 2 ,
1 ,
( (
3 , 2 ,
1 , 1 ,
4 ) 3 ,
5 ) 4 r
4 ,
( 2 , 5 )
5 )
4 )
RUNTirlfE : 0 SECONDS + 106 MILLISEC
Inversion
r• ---> v•:
(OUT) PASCAL PROGRAM INMIN START AT 00008190 BEGCODE =00008000 (IN) 3(1)(2)(3)(1,2)(1,2,3)E
(OUT) (OUT)
( 1 )
RUNTil'fE :
( 2 )
<
1 , 2.,. 3 ) 0 SECONDS + 40 MILLISEC3.2 Monotonie Systems
As proved in chapter 2.2 we are allowed to replace the inversion algoritm by the inversion of the corresponding minimal sets
which leads to an enormous reduction of runtime and input expense. This new algoritm is a little more extensive because some new steps are added, but the basic elements (see flowcharts of figures 3 and 5) are still the same.
The new steps are:
1) Sort of <A>
2) The second loop in the flowchart which tests the inclusion of the just considered set I in the array of the already calculated sets C. which are part of the result.
l.
Step 1) is not really a necessary part of the algorithm but i t simplifies the inclusion test I c A. by comparing I only wi th
l.
those elements of A whose size I A. 1 is greater or equal to the sizE
l.
of I, for of course a larger set cannot be a subset of a
smaller one. So the start index i is set on MIN { j I l'Aj 1 >= 1 I 1 } . Step 2) is simply derived from proposition 2.2.8 and guarantees the minimality of the resulting sets in the array C by taking only those sets I (I c JNn ) which do not include any set C.
l.
already been generated to that mornent.
4. The Program INMIN
4. 1 Description of the Program 4.1.1 Overview
The program tobe described in this chapter and being listed in appendix Ais obtained by formulating the
algorithm shown in the flowchart of figure 4 in a computer programming language. The applied procedural technique
(i.e. for each step of the algorithm there exists an own procedure) leads to a clear structure where the individual steps can easily be recognized and separately viewed. As for the programming language we chose PASCAL, for i t provides the Set-concept which allows an easy handling with sets
so that subroutines like initiating of a set type, inserting and eliminating of components, _test of inclusion and
comparision of sets need not be formulated by oneself.
The main program (executive part) consists only of call statements for the individual procedures and some state- ments for generating controlling output.
There are 6 essential procedures of INMIN which will be discussed
i) READ_SETS ii) WRITE_SETS
in the following chapter 5.1.2.
iii) COMPL(EMENT)_MINSETS iv) SORT_MINSETS
V) CALC {ULATE) _BOUNDARIES Vi) GEN(ERATE)_INVSETS
1'·
4.1.2 Description of the Procedures i) Procedure READ-SETS
The input string will be expected in the following order:
1) The dimension n of the system tobe investigated ( 1 <=n<=16)
2) the list of minimal path sets (cut sets respectively);
each component K. is given by its index i
l.
Syntax
each set must be closen in brackets
the indices within each set must be separated by a comma blanks may be inserted wherever wanted, they will be
ignored for the further computation Example
dimens.ion =-3, two minimal path sets (1,2) and (1,3).
The departure from this given syntactical rules leads to a program termination and the message >>>ERROR IN INPUTSTRING<<< will appear on the terminal. If the input is correct then the minimal sets were stored in the one- dimensional array 'MINSETS' which is globally declared and therefore accessible from all over the program.
Each element of MINSETS represents one minimal set.
Besides the reading process the global parameters MAX-MINSET, MIN-MINSET and SETSIZE which will be of interest in the further procedures are computed. By MAX-MINSET we mean the number of components (indices) of the largest set and by MIN-MINSET the number of
components of the smallest set. SETSIZE is an array
dimensioned in the same form as MINSETS giving the corres- ponding size for each set.
ii) Procedure WRITE-SETS (WRITEARRAY, •. , •• )
This procedure prints out the components (sets) of the array given by the actual parameter "WRITEARRAY", especially the array INVSETS containing the inverted sets at the end of the
computation. It also can be used to show meantime states of interesting arrays. By the globally declared constant
"LINELENGTH" the user can determine the width of the printout before starting the program (e.g. i f the output is destined or a printer then a proper value of LINELENGTH would be 132 columns while for a screenplay 72 or 80 columns would be more suitable.
iii) Procedure COMPL (EMENT)_ MINSETS
The sets in MINSETS will be separatly each after another replaced by the corresponding set relative to JNn •
Example: given the set (1,4,5) and a dimension n=8 then the complementedset is computed to (2,3,6,7,8).
i_v} Procedure SORT- MINSETS
Thi~. procedure will be called just after the procedure COMPL-MINSETS and sorts the·components of the array MINSETS according to their size. The applied sorting algorithm is a very simple one and is determined by an iterative selection of the minimum element, i.e. first we select the minimun of all k sets and put it in component 1 of the array, then
l .
11, f
we select the minimum of the remaining (k-1) sets and put that in component 2 and so on until the whole array is in the wanted order. At the end MINSET contains the sets in ascendant order and is now in that proper form which is used for the following essential inversion process (see procedure GEN-INVSETS).
V) Procedure CALC(ULATE)_BOUNDARIES
This procedure is not a necessary part of the inversion algorithm. As shown in chapter 2.2 there exist three boundaries which reduce the extense of the search
(formulated in proceduce GEN_INVSETS). For mostly all applications (inputs) this results in an more efficient programrun and therefore shorter execution time.Fora more
exact evaluation see chapter 5.2.
The main part of the proceduce consists of the computation of the lower boundary while the calculation of the two upper boundaries is only a matter of simple arithmetric operations.
Therefore we will explain the algorithm for the lower bound by the flowchart on the next page.
Example:
Let <V> consist of the two sets {1,2} and {3,4,5}, where
thedi:imension of the underlying system is 5.
==>
MAX MINSETS=
3, MINSET=
2 TESTSET := {1,2,3}path set
=~
TESTSET:=
SUC1 ({1,2,3})=
{1,2,4}path set
=>
TESTSET:=
SUC1 ({1,2,4})=
{1,2,5},I::,."
0
START
TESTSET :
= {
112, ... , MAX_ MINSET SIZE :=
MAX_ MINSETTESTSET:
=
suc2-set-..: •/S TESTSET
a
path~et
1 >--_N _ _ _ _ _ _y
.Does a suc 1-set exist
~y
TESTSET :
= suc
1-setN
S!ZE:
=
SIZE+
1Ooes a
SUC2-setexist ?
y
N
L0W_ B0UNO:=
.Dimension
-S/ZE+1
STOP
1-"Ij 1--'·
tQ
Cl)
..
1-"Ij 1-' 0 ~
::r 0 PI li rt
0 Hi
::r rt
(1)
PI t-' tQ
0 li 1--'·
rt
g
rt 0 0 'O
~
i:::
rt (1)
rt ::r
(D t-'
~
(1)
li U' 0 i:::
::i p__.
path set => TESTSET := suc 1 ( { 1 , 2 , 5} ) = {1,3,4}
no path set => TESTSET
. .-
- SUC2({1,3,4}) = {1,3,4,5}, SIZE = 4 path set => TESTSET. .-
- SUC1 ({1,3,4,5}) = {2,3,4,5}path set => LOW BOUND := 5
-
4 + 1 = 2(there is no SUC1-set for {2,3,4,5})
This means, there will be no set in <C> with less than 2 co:ir..ponents
Some further explanations
It is easily proved that {1,2,3, . . . ,.MAX MINSET} is the set with which to start the algorithrn (because of the mini- mali ty of <V>)
The test "is TESTSET a pathset" is simply performed by comparing TESTSET to all input sets (i.e. sets of <V>).
If any of these sets is a subset of TESTSET then TEST- SET is a path set.
The definition of a SUC1-set follows to the proposition in 2.1.5 with the constraint that the size of the
resulting set is equal to the size of the set for which the SUC1-proceduce has been called. Since one cannot deter~ine before whether there will exist a SUC1-set or not, the proceduce is realized by a boolean function providing the value TRUE if there is still a SUC1-set
and FALSE if not. In the case of TRUE, TESTSET will be set on the found SUC1-set when leaving the proceduce.
The process of finding the SUC1-set can be described as follows:
Since sets have no order according to their components we
define two sets tobe equal if they include the same components (i.e. {1,4,3,2}
=
{2,3,1,4}). But for a better handling with sets we suppose that within a .set thecomponents(indices) are in ascendant order. From that we get that each index has a unique position (e.g. given the set { l, 3, 5, 7} index 7 gets · posi tion 4) • Conversely we know for each position the range of possible indices (e.g.
Let n (dimension) be 5 and the size s of the regarding
sets be 3. Then position 1 can hold indices 1 to 3, position 2 indices 2 to 4 and position 3 the indices 3 to 5). So for computing the SUC1-set for a given set S we first have to find the position (beginning with the greater indices) which can be increased by 1. If there is no such position then S is the last set within the fixed size and the procedure ends with the value FALSE. In the other case we note that position p and eliminate all indices up from p. Then we increase the index of position p by and starting with this index we insert so much components as were eliminated before each time increasing the index by 1.
Example:
Given the set S = {1,2,5,6} and dimension n = 6.
Beginning at the right end we find position 2 as the first one which ca be increased. So we reduce S to {1} and
starting with index 3 we insert three new indices ·so that resulting SUC1-set is computed to {1,3,4,5}.
For explaining the SUC2-set we use the example shown above:
· {1,3,4} was found not tobe a path set. Therefore size 3
=--- --....,..;.__,::
i
cannot be the want~d value and we have to run the al- grithm with all sets of size 4. Of course one can start with {1,2,3,4} and then {1,2,3,5} etc. but using
information of former steps we see that i t is sufficient to take {1,3,4,5} for all lower sets (predecessor sets, analogous to successor sets) are clear tobe path sets because they are greater than sets already tested (e.g.
{1,3,4} being a path set implicates {1,2,3}, {1,2,4}, . . . being a path set because of the strict order beginning with the srnaller sets).
As for the implementation of the SUC2-procedure there is the same difficulty as for SUC1 above so that SUC2 is also realized by a boolean function.
For the computation of the SUC2-set we first determine the greatest index of the given set
s.
If i t is less than n (dimension) we only have to add the next greater index. If not we first have to generate the SUC1-set until this constraint is fulfilled or there is no further SUC1- set. (e.g. S = {1,4,5,6}, n=6 ==> SUC2(S) = {2,3,4,5,6}, for SUC1 (S) = {2,3,4,5}).For computing the two upper bounds we use the known measures NO_MINSETS, DIMENSION and MIN-.MINSET. So UPB 1 and UPB2 are given t o : (see page 26-2;)
UPB1 = DIMENSION - MIN-MINSET + 1 UPB2 = NO-MINSETS
For the actually upper bound UP_BOUND we naturally take the reinimum of the two bounds:
UP-BOUND
=
min. {UPB 1, UPB2}vi) Proceduce GEN(ERATE)· INVSETS
In this proceduce the main parts of the algorithrr: (loop 1,2,3 of flowchart in figure 4) are performed.
Loop 1 means that all sets beginning with {1,2, •.. ,LOW BOUND}
ending with {n-UP_BOUND+1,n-UP_BQUND+2, ... ,n} are built up successively by applying the successor function ,
(described in 2.1.5). Each set then has tobe checked (loop 2 and 3) and if i t stands the tests, a new inverted set is found and is then stored in the array "INVSETS".
Since in any case we have to regard all sets (relating to a fixed size) we don't use the SUC1-proceduce for obtaining the new set. This is done by the recursive proceduce
"GENERATE" which generates all sets of a given size and each time a new set has been built up determines whether i t is valid or not. So the proceduce GEN-INVSETS consists only of k-,.tirnes calling "GENEP.ATE" each time increasing the size by 1; k is given by (UP_BOUND-Low_:souND+1).
Loop 2 need not be explained once more for i t was also part of the short version of INMIN and has the sarne task as was described in there.
Loop 3 is necessary to guarantee the minimalty of the
inverted sets and means that a set will be rejected if i t includes any inverted set stored up to that time.
4.2 Execution and EValuatiöh öf the· Progra:m
For an illustration of INMIN we chose the following 5 examples by regarding that each example can also demonstrate the
effectiveness of at least one of the used bounds (see
procedure CALC_BOUNDARIES). So example 1 is suitable to show the need for the upper bound 1, example 2 for upper bound 2 and example 3 for the lower bound. Examples 4 and 5 were taken to show also that an application of those bounds
must not necessarily resul:t in an significant improvement, which means that the effectiveness of the bounds depends
strongly on the system structure.
For
fwo
exampleswe show the input-string (see procedure Read.SETS) and the corresponding structure diagram (reedes<:>