Looking at double sim failures onl;y n the cardinality constrained count
This commit is contained in:
parent
f4cbae815e
commit
c4c79d10a7
@ -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,9 +339,26 @@ 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'.
|
||||||
@ -349,11 +366,13 @@ 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,10 +578,15 @@ 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}
|
||||||
|
|
||||||
@ -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
|
||||||
|
@ -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;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -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}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user