matrix characterizations of automata

matrix characterizations of automata

Let

A

=

(

S

,

Σ

,

δ

,

I

,

F

)

be a finite automaton. Recall that

A

can be visualized by a

directed graph

G

A

called the

state diagram

of

A

. The nodes of

G

A

are the states of

A

(elements of

S

), and the edges of

G

A

are labeled by the input symbols of

A

(elements of

Σ

).

Suppose

S

=

{

s

1

,

…

,

s

n

}

. For each symbol

a

∈

Σ

, we define an

n

×

n

matrix

M

⁢

(

a

)

over the non-negative integers as follows: the cell

M

i

⁢

j

:=

{

1

if

⁢

s

j

∈

δ

⁢

(

s

i

,

a

)

,

0

otherwise.

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

s

i

to

s

j

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

v

I

and

v

F

to specify

I

and

F

respectively. The

i

-th

component

of

v

I

is

1

if and only if

s

i

is a

start state

. Otherwise, it is a

0

.

v

F

is defined similarly. Thus, the triple

(

M

,

v

I

,

v

F

)

describes

A

.

The following is the state diagram of an automaton with two states

s

1

,

s

2

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

A

M

as follows:

A

M

=

(

S

,

Σ

,

δ

,

I

,

F

)

where

1.

S

has

n

elements

s

1

,

…

,

s

n

;

2.

I

is a subset of

S

such that

s

i

∈

I

iff the

i

-th component of

v

is

1

;

3.

F

is a subset of

S

such that

s

j

∈

F

iff the

j

-th component of

w

is

1

;

4.

for each pair

(

s

i

,

a

)

∈

S

×

Σ

,

δ

⁢

(

s

i

,

a

)

is the subset of

S

such that

s

j

∈

δ

⁢

(

s

i

,

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

homomorphism

from

Σ

*

to

𝔐

⁢

(

n

)

*

, the monoid of

n

×

n

matrices generated by

𝔐

⁢

(

n

)

, where the

multiplication

is defined by the ordinary

matrix multiplication

. In other words, if

u

1

,

u

2

are words over

Σ

,

m

⁢

(

u

1

⁢

u

2

)

=

m

⁢

(

u

1

)

⁢

m

⁢

(

u

2

)

,

the

product

of matrices

m

⁢

(

u

1

)

and

m

⁢

(

u

2

)

. We use the same notation

M

for this

extension

. In the example above, we see that

M

⁢

(

a

2

)

=

(

0

1

0

1

)

,

M

⁢

(

a

⁢

b

)

=

(

1

0

1

0

)

,

and

M

⁢

(

b

2

)

=

(

0

0

0

0

)

.

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

s

i

to

s

j

with label

u

.

Treating

v

I

as a

row vector

and

v

F

as a

column vector

, we get

Lemma 2

.

For any word

u

over

Σ

,

•

the

i

-th component of the row vector

v

I

⁢

M

⁢

(

u

)

is the number of paths from a start state to

s

i

with label

u

.

•

the

j

-th component of the column vector

M

⁢

(

u

)

⁢

v

F

is the number of paths from

s

j

to a final state with label

u

.

•

v

I

⁢

M

⁢

(

u

)

⁢

v

F

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

language

R

over

Σ

is

regular

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

Generated on Sat Feb 10 12:40:10 2018 by

LaTeXML