Existe um análogo de "regular" para seqüências infinitas?

8

Considere a sequência s1=(1,0,1,0,). Parece "regular" de uma maneira que, por exemplo,s2=(1,2,3,4,) não é.

Não sei ao certo como formalizar essa intuição. Uma coisa que me impressiona é queL={(01)n} é uma linguagem regular e s1 é, em certo sentido, o limite das strings nesse idioma.

Existe uma terminologia para considerar essas seqüências infinitas? Temos algo análogo ao lema de bombeamento, pelo qual podemos afirmar que qualquer dessas cordas "regulares infinitas" tem a formaxyz com x, y, z finito?

Xodarap
fonte
1
Talvez periódico ou eventualmente periódico .
Yuval Filmus 01/01
Bombeamento : sua afirmação sobre cadeias infinitas dificilmente é um análogo do lema do bombeamento , que diz que palavras suficientemente longas em uma linguagem regular contêm uma substring que pode ser repetida para produzir outra palavra. Não diz que todas as palavras têm essa forma!
PJTraill
Terminologia : você fala sobre uma string ser regular, enquanto o termo regular é normalmente aplicado aos idiomas.
PJTraill

Respostas:

15

Provavelmente, o termo mais específico para descrever sua primeira string, 010101é periódico . Uma linhax1x2 (finito ou infinito) é periódico se houver algum t de tal forma que, para todos i, xi=xi+t. No caso deste exemplo, podemos tomart=2. Uma noção um pouco mais fraca é que uma corda é eventualmente periódica se houvernt de tal modo que xi=xi+t para todos in.

Mais geralmente, porém, há um análogo direto das línguas regulares, que é o ωidiomas regulares . Estes são reconhecidos por generalizações naturais de autômatos finitos. O conjunto de estados ainda é finito, mas o critério de aceitação deve ser modificado para lidar com palavras infinitas - em particular, não podemos apenas dizer "Aceitar se o autômato terminar em um estado de aceitação" porque o autômato nunca termina de processar sua entrada infinita.

A classe mais simples de autômatos para palavras infinitas são os autômatos de Büchi . Eles são definidos exatamente como os autômatos finitos aos quais você está acostumado e aceitam sua entrada se pelo menos um estado de aceitação for visitado infinitamente com frequência durante a execução do autômato. Uma diferença dos autômatos finitos comuns é que os autômatos Büchi não determinísticos são mais poderosos que os determinísticos, e osωlinguagens regulares são as aceitas pelos autômatos não determinísticos de Büchi. Outros critérios de aceitação sensatos levam a outros modelos de autômatos que aceitam a mesma classe de idiomas.

Note que não faz muito sentido escrever xyωz, já que você não pode ter nada após uma sequência infinita deys. Pelo menos, você não pode se as posições na sua string forem indexadas pelos números naturais. Se eles são indexados por ordinais maiores, isso pode fazer sentido.

Na verdade, não me lembro se existe um análogo do lema de bombeamento para ωidiomas regulares. Isso é um pouco embaraçoso, embora faça quase uma década desde que eu lecionei uma aula de pós-graduação sobre esse assunto.

David Richerby
fonte
3
Agradável. Talvez adicione explicitamente queωidiomas regulares são uniões finitas de idiomas ABω, Onde A,Bregular. Não sabe bombear, mas às vezes é útil observar que cadaωO idioma regular deve conter uma sequência eventualmente periódica.
Hendrik Jan
10
Eu sempre odiei a apresentação padrão do lema de bombeamento por ser tão malditamente obtusa. Quando você vai direto ao ponto, tudo o que realmente diz é que, como existe um conjunto finito de estados, qualquer sequência com mais símbolos do que estados deve visitar algum estado duas vezes durante a execução do autômato. Os símbolos que participam desse loop são os que você pode "bombear". Sob essa luz, fica claro que existe um análogo quando fazemos a transição para seqüências infinitas, mas mantemos estados finitos; então a questão não é "existe um lema de bombeamento?" mas "quanto mais complicado é o lema de bombeamento?".
Daniel Wagner
@DanielWagner: Uau, sim ... a apresentação padrão é realmente muito obtusa e a sua torna tudo muito claro. Obrigado por essa explicação!
user541686
4
@ DanielWagner: o lema de bombeamento certamente é confuso, mas a vantagem da apresentação padrão é que ele não se refere à mecânica de autômatos, expressões regulares ou qualquer outra maneira específica de definir linguagens regulares. Ele só fala sobre cordas!
Max
@ Max Uma vantagem duvidosa, de fato!
Daniel Wagner
3

Este é um resultado básico da Efetividade do Tipo Dois, que acho que responde à sua pergunta de um ponto de vista computável. A seguir, nossos idiomas consistem apenas em seqüências infinitas. Denotamos o conjunto de cadeias infinitasΣω.

Teorema: Se um autômato realizável termina em cada seqüência infinita, o idioma do autômato é igual a SΣω Onde S é um conjunto finito de cadeias finitas.

A prova é do lema de Konig.

A conclusão é que uma linguagem sobre seqüências infinitas é "simples" em algum sentido (que é um fato interessante ) ou indecidível. Qualquer noção não trivial de linguagem sobre cadeias infinitas é indecidível.


Presumivelmente, você pode estudar idiomas menos simples se permitir que a associação seja semidecidável em vez de decidível. Isso ainda pode ser considerado "ciência da computação" e não apenas matemática infinita (tem a ver com problemas de pesquisa em vez de problemas de decisão; semidecidabilidade é, em certo sentido, suficiente para fazer uma pesquisa).

ogogmad
fonte