Technical Report
Integrating Theorem Proving and Model Checking in {I}sabelle/{IOA}
Author(s): Tobias Hamberger
Year: 1999
Number: TUM-I
Editor:
CR Classification: F.3.0, G.4
CR General Terms: Theory, Verification
Keywords: Isabelle, Integration, Verification, Model Checking, Mucke, Input/Output Automata
Abstract:Isabelle is a generic theorem proving environment which was used
successfully in
recent years for many practical applications.
In particular, the model of
Input/Output-automata in combination
with its formal meta-theory, abstraction
theory and temporal logic
has been embedded in Isabelle/HOLCF. An advantage of
Isabelle is, that
it can cope with arbitrary large systems, even infinite in
the number of states.
A disadvantage is the necessary interaction of the user
during
verification process. On the other hand, model checkers enable
automatical verification, but their use is usually restricted
to small, finite
systems.
In this paper, we present an integrated environment for
specification and verification
of distributed systems in Isabelle. Beginning
with the Isabelle formulation
of I/O-automata, some additional components were
created by the author
and assembled to a consistent tool. Here, we take a
closer look
on the integration of the model checker $\mu$cke as an external
verification tool
for Isabelle.\\
We also present a direct support of the
specification language for I/O-automata
known from literature and we present a
proof tactic for
implementation relations of I/O-automata in Isabelle. The
model checker
$\mu$cke, which is used in this tactic, is integrated in Isabelle
as an oracle.
The usage of the resulting verification environment for reactive
systems
is presented by two examples.
Available as compressed Postscript
BibTeX-Entry:
@techreport{Ham-MC-99,
author = {Tobias Hamberger},
title = {Integrating Theorem Proving and Model Checking in {I}sabelle/{IOA}},
number = {TUM-I},
institution = {Technische Univerit\"at M\"unchen},
year = {1999},
url = {http://www4.informatik.tu-muenchen.de/reports/Ham-MC-99.html},
abstract = {Isabelle is a generic theorem proving environment which was used
successfully in
recent years for many practical applications.
In particular, the model of
Input/Output-automata in combination
with its formal meta-theory, abstraction
theory and temporal logic
has been embedded in Isabelle/HOLCF. An advantage of
Isabelle is, that
it can cope with arbitrary large systems, even infinite in
the number of states.
A disadvantage is the necessary interaction of the user
during
verification process. On the other hand, model checkers enable
automatical verification, but their use is usually restricted
to small, finite
systems.
In this paper, we present an integrated environment for
specification and verification
of distributed systems in Isabelle. Beginning
with the Isabelle formulation
of I/O-automata, some additional components were
created by the author
and assembled to a consistent tool. Here, we take a
closer look
on the integration of the model checker $\mu$cke as an external
verification tool
for Isabelle.\\
We also present a direct support of the
specification language for I/O-automata
known from literature and we present a
proof tactic for
implementation relations of I/O-automata in Isabelle. The
model checker
$\mu$cke, which is used in this tactic, is integrated in Isabelle
as an oracle.
The usage of the resulting verification environment for reactive
systems
is presented by two examples.},
CRClassification = {F.3.0, G.4},
CRGenTerms = {Theory, Verification}}
See also the Isabelle/IOA page