Если регулярный язык содержит только звезду Клини, то возможно ли, что это происходит от объединения двух нерегулярных языков?

Я хочу знать, что при заданном обычном языке L, который содержит только оператор звезды Клини (например, (ab)*), возможно ли, что L можно сгенерировать путем конкатенации двух нерегулярных языков? Я пытаюсь доказать, что L может быть сгенерирован только путем объединения двух обычных языков.

Благодарю.

1 ответ

Решение

Это утверждение неверно. Рассмотрим эти два языка над Σ = {a}:

L1 = {an | n является степенью двойки} ∪ { ε }

L2 = {an | n не является степенью двойки} ∪ { ε }

Ни один из этих языков не является регулярным (первый может быть доказан нерегулярным с помощью теоремы Майхилла-Нерода, а второй тесно связан с дополнением к L1 и также может быть доказан нерегулярным.

Тем не менее, я собираюсь утверждать, что L1 L2 = a*. Во-первых, обратите внимание, что любая строка в конкатенации L1 L2 имеет форму an и, следовательно, является элементом a*. Далее возьмите любую строку в *; пусть это будетп. Если n является степенью двойки, то она может быть сформирована как конкатенация an из L1 и ε из L2. В противном случае n не является степенью двойки, и его можно сформировать как конкатенацию ε из L1 и an из L2. Следовательно, L1, L2 = a *, поэтому теорема, которую вы пытаетесь доказать, неверна.

Надеюсь это поможет!

Другие вопросы по тегам