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


12

Seja L1 regular, L1∩L2 regular, L2 não regular. Mostre que L1∪L2 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 2 ∩ L 1 L 1 ∩ L 2 L 1 L 2 L 1 ∖ ( L 1 ∩ L 2 ) L 2L1∖(L2∩L1)L1L2∩L1L1∩L2L1L2L1∖(L1∩L2)L2


"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 ∩ ¯ BL1∩L2L1A∖B=A∩B¯
— 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=((L1∪L2)∖L1)∪(L1∩L2)=((L1∪L2)∩L1¯)∪(L1∩L2)

Nós sabemos:

  • Os idiomas regulares são fechados sob união, interseção e complemento
  • eL1∩L2são regularesL1¯L1∩L2
  • não é regularL2

Agora vamos supor é regular: Então ( ( L 1 ∪ L 2 ) ∩ ¯ L 1 ) ∪ ( L 1 ∩ L 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 1 ∪ L 2 não pode ser regular.L1∪L2((L1∪L2)∩L1¯)∪(L1∩L2)L2L1∪L2


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 1 ∪ L 2 = L 1 .eu1={uma,b}∗eu2={umanbn:n≥0 0}eu1eu2L1∪L2=L1


5
L1∩L2
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.