Title: Deductive tools in insertion modeling verification A.Letichevsky
1Deductive tools in insertion modeling
verificationA.Letichevsky
INTAS Moscow 27-29 August 2007
August 27-29 2007
Moscow meeting
1
August 27-29 2007
Moscow meeting
1
1
2Content
New results in semantics of BPSL
- Specification languages
- Static requirements checking
- Trace generation
New results in tools development
New predicate transformers for inductive proving
Insertion modeling Cybernetics and system
Analyses 4, 2005 (Specification of systems by
means of basic protocols)
August 27-29 2007
Moscow meeting
2
August 27-29 2007
Moscow meeting
2
3Specification languages
- Basic Protocol Specification Language (BPSL) is
the main SL of insertion modeling - Other languages used for industrial projects
- UML
- SDL
- MSC
- Translation to BPSL (presentation of S.Potienko)
- Process language semantics
August 27-29 2007
Moscow meeting
3
4Basic Protocol Specifications
Environment description (structural
requirements) Defines the signature and axioms of
Basic Language, (first order logic language
used for the description of local properties of a
system) environment, and agent attributes The set
of Basic Protocols (local requirements) Define
the transitions of environment with inserted
agents Global requirements Define the properties
of a system in terms of temporal logic (mostly
safety and liveness)
August 27-29 2007
Moscow meeting
4
August 27-29 2007
Moscow meeting
4
4
5Environment description
Types Data types simple int, real, Bool,
intervals, enumerated, symbolic (free terms),
agent behaviors (process algebra), ADT lists
list (m) of t object types functional
(arrays are considered as
functional types) Agent types defined by the
set of typed agent attributes Environment
attributes used as functional symbols (simple,
lists, and objects arity 0) Agent attributes
typed names Instances (for MSC as processes in
BPs) Axioms formulas without attributes
(ADT) Rewriting rule systems equations as in APS
(ADT and normal forms) Initial states formula
of basic language or concrete state
August 27-29 2007
Moscow meeting
5
August 27-29 2007
Moscow meeting
5
6Basic protocol is a process with pre- and
postconditions
Precondition
Postcondition
August 27-29 2007
Moscow meeting
6
August 27-29 2007
Moscow meeting
6
6
6
7Basic protocols
Algebraic representation x list of typed
parameters, P process, and
are pre- and postconditions. Preconditions 1-st
order formula with the following literals State
assumptions (like phone(m, idle)) Linear
inequalities for numeric Equalities for
symbolic Boolean attribute expressions Postcondit
ions 1-st order formula as in precondition
Assignments xy considered as statements xy
Updating lists
August 27-29 2007
Moscow meeting
7
8Semantics of BPSL
August 27-29 2007
Moscow meeting
8
9Partially sequential composition
10Some results on abstractions
A class of concrete implementations Concr(P) is
defined and proved to be direct and inverse
implementations of consistent BPS P. Two classes
Adir(P) and Ainv(P) of direct and inverse
abstract implementations has been defined and
proved to be implementations of consistent BPS
P. Each abstract implementation is an
abstraction of some concrete one. There exist
the most abstract implementation (is an
abstraction of all concrete implementations).
11Abstraction relation on states
Attributed transition systems with the same
attribute labeling and validity
more abstract
12Abstraction relation on systems
Preserve initial states
13Predicate transformers for abstract
implementations
State and precondition were valid before
Only attributes in precondition can change values
Postcondition with assignments
14The applications of BPSL
Formalizing requirements Experience in
Telecommunications, Telematics and other
application domains (projects for Motorola)
Formal description of MPI library
(projects for Intel)
VRS Verification of Requirement
Specifications a tool developed for Motorola
Tools for static and dynamic requirements
checking
Generating tests from requirement specifications
15Static requirements checking
Disjunction of preconditions is valid
- Proving consistency and completeness
- Proving safety
- Computing invariants
Preconditions for BPs (with the same external
actions) must not intersect
16Inductive proving of safety
safety and precondition were valid before
Safety will be valid after
17Dynamic requirements checking
- Concrete trace generator
- Generating traces and checking properties for
concrete models - Symbolic trace generator
- Generating traces and checking properties for
abstract models - Checking safety and reachability
- Generating tests for given coverage criteria
More details in presentation of Letichevsky Jr
18Symbolic trace generation
- Checking applicability of protocol
- Satisfiability of current state and precondition
- Proving existential formula
- Computing predicate transformer
- Proving predicate transformer formula
- Combining numeric and symbolic constraints
- Using data structures (arrays, lists etc.)