Interseção e união de uma língua regular e uma não regular

12

Seja L1 regular, L1L2 regular, L2 não regular. Mostre que L1L2 não é regular ou dê um contra-exemplo.

Eu tentei o seguinte: Veja . Este é regular. Posso construir um autômato finito para isso: é regular, é regular, portanto, remova todos os caminhos (quantidade finita) de da quantidade finita de caminhos para . Portanto, há uma quantidade finita de caminhos restantes para essa coisa toda. Isso não é comum em L_2 , mas como posso provar que a união de L_1 \ setminus (L_1 \ cap L_2) (regular) e L_2 (não regular) não é regular?L 1 L 2L 1 L 1L 2 L 1 L 2 L 1( L 1L 2 ) L 2L1(L2L1)L1L2L1L1L2L1L2L1(L1L2)L2

Kevin
fonte
"remova todos os caminhos (quantidade finita) de da quantidade finita de caminhos de " - o que isso significa? A maneira usual de construir um autômato para a diferença é usando e as construções conhecidas para complemento e interseção. L 1 Um B = Um ¯ BL1L2L1AB=AB¯
Raphael
Eu prefiro alterar o título desta pergunta. Por si só, o título da pergunta é uma afirmação errada.
precisa saber é o seguinte

Respostas:

19

Podemos provar isso por contradição. Vamos definir . Então podemos reformular L 2 :L1¯=ΣL1L2

L2=((L1L2)L1)(L1L2)=((L1L2)L1¯)(L1L2)

Nós sabemos:

  • Os idiomas regulares são fechados sob união, interseção e complemento
  • eL1L2são regularesL1¯L1L2
  • não é regularL2

Agora vamos supor é regular: Então ( ( L 1L 2 ) ¯ L 1 ) ( L 1L 2 ) é regular (como é apenas uma união / interseção de linguagens regulares), então L 2 seria regular. Isso é uma contradição, portanto nossa suposição é falsa e L 1L 2 não pode ser regular.L1L2((L1L2)L1¯)(L1L2)L2L1L2

Mike B.
fonte
Eu acho que entendi. Mas por que o complemento de um idioma regular é regular? Eu não entendo essa parte.
28412 Kevin
1
@ Kevin Este é um lema bem conhecido, então você deve encontrar uma prova em qualquer livro didático. Um método de prova é pegar um autômato finito e trocar os estados de aceitação e não aceitação: você obtém um autômato que reconhece o idioma do complemento.
Gilles 'SO- stop be evil'
E para autômatos finitos não determinísticos? Suponha que tenhamos um autômato. , um estado inicial, duas setas desse estado com a para outro estado. Um desses estados está aceitando e um não. Então L ( M ) = { a } . Se agora trocarmos os estados aceitantes, ele ainda aceitará { a } , portanto, não é o que aceita a linguagem do complemento! A={a,b}aL(M)={a}{a}
21712 Kevin
A prova de Gilles funciona apenas para autômatos finitos determinísticos, o que - para idiomas comuns - não é uma restrição. Mas, como ele disse, esse lema pode ser encontrado em qualquer livro didático.
Mike B.
1
@ Kevin: Mike significa que toda linguagem comum possui um autômato determinístico para reconhecê-la, para que você sempre possa usar uma.
reinierpost
-4

Isso esta errado. Considere , L 2 = { a n b n : n 0 } . L 1 é regular, L 2 não; mas L 1L 2 = L 1 .eu1={uma,b}eu2={umanbn:n0 0}eu1eu2L1L2=L1

vonbrand
fonte
5
L1L2