Rational set explained

In computer science, more precisely in automata theory, a rational set of a monoid is an element of the minimal class of subsets of this monoid that contains all finite subsets and is closed under union, product and Kleene star. Rational sets are useful in automata theory, formal languages and algebra.

A rational set generalizes the notion of rational (or regular) language (understood as defined by regular expressions) to monoids that are not necessarily free.

Definition

Let

(N,)

be a monoid with identity element

e

. The set

RAT(N)

of rational subsets of

N

is the smallest set that contains every finite set and is closed under

A,B\inRAT(N)

then

A\cupB\inRAT(N)

A,B\inRAT(N)

then

AB=\{ab\mida\inA,b\inB\}\inRAT(N)

A\inRAT(N)

then
infty
A
i=0

Ai\inRAT(N)

where

A0=\{e\}

is the singleton containing the identity element, and where

An+1=AnA

.

This means that any rational subset of

N

can be obtained by taking a finite number of finite subsets of

N

and applying the union, product and Kleene star operations a finite number of times.

In general a rational subset of a monoid is not a submonoid.

Example

Let

A

be an alphabet, the set

A*

of words over

A

is a monoid. The rational subset of

A*

are precisely the regular languages. Indeed, the regular languages may be defined by a finite regular expression.

The rational subsets of

N

are the ultimately periodic sets of integers. More generally, the rational subsets of

Nk

are the semilinear sets.[1]

Properties

McKnight's theorem states that if

N

is finitely generated then its recognizable subset are rational sets.This is not true in general, since the whole

N

is always recognizable but it is not rational if

N

is infinitely generated.

Rational sets are closed under homomorphism: given

N

and

M

two monoids and

\phi:NM

a monoid homomorphism, if

S\inRAT(N)

then

\phi(S)=\{\phi(x)\midx\inS\}\inRAT(M)

.

RAT(N)

is not closed under complement as the following example shows.[2] Let

N=\{a\}* x \{b,c\}*

, the sets

R=(a,b)*(1,c)*=\{(an,bncm)\midn,m\inN\}

and

S=(1,b)*(a,c)*=\{(an,bmcn)\midn,m\inN\}

are rational but

R\capS=\{(an,bncn)\midn\inN\}

is not because its projection to the second element

\{bncn\midn\inN\}

is not rational.

The intersection of a rational subset and of a recognizable subset is rational.

For finite groups the following result of A. Anissimov and A. W. Seifert is well known: a subgroup H of a finitely generated group G is recognizable if and only if H has finite index in G. In contrast, H is rational if and only if H is finitely generated.[3]

Rational relations and rational functions

A binary relation between monoids M and N is a rational relation if the graph of the relation, regarded as a subset of M×N is a rational set in the product monoid. A function from M to N is a rational function if the graph of the function is a rational set.[4]

See also

References

Further reading

Notes and References

  1. http://www.liafa.jussieu.fr/~jep/MPRI/MPRI.html Mathematical Foundations of Automata Theory
  2. cf. Jean-Éric Pin, Mathematical Foundations of Automata Theory, p. 76, Example 1.3
  3. Book: C.M. Campbell . M.R. Quick . E.F. Robertson . G.C. Smith. Groups St Andrews 2005 Volume 2. 2007. Cambridge University Press. 978-0-521-69470-4. 376. Groups and semigroups: connections and contrasts . John Meakin. preprint
  4. Book: Hoffmann . Michael . Kuske . Dietrich . Otto . Friedrich . Thomas . Richard M. . Some relatives of automatic and hyperbolic groups . 1031.20047 . Gomes . Gracinda M. S. . Semigroups, algorithms, automata and languages. Proceedings of workshops held at the International Centre of Mathematics, CIM, Coimbra, Portugal, May, June and July 2001 . Singapore . World Scientific . 379–406 . 2002 .