In this section, you will find a short introduction into the syntax and semantics of CTL (Computational Tree Logic), and a description of the state predicates used in INA .
A predicate is a disjunction of conjunctions of possibly negated atoms (disjunctive normal form). An atom consists of a statement of the form
(where
)
As an example for the state predicates used in INA ,
value=number of tokens on a place;
an atom
is then satisfied by all states in which
place p1 contains one or two tokens. For clocked transitions,
restrictions of the clock positioning can be formulated in the same way.
When a predicate is requested at the predicate input file prompt, you can switch to the terminal mode by pressing <esc> . If so, enter the first conjunction of atoms: After entering a place number, the lower and upper bounds are asked for (lower bound, upper bound). With <o> , you can enter unbounded above. You can negate the atom or not (negate the atom?), and then enter another state number, or quit the current conjunction with <Q> . When working with time allocation, further state atoms can be defined with respect to time restrictions.
If you answer the question next conjunction with <Y> , you get to the definition of the next conjunction of (possibly negated) atoms.
Predicates are saved in files with the extension .pdc.
In chapter 6.5.4 on page ff,
you find a set of functions with
which certain predicates can be generated automatically.
In the atomic mode described there,
simpler atoms, which represent the alternative whether a
place is marked or not, can also be used as predicates.
Model checking is based on the structure M=[S,R,P] of a labelled state transition graph where
For a given state, this mapping yields the set of predicates which are satisfied in it.
The relation
means that the CTL-formula f is satisfied
in the state s0 within the given structure M.
We use the following inductive definition of :
There exists an immediate post-state in which f is satisfied.
Along all paths, f1 is satisfied until a state is reached which satisfies f2.
There exists a path, along which f1 is satisfied until a state is reached which satisfies f2
The entering of CTL-formulae is described in chapter 6.5.4
on page ff.
f is satisfied in all post-states
There exists a path which leads to a state in which f is satisfied
f is satisfied in every state on all paths
The semi-formal significance of the individual quantors is underlined by the symbols used: E stands for ``exists'', A for ``always'', X for ``next'', U for ``until'', B for ``before'', F for ``forward'', and G for ``globally''.
© 1996-99 Prof. Peter H. Starke (starke@informatik.hu-berlin.de) und Stephan Roch (roch@...)
INA Manual Version 2.2 (last changed 1999-04-19)