nLab
nondeterministic automaton

Non-deterministic automata

Definitions

(For the moment, mostly as an example of a coalgebra for an endofunctor and to start discussion of models for non-determinism.)

This will give the classical definition as a non-deterministic state-based system and then show how to turn that form into the coalgebraic form.

Definition

A non-deterministic automaton consists of the following data:

  • a set of states, Q;

  • a set, Σ, of input symbols ;

  • a function, δ:Q×Σ𝒫(Q), called the next state relation,

and

In the usual interpretation if the automaton is in state q, and is ‘given’ the input σ, then it changes to being in one of the states in the subset, δ(q,σ), of Q.

The ‘final’ predicate, of course, returns if a state is a final state and otherwise. (There will, in general, be a set of final or ‘accept’ states.)

(For the moment we will not look at the links between automata and languages.)

Currying δ

The first step in transforming this to the coalgebraic form is to curry δ, so as to obtain it in the form δ:Q𝒫(Q) Σ. We thus have for a state, qQ, δ(q,):Σ𝒫(Q). We then also have a product function

α=δ×(final):QQ Σ×bool.\alpha = \delta \times (final) : Q \to Q^\Sigma\times bool.

If we now write HQ=𝒫(Q) Σ×bool, we get a functor (for you to check) H:SetSet and the non-deterministic automaton corresponded precisely to a coalgebra, (Q,α), for H.

References

For a summary of automata theory , look at the Wikipedia.

For a thorough treatment, see

or other texts on the subject.

For the coalgebraic treatment, this is discussed in:

  • A.Kurz: Coalgebras and Modal Logic. Course Notes for ESSLLI 2001, Version of October 2001. Appeared on the CD-Rom ESSLLI’01, Department of Philosophy, University of Helsinki, Finland, available from site.