Ignore:
Timestamp:
Mar 30, 2012, 5:02:20 PM (12 years ago)
Author:
cecile
Message:

correction counter-example and its negation representation

File:
1 edited

Legend:

Unmodified
Added
Removed
  • papers/FDL2012/ordering_filter_properties.tex

    r69 r79  
    1 We take advantage of the specification of verified components to build more
    2 accurate abstractions. The key is how to select the part of the
    3 specification relevant enough to prove the global property. We propose an
     1 We propose an
    42heuristic to order the properties  depending on the structure
    53of each component.
     
    108%\bigskip
    119
    12 The ordering of the properties will be based on the variable dependency graph
     10The ordering of the properties is based on the variable dependency graph
    1311where the roots are primary variables.
    1412The variables in the model are weighted according to their dependency level
    15 \emph{vis-à-vis} primary variables and the properties will be weighted according to the sum of the weights
     13\emph{vis-à-vis} primary variables and the properties is weighted according to the sum of the weights
    1614of the variables present in it. We want to select the properties specifying
    1715behaviors that may have an impact on the global property. We observed that
    1816the more closer a variable is from the primary
    19 variable the more it affects the primary variable. Hence, a property will
     17variable the more it affects the primary variable. Hence, a property
    2018have higher priority according to the number of primary or close to primary variables it
    2119contains.
    2220Moreover, a global property often specifies the behavior at the interface of
    23 components. Typically, a global property will ensure that a message sent is
    24 always acknowledge or the good target get the message. This kind of behavior
     21components. Typically, a global property ensures that a message sent is
     22always acknowledged or the good target gets the message. This kind of behavior
    2523relates the input-output behaviors of components.
    2624We have decided to allocate an extra weight for variables which are present at the interface of a component
    27 whereas variables which do not interfere with a primary variable will be weighted 0.
     25whereas variables which do not interfere with a primary variable are weighted 0.
    2826Here is how we proceed:
    2927\begin{enumerate}
    30 \item Build the dependency graph for all primary variables.
     28\item Build the structural dependency graph for all primary variables.
    3129\item Compute the depth of all variables (DFS or BFS)
    32 in all dependency graph.
     30in all dependency graphs.
    3331Note that a variable may belong to more than one dependency graph, in that case
    3432we consider the minimum depth.
    35 \item Give a weight to each variables (see algorithm  \ref{algo:weight}).
     33\item Give a weight to each variable (see algorithm  \ref{algo:weight}).
    3634\item Compute the weight of properties for each component.
    3735\end{enumerate}
     
    131129
    132130
    133 Each verified properties available pertinence will be evaluated by adding the weights of all the variables in it.
     131Each properties  pertinence is evaluated by adding the weights of all the variables in it.
    134132It is definitely not an exact pertinence calculation of properties but provides a good indicator
    135133of their possible impact on the global property.
    136 After this pre-processing phase, we will have a list of properties $L_\phi$
    137 ordered according to their pertinence in comparison to the global property.
     134After this pre-processing phase, we have a list of properties $L_\phi$
     135ordered according to their pertinence with regards to the global property.
    138136
    139137
     
    143141The refinement step consists of adding new AKS of properties selected according to
    144142their pertinence. This refinement respects items 1 and 2 of definition
    145 \ref{def:goodrefinement}. The first item comes form AKS definition.
    146 <<<<<<< .mine
     143\ref{def:goodrefinement}. The first item comes from AKS definition and the
     144composition property \ref{prop:concrete_compose}.
    147145Adding a new AKS in the abstraction leads to an abstraction where more behaviors
    148146are characterized. Hence there is more constrains behavior and more concretize
    149147states.
    150148
    151 \remark{Cécile}{Mettre definition, property and proof ?????}
    152149
    153150Unfortunately, this refinement does not ensure that the spurious counterexample
    154151is evicted.
    155 As we would like to ensure the elimination of the counterexample previously found,
    156 we filter out properties that don't have an impact on the counterexample $\sigma$ thus won't eliminate it.
     152As we would like to ensure the elimination of the counter-example previously found,
     153we filter out properties that do not have an impact on the counterexample
     154$\sigma$ thus will not eliminate it.
    157155In order to reach this objective, a Abstract Kripke structure of the counterexample $\sigma$, $K(\sigma)$
    158156is generated. $K(\sigma)$ is a succession of states corresponding to the counterexample path which dissatisfies
    159 the global property $\Phi$ as show in figure \ref{AKSNegCex}. We add a last
    160 state $s_t$ where all variable are free({\it unknown}). The tree starting from this
     157the global property $\Phi$ as show in figure \ref{AKSNegCex}. In case where
     158the counter-example exibits a bounded path, we add a last
     159state $s_T$ where all variable are free({\it unknown}). The tree starting from this
    161160state represents all the possible future of the counterexample.
    162161
     
    184183\item $S_{\sigma} = \{s_{i}|s_i\in \sigma\}\cup\{s_T\}$
    185184\item $S_{0\sigma} = \{s_{0}\}$
    186 \item $L_{\sigma} = \widehat{L}_i$
     185\item $L_{\sigma} = \check{L}_i$
    187186\item $R_{\sigma} =  \{(s_{k}, s_{k+1})|(s_{k}\rightarrow s_{k+1})\in
    188187\sigma\}\cup\{(s_{n-1},s_T)\}$
     
    243242property holds then the property will not discriminate the counterexample.
    244243Hence this property is not a good candidate for refinement.
    245 Therefore all properties that are satisfied won't be chosen to be integrated in the next step of refinement. At this stage, we already have a list of potential properties that will definitely eliminate the current counterexample $\sigma$ and might converge the abstract model towards a model sufficient to verify the global property $\Phi$.
    246 
    247 \begin{property}{Counterexample evicted}
     244Therefore all properties that are satisfied are chosen to be
     245integrated in the next step of refinement. At this stage, we already have a
     246list of potential properties that definitely eliminates the current counterexample $\sigma$ and might converge the abstract model towards a model sufficient to verify the global property $\Phi$.
     247
     248\begin{property}{Counterexample eviction}
    248249\begin{enumerate}
    249250\item If {\textbf{$K(\sigma) \vDash \varphi  \Rightarrow AKS(\varphi) $ will
     
    254255\end{property}
    255256\begin{proof}
    256 By construction, $AKS(\varphi)$ simulates all model that verify
    257 $\varphi$. Thus the tree describes by $K(\sigma)$ exists in $AKS(\varphi)$,
    258 $\sigma$ is still a possible path in $AKS(\varphi)$.\\
    259 Conversely $K(\sigma_i)$, where $\varphi$ does not hold, is not simulated by
     257\begin{enumerate}
     258\item By construction, $AKS(\varphi)$ simulates all models that verify
     259$\varphi$. Thus the tree described by $K(\sigma)$ is simulated by $AKS(\varphi)$,
     260it implies that $\sigma$ is still a possible path in $AKS(\varphi)$.
     261\item $K(\sigma)$, where $\varphi$ does not hold, is not simulated by
    260262$AKS(\varphi)$, thus $\sigma$ is not a possible path in $AKS(\varphi)$
    261263otherwise $AKS(\varphi)\not\models \varphi$ that is not feasible due to AKS
    262 definition.
    263 
     264definition and the composition with $M_i$ with $AKS(\varphi)$ will eleiminate
     265$\sigma$.
     266\end{enumerate}
    264267\end{proof}
    265268
    266269The property at the top of the list (not yet selected and excluding the properties
    267270which are satisfied by $K(\sigma)$) is selected to be integrated in the generation of $\widehat{M}_{i+1}$.
    268 We ensure that our refinement respect the definition \ref{def:goodrefinement}.
    269 Moreover, the time needed to build an AKS can be neglected and building the
     271We ensure that our refinement respects the definition \ref{def:goodrefinement}.
     272Moreover, the time needed to build an AKS is neglectible and building the
    270273next abstraction is just a parallel composition with the previous one. Thus the refinement
    271274 we propose is not time consuming.
Note: See TracChangeset for help on using the changeset viewer.