О генерации нескольких примеров:
Опираясь на ответ @shreesh, мы можем доказать, что каждый антипалиндромный язык должен иметь вид
длянекоторогострогого полного упорядочения < .
L = { x | х < х р}( ∗ )
<
Действительно, для любого антипалиндрома мы можем определить ассоциированный < следующим образом. Мы начнем с любого перечисления x 0 , x 1 , ... из { 0 , 1 } ∗ , где каждое слово встречается ровно один раз. Затем мы изменяем перечисление: для каждой пары непалиндромов x , x R мы меняем их положение так, чтобы один, принадлежащий L, появлялся перед другим. Новое перечисление индуцирует полный порядок < удовлетворяющий ( ∗ ) .L<Икс0, х1, ...{0,1}∗x,xRL<(∗)
То, что каждый определенный как ( ∗ ), не является палиндромом, тривиально, поэтому ( ∗ ) является полной характеристикой непалиндромных языков.L(∗)(∗)
Обращаясь к исходному вопросу, мы теперь знаем, что мы можем получить несколько примеров антипалиндромных языков , создав заказы < . Мы также знаем, что этим мы не ограничиваемся подклассом языков, теряя общность.L<
По поводу вопроса «могут ли эти языки быть регулярными?»:
Чтобы доказать, что любой антипалиндром нерегулярен, предположим, что он является регулярным.L
- Поскольку регулярность сохраняется путем обращения , также является регулярной.Lр
- Поскольку регулярность сохраняется за счет объединения, , который является множеством всех непалиндромов, также является регулярным.L∪Lр
- Поскольку регулярность сохраняется дополнением, множество всех палиндромов является регулярным.
Из последнего утверждения мы можем вывести противоречие с помощью накачки. (Смотрите, например, здесь для решения)