Sobre como gerar alguns exemplos:
Com base na resposta de @shreesh, podemos provar que toda linguagem anti-palíndromo deve ter a forma
paraalgunspedidos estritos e totais < .
L={x | x<xR}(∗)
<
De fato, dado qualquer anti-palíndromo , podemos definir um < associado da seguinte maneira. Começamos com qualquer enumeração x 0 , x 1 , … de { 0 , 1 } ∗ , onde cada palavra ocorre exatamente uma vez. Em seguida, alteramos a enumeração: para cada par de não palíndromos x , x R , trocamos sua posição para fazer com que aquele que pertence a L apareça antes do outro. A nova enumeração induz uma ordem total < satisfatória ( ∗ ) .L<x0,x1,…{0,1}∗x,xRL<(∗)
Como todo definido como ( ∗ ) é não palíndromo, é trivial, portanto ( ∗ ) é uma caracterização completa de idiomas não palíndromos.L(∗)(∗)
Dirigindo-se à pergunta original, agora sabemos que podemos obter vários exemplos de linguagens anti-palíndromo elaborando pedidos < . Também sabemos que, ao fazer isso, não estamos nos restringindo a uma subclasse de idiomas, perdendo generalidade.L<
Sobre a pergunta "esses idiomas podem ser regulares?":
Para provar que qualquer anti-palíndromo não é regular, assuma por contradição que é regular.L
- Desde regularidade é preservada pela reversão , também é regular.LR
- Como a regularidade é preservada pela união, , que é o conjunto de todos os não-palíndromos, também é regular.L∪LR
- Como a regularidade é preservada pelo complemento, o conjunto de todos os palíndromos é regular.
Da última afirmação, podemos derivar uma contradição bombeando. (Veja aqui, por exemplo, uma solução)