Kleene star of an automaton

Kleene star of an automaton

Let

A

=

(

S

,

Σ

,

δ

,

I

,

F

)

be an

automaton

. Define the

Kleene star

A

*

of

A

as an automaton with

ϵ

-transitions (

http://planetmath.org/AutomatonWithEpsilonTransitions

)

(

S

1

,

Σ

,

δ

1

,

I

1

,

F

1

,

ϵ

)

where

1.

S

1

=

S

∪

⋅

{

q

}

(we either assume that

q

is not a symbol in

Σ

, or we take the

disjoint union

)

2.

δ

1

is a

function

from

S

1

×

(

Σ

∪

⋅

{

ϵ

}

)

to

P

⁢

(

S

1

)

given by:

–

δ

1

⁢

(

s

,

ϵ

)

:=

I

if

s

=

q

,

δ

1

⁢

(

s

,

ϵ

)

:=

{

q

}

for any

s

∈

F

,

–

δ

1

⁢

(

s

,

α

)

:=

δ

⁢

(

s

,

α

)

, for any

(

s

,

α

)

∈

S

×

Σ

, and

–

δ

1

⁢

(

s

,

α

)

:=

∅

otherwise.

3.

I

1

=

F

1

=

{

q

}

Basically, we throw into

A

*

all transitions in

A

. In

addition

, we add to

A

*

transitions taking

s

to any initial states of

A

, as well as transitions taking any final states of

A

to

s

. Visually, the

state diagram

G

A

*

of

A

*

is obtained by adding a node

q

to the state diagram

G

A

of

A

, and making

q

both the start and the final node of

G

A

*

. Furthermore, add edges from

q

to the start nodes of

G

A

, and edges from the final nodes of

G

A

to

q

, and let

ϵ

be the label for all of the newly added edges.

Proposition 1

.

L

⁢

(

A

)

*

=

L

⁢

(

A

*

)

.

Proof.

Clearly

λ

∈

L

(

A

)

*

. In addition, since

I

1

=

F

1

,

λ

∈

L

⁢

(

A

ϵ

*

)

=

L

⁢

(

A

*

)

. This proves the case when the word is empty. Now, we move to the case when the word has non-zero length.

•

L

⁢

(

A

)

*

⊆

L

⁢

(

A

*

)

.

Suppose

a

=

a

1

⁢

a

2

⁢

⋯

⁢

a

n

is a word such that

a

i

∈

L

⁢

(

A

)

, then we claim that

b

=

b

1

⁢

b

2

⁢

⋯

⁢

b

n

, where

b

i

=

ϵ

⁢

a

i

⁢

ϵ

, is accepted by

A

ϵ

*

. This can be proved by

induction

on

n

:

(a)

First,

n

=

1

. Then

δ

1

⁢

(

q

,

b

1

)

=

δ

1

⁢

(

δ

1

⁢

(

q

,

ϵ

)

,

a

1

⁢

ϵ

)

=

δ

1

⁢

(

I

,

a

1

⁢

ϵ

)

=

δ

1

⁢

(

δ

1

⁢

(

I

,

a

1

)

,

ϵ

)

.

Since

a

1

is accepted by

A

,

δ

1

⁢

(

I

,

a

1

)

=

δ

⁢

(

I

,

a

1

)

contains an accepting state

s

∈

F

, so that

q

∈

δ

1

⁢

(

s

,

ϵ

)

⊆

δ

1

⁢

(

δ

1

⁢

(

I

,

a

1

)

,

ϵ

)

.

Hence

b

1

is accepted by

A

ϵ

*

.

(b)

Next, suppose that given

b

=

b

1

⁢

⋯

⁢

b

n

, the

subword

b

1

⁢

⋯

⁢

b

n

-

1

(induction step) is accepted by

A

ϵ

*

. This means that

q

∈

δ

1

⁢

(

q

,

b

1

⁢

⋯

⁢

b

n

-

1

)

, so that

δ

1

⁢

(

q

,

b

n

)

⊆

δ

1

⁢

(

δ

1

⁢

(

q

,

b

1

⁢

⋯

⁢

b

n

-

1

)

,

b

n

)

=

δ

1

⁢

(

q

,

b

1

⁢

⋯

⁢

b

n

)

.

But

δ

1

⁢

(

q

,

b

n

)

contains

q

as was shown in step 1 above. As a result,

b

1

⁢

⋯

⁢

b

n

is accepted by

A

ϵ

*

.

This shows that

L

⁢

(

A

)

*

⊆

L

⁢

(

A

*

)

.

•

L

⁢

(

A

*

)

⊆

L

⁢

(

A

)

*

.

Suppose now that

a

is a word over

Σ

accepted by

A

*

. This means that, for some

i

j

,

j

=

0

,

1

,

…

,

n

, the word

b

:=

ϵ

i

0

⁢

a

1

⁢

ϵ

i

1

⁢

⋯

⁢

ϵ

i

n

-

1

⁢

a

n

⁢

ϵ

i

n

is accepted by

A

ϵ

*

, where each

a

j

is a word over

Σ

with

a

=

a

1

⁢

⋯

⁢

a

n

. We want to show that each

a

j

is accepted by

A

.

The main thing is to notice is that if

q

∈

δ

1

⁢

(

J

,

ϵ

i

)

and

J

⊆

S

, where

i

is a positive integer, then

J

must contain a state in

F

. Otherwise,

J

⊆

S

-

F

, so that

δ

1

⁢

(

J

,

ϵ

)

=

∅

, and we must have

δ

1

⁢

(

J

,

ϵ

i

)

=

δ

1

⁢

(

δ

1

⁢

(

J

,

ϵ

)

,

ϵ

i

-

1

)

=

δ

1

⁢

(

∅

,

ϵ

i

-

1

)

=

∅

.

Set

J

=

δ

1

⁢

(

q

,

ϵ

i

0

⁢

a

1

⁢

ϵ

i

1

⁢

⋯

⁢

ϵ

i

n

-

1

⁢

a

n

)

and

K

=

δ

1

⁢

(

q

,

ϵ

i

0

⁢

a

1

⁢

ϵ

i

1

⁢

⋯

⁢

ϵ

i

n

-

1

)

. Then

J

=

δ

1

⁢

(

K

,

a

n

)

=

δ

⁢

(

K

,

a

n

)

⊆

S

. Furthermore, by

assumption

q

∈

δ

1

⁢

(

q

,

b

)

=

δ

1

⁢

(

J

,

ϵ

i

n

)

. Therefore,

J

must contain a state in

F

. Thus,

a

n

is accepted by

A

. The fact that the remaining

a

i

’s are accepted by

A

is proved inductively.

This shows that

L

⁢

(

A

*

)

⊆

L

⁢

(

A

)

*

.

This

completes

the proof.
∎

Title

Kleene star of an automaton

Canonical name

KleeneStarOfAnAutomaton

Date of creation

2013-03-22 18:04:06

Last modified on

2013-03-22 18:04:06

Owner

CWoo (3771)

Last modified by

CWoo (3771)

Numerical id

16

Author

CWoo (3771)

Entry type

Definition

Classification

msc 03D05

Classification

msc 68Q45

Generated on Thu Feb 8 19:58:56 2018 by

LaTeXML