Ignore:
Timestamp:
Apr 4, 2012, 3:21:25 PM (13 years ago)
Author:
cecile
Message:

typos et texte un peu allégé

File:
1 edited

Legend:

Unmodified
Added
Removed
  • papers/FDL2012/framework.tex

    r79 r81  
    33description of our methodology is shown in figure \ref{cegar}.
    44We take into account the structure of the system as a set of synchronous components,
    5 each of which has been previously verified and a set of CTL properties is attached to each component. This set refers to the specification of the component. We would like to verify whether a concrete model, $M$ presumedly huge sized and composed of several components, satisfies a global ACTL property $\Phi$. Due to state space combinatorial explosion phenomenon that occurs when verifying huge and complex systems, an abstraction or approximation of the concrete model has to be done in order to be able to verify the system with model-checking techniques. Instead of building the product of the concrete components, we replace each concrete component by an abstraction of its behavior derived from a subset of the CTL properties it satisfies. Each abstract component represents an over-approximation of the set of behaviors of its related concrete component \cite{braunstein07ctl_abstraction}.
     5each of which has been previously verified and a set of CTL properties is attached to each component. This set refers to the specification of the component. We would like to verify whether a concrete model, $M$ presumably huge sized and composed of several components, satisfies a global ACTL property $\Phi$.
     6%Due to state space combinatorial explosion phenomenon that occurs when verifying huge and complex systems, an abstraction or approximation of the concrete model has to be done in order to be able to verify the system with model-checking techniques.
     7Instead of building the product of the concrete components, we replace each concrete component by an abstraction of its behavior derived from a subset of the CTL properties it satisfies. Each abstract component represents an over-approximation of the set of behaviors of its related concrete component \cite{braunstein07ctl_abstraction}.
    68
    79%\subsection{Overall Description of our methodology}
    8 In CEGAR loop methodology, in order to verify a global property $\Phi$ on a
    9 concrete model $M$, an abstraction of the concrete model $\widehat{M}$ is
    10 generated and tested in the model-checker. As the abstract model is an
    11 over-approximation of the concrete model and the global property $\Phi$ is in the ACTL fragment, if $\Phi$ holds on the the abstract model then it holds in the concrete model as well \cite{clarke94model}. However, if $\Phi$ does not hold in the abstract model then one cannot conclude anything regarding the concrete model until the counterexample, $\sigma$, given by the model-checker has been analyzed.
    12 In this last case, the test of spurious counter-example is translated into a
     10%In CEGAR loop methodology, in order to verify a global property $\Phi$ on a
     11%concrete model $M$, an abstraction of the concrete model $\widehat{M}$ is
     12%generated and tested in the model-checker. As the abstract model is an
     13%over-approximation of the concrete model and the global property $\Phi$ is in the ACTL fragment,
     14As show in \cite{clarke94model} for over-approximation abstraction, if $\Phi$
     15holds on the the abstract model then it holds in the concrete model as well.
     16However, if $\Phi$ does not hold in the abstract model then one cannot conclude anything regarding the concrete model until the counterexample has been analyzed.
     17The test of spurious counter-example is then translated into a
    1318SAT problem as in \cite{clarke00cegar}. When a counterexample is proven to be spurious, the refinement phase occurs, injecting more preciseness into the (abstract) model to be analyzed.
    1419
     
    4045
    4146\subsection{Concrete system definition}
    42 As mention earlier, in our verification methodology, we have a concrete model which consists of several components and each component comes with its specification or more precisely, properties that hold in the component. Given a global property $\Phi$, the property to be verified by the composition of the concrete components model, an abstract model is generated by selecting some of the properties of the components which are relevant to $\Phi$.
    43 
    44 
     47As mention earlier, our concrete model consists of several components and each
     48component comes with its specification.
    4549The concrete system is a synchronous composition of components, each of which
    4650described as a Moore machine.
     
    4852A \emph{Moore machine} $C$ is defined by a tuple $\langle I, O, R,$ $\delta, \lambda, \mathbf{R}_0 \rangle$, where,
    4953\begin{itemize}
    50 \item $I$ is a finite set of boolean inputs signals.
    51 \item $O$ is a finite set of boolean outputs signals.
    52 \item $R$ is a finite set of boolean sequential elements (registers).
     54\item $I$ is a finite set of Boolean inputs signals.
     55\item $O$ is a finite set of Boolean outputs signals.
     56\item $R$ is a finite set of Boolean sequential elements (registers).
    5357\item $\delta : 2^I \times 2^R \rightarrow 2^R$ is the transition function.
    5458\item $\lambda : 2^R \rightarrow 2^O$ is the output function.
     
    5761\end{definition}
    5862
    59 \emph{States} (or configurations) of the circuit correspond to boolean configurations of all the sequential elements.
     63\emph{States} (or configurations) of the circuit correspond to Boolean configurations of all the sequential elements.
    6064
    6165\begin{definition}
     
    7074\subsection{Abstraction definition}
    7175
    72 Our abstraction consists in reducing the size of the representation model by
     76Our abstraction reduces the size of the representation model by
    7377letting free some of its variables. The point is to determine the good set of variable
    7478to be freed and when to free them. We take advantage of the CTL specification
     
    132136%\subsection{Characterization of AKS}
    133137
    134 In an abstract Kripke structure a state where a variable $p$ is {\it unknown}
     138In an AKS a state where a variable $p$ is {\it unknown}
    135139can simulate all states in which $p$ is either true or false. It
    136140is a concise representation of the set of more concrete states in which $p$
     
    151155
    152156\begin{property}[Concretization]
     157\label{prop:concrete}
    153158Let $A_i$ and $A_j$ two abstractions such that $A_j$ is obtained by
    154 concretizing one abstract variable of $A_i$ (resp $A_i$ is obtained by
    155 abstracting one variable in $A_j$). Then $A_i$ simulates $A_j$, denoted by
    156 $A_i \sqsubseteq A_j$.
     159concretizing one abstract variable of $A_i$ (resp. $A_i$ is obtained by
     160abstracting one variable in $A_j$). Then $A_i$ simulates $A_j$ and $A_j$
     161concretizes $A_i$ , denoted by
     162$A_j \sqsubseteq A_i$.
    157163\end{property}
    158164\begin{proof}
    159165As the concretization of state reduces the set of concrete configuration the
    160166abstract state represents but does not affect the transition relation of the
    161 AKS. The unroll execution tree of $A_j$ is a subtree of the one of $A_i$. Then  $A_i$ simulates $A_j$.
     167AKS. The unroll execution tree of $A_j$ is a sub-tree of the one of $A_i$. Then
     168$A_i$ simulates $A_j$.
    162169\end{proof}
    163170
    164 \begin{property}[Compostion and Concretization]
     171\begin{property}[Composition and Concretization]
    165172\label{prop:concrete_compose}
    166173Let $\widehat{M_i}$ be an abstract model of $M$ and $\varphi_j^k$ be a property
    167174of a component $C_j$ of M,  $\widehat{M}_{i+1} = \widehat{M_i}\parallel
    168 AKS(\varphi_j^k) $ is simulated by $ \widehat{M_i}$, $\widehat{M_i}
    169 \sqsubseteq \widehat{M}_{i+1}$.
     175AKS(\varphi_j^k) $ is more concrete that $ \widehat{M_i}$, $\widehat{M_{i+1}}
     176\sqsubseteq \widehat{M}_i$.
    170177\end{property}
    171178
    172179\begin{proof}
    173 By the property of the parallel composition, we have directly  $\widehat{M_i}
    174 \sqsubseteq \widehat{M}_{i} \parallel AKS(\varphi_j^k$.
     180Let $s = (s_i,s_{\varphi_j^k})$ be a state in $S_{i+1}$, such that $s_i\in S_i$
     181and $s_{\varphi_j^k} \in S_{\varphi_j^k}$.
     182The label of $s_{i+1}$ respects the Belnap logic operator. For all $p \in
     183AP_i \cup AP_{\varphi_j^k}$ we have the following label~:
     184\begin{itemize}
     185\topsep -.5em
     186\itemsep -0.5em
     187\item  $\widehat{L}_{i+1}[p] = \top$ iff  p is {\it unknown} in both states or
     188does not belong to the set of atomic proposition.
     189\item  $\widehat{L}_{i+1}[p] = \mathbf{t}$ (or $\mathbf{f}$) iff $p$ is true
     190(or false) in $s_{\varphi_j^k}$ (resp. $s_i$)  and {\it unknown} in $s_i$
     191(resp. $s_{\varphi_j^k}$).
     192\end{itemize}
     193By property \ref{prop:concrete}, $M_{i+1}$ is more concrete than $M_i$ and by
     194the property of parallel composition,
     195$\widehat{M_i} \sqsubseteq \widehat{M}_{i} \parallel AKS(\varphi_j^k$).
    175196\end{proof}
    176197
    177198\subsection{Initial abstraction}
    178 We suppose that our concrete model is a composition of several components and
    179 each component has been previously verified. Hence, we have a set of verified
    180 properties for each component of the concrete model. The main idea of this
    181 technique is that we would like to make use of these properties to generate a
    182 better abstract model. Properties of the components that appear to be related
    183 to the global property to be verified, $\Phi$ are selected to generate the
    184 abstract model $\widehat{M}_i$. This method is particularly interesting as it
    185 gives a possibility to converge quicker to an abstract model that is
    186 sufficient to satisfy the global property $\Phi$.
    187 In the following, we will name primary variables the set of variable that
    188 appears in the global property.
    189 
    190 In the initial abstraction generation, all primary variables have to be
     199Given a global property $\Phi$, the property to be verified by the composition of the concrete components model, an abstract model is generated by selecting some of the properties of the components which are relevant to $\Phi$.
     200%We suppose that our concrete model is a composition of several components and
     201%each component has been previously verified. Hence, we have a set of verified
     202%properties for each component of the concrete model. The main idea of this
     203%technique is that we would like to make use of these properties to generate a
     204%better abstract model. Properties of the components that appear to be related
     205%to the global property to be verified, $\Phi$ are selected to generate the
     206%abstract model $\widehat{M}_i$. This method is particularly interesting as it
     207%gives a possibility to converge quicker to an abstract model that is
     208%sufficient to satisfy the global property $\Phi$.
     209%In the following, we will name primary variables the set of variable that
     210%appears in the global property.
     211In the initial abstraction generation, all variables that appear int $\Phi$ have to be
    191212represented. Therefore the properties in the specification of each component
    192 where the primary variables are present will be used to generate the initial
     213where these variables are present will be used to generate the initial
    193214abstraction, $\widehat{M}_0$ and we will verify the satisfiability of the
    194215global property $\Phi$ on this abstract model. If the model-checking failed and the counterexample given is found to be spurious, we will then proceed with the refinement process.
Note: See TracChangeset for help on using the changeset viewer.