automaton.is_accessible

Whether all its states are accessible, i.e., all its states can be reached from an initial state.

Preconditions:

  • None

See also:

Examples


In [1]:
import vcsn


The following automaton has states that cannot be reached from the initial(s) states:


In [2]:
%%automaton a
context = "lal_char(abc), b"
$ -> 0
0 -> 1 a
1 -> $
2 -> 0 a
1 -> 3 a


%3 I0 0 0 I0->0 F1 1 1 0->1 a 1->F1 3 3 1->3 a 2 2 2->0 a

In [3]:
a.is_accessible()


Out[3]:
False

Calling accessible returns a copy of the automaton without non-accessible states:


In [4]:
a.accessible()


Out[4]:
%3 I0 0 0 I0->0 F1 1 1 0->1 a 1->F1 3 3 1->3 a

In [5]:
a.accessible().is_accessible()


Out[5]:
True