Back on the
synchronization topic. I've extended the notion of synchronizability of nondeterministic automata to automata with transitions weighted in an arbitrary
semiring.
For preliminaries, a semiring is an algebra K=(K,+,*,0,1) where (K,+,0) is a commutative monoid with neutral element 0, (K,*,1) is a (not necessarily commutative) monoid with neutral element 1, with 0 being an absorbing element and * distributing over +, i.e.,
0a = a0 = 0,
(a+b)c = ac + bc,
a(b+c) = ab + ac
for each a, b, c in K. One usually assumes |K|>1 in order to avoid trivial cases, which in turn implies 0 is different from 1.
As an example, the naturals, the integers, the (nonnegative) rationals and the (nonnegative) reals form semirings with the standard addition and multiplication. Among these guys the integers, rationals and reals form a ring since their additive structure is a group (have inverses). Another useful example is the Boolean semiring {0,1} with addition being disjunction and product being conjunction, i.e. 1+1 = 1 (the other values come from the definition directly: 1+0 = 0+1 = 1 and 0+0 = 0 since 0 is neutral for +, 1*1 = 1, 0*1 = 0, 1*0 = 0 since 1 is neutral for *, 0*0 = 0 since 0 is absorbing for *).
Given a semiring K, and an alphabet A (that is, a finite nonempty set), a K-weighted A-automaton is simply a collection {Ma}a in A of nxn matrices Ma for some integer n>0, with entries in K. That is, to each letter a in the alphabet, a matrix Ma in Knxn is associated.
Usually one also gives an initial and a final vector but that's not needed in the synchronization framework so we omit it now.
Now to each word w=a1...ak a matrix Mw is associated in the uniform way Mw := Ma1Ma2Ma3...Mak. Note that this is the unique homomorphism from A* to Knxn extending the Ma guys.
We call a word w location-synchronizing if for some column index i, the matrix Mw has only zeros but in column i, and in column i each entry is nonzero. If even the entries in column i are all equal, we call w synchronizing. The matrix Mw itself is also called location-synchronizing (synchronizing, resp.)
As examples,
( 1 0 0 )
( 1 0 1 )
( 1 0 0 )
is not (location-)synchronizing since it has nonzero entries in two columns,
( 1 0 0 )
( 0 0 0 )
( 1 0 0 )
is not (location-)synchronizing since it has nonzero entries only in one column (the first one) but in this column a 0 also appears,
( 1 0 0 )
( 2 0 0 )
( 1 0 0 )
is location-synchronizing but not synchronizing and
( 2 0 0 )
( 2 0 0 )
( 2 0 0 )
is synchronizing.
For a semiring K, the K-synchronizability and K-location synchronizability problems are the following:
given a K-weighted automaton, does it possess a (location-)synchronizing word?
In other words, given a finite list of matrices M1, M2, ..., Mk in Knxn, does there exist a (location-)synchronizing matrix of the form M = Mi1Mi2...Mit for some t>0?
Now in the Boolean semiring B, both problems are the same since a column of nonzero elements can only be a column of ones, thus in B, every location-synchronizing matrix is also synchronizing.
It's known for a few years (check the authors' researchgate address
here) that
B-synchronizability is
PSPACE-complete, already for partial automata, i.e. the case where in each matrix, each row contains at most one 1.
Thus we can deduce easily that K-synchronizability and K-location synchronizability is PSPACE-hard for every semiring K.
I've proven only a few things so far:
- If K is finite, then both problems are in PSPACE.
- If K is locally finite and the operators + and * are computable, then both problems are decidable.
- If K is both zero-sum-free and zero-divisor-free, then K-location synchronizability is in PSPACE, thus is PSPACE-complete.
- If the freely generated semigroup over two generators, i.e. {a,b}+ can be embedded into the multiplicative structure of K, then K-synchronizability is undecidable. (Note that in this case K-location synchronizability can be still in PSPACE, e.g. when K itself is the language semiring P({a,b}*) with union as addition and concatenation as product.)
- If the matrix mortality problem is undecidable for K, then both problems are undecidable for K. (that's the case for the integers, showing zero sum can imply undecidability for location synchronizability in semirings that are not locally finite.)
- If the naturals with the standard operations can be embedded into K (i.e. when 0, 1, 1+1, 1+1+1, ... are all pairwise different), then K-synchronizability is undecidable.
Personally I think that this last result is a bit surprising (since e.g. mortality is decidable for the naturals) and its proof is slightly more involved than the others.
More details soon (where "soon" means "within two weeks" now.. really :-) )