1 mais propriedades de linguagens regulares. 2 já provamos linguagens regulares são fechadas sob:...
TRANSCRIPT
1
Mais Propriedades de
Linguagens Regulares
2
Já provamos
Linguagens Regulares são fechadas sob:
União
Concatenação
Operação Star
Reverso
3
Ou seja, para linguagens regulares e :1L 2L
21 LL
21LL
1L
União
Concatenação
Operação Star
Reverso RL1
LinguagensRegulares
4
Vamos provar
Linguagens Regulares são fechadas sob:
Complemento
Interseção
5
Ou seja, para linguagens regulares e :1L 2L
1L
21 LL
Complemento
Interseção
LinguagensRegulares
6
Complemento
Teorema:Para qq linguagem regularo complemento é regular L
L
Prova: Tome um DFA que aceita e faça• os estados não finais finais• os estados finais não finais
O DFA resultante aceita
L
L
7
Exemplo:a
b ba,
ba,
0q 1q 2q
)*( baLL
a
b ba,
ba,
0q 1q 2q
)*))((**( bababaaLL
8
Interseção
Teorema:Para linguagens regulares e a interseção é regular 21 LL
1L 2L
Prova: Use a Lei de DeMorgan:
2121 LLLL
9
21 , LL regular
21 , LL regular
21 LL regular
21 LL regular
21 LL regular
10
Representações Padrão de
Linguagens Regulares
11
Representações Padrão de Linguagens Regulares
Linguagens Regulares
DFAs
NFAsExpressõesRegulares
GramáticasRegulares
12
Quando dizemos:Dada uma Linguagem Regular
Queremos dizer:
L
Linguagem em umarepresentação padrão
L
13
Questões Elementares
sobre
Linguagens Regulares
14
Questão da Pertinência
Questão:Dada uma linguagem regulare um string como determinar se ?
Lw
Resposta: Tome um DFA que aceitae verifique se é aceito ou não
Lw
15
DFA
Lw
DFA
Lw
w
w
16
Dada uma linguagem regular como podemos determinarse é vazia: ?
L
L )( L
Questão:
Tome um DFA que aceita
Verifique se existe um caminhodo estado inicial até o estado final
LResposta:
17
DFA
L
DFA
L
18
Dada um linguagem regularcomo podemos determinarse é finita?
L
L
Questão:
Tome um DFA que aceita
Verifique se existe um caminho doestado inicial para um estado final que possua um ciclo
LResposta:
19
DFA
L é infinita
DFA
L é finita
20
Dadas linguagens regulares e como determinar se ?
1L 2L
21 LL Questão:
)()( 2121 LLLL
Determine seResposta:
21
)()( 2121 LLLL
21 LL 21 LL e
21 LL
1L 2L 1L2L
21 LL 12 LL 2L 1L
22
)()( 2121 LLLL
21 LL 21 LLou
1L 2L 1L2L
21 LL 12 LL
21 LL
23
Linguagens Não Regulares
24
Linguagens Regulares
ba* acb *
...etc
*)( bacb
Linguagens Não Regulares
}0:{ nba nn
}*},{:{ bawwwR
25
Como podemos provar que uma linguagemnão é regular?
L
Provar que não existe um DFA que aceite L
Problema: isso não é fácil de provar
Solução: Lema do Bombeamento !!!
32
DFA com estados 4
1q 2q 3qa
b
4q
b
b b
b
a a
Antes de formular o Lema do Bombeamento,vamos introduzir sua idéia básica por meiode um exemplo
33
1q 2q 3qa
b
4q
b
b
b
a a
a
Nos caminhos dos strings:
aab
aa
anenhum estadoé repetido
34
Nos caminhos dos strings:
1q 2q 3qa
b
4q
b
b
b
a a
a
...abbbabbabb
abbabb
bbaa
aabbalgum estadoé repetido
35
Se o caminho de um string
tem comprimento
1q 2q 3qa
b
4q
b
b
b
a a
a
w4|| w
então algum estado é repetido
36
Se em um caminho de um string no. de transições estados do DFAentão algum estado é repetido
1q 2q 3qa
b
4q
b
b
b
a a
a
w
38
Em geral:
String tem comprimento no. de estados w
Um estado deve ser repetido no caminho dewq
q...... ......
caminho de w
39
Lema do Bombeamento
40
Seja uma linguagem regular infinitaL
DFA que aceita L
mestados
41
Tome um string tal que w Lw
Existe um caminho com rótulo :w
.........
caminho w
42
Se o string tem comprimentow mw ||
número de estados
então algum estado é repetido no caminhoq w
q...... ......
caminhow
43
Escreva zyxw
q...... ......
x
y
z
44
q...... ......
x
y
z
Observações: myx || númerode estados
1|| y
45
O string é aceito zxObservação:
q...... ......
x
y
z
46
O string é aceito
zyyxObservação:
q...... ......
x
y
z
47
O string é aceito
zyyyxObservação:
q...... ......
x
y
z
48
O string é aceito
zyx iEm Geral:
...,2,1,0i
q...... ......
x
y
z
49
Em outras palavras, nós descrevemos:
O Lema do Bombeamento !!!
50
O Lema do Bombeamento:
• Dada uma linguagem regular infinitaL
• existe um inteiro m
• para todo string comLw mw ||
• podemos escrever zyxw
• com emyx || 1|| y
• tal que: Lzyx i ...,2,1,0i
51
Aplicações
do
Lema do Bombeamento
52
Teorema: A linguagem }0:{ nbaL nn
não é regular
Prova: Use o Lema do Bombeamento
53
Suponha, por contradição,que é uma linguagem regularL
Como é infinitapodemos aplicar o Lema do Bombeamento
L
}0:{ nbaL nn
54
Seja o inteiro do Lema do Bombeamento
Tome um string tal que: w Lw
mw ||comprimento
Exemplo:mmbawtome
m
}0:{ nbaL nn
55
Escreva: zyxba mm
deve ser verdade que
Pelo Lema do Bombeamento 1||,|| ymyx
Portanto: babaaaaba mm ............
1, kay kx y z
m m
56
Do Lema do Bombeamento: Lzyx i
...,2,1,0i
Portanto:
mmbazyx
Lbazyyxzyx mkm 2
Lzyx 2
Temos: 1, kay k
57
Lba mkm Portanto:
}0:{ nbaL nnMAS:
Lba mkm
CONTRADIÇÃO!!!
58
Nossa hipótese de queé uma linguagem regular não é verdadeira!
L
Conclusão: Lnão é uma linguagem regular
Portanto:
59
Linguagens Regularesba* acb *
...etc
*)( bacb
Linguagens Não Regulares }0:{ nba nn