conjunto racional


En informática , más precisamente en teoría de autómatas , un conjunto racional de un monoide es un elemento de la clase mínima de subconjuntos de este monoide que contiene todos los subconjuntos finitos y está cerrado bajo unión , producto y estrella Kleene . Los conjuntos racionales son útiles en teoría de autómatas , lenguajes formales y álgebra .

Un conjunto racional generaliza la noción de lenguaje racional (regular) (entendido como definido por expresiones regulares ) a monoides que no son necesariamente libres . [ ejemplo necesario ]

Sea un monoide con elemento de identidad . El conjunto de subconjuntos racionales de es el conjunto más pequeño que contiene todos los conjuntos finitos y es cerrado bajo

Esto significa que cualquier subconjunto racional de puede obtenerse tomando un número finito de subconjuntos finitos de y aplicando las operaciones de unión, producto y estrella de Kleene un número finito de veces.

Sea un alfabeto , el conjunto de palabras encima es un monoide. El subconjunto de racionales son precisamente las lenguas regulares . De hecho, los lenguajes regulares pueden definirse mediante una expresión regular finita .

Los subconjuntos racionales de son los conjuntos de enteros en última instancia periódicos. De manera más general, los subconjuntos racionales de son los conjuntos semilineales . [1]