Discrete Mathematics & Theoretical Computer Science |
We introduce MSO graph storage types, and call a storage type MSO-expressible if it is isomorphic to some MSO graph storage type. An MSO graph storage type has MSO-definable sets of graphs as storage configurations and as storage transformations. We consider sequential automata with MSO graph storage and associate with each such automaton a string language (in the usual way) and a graph language; a graph is accepted by the automaton if it represents a correct sequence of storage configurations for a given input string. For each MSO graph storage type, we define an MSO logic which is a subset of the usual MSO logic on graphs. We prove a Büchi-Elgot-Trakhtenbrot theorem, both for the string case and the graph case. Moreover, we prove that (i) each MSO graph transduction can be used as storage transformation in an MSO graph storage type, (ii) every automatic storage type is MSO-expressible, and (iii) the pushdown operator on storage types preserves the property of MSO-expressibility. Thus, the iterated pushdown storage types are MSO-expressible.