model checking history
TRANSCRIPT
History of Model Checking By : Anit Thapaliya
Department of Computer Science
Kyonggi University, Suwon
South Korea
Background
• Critical system have software controllers.
• Controllers monitor the system based on different
parameters.
Now, Questions is the reliability of controller…?
Reliable …? How
• Decision must be 100% correct
• All possible case must be considered.
Bugs are expensive
• Radiation Therapy Machine
– Error in control software (1985-1987)
– Death of 6 patients due to radiation overdose
• Ariane 5 Rocket
– Error in control software (1996)
– Crashed 36 seconds after lunch
• Intel’s Pentium II Processor:
– Error in source code (1994)
– Loss of 475 million US dollars
Background Before Model Checking
• In general, controller satisfy the requirements.
This process was carried out by use different
test case scenario’s.
Next Goal: Development Effective Software
Background Model Checking
• Now, this process is carried out by creating a
mathematics model that satisfy the
requirement in terms of formal notation.
Model Checking (1996 and 2007 Turing Awards)
M; s |= fM is model
S is any state
F is the specification
Fig: Model Checking Working Mechanism
System Model M
M; s |= f
Specification f
Behind Model Checking Concept
Model Checking (96 and 07 Turing Awards)
Edmund Clarke Allen Emerson Joseph Sifakis
Advantages of Model Checking
• No proofs:
– Algorithmic rather than deductive
• Fast:
– As compare to other rigorous methods like theorem
proving
• Diagnostic counterexamples:
• No problems with partial specification:
• Temporal logics can easily express many concurrency
properties
IDLE
Transition Systems in Model Checking
IDLEInsert_card
PIN
Transition Systems in Model Checking
IDLEInsert_card
PIN TRANSACTIONwrong
correct
Transition Systems in Model Checking
IDLEInsert_card
PIN TRANSACTIONwrong
BALANCE INQUIRY WITHDRAW
correct
withdrawalbal_inquiry
Transition Systems in Model Checking
IDLEInsert_card
PIN TRANSACTIONwrong
BALANCE WITHDRAW
correct
MORE
withdrawalbal_inquiry
Transition Systems in Model Checking
IDLEInsert_card
PIN TRANSACTIONwrong
BALANCE WITHDRAW
correct
MORE
printno
yes
withdrawalbal_inquiry
Transition Systems in Model Checking
IDLEInsert_card
PIN TRANSACTIONwrong
BALANCE WITHDRAW
correct
MORE
printno
yes
withdrawalbal_inquiry
$$
amount
Transition Systems in Model Checking
IDLEInsert_card
PIN TRANSACTIONwrong
WITHDRAW
correct
MORE
printno
yes
withdrawalbal_inquiry
cash
no
$$
amount
BALANCE
Transition Systems in Model Checking
IDLEInsert_card
PINwrong
WITHDRAW
correct
MORE
printno
yes
withdrawalbal_inquiry
cash
no
$$
amount
BALANCE
IDLE PIN TRANSACTION
BALANCE WITHDRAW
MORE $$
Transition Systems in Model Checking
IDLEInsert_card
PINwrong
WITHDRAW
correct
MORE
printno
yes
withdrawalbal_inquiry
cash
no
$$
amount
BALANCE
IDLE PIN TRANSACTION
BALANCE WITHDRAW
MORE $$
Initial state Action
Transition
This types of diagram with state, transition and action is represented as State Transition Diagram or
Transition System or Finite-state machines.
Transition Systems in Model Checking
Future Research in Model Checking
• Combination with Deductive Verification:
– It consists of generating the system and its specification a collection of
mathematical proof obligations. The truth of which conformance of system with
specification using interactive theorem proves, automatic theorem proves.
• It requires user to understand in details why the system works correctly, and
to convey this information to the verification system.
• State Explosion Problem Reduction:
– System having many components making the transition in parallel.
• Breakthrough BDD (Binary Decision Diagram): where transition are
represent implicitly in binary decision diagram.
Thank You !