matrix characterizations of automata


Let A=(S,Σ,δ,I,F) be a finite automaton. Recall that A can be visualized by a directed graphMathworldPlanetmath GA called the state diagramMathworldPlanetmathPlanetmath of A. The nodes of GA are the states of A (elements of S), and the edges of GA are labeled by the input symbols of A (elements of Σ).

Suppose S={s1,…,sn}. For each symbol a∈Σ, we define an n×n matrix M⁢(a) over the non-negative integers as follows: the cell

Mi⁢j:={1if ⁢sj∈δ⁢(si,a),0otherwise.

In other words, M⁢(a) is a matrix composed of 0’s and 1’s, such that cell (i,j) is 1 provided that there is an edge from node si to sj with label a. M may be viewed as a function from Σ to the set 𝔐⁢(n) of n×n matrices whose entries are 1’s and 0’s, mapping a to M⁢(a) just described.

To completely describe A, we use two n-dimensional vectors vI and vF to specify I and F respectively. The i-th componentMathworldPlanetmathPlanetmathPlanetmath of vI is 1 if and only if si is a start state. Otherwise, it is a 0. vF is defined similarly. Thus, the triple (M,vI,vF) describes A.

The following is the state diagram of an automaton with two states s1,s2 over {a,b}, and its description by matrices:

Conversely, given a triple (M,v,w), where M:Σ→𝔐⁢(n) is a function, and v,w are two n-dimensional vectors {0,1}, we can construct an automaton AM as follows: AM=(S,Σ,δ,I,F) where

  1. 1.

    S has n elements s1,…,sn;

  2. 2.

    I is a subset of S such that si∈I iff the i-th component of v is 1;

  3. 3.

    F is a subset of S such that sj∈F iff the j-th component of w is 1;

  4. 4.

    for each pair (si,a)∈S×Σ, δ⁢(si,a) is the subset of S such that sj∈δ⁢(si,a) iff cell (i,j) of m⁢(a) is 1.

Let us look more closely now at the function M. Given a function M:Σ→𝔐⁢(n), we may extend it in a unique way to a homomorphismPlanetmathPlanetmathPlanetmathPlanetmathPlanetmathPlanetmathPlanetmathPlanetmath from Σ* to 𝔐⁢(n)*, the monoid of n×n matrices generated by 𝔐⁢(n), where the multiplication is defined by the ordinary matrix multiplicationMathworldPlanetmath. In other words, if u1,u2 are words over Σ,

m⁢(u1⁢u2)=m⁢(u1)⁢m⁢(u2),

the product of matrices m⁢(u1) and m⁢(u2). We use the same notation M for this extensionPlanetmathPlanetmathPlanetmath. In the example above, we see that

M⁢(a2)=(0101),M⁢(a⁢b)=(1010),and M⁢(b2)=(0000).

The following two lemmas are some consequences:

Lemma 1.

For any word u over Σ, cell (i,j) of the matrix M⁢(u) is the number of paths from si to sj with label u.

Treating vI as a row vectorMathworldPlanetmath and vF as a column vector, we get

Lemma 2.

For any word u over Σ,

  • •

    the i-th component of the row vector vI⁢M⁢(u) is the number of paths from a start state to si with label u.

  • •

    the j-th component of the column vector M⁢(u)⁢vF is the number of paths from sj to a final state with label u.

  • •

    vI⁢M⁢(u)⁢vF is the number of paths from a start state to a final state with label u.

Combining the two lemmas, it is easy to see that

Proposition 1.

A languagePlanetmathPlanetmath R over Σ is regularPlanetmathPlanetmathPlanetmath iff it can be expressed by a triple (M,v,w) described above in the following sense:

R={u∈Σ*∣v⁢M⁢(u)⁢w>0}

where v is written as a row vector, and w is written as a column vector.

Title matrix characterizations of automata
Canonical name MatrixCharacterizationsOfAutomata
Date of creation 2013-03-22 19:02:13
Last modified on 2013-03-22 19:02:13
Owner CWoo (3771)
Last modified by CWoo (3771)
Numerical id 7
Author CWoo (3771)
Entry type Definition
Classification msc 68Q05
Classification msc 68Q42
Classification msc 03D10