Uma variação do Lema do Bombeamento

Slides:



Advertisements
Apresentações semelhantes
Decidibilidade e Indecidibilidade
Advertisements

Cortes (cut-sets)‏ 1.
Árvores CC/EC/Mestrado Teoria dos Grafos ‏ 1.
Vetores II.
Teoria da Computação EQUIVALÊNCIA DE PROGRAMAS E MÁQUINA Fabrício Dias
Lógica Matemática e Computacional 2.2 – Implicação e Equivalência
Universidade Federal de Campina Grande – UFCG Centro de Engenharia Elétrica e Informática – CEEI Departamento de Sistemas e Computação – DSC Máquina de.
Capítulo 3 - Aplicações das Derivadas
Mestrado em Ciência da Computação Profa. Sandra de Amo
Complexidade de Linguagens Influência do Modelo de Computação
Lema do Bombeamento – Gramáticas Livres do Contexto
Teorema da Recursão Teoria da Computação
INE Fundamentos de Matemática Discreta para a Computação
MONTAGEM-TORQUE Tendo visto que o pré-carregamento é desejado em uniões importantes, deve-se agora considerar os meios de assegurar que o pré-carregamento.
Linguagens Livres de Contexto
Minimização; Lema do Bombeamento.
Linguagens Livre de Contexto
Lema da Bomba (Pumping Lemma) para linguagens livre de contexto
esquerda p/ direita,read only
Linguagens e Máquinas WILSON ROSA DE OLIVEIRA DEPARTAMENTO DE INFORMÁTICA UFPE
autômatos finitos com transições e
Análise Dada uma cadeia de terminais w, queremos saber se wL(G) ou não. Se for o caso, poderemos querer achar uma derivação de w. Um algoritmo que pode.
Identificando Linguagens Não Regulares
Curso: Licenciatura em Matemática
PROPRIEDADES DE UM GRUPÓIDE
Produtos Notáveis 8ª ANO Prof.: Sergio Wagner. Os produtos Produtos notáveis são assim chamados por serem tipos fixos, facilmente reconhecidos, de produtos.
Lema do Bombeamento Linguagens Livres de Contexto
Teorema do Confronto   Se não pudermos obter o limite diretamente, talvez possamos obtê-lo indiretamente com o teorema do confronto. O teorema se refere.
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
Informática Teórica Engenharia da Computação
INTRODUÇÃO – LOGICA E ALGORITMOS
Capítulo 4 Métodos para determinação de propriedades semânticas de fórmulas da Lógica Proposicional
BCC101 – Matemática Discreta
Capítulo 10 Funções polinomiais slide 1
Aula 07 – Limite e Continuidade
O quinto Postulado de Euclides João Lucas Marques Barbosa
Erick Vagner Cabral Igor Lucena Vitor Baptista
Aulas 9,10 Fábio Nakano.
GEOMETRIA AXIOMÁTICA, SEGMENTOS DE RETA
Informática Teórica Engenharia da Computação
Aritmética de Números Cardinais
ÁRVORES Def.: Um grafo é acíclico se não possui ciclos.
Limites – Aula I Prof. Zé Roque.
Nível : Iniciante (Fácil)
Teoria da Computação WILSON ROSA DE OLIVEIRA
Matemática e suas Tecnologias - Matemática PROBABILIDADE CONDICIONAL
Universidade Federal de Campina Grande – UFCG Centro de Engenharia Elétrica e Informática – CEEI Departamento de Sistemas e Computação – DSC Teoria da.
Campus de Caraguatatuba Matemática Discreta 1 – MD 1
Não acredito nestas coisas, mas...
Introdução à complexidade de algoritmos Luiz Gonzaga da Silveira Junior.
LFA: Unidade 03 – Parte B Engenharia/Ciência da Computação
BCC101 – Matemática Discreta
Redução.
Sistema Formal Um Sistema Formal para a lógica proposicional é uma 2-tupla < L, R >, onde: L: linguagem proposicional R: conjunto de regras de inferências.
Prof. André Luis Roland Tancredo Engenheiro da Computação e Pesquisador em Desenvolvimento Tecnológico para Semicondutores pelo CNPq Especialista em Microeletrônica.
Números Primos – algoritmos e aplicações
Linguagens Formais - aula 02
Computabilidade e Linguagens Formais
Lógica Proposicional.
Algoritmos Prof.: Carlos Alberto
Anjolina Grisi de Oliveira
Calculo II Prof Me Carlos Bifi
TEORIA DOS NÚMEROS Aula 3 – Divisibilidade e Algoritmo da Divisão
Informática Teórica Engenharia da Computação. Autômatos Com Pilha São como autômatos finitos não-determinísticos mas com uma pilha. São como autômatos.
Transcrição da apresentação:

Uma variação do Lema do Bombeamento Reformularemos o enunciado do Lema de maneira a torná-lo mais facilmente aplicado em algumas situações. A reformulação permitirá o uso de um método de prova baseado num jogo contra o diabo

Variação do Lema Teorema. Seja A um conjunto regular. Então a seguinte propriedade se dá sobre A: (P) Existe k≥0 tal que para quais_quer cadeias x,y,z com xyzA e |y|≥k, existem cadeias u,v,w tais que y=uvw, v≠ε, e para todo i≥0, a cadeia xuyivwzA

Negando (P) Teorema. Seja A um conjunto de cadeias e suponha que: (~P) Para todo k≥0 existem cadeias x,y,z com xyzA e |y|≥k, e para todas cadeias u,v,w tais que y=uvw, v≠ε, e existe i≥0, tal que cadeia xuyivwzA. Então A não é regular.

Jogando contra o diabo O diabo quer mostrar que A é regular e voçê que não! Ele então pega k. Você vai escolhe xyzA e |y|≥k. Daí ele pega u,v,w tais que y=uvw, v≠ε, Você mostra o i≥0, com xuyivwzA

xuv0wz=xuwz=ak_mbakA Exemplo de Uso No exercício 5 último foi pedido para mostrar que {x{a, b, c}* |x é palíndrome, i.e., x=rev(x)} não é regular. Dado k do diabo basta escolher x= ε, y=ak e z=bak. Qualquer escolha u,v,w do diabo com, digamos |v|=m>0, basta escolher i=0 e xuv0wz=xuwz=ak_mbakA

Minimização de Estados remover estados inalcançáveis ou colapsando estados equivalentes. b a a,b a,b b a a a b b a b b a a b

Um autômato mínimo b a a b b a a,b

Resumindo ... dado M = (Q, å, d, s, F): Livrar_se dos estados inalcançáveis, i.e. dos estados q tais que não existe cadeia xå * tal que d*(s,x)=q. Colapse estados equivalentes

Mais exemplos a a,b a,b a,b a,b a,b b a,b a a a,b a,b b a,b b a,b b a

Ainda mais exemplos a a a,b a,b b a,b a,b b a,b b a,b a

A Construção do Quociente Como saber com segurança que dois estados podem ser colapsados como fazer o colapso formalmente? como determinar se mais colapsos podem ser feitos?

p=d*(s,x)F e q=d*(s,y)F nunca colapsaremos um estado que rejeita com um que aceita: p=d*(s,x)F e q=d*(s,y)F colapsar p com q aceitar y ou rejeitar x. o colapso de p e q implica no colapso de d(p,a) com d(q,a)

xå*(d*(p,x)Fd*(q,x)F) A equivalência Logo, p e q não podem ser colapsados se d*(p,x)F e d*(q,x)F Então definamos uma relação de equivalência ≈ sobre Q por: p ≈ q se, e somente se xå*(d*(p,x)Fd*(q,x)F)

não é difícil mostrar que de fato ≈ é uma relação de equivalência. [p]:={q|q≈p} p≈q sss [p]=[q]

O Autômato Quociente Dado M, definamos M/≈ = (Q’,å, d’,s’, F’) onde: Q’={[p] | pQ} d’([p],a)=[d(p,a)] s’=[s] F’={[p] | pF}

Resultados Úteis Lema 1. Se p≈q, então d(p,a)≈d(q,a). Equivalentemente, se [p]=[q] então [d(p,a)]=[d(q,a)]. Lema2. pF sss [p]F’. Lema3. d’*([p],x)=[d*(p,x)]

Teorema. L(M/≈)=L(M) Prova. Para x  å*, x  L(M/≈) sss d’*(s’,x)  F’ def. de aceita sss d’*([s],x)  F’ def. de s’ sss [d*(s,x)]  F’ lema 3 sss d*(s,x)  F lema 2 sss x  L(M) def. de aceita qed

M/≈ não pode ser mais colapsado Defina [p]~[q] sss xå*(d’*([p],x)F’d’*([q],x)F’)

xå*(d’*([p],x)F’d’*([q],x)F’) [p]~[q] xå*(d’*([p],x)F’d’*([q],x)F’) xå*([d*(p,x)]F’[d*(q,x)]F’) lema 3 xå*(d*(p,x)Fd*(q,x)F’) lema 2  p≈q [p]=[q]

Algorítmo de Minimização 1. Escreva uma tabela dos pares {p,q}, inicialmente desmarcados 2. Marque {p,q} se pF e qF ou vice_versa. 3. Repita até que não poder mais: se existe um par desmarcado {p,q} tal que {d(p,a),d(q,a)} é marcado para algum aå, então marque {p,q}. 4. Quando acabar 3, p≈q sss {p,q} é desmarcado.

Exemplo 1 _ ■ 2 _ _ 3 _ _ _ ■ ■ 4 _ _ _ _ 5 _ _ _ _ _ ■ ■ ■ ■ 2 a b a,b 3 4 1 5 1 _ 2 _ _ 3 _ _ _ 4 _ _ _ _ 5 _ _ _ _ _ 0 1 2 3 4 ■ ■ ■ ■ ■ ■ a,b ■ ■ ■ a,b

Corretude do Algorítmo Q={{p,q} | p,qQ} ={{p,q} | p≠q}  {{p} | pQ} logo existem ( )+n=(n2+n)/2. seja agora Δ: Q → Q Δ({p,q},a)={d(p,a),d(q,a)} e F ={{p,q} | pF, qF } X:= F repeat X’:=X; X:=X  {{p,q}|a. Δ({p,q},a)X} until X=X’ X é o conjunto dos marcados n 2

Corretude do Algorítmo X = {{p,q} | x*. Δ*({p,q},x}F} = {{p,q} | x*. d*(p,x)F,d*(q,x)F } = {{p,q} |(x*.(d*(p,x)Fd*(q,x)F ))} = {{p,q} | (p≈q)