Linguagem ômega
Uma linguagem-ω é um conjunto de sequências de tamanho infinito de símbolos.
Definição formal
Seja um conjunto não necessariamente finito de símbolos. Seguindo a definição padrão da teoria da linguagem formal, é o conjunto de todas as palavras finitas sobre . Toda palavra finita tem um tamanho, que é, obviamente, uma número natural. Dada uma palavra de tamanho , pode ser vista como uma função do conjunto . As palavras infinitas, ou palavras-ω, podem também ser vistas como funções de para , com o valor de dando o símbolo na posição . O conjunto de todas as palavras infinitas sobre denotado . O conjunto de todas as palavras finitas e infinitas sobre é algumas vezes escrito como .
Assim, uma linguagem linguagem-ω sobre é um subconjunto de .
Operações
Algumas operações comuns definidas em linguagens-ω são:
- Interseção e união
- Dada linguagens-ω e , ambas e são linguagens-ω.
- Concatenação à esquerda
- Seja uma linguagem-ω, e uma linguagem de palavras finitas apenas. Então pode somente ser concatenada à esquerda de para produzir a nova linguagem-ω .
- Iteração infinita
- A operação é a versão infinita do fecho de Kleene sobre linguagens de tamanho finito. Dada uma linguagem formal , é a linguagem-ω de todas as sucessões infinitas de palavras de . Numa visão funcional, todas as funções .
- Prefixos
- Seja uma palavra-ω. Então, a linguagem formal contém todo prefixo finito de .
- Limite
- Dada uma linguagem de tamanho finito , uma palavra-ω está no limite de se e somente se é um conjunto infinito. Em outras palavras, para um número natural arbitrariamente grande , é sempre possível escolher algum prefixo em cujo tamanho é maior do que . A operação de limite sobre pode ser denotada ou .
Distância entre palavras-ω
O Conjunto pode ser transformado num espaço métrico por definição da métrica d:Σω × Σω → R desta forma:
- Se w e v compartilham algum prefixo finito, então d(w,v)= inf {2-|x| : x em Σ*, e x em ambos Pref(w) e Pref(v) }.
- Senão d(w, v)=1
onde |x| é interpretado como "o tamanho de x" (numero de símbolos em x), e inf é o mínimo sobre conjuntos de números reais. Se w=v, eles não tem nenhum prefixo finito maior do que o outro, e d(w,v)=0; pode ser mostrado que d satisfaz todas as outras propriedades necessárias de uma métrica.
Subclasses importantes
A mais usada subclasse das linguagens-ω é o conjunto de linguagens ω-regulares, que tem a útil propriedade de ser reconhecida pelo autômato de Büchi; assim o problema de decisão de se é uma linguagem ω-regular ou não é decidível e bem simples de ser computado.
Bibliografia
- Perrin, D. and Pin, J-E. "Infinite Words Automata, Semigroups, Logic and Games". Pure and Applied Mathematics Vol 141, Elsevier, 2004.
- Staiger, L. "ω-Languages". Em G. Rozenberg and A. Salomaa, editores, Handbook of Formal Languages, Volume 3, páginas 339-387. Springer-Verlag, Berlin, 1997.
- Thomas, W. "Automata on Infinite Objects". Em Jan van Leeuwen, editor, Handbook of Theoretical Computer Science, Volume B: Formal Models and Semantics, páginas 133-192. Elsevier Science Publishers, Amsterdam, 1990.