Model checking a model checker: A code contract combined approach
Model checkers, like any complex software, are subject to bugs. Unlike ordinary software, model checkers are often used to verify safety critical systems. Their correctness is thus vital. Verifying model checkers is extremely challenging because they are always complicated in logic and highly optimi...
Saved in:
Main Authors: | , , |
---|---|
Format: | text |
Language: | English |
Published: |
Institutional Knowledge at Singapore Management University
2010
|
Subjects: | |
Online Access: | https://ink.library.smu.edu.sg/sis_research/5036 https://ink.library.smu.edu.sg/context/sis_research/article/6039/viewcontent/model_checking.pdf |
Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Institution: | Singapore Management University |
Language: | English |
id |
sg-smu-ink.sis_research-6039 |
---|---|
record_format |
dspace |
spelling |
sg-smu-ink.sis_research-60392020-03-12T08:20:05Z Model checking a model checker: A code contract combined approach SUN, Jun LIU, Yang CHENG, Bin Model checkers, like any complex software, are subject to bugs. Unlike ordinary software, model checkers are often used to verify safety critical systems. Their correctness is thus vital. Verifying model checkers is extremely challenging because they are always complicated in logic and highly optimized. In this work, we propose a code contract combined approach for checking model checkers and apply it to a home-grown model checker PAT. In this approach, we firstly embed programming contracts (i.e., pre/post-conditions and invariants) into its source code, which can capture correctness of model checking algorithms, underlying data structures, consistency between different model checking parameters, etc. Then, interface models of complicated data structures and graphical user interfaces (GUI) are built and model checked. By linking the interface models with actual source codes and exhausting all execution sequences of interface models using PAT, we model check PAT using itself! Our experience shows that the approach is effective in identifying common bugs or subtle flaws that result from extremely improbable events. 2010-11-01T07:00:00Z text application/pdf https://ink.library.smu.edu.sg/sis_research/5036 info:doi/10.1007/978-3-642-16901-4_34 https://ink.library.smu.edu.sg/context/sis_research/article/6039/viewcontent/model_checking.pdf http://creativecommons.org/licenses/by-nc-nd/4.0/ Research Collection School Of Computing and Information Systems eng Institutional Knowledge at Singapore Management University Model Check Graphical User Interface Interface Model Liveness Property Model Check Algorithm Programming Languages and Compilers Software Engineering |
institution |
Singapore Management University |
building |
SMU Libraries |
continent |
Asia |
country |
Singapore Singapore |
content_provider |
SMU Libraries |
collection |
InK@SMU |
language |
English |
topic |
Model Check Graphical User Interface Interface Model Liveness Property Model Check Algorithm Programming Languages and Compilers Software Engineering |
spellingShingle |
Model Check Graphical User Interface Interface Model Liveness Property Model Check Algorithm Programming Languages and Compilers Software Engineering SUN, Jun LIU, Yang CHENG, Bin Model checking a model checker: A code contract combined approach |
description |
Model checkers, like any complex software, are subject to bugs. Unlike ordinary software, model checkers are often used to verify safety critical systems. Their correctness is thus vital. Verifying model checkers is extremely challenging because they are always complicated in logic and highly optimized. In this work, we propose a code contract combined approach for checking model checkers and apply it to a home-grown model checker PAT. In this approach, we firstly embed programming contracts (i.e., pre/post-conditions and invariants) into its source code, which can capture correctness of model checking algorithms, underlying data structures, consistency between different model checking parameters, etc. Then, interface models of complicated data structures and graphical user interfaces (GUI) are built and model checked. By linking the interface models with actual source codes and exhausting all execution sequences of interface models using PAT, we model check PAT using itself! Our experience shows that the approach is effective in identifying common bugs or subtle flaws that result from extremely improbable events. |
format |
text |
author |
SUN, Jun LIU, Yang CHENG, Bin |
author_facet |
SUN, Jun LIU, Yang CHENG, Bin |
author_sort |
SUN, Jun |
title |
Model checking a model checker: A code contract combined approach |
title_short |
Model checking a model checker: A code contract combined approach |
title_full |
Model checking a model checker: A code contract combined approach |
title_fullStr |
Model checking a model checker: A code contract combined approach |
title_full_unstemmed |
Model checking a model checker: A code contract combined approach |
title_sort |
model checking a model checker: a code contract combined approach |
publisher |
Institutional Knowledge at Singapore Management University |
publishDate |
2010 |
url |
https://ink.library.smu.edu.sg/sis_research/5036 https://ink.library.smu.edu.sg/context/sis_research/article/6039/viewcontent/model_checking.pdf |
_version_ |
1770575196362637312 |