Changeset 83


Ignore:
Timestamp:
Apr 5, 2012, 1:59:16 PM (13 years ago)
Author:
syed
Message:

/papers/FDL2012/

Location:
papers/FDL2012
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • papers/FDL2012/FDL2012.tex

    r80 r83  
    3333
    3434
    35  \title{ Compositional System Verification: Exploiting components' verified properties in the abstraction-refinement process}
     35 \title{ An efficient refinement strategy exploiting components' properties in a CEGAR process}
    3636 \name{Syed Hussein S. ALWI, Emmanuelle ENCRENAZ and C\'{e}cile BRAUNSTEIN}
    3737% \thanks{This work was supported by...}}
  • papers/FDL2012/exp_results.tex

    r80 r83  
    1414\midrule
    1515\midrule
    16                & 1 Master-1 Slave   & 308  & 33 442   & 3.64116e+06 & 41.49 \\
    17  Concrete      & 2 Masters-1 Slave  & 453  & 140297   & 2.42518e+11 & 1922.75 \\
    18   Model        & 4 Masters-1 Slave  & 737  & N/A      & N/A         & >3days \\
    19                & 4 Masters-2 Slaves & 911  & N/A      & N/A         & >3days \\
     16               & 1 Master-1 Slave   & 304  & 7207     & 4.711e+3    & 6.36 \\
     17 Concrete      & 2 Masters-1 Slave  & 445  & 24406    & 7.71723e+06 & 35.2 \\
     18  Model        & 4 Masters-1 Slave  & 721  & 84118    & 3.17332e+12 & 2818.3 \\
     19               & 4 Masters-2 Slaves & 911  & N/A      & N/A         & >1 day \\
    2020 \midrule
    2121 \midrule
     
    4848\midrule
    4949\midrule
    50  Concrete Model                     & 822     & 140586      & 3.7354e+07     & 294.6 \\     
     50 Concrete Model                     & 822     & 161730      & 3.7354e+07     & 300.12 \\     
    5151 \midrule
    5252 \midrule
     
    7575\multicolumn{4}{l}{\textbf{\underline{1 Master - 1 Slave :}}} \\
    7676                 & Prop. Selection   & 1    &    2.2     \\
    77  $\phi_1$   & Incremental       & 0    &   18.1        \\
    78             & Standard MC       & -    &   14.9     \\
     77 $\phi_1$   & Incremental       & 0    &    6.3        \\
     78            & Standard MC       & -    &    6.06     \\
    7979\midrule
    8080                 & Prop. Selection   & 0    &     1.0     \\
    81  $\phi_2$   & Incremental       & 467  &   168.0         \\
    82                  & Standard MC       & -    &    14.9      \\
     81 $\phi_2$   & Incremental       & 562  &   200.9         \\
     82                 & Standard MC       & -    &    6.13      \\
    8383\midrule   
    8484\midrule
    8585\multicolumn{4}{l}{\textbf{\underline{2 Masters - 1 Slave :}}}   \\   
    8686                 & Prop. Selection   & 1    &    2.0     \\
    87  $\phi_1$   & Incremental       & 0    &  107.7        \\
    88             & Standard MC       & -    & 1181.8     \\
     87 $\phi_1$   & Incremental       & 0    &   20.4        \\
     88            & Standard MC       & -    &   37.9     \\
    8989\midrule
    9090                 & Prop. Selection   & 0    &    1.0    \\
    91  $\phi_2$   & Incremental       & 0    &  108.5       \\
    92                  & Standard MC       & -    & 1103.3   \\
     91 $\phi_2$   & Incremental       & 74   &  786.3        \\
     92                 & Standard MC       & -    &   39.4    \\
    9393\midrule
    9494\midrule 
    9595\multicolumn{4}{l}{\textbf{\underline{4 Masters - 1 Slave :}}}   \\
    96                  & Prop. Selection   & 1    &    2.1     \\
    97  $\phi_1$   & Incremental       & N/A  & >3 days        \\
    98             & Standard MC       & -    & >3 days     \\
     96                 & Prop. Selection   &  1   &    2.1     \\
     97 $\phi_1$   & Incremental       &  0   &  261.6      \\
     98            & Standard MC       &  -   &  >1 day     \\
    9999\midrule
    100                  & Prop. Selection   &  0    &   1.0 \\
    101  $\phi_2$   & Incremental       &  N/A  &  >3 days   \\
    102                  & Standard MC       &  -    & >3 days \\
     100                 & Prop. Selection   &  0   &   1.0    \\
     101 $\phi_2$   & Incremental       &  0   &   263.5     \\
     102                 & Standard MC       &  -   &   >1 day  \\
    103103\midrule
    104104\midrule
    105105\multicolumn{4}{l}{\textbf{\underline{4 Masters - 2 Slaves :}}}  \\
    106106                                & Prop. Selection   & 1   &  2.2     \\
    107  $\phi_1$   & Incremental       & N/A &  >3 days    \\
    108             & Standard MC       & -   &  >3 days   \\
     107 $\phi_1$   & Incremental       & N/A &  >1 day    \\
     108            & Standard MC       & -   &  >1 day   \\
    109109\midrule
    110110            & Prop. Selection   & 0   &  1.1\\
    111  $\phi_2$   & Incremental       & N/A &  >3 days    \\
    112             & Standard MC       & -   &  >3 days\\
     111 $\phi_2$   & Incremental       & N/A &  >1 day    \\
     112            & Standard MC       & -   &  >1 day\\
    113113\bottomrule       
    114114\bottomrule
     
    132132\midrule
    133133                 & Prop. Selection  &  0          &  1.02     \\
    134  $\phi_3$   & Incremental      & N/A            &  N/A \\
    135                  & Standard MC      & -                         &  N/A    \\
     134 $\phi_3$   & Incremental      & N/A            &  >1 day  \\
     135                 & Standard MC      & -                         &  2645.4    \\
    136136\midrule
    137                  & Prop. Selection   &  0         &   1.01\\
    138  $\phi_4$   & Incremental       & N/A        &   N/A     \\
    139                  & Standard MC       & -          &   N/A    \\
     137                 & Prop. Selection   &  0         &   1.01     \\
     138 $\phi_4$   & Incremental       & N/A        &  >1 day    \\
     139                 & Standard MC       & -          &   1678.1    \\
    140140\bottomrule
    141141
     
    147147
    148148
    149 In the following tables: Table \ref{TabVCI_PI} and Table \ref{TabCANBus}, we compare the execution time between our technique (Prop. Selection), incremental\_ctl\_verification (Incremental) and the standard model checking (Standard MC) computed using the \emph{model\_check} command in VIS (Note: Dynamic variable ordering has been enabled with sift method). For the VCI-PI platform, the global property $\phi_1$ is the type $AF((p=1)*AF(q=1))$ and $\phi_2$ is actually a stronger version of the same formula with $AG(AF((p=1)*AF(q=1)))$. We have a total of 42 verifed components properties to be selected in VCI-PI plateform and for the verification of $\phi_1$ we have restrained the selectable properties only to those without AG prefix. In comparison to $\phi_2$, we can see that, a better set of properties available will result in a better abstraction and less refinement iterations. 
     149In the following tables: Table \ref{TabVCI_PI} and Table \ref{TabCANBus}, we compare the execution time between our technique (Prop. Selection), \emph{incremental\_ctl\_verification} (Incremental) and the standard model checking (Standard MC) computed using the \emph{model\_check} command in VIS (Note: Dynamic variable ordering has been enabled with sift method). For the VCI-PI platform, the global property $\phi_1$ is the type $AF((p=1)*AF(q=1))$ and $\phi_2$ is actually a stronger version of the same formula with $AG(AF((p=1)*AF(q=1)))$. We have a total of 42 verifed components properties to be selected in VCI-PI plateform and for the verification of $\phi_1$ we have restrained the selectable properties only to those without AG prefix. In comparison to $\phi_2$, we can see that, a better set of properties available will result in a better abstraction and less refinement iterations. 
    150150
    151151
    152 In the case of the CAN bus platform, the global property $\phi_3$ is the type $AG(((p'=1)*(q'=1)*AF(r_1=1)) -> AF((s_1=1)*AF(t_1=1)))$ and $\phi_4 = AG(((p'=1)*(q'=1)*AG(r_2=0)) -> AG((s_2=0)*(t_2=0)))$. We have at our disposal 103 verified component properties and after the selection process, 3 selected component properties were sufficient to verify both global properties.
     152In the case of the CAN bus platform, the global property $\phi_3$ is the type $AG(((p'=1)*(q'=1)*AF(r_1=1)) \rightarrow AF((s_1=1)*AF(t_1=1)))$ and $\phi_4 = AG(((p'=1)*(q'=1)*AG(r_2=0)) \rightarrow AG((s_2=0)*(t_2=0)))$. We have at our disposal 103 verified component properties and after the selection process, 3 selected component properties were sufficient to verify both global properties.
    153153
    154154Globally, we can see that our technique systematically computes faster than the other two methods and interestingly in the case where the size of the platform increases by adding the more connected components, in contrary to the other two methods, our computation time remains stable.
  • papers/FDL2012/introduction.tex

    r80 r83  
    2222
    2323
    24 \textbf{\emph{Related Works:}} Xie and Browne have proposed a method for software verification based on composition of several components \cite{XieBrowne03composition_soft}. Their main objective is developing components that could be reused with certitude that their behaviors will always respect their specification when associated in a proper composition. Therefore, temporal properties of the software are specified, verified and packaged with the component for possible reuse. The implementation of this approach on software have been succesful and the application of the assume-guarantee reasoning has considerably reduced the model checking complexity.
     24\textbf{\emph{Related Works :}} Xie and Browne have proposed a method for software verification based on composition of several components \cite{XieBrowne03composition_soft}. Their main objective is developing components that could be reused with certitude that their behaviors will always respect their specification when associated in a proper composition. Therefore, temporal properties of the software are specified, verified and packaged with the component for possible reuse. The implementation of this approach on software have been succesful and the application of the assume-guarantee reasoning has considerably reduced the model checking complexity. A comprehensive approach to model-check component-based systems with abstraction refinement technique that uses verified properties as abstractions has been presented in \cite{LiSunXieSong08compAbsRef}.
    2525
    2626
     
    3333
    3434
    35 Recently, an approach based on abstraction refinement technique has been proposed by Kroening and al. to strengthen properties in a finite state system specification \cite{pwk2009-date}. The method, which fundamentally relies on the notion of vacuity, generally produces shorter and stronger properties. In \cite{Kunz_al11ipc_abs}, a method to formally verify low-level software in conjunction with the hardware by exploiting the Interval Property Checking (IPC) with abstraction technique was proposed. This method improves the robustness of interval property checking when proving long global interval properties of embedded systems.
     35Recently, a CEGAR based technique that combines precise and approximated methods within one abstraction-refinement loop was proposed for software verification \cite{Sharygina_al12PreciseApprox}. This technique uses predicate abstraction and provides a strategy that interleaves approximated abtraction which is fast to compute and precise abstraction which is slow. The result shows a good compromise between the number of refinement iterations and verification time.
     36
     37
     38In \cite{pwk2009-date}, an approach based on abstraction refinement technique has been proposed by Kroening and al. to strengthen properties in a finite state system specification . The method, which fundamentally relies on the notion of vacuity, generally produces shorter and stronger properties. In \cite{Kunz_al11ipc_abs}, a method to formally verify low-level software in conjunction with the hardware by exploiting the Interval Property Checking (IPC) with abstraction technique was proposed. This method improves the robustness of interval property checking when proving long global interval properties of embedded systems.
    3639
    3740
     
    4043
    4144%\subsection{Contribution}
    42 \textbf{\emph{Contribution :}} We would like to contribute to the improvement of the model-checking technique through the combination of the compositional method and the abstraction-refinement procedure which would allow the verification of complex structured systems and cope with the state space explosion phenomenon. Till now, compositional analysis and abstraction-refinement procedure have been essentially explored seperately, hence the desire to investigate the potential of the combination of these two techniques. The research will lead to a proposal of a development and verification process based on association of several components. In this paper we present a strategy to exploit the properties of verified component in the goal of verifying complex systems with a good initial abstraction and eventually being conclusive in minimal refinement iterations.
     45\textbf{\emph{Contribution :}} In this paper we present a strategy to exploit the properties of verified component in the goal of verifying complex systems with a good initial abstraction and eventually being conclusive in minimal refinement iterations. We propose a technique to classify component properties according to their pertinency towards the global property, thus, enabling a better selection of properties for the initial abstraction generation. Futhermore, in the case where the verification is not conclusive, we propose a technique guided by the counterexample given by the model-checker to select supplementary properties to improve the abstraction.   
     46
    4347
    4448In the next section, we will give an overview of our framework and introduce the notations that will be used later. The rest of the paper is organized as follows: section 3 details our strategy of refinement. Section 4 presents the experimentation results and finally, section 5 draws the conclusions and summarize our possible future works.
  • papers/FDL2012/myBib.bib

    r76 r83  
    167167   title = "{Verified Systems by Composition from Verified Components} ",
    168168   booktitle = " In ESEC/FSE 2003: Proceedings of the 11th ACM SIGSOFT Symposium on Foundations of Software Engineering Conference",
    169     pages = {227-286},
     169   pages = {227-286},
    170170   address = "Helsinki, Finland",
    171171   year = 2003,
    172172   publisher = "ACM Press"
    173173}
     174
     175
     176@conference{ LiSunXieSong08compAbsRef,
     177   author = "J. Li and X. Sun and F. Xie and X. Song",
     178   title = "{Component-Based Abstraction Refinement} ",
     179   booktitle = "In Proc. of 10th International Conference on Software Reuse (ICSR)",
     180   pages = {39-51},
     181   address = "Beijing, China",
     182   year = 2008,
     183   publisher = "Springer-Verlag"
     184}
     185
    174186
    175187
     
    297309
    298310
     311@ARTICLE { Sharygina_al12PreciseApprox,
     312    AUTHOR = { Natasha Sharygina and Stefano Tonetta and Aliaksei Tsitovich },
     313    TITLE = { {An Abstraction Refinement Approach Combining Precise and Approximated Techniques} },
     314    JOURNAL = { International Journal on Software Tools for Technology Transfer (STTT) },
     315    VOLUME = {14},
     316    PAGES ={1-14},
     317    YEAR = { 2012},
     318}
     319
     320
    299321@conference{ microsoft04SLAM,
    300322   author = " Thomas Ball and Byron Cook and Vladimir Levin and Sriram K. Rajamani",
     
    324346  YEAR      = { 2009 },
    325347  PUBLISHER = { ACM },
    326   PAGES     = { 1692--1697 },
     348  PAGES     = { 1692-1697 },
    327349}
    328350
Note: See TracChangeset for help on using the changeset viewer.