Looking at double sim failures onl;y n the cardinality constrained count

This commit is contained in:
Robin Clark 2010-08-29 12:49:55 +01:00
parent f4cbae815e
commit c4c79d10a7
3 changed files with 57 additions and 24 deletions

View File

@ -204,12 +204,12 @@ We can represent this using a UML diagram in figure \ref{fig:cfg}.
The symbol $\bowtie$ is used to indicate the analysis process that takes a The symbol $\bowtie$ is used to indicate the analysis process that takes a
functional group and converts it into a new component. functional group and converts it into a new component.
This can be expresed as ` $ \bowtie ( FG ) \mapsto DerivedComponent $ '. This can be expresed as $ \bowtie ( FG ) \mapsto DerivedComponent $ .
\begin{figure}[h] \begin{figure}[h]
\centering \centering
\includegraphics[width=400pt,bb=0 0 712 286,keepaspectratio=true]{component_failure_modes_definition/cfg.jpg} \includegraphics[width=400pt,bb=0 0 712 286,keepaspectratio=true]{./component_failure_modes_definition/cfg.jpg}
% cfg.jpg: 712x286 pixel, 72dpi, 25.12x10.09 cm, bb=0 0 712 286 % cfg.jpg: 712x286 pixel, 72dpi, 25.12x10.09 cm, bb=0 0 712 286
\caption{UML Meta model for FMMD hierarchy} \caption{UML Meta model for FMMD hierarchy}
\label{fig:cfg} \label{fig:cfg}
@ -325,8 +325,8 @@ A set of failure modes where only one failure mode
can be active at one time is termed a `unitary~state' failure mode set. can be active at one time is termed a `unitary~state' failure mode set.
\end{definition} \end{definition}
Let the set of all possible components to be $\mathcal{C}$ Let the set of all possible components to be $ \mathcal{C}$
and let the set of all possible failure modes be $\mathcal{F}$. and let the set of all possible failure modes be $ \mathcal{F}$.
\begin{definition} \begin{definition}
We can define a set $\mathcal{U}$ which is a set of sets of failure modes, where We can define a set $\mathcal{U}$ which is a set of sets of failure modes, where
@ -339,21 +339,40 @@ Thus if the failure modes of a component $F$ are unitary~state, we can say $F \
An example of a component with an obvious set of ``unitary~state'' failure modes is the electrical resistor. An example of a component with an obvious set of ``unitary~state'' failure modes is the electrical resistor.
Electrical resistors can fail by going OPEN or SHORTED. Electrical resistors can fail by going OPEN or SHORTED.
%% CUNT
%% CUNT For a given resistor R we can apply the
%% CUNT the function $fm$ to find its set of failure modes thus $ fm(R) = \{R_{SHORTED}, R_{OPEN}\} $.
%% CUNT A resistor cannot fail with both conditions open and short active at the same time! The conditions
%% CUNT OPEN and SHORT are thus mutually exclusive.
%% CUNT Because of this, the failure mode set $F=fm(R)$ is `unitary~state'.
%% CUNT
%% CUNT
%% CUNT Thus because both fault modes cannot be active at the same time, the intersection of $ R_{SHORTED} $ and $ R_{OPEN} $ cannot exist.
%% CUNT
%% CUNT The intersection of these is therefore the empty set, $$ R_{SHORTED} \cap R_{OPEN} \eq \emptyset $$,
%% CUNT therefore
%% CUNT $ fm(R) \in \mathcal{U} $.
%% CUNT
%% CUNT
For a given resistor R we can apply the For a given resistor R we can apply the
the function $fm$ to find its set of failure modes thus $ fm(R) = \{R_{SHORTED},R_{OPEN}\} $. the function $fm$ to find its set of failure modes thus $ fm(R) = \{R_{SHORTED}, R_{OPEN}\} $.
A resistor cannot fail with both conditions open and short active at the same time! The conditions A resistor cannot fail with both conditions open and short active at the same time! The conditions
OPEN and SHORT are thus mutually exclusive. OPEN and SHORT are thus mutually exclusive.
Because of this, the failure mode set $F=fm(R)$ is `unitary~state'. Because of this, the failure mode set $F=fm(R)$ is `unitary~state'.
Thus because both fault modes cannot be active at the same time, the intersection of $ R_{SHORTED} $ and $ R_{OPEN} $ cannot exist. Thus because both fault modes cannot be active at the same time, the intersection of $ R_{SHORTED} $ and $ R_{OPEN} $ cannot exist.
The intersection of these is therefore the empty set, $ R_{SHORTED} \cap R_{OPEN} \eq \emptyset $, %%CUNT The intersection of these is therefore the empty set, $$ R_{SHORTED} \cap R_{OPEN} \eq \emptyset $$,
The intersection of these is therefore the empty set, $$ R_{SHORTED} \cap R_{OPEN} = \emptyset $$,
therefore therefore
$ fm(R) \in \mathcal{U} $. $ fm(R) \in \mathcal{U} $.
We can make this a general case by taking a set $F$ (where $f_1, f_2 \in F$) representing a collection We can make this a general case by taking a set $F$ (where $f_1, f_2 \in F$) representing a collection
of component failure modes. of component failure modes.
We can define a boolean function {\ensuremath{\mathcal{ACTIVE}}} that returns We can define a boolean function {\ensuremath{\mathcal{ACTIVE}}} that returns
@ -559,11 +578,16 @@ components $C_j$ are in
\end{itemize} \end{itemize}
%} %}
%% CUNT
%% CUNT \begin{equation}
%% CUNT |{\mathcal{P}_{cc}SU}| = {\sum^{cc}_{k=1} \frac{|{SU}|!}{k!(|{SU}| - k)!}}
%% CUNT - {\sum{j \in J} {|FM({C_{j})}| \choose 2}}}
%% CUNT \label{eqn:correctedccps}
%% CUNT \end{equation}
\begin{equation} \begin{equation}
|{\mathcal{P}_{cc}SU}| = {\sum^{cc}_{k=1} \frac{|{SU}|!}{k!(|{SU}| - k)!}} |{\mathcal{P}_{cc}SU}| = {\sum^{cc}_{k=1} \frac{|{SU}|!}{k!(|{SU}| - k)!}}
- \sum^{cc}_{p=2}{{\sum{j \in J} {|FM({C_{j})}| \choose p}}} - {\sum_{j \in J} {|FM({C_{j})}| \choose 2}}
\label{eqn:correctedccps} \label{eqn:correctedccps}
\end{equation} \end{equation}
Expanding the combination in equation \ref{eqn:correctedccps} Expanding the combination in equation \ref{eqn:correctedccps}
@ -571,16 +595,22 @@ Expanding the combination in equation \ref{eqn:correctedccps}
\begin{equation} \begin{equation}
|{\mathcal{P}_{cc}SU}| = {\sum^{cc}_{k=1} \frac{|{SU}|!}{k!(|{SU}| - k)!}} |{\mathcal{P}_{cc}SU}| = {\sum^{cc}_{k=1} \frac{|{SU}|!}{k!(|{SU}| - k)!}}
- \sum^{cc}_{p=2}{{\sum{j \in J} \frac{|FM({C_j})|!}{p!(|FM({C_j})| - p)!}} } - {{\sum_{j \in J} \frac{|FM({C_j})|!}{2!(|FM({C_j})| - 2)!}} }
\label{eqn:correctedccps2} \label{eqn:correctedccps2}
\end{equation} \end{equation}
\paragraph{Use of Equation \ref{eqn:correctedccps2} } \paragraph{Use of Equation \ref{eqn:correctedccps2} }
Equation \ref{eqn:correctedccps2} is useful for an automated tool that Equation \ref{eqn:correctedccps2} is useful for an automated tool that
would verify that an `N' simultaneous failures model had complete failure mode coverage. would verify that a single or double simultaneous failures model has complete failure mode coverage.
By knowing how many test cases should be covered, and checking the cardinality By knowing how many test cases should be covered, and checking the cardinality
associated with the test cases, complete coverage would be verified. associated with the test cases, complete coverage would be verified.
\paragraph{N Venn disallowed combinations}
The general case of equation \ref{eqn:correctedccps2}, involves not just dis-allowing pairs
of failure modes within components, but also ensuring that combinations across components
do not involve any pairs of failure modes within the same component.
A recursive algorithm and proof is described in appendix \ref{chap:vennccps}.
\paragraph{Practicality} \paragraph{Practicality}
Functional Group may consist, typically of four or five components, which typically Functional Group may consist, typically of four or five components, which typically
have two or three failure modes each. Taking a worst case of mutiplying these have two or three failure modes each. Taking a worst case of mutiplying these

View File

@ -12,9 +12,12 @@ define f(x) {
# determine how many combinations would be dis-allowed # determine how many combinations would be dis-allowed
# from a cardinality constrained powerset # from a cardinality constrained powerset
# given unitary state failure mode conditions # given unitary state failure mode conditions
define uc(k,c,x) { define uc(c,k,x) {
aa = 0; aa = 0;
for(i=2; i<=k; i++) aa += c * f(c)/(f(i)*f(c-i)); #for(i=2; i<=c; i++) aa += k * f(k)/(f(i)*f(k-i));
if ( c>2 ) {
return aa + uc(c-1,k,x);
}
return aa; return aa;
} }
@ -22,19 +25,19 @@ define uc(k,c,x) {
# how many combinations of cardinality k # how many combinations of cardinality k
# can we have from c number of components # can we have from c number of components
# with x number of failure modes # with x number of failure modes
define ccps(k,c,x) { define ccps(c,k,x) {
return f(c*x)/(f(k)*f(c*x-k)) return f(k*x)/(f(c)*f(k*x-c))
} }
define us(k,c,x) { define us(c,k,x) {
a=0; a=0;
for(i=1;i<=k;i++) a += ccps(i,c,x); for(i=1;i<=c;i++) a += ccps(i,c,x);
# a now holds all combinations # a now holds all combinations
# we must now subtract those combinations # we must now subtract those combinations
# dis-allowed under unitary state conditions. # dis-allowed under unitary state conditions.
a -= uc(k,c,x); a -= uc(cc,c,x);
return a; return a;
} }

View File

@ -634,15 +634,15 @@ reproduced below to verify this.
} }
\begin{equation} \begin{equation}
|{\mathcal{P}_{cc}SU}| = {\sum^{k}_{1..cc} \frac{|{SU}|!}{k!(|{SU}| - k)!}} |{\mathcal{P}_{cc}SU}| = {\sum^{k}_{1..cc} \frac{|{SU}|!}{k!(|{SU}| - k)!}}
- \sum^{p}_{2..cc}{{\sum^{j}_{j \in J} \frac{|FM({C_j})|!}{p!(|FM({C_j})| - p)!}} } - {{\sum^{j}_{j \in J} \frac{|FM({C_j})|!}{2!(|FM({C_j})| - 2)!}} }
\label{eqn:correctedccps2} \label{eqn:correctedccps2}
\end{equation} \end{equation}
} }
{ {
\begin{equation} \begin{equation}
|{\mathcal{P}_{cc}SU}| = {\sum^{k}_{1..cc} \frac{|{SU}|!}{k!(|{SU}| - k)!}} |{\mathcal{P}_{cc}SU}| = {\sum^{cc}_{k=1} \frac{|{SU}|!}{k!(|{SU}| - k)!}}
- \sum^{p}_{2..cc}{{\sum^{j}_{j \in J} \frac{|FM({C_j})|!}{p!(|FM({C_j})| - p)!}} } - {{\sum^{j}_{j \in J} \frac{|FM({C_j})|!}{2!(|FM({C_j})| - 2)!}} }
%\label{eqn:correctedccps2} %\label{eqn:correctedccps2}
\end{equation} \end{equation}
} }
@ -658,7 +658,7 @@ Populating this equation with $|SU| = 6$ and $|FM(C_j)|$ = 2.
\begin{equation} \begin{equation}
|{\mathcal{P}_{2}SU}| = {\sum^{k}_{1..2} \frac{6!}{k!(6 - k)!}} |{\mathcal{P}_{2}SU}| = {\sum^{k}_{1..2} \frac{6!}{k!(6 - k)!}}
- \sum^{p}_{2..2}{{\sum^{j}_{1..3} \frac{2!}{p!(2 - p)!}} } - {{\sum^{j}_{1..3} \frac{2!}{p!(2 - p)!}} }
%\label{eqn:correctedccps2} %\label{eqn:correctedccps2}
\end{equation} \end{equation}