required input sequences can be applied for checking
an IUT against appropriate (functional or non-
functional) test purposes such as safety, security,
robustness, etc. However, for nondeterministic
FSMs the length of homing and synchronizing
sequences can be exponential w.r.t. the number of
states (Ito and Shikishima-Tsuji, 2004; Kushik and
Yevtushenko, 2013). Correspondingly, additional
research should be performed for efficient derivation
of homing and synchronizing sequences for
nondeterministic FSMs.
In order to simplify the derivation of homing and
synchronizing sequences researchers turn their
attention to so called adaptive sequences that in
many cases can be shorter than the ordinary (preset)
ones. A sequence is adaptive if the next input to be
applied to an IUT is chosen based on the previously
observed outputs, and a sequence is preset if the
outputs need to be observed only after the
application of the whole sequence, or need not to be
observed at all.
Homing and synchronizing sequences are well
studied for deterministic FSMs and deterministic
automata in which outputs are omitted. Both types of
sequences allow to determine the current state of the
machine after the application of the input sequence.
In the case of a homing sequence, the conclusion
about the current FSM state is made based on the
observed output response, whereas for a
synchronizing sequence, the final state is unique
independently of the initial state of the FSM and the
observed output sequence.
For deterministic FSMs as well as for
deterministic automata the length of both homing
and synchronizing sequences is polynomial
(Klyachko, Rystsov and Spivak, 1987; Cerny, 1964;
Hibbard, 1961) when at each state a transition under
each input is defined. Moreover, it has been shown
that for deterministic FSMs the length of a homing
sequence cannot be decreased when considering
adaptive sequences instead of preset (Hibbard,
1961). For nondeterministic machines, preset
homing and synchronizing sequences are known to
have exponential length (Ito and Shikishima-Tsuji,
2004; Kushik and Yevtushenko, 2013).
Nevertheless, it has been also shown that the length
of a homing sequence can be decreased up to
polynomial when considering complete
nondeterministic FSMs (Kushik et al., 2014).
The authors are not aware of any results
regarding the existence check or the derivation of
adaptive synchronizing sequences for
nondeterministic FSMs, except for an idea presented
in (Kushik and Yevtushenko, 2012). In this paper, a
method is presented for checking the existence and
for deriving such adaptive synchronizing sequences
for a nondeterministic FSM that can have an
arbitrary number of initial states. In this case, an
adaptive synchronizing sequence is represented as a
corresponding single-input output-complete acyclic
FSM, introduced in (Petrenko and Yevtushenko,
2005) and hereafter referred to as a Test Case.
In this paper, necessary and sufficient conditions
for the existence of a synchronizing test case are
established. The obtained criterion allows to assess
the complexity of the corresponding procedure as
well as to determine the maximal length (height) of a
corresponding synchronizing test (if it exists). As
this bound is exponential, we show how this
complexity can be decreased and show that for non-
initialized FSMs the problem of checking the
existence of an adaptive synchronizing sequence is
in P. Furthermore, we propose an algorithm for
deriving a synchronizing test case for a
nondeterministic non-initialized FSM with the
polynomial length. The results listed above form the
main contribution of the paper.
The rest of the paper is organized as follows.
Section 2 contains preliminaries. The necessary and
sufficient conditions for the existence of an adaptive
synchronizing test case for a weakly initialized
nondeterministic FSM are established in Section 3.
The complexity of the corresponding procedure is
given in the same section. As this complexity is
shown to be exponential, a novel method is proposed
in Section 4 for nondeterministic non-initialized
FSMs for which the problem of checking the
existence of a synchronizing test case can be solved
in polynomial time. Section 5 concludes the paper.
2 PRELIMINARIES
A weakly initialized Finite State Machine (FSM) S
is a 5-tuple (S, I, O, h
S
, S
in
), where S is a finite set of
states with the set S
in
⊆ S of initial states; I and O are
finite non-empty disjoint sets of inputs and outputs,
respectively; h
S
⊆ S × I × O × S is a transition
relation, where a 4-tuple (s, i, o, s′) ∈ h
S
is a
transition. If | S
in
| = 1 then the FSM S is an
initialized FSM. If S
in
= S the machine is called a
non-initialized machine. An input i is defined at a
state s if there exists a transition (s, i, o, s′) ∈ h
S
.
FSM S = (S, I, O, h
S
, S
in
) is complete if for each pair
(s, i) ∈ S × I there exists a pair (o, s′) ∈ O × S such
that (s, i, o, s′) ∈ h
S
; otherwise, the machine is
partial. FSM S is nondeterministic if for some pair